package com.dy.aceMw.server.rtuData.p206V1_0_0; 
 | 
  
 | 
import com.dy.aceMw.server.rtuData.TaskSurpport; 
 | 
import com.dy.common.mw.protocol.Data; 
 | 
import org.apache.logging.log4j.LogManager; 
 | 
import org.apache.logging.log4j.Logger; 
 | 
  
 | 
public class TkPreGenObjs extends TaskSurpport { 
 | 
     
 | 
    private static final Logger log = LogManager.getLogger(TkPreGenObjs.class.getName()) ; 
 | 
  
 | 
    //类ID,一定与Tree.xml配置文件中配置一致 
 | 
    public static final String taskId = "TkPreGenObjs" ; 
 | 
  
 | 
    /** 
 | 
     * 执行节点任务 
 | 
     * @param data 需要处理的数据 
 | 
     */ 
 | 
    @Override 
 | 
    public void execute(Object data) { 
 | 
        Data d = (Data)data ; 
 | 
        String rtuAddr = d.getRtuAddr() ; 
 | 
        log.info("RTU" + rtuAddr + "数据到此,还未实现处理:" + data.toString()); 
 | 
        //得到本地RTU 数据,以备后面节点应用 
 | 
        /* 
 | 
        BuziInterface baseBusi = BuziGeter.getBaseBusi() ; 
 | 
        BuziInterface orgBusi = null ; 
 | 
        SyRtu nbRtu = null ; 
 | 
        SyRtuTramp rtuTramp = null ; 
 | 
        if(baseBusi != null){ 
 | 
            nbRtu = DbSyBuzi.getRtu(baseBusi, imei) ; 
 | 
            if(nbRtu != null){ 
 | 
                //数据库中查询到NB产品(RTU实体) 
 | 
                if(nbRtu.orgTag != null && !nbRtu.orgTag.trim().equals("")){ 
 | 
                    orgBusi = BuziGeter.getBusi(nbRtu.orgTag) ; 
 | 
                    if(orgBusi == null){ 
 | 
                        log.error("严重错误,未能得到标签为" + nbRtu.orgTag + "的供水机构数据库业务Busi"); 
 | 
                    }else{ 
 | 
                        BaMeter meter = DbOrgBuzi.getMeterByImeiAndNo(orgBusi, imei, rtuAddr) ; 
 | 
                        //可能未查询到meter,即仍是流浪者RTU,但仍要后续处理:(1)、仍能识别出流浪者RTU,(2)、仍要记录其上报数据 
 | 
                        if(meter != null){ 
 | 
                            String protocol = d.getProtocol() ; 
 | 
                            if(protocol != null){ 
 | 
                                protocol = protocol.trim(); 
 | 
                                if(!protocol.equals("")){ 
 | 
                                    if(meter.protocol == null  
 | 
                                            || meter.protocol.trim().equals("") 
 | 
                                            || !meter.protocol.trim().equals(protocol)){ 
 | 
                                        //需要更新协议名称 
 | 
                                        DbOrgBuzi.updateMeter4Protocol(orgBusi, meter.id, protocol); 
 | 
                                    } 
 | 
                                } 
 | 
                            } 
 | 
                        } 
 | 
                        this.taskResult = new Object[]{baseBusi, orgBusi, nbRtu, null, meter} ;     
 | 
                        this.toNextTasks(data); 
 | 
                    } 
 | 
                }else{ 
 | 
                    //NB产品(RTU实体)未分配给具体的供水机构 
 | 
                    //流浪者RTU 
 | 
                    rtuTramp = DbSyBuzi.getSyRtuTramp(baseBusi, imei, rtuAddr) ; 
 | 
                    if(rtuTramp == null){ 
 | 
                        rtuTramp = new SyRtuTramp(imei, rtuAddr) ;  
 | 
                    } 
 | 
                    this.taskResult = new Object[]{baseBusi, orgBusi, nbRtu, rtuTramp, null} ; 
 | 
                    this.toNextOneTask(data, TkDealRtuTramp.taskId); 
 | 
                } 
 | 
            }else{ 
 | 
                //数据库中未查询到NB产品(RTU实体) 
 | 
                //流浪者RTU 
 | 
                rtuTramp = DbSyBuzi.getSyRtuTramp(baseBusi, imei, rtuAddr) ; 
 | 
                if(rtuTramp == null){ 
 | 
                    rtuTramp = new SyRtuTramp(imei, rtuAddr) ;  
 | 
                } 
 | 
                this.taskResult = new Object[]{baseBusi, orgBusi, nbRtu, rtuTramp, null} ; 
 | 
                this.toNextOneTask(data, TkDealRtuTramp.taskId); 
 | 
            } 
 | 
        }else{ 
 | 
            log.error("严重错误,未能得到BaseBusi对象"); 
 | 
        } 
 | 
        */ 
 | 
    } 
 | 
} 
 |