From 2f320f30205c1fd1ce9aaa5ddd1740123bf59891 Mon Sep 17 00:00:00 2001 From: zhouxiunai <154707516@qq.com> Date: Mon, 10 Dec 2018 14:46:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=A4=84=E7=90=86=E8=A1=8C?= =?UTF-8?q?=E6=9D=8E=E8=BD=AC=E7=9B=98=E4=BA=8B=E4=BB=B6=EF=BC=8C=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E5=80=BC=E6=9C=BA=E6=9F=9C=E5=8F=B0=E4=BA=8B=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../msghandler/flop/CKDTHandler.java | 10 +--- .../msghandler/flop/CLDTHandler.java | 54 +++++++++++++++++++ 2 files changed, 56 insertions(+), 8 deletions(-) create mode 100644 src/main/java/com/gzzn/omms/msgexchangeapi/msghandler/flop/CLDTHandler.java diff --git a/src/main/java/com/gzzn/omms/msgexchangeapi/msghandler/flop/CKDTHandler.java b/src/main/java/com/gzzn/omms/msgexchangeapi/msghandler/flop/CKDTHandler.java index 59282247..db64a3c1 100644 --- a/src/main/java/com/gzzn/omms/msgexchangeapi/msghandler/flop/CKDTHandler.java +++ b/src/main/java/com/gzzn/omms/msgexchangeapi/msghandler/flop/CKDTHandler.java @@ -2,6 +2,7 @@ package com.gzzn.omms.msgexchangeapi.msghandler.flop; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.BeanUtils; import com.gzzn.omms.msgexchangeapi.entity.Cminmsg; import com.gzzn.omms.msgexchangeapi.entity.msg.DESKDATA; @@ -29,14 +30,7 @@ public class CKDTHandler extends FlopBaseHandler { for(OPTDESKDATA optdeskdata : ckdtMsg.getFLOP().get(0).getCKDT() ) { DESKDATA deskdata = new DESKDATA(); - deskdata.setCCLS(optdeskdata.getCCLS()); - deskdata.setCCTM(optdeskdata.getCCTM()); - deskdata.setCHKC(optdeskdata.getCHKC()); - deskdata.setCKNO(optdeskdata.getCKNO()); - deskdata.setCOTM(optdeskdata.getCOTM()); - deskdata.setCTYP(optdeskdata.getCTYP()); - deskdata.setPCCT(optdeskdata.getPCCT()); - deskdata.setPCOT(optdeskdata.getPCOT()); + BeanUtils.copyProperties(optdeskdata, deskdata); fltr.getCKDT().add(deskdata); } //添加新数据 diff --git a/src/main/java/com/gzzn/omms/msgexchangeapi/msghandler/flop/CLDTHandler.java b/src/main/java/com/gzzn/omms/msgexchangeapi/msghandler/flop/CLDTHandler.java new file mode 100644 index 00000000..5b36b505 --- /dev/null +++ b/src/main/java/com/gzzn/omms/msgexchangeapi/msghandler/flop/CLDTHandler.java @@ -0,0 +1,54 @@ +package com.gzzn.omms.msgexchangeapi.msghandler.flop; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.BeanUtils; + +import com.gzzn.omms.msgexchangeapi.entity.Cminmsg; +import com.gzzn.omms.msgexchangeapi.entity.msg.BELTDATA; +import com.gzzn.omms.msgexchangeapi.entity.msg.MSG; +import com.gzzn.omms.msgexchangeapi.entity.msg.OPTBELTDATA; +import com.gzzn.omms.msgexchangeapi.entity.msg.SCHD; +import com.gzzn.omms.msgexchangeapi.msghandler.HandlerResult; + +/** + * 行李转盘事件 carousel + * @author zhouxiunai + * + */ +public class CLDTHandler extends FlopBaseHandler { + private static Logger logger = LoggerFactory.getLogger(CLDTHandler.class); + + @Override + public HandlerResult run(Cminmsg cminmsg) { + MSG cldtMsg = exchangeService.xmlstrToObject(cminmsg.getCminmsgsClobMsg(), MSG.class); + SCHD.FLTR fltr = flightInfoService.getByFlid(cldtMsg.getFLOP().get(0).getFLID().toString()); + if(null != fltr) + { + //save + fltr.getCLDT().clear(); //清空旧数据 + for(OPTBELTDATA optbeltdata : cldtMsg.getFLOP().get(0).getCLDT() ) + { + BELTDATA beltdata = new BELTDATA(); + BeanUtils.copyProperties(optbeltdata, beltdata); + + fltr.getCLDT().add(beltdata); + } //添加新数据 + + + flightInfoService.saveFltr(fltr); + + //send and update + this.sendFltrAndMsg(fltr, cminmsg); + this.updateCminmsgToProcessed(cminmsg); + + return HandlerResult.success(fltr); + } + else { + //没有该动态航班信息 + logger.warn("没有flid为:{}的消息",cldtMsg.getFLOP().get(0).getFLID()); + } + + return HandlerResult.failure(); + } +}