| New file | 
|  |  |  | 
|---|
|  |  |  | package com.dy.rtuMw.server.rtuData.p206V2; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.dy.common.mw.protocol.Data; | 
|---|
|  |  |  | import com.dy.common.mw.protocol.UpComResVo; | 
|---|
|  |  |  | import com.dy.common.mw.protocol.p206V2.DataV2; | 
|---|
|  |  |  | import com.dy.common.mw.protocol.p206V2.upVos.DataCd92Vo; | 
|---|
|  |  |  | import com.dy.common.mw.protocol.p206V2.upVos.DataCd93Vo; | 
|---|
|  |  |  | import com.dy.common.mw.protocol.p206V2.upVos.DataCd97Vo; | 
|---|
|  |  |  | import com.dy.common.mw.protocol.p206V2.upVos.DataCd98Vo; | 
|---|
|  |  |  | import com.dy.common.util.DateTime; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.pojoRm.RmCommandHistory; | 
|---|
|  |  |  | import com.dy.rtuMw.server.rtuData.TaskSurpport; | 
|---|
|  |  |  | import com.dy.rtuMw.server.rtuData.dbSv.DbSv; | 
|---|
|  |  |  | import org.apache.logging.log4j.LogManager; | 
|---|
|  |  |  | import org.apache.logging.log4j.Logger; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * @Author liurunyu | 
|---|
|  |  |  | * @Date 2024/4/2 13:45 | 
|---|
|  |  |  | * @LastEditTime 2024/4/2 13:45 | 
|---|
|  |  |  | * @Description 处理命令响应上报 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public class TkRtuDealCommandResponseV2 extends TaskSurpport { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private static final Logger log = LogManager.getLogger(TkRtuDealCommandResponseV2.class.getName()) ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //类ID,一定与Tree.xml配置文件中配置一致 | 
|---|
|  |  |  | public static final String taskId = "TkRtuDealCommandResponseV2" ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 执行节点任务:处理命令响应上报 | 
|---|
|  |  |  | * @param data 需要处理的数据 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public void execute(Object data) { | 
|---|
|  |  |  | Data d = (Data) data; | 
|---|
|  |  |  | Object subD = d.getSubData(); | 
|---|
|  |  |  | if (subD != null) { | 
|---|
|  |  |  | DataV2 dV2 = (DataV2) subD; | 
|---|
|  |  |  | if (dV2 != null && dV2.subData != null) { | 
|---|
|  |  |  | Object[] objs = this.getTaskResults(TkPreGenObjsV2.taskId) ; | 
|---|
|  |  |  | DbSv sv = (DbSv)objs[0] ; | 
|---|
|  |  |  | //PrController controller = (PrController)objs[1] ; | 
|---|
|  |  |  | try{ | 
|---|
|  |  |  | RmCommandHistory po = sv.getCommandLog(d.commandId) ; | 
|---|
|  |  |  | if(po != null){ | 
|---|
|  |  |  | po = this.updateCommandLogPo(po, d.code, dV2, dV2.subData) ; | 
|---|
|  |  |  | sv.updateCommandLog(po); | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | log.error("未得到命令日志(" + d.getCommandId() + ")"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }catch (Exception e){ | 
|---|
|  |  |  | log.error("保存控制器自报数据时发生异常", e); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public RmCommandHistory updateCommandLogPo(RmCommandHistory po, String code, DataV2 dV2, Object obj) throws Exception{ | 
|---|
|  |  |  | po.setResultTime(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV2.dt)) ; | 
|---|
|  |  |  | if(obj instanceof DataCd97Vo){ | 
|---|
|  |  |  | DataCd97Vo vo = (DataCd97Vo)obj ; | 
|---|
|  |  |  | po.setResult(vo.success?(byte)1:(byte)0); | 
|---|
|  |  |  | po.setResultText(vo.comLog()!=null?vo.comLog():vo.comLog(code)); | 
|---|
|  |  |  | log.info("----------------------------------\n" + (vo.comLog()!=null?vo.comLog():vo.comLog(code))); | 
|---|
|  |  |  | }else if(obj instanceof DataCd98Vo){ | 
|---|
|  |  |  | DataCd98Vo vo = (DataCd98Vo)obj ; | 
|---|
|  |  |  | po.setResult(vo.success?(byte)1:(byte)0); | 
|---|
|  |  |  | po.setResultText(vo.comLog()!=null?vo.comLog():vo.comLog(code)); | 
|---|
|  |  |  | log.info("----------------------------------\n" + (vo.comLog()!=null?vo.comLog():vo.comLog(code))); | 
|---|
|  |  |  | }else if(obj instanceof DataCd92Vo){ | 
|---|
|  |  |  | DataCd92Vo vo = (DataCd92Vo)obj ; | 
|---|
|  |  |  | po.setResult(vo.success?(byte)1:(byte)0); | 
|---|
|  |  |  | po.setResultText(vo.comLog()!=null?vo.comLog():vo.comLog(code)); | 
|---|
|  |  |  | log.info("----------------------------------\n" + (vo.comLog()!=null?vo.comLog():vo.comLog(code))); | 
|---|
|  |  |  | }else if(obj instanceof DataCd93Vo){ | 
|---|
|  |  |  | DataCd93Vo vo = (DataCd93Vo)obj ; | 
|---|
|  |  |  | po.setResult(vo.success?(byte)1:(byte)0); | 
|---|
|  |  |  | po.setResultText(vo.comLog()!=null?vo.comLog():vo.comLog(code)); | 
|---|
|  |  |  | log.info("----------------------------------\n" + (vo.comLog()!=null?vo.comLog():vo.comLog(code))); | 
|---|
|  |  |  | }else if(obj instanceof UpComResVo){ | 
|---|
|  |  |  | UpComResVo vo = (UpComResVo)obj ; | 
|---|
|  |  |  | po.setResult((byte)1); | 
|---|
|  |  |  | po.setResultText(vo.comLog()!=null?vo.comLog():vo.comLog(code)); | 
|---|
|  |  |  | log.info("----------------------------------\n" + (vo.comLog()!=null?vo.comLog():vo.comLog(code))); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return po ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|