添加航班删除事件的处理

This commit is contained in:
zhouxiunai
2018-12-11 09:54:01 +08:00
parent 894288ec0a
commit 5a2bf4015a
4 changed files with 77 additions and 1 deletions
@@ -0,0 +1,45 @@
package com.gzzn.omms.msgexchangeapi.msghandler.flop;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.gzzn.omms.msgexchangeapi.entity.Cminmsg;
import com.gzzn.omms.msgexchangeapi.entity.msg.FLOP;
import com.gzzn.omms.msgexchangeapi.entity.msg.MSG;
import com.gzzn.omms.msgexchangeapi.entity.msg.SCHD;
import com.gzzn.omms.msgexchangeapi.msghandler.HandlerResult;
/**
* 处理航班删除事件
* @author zhouxiunai
*
*/
public class FDELHandler extends FlopBaseHandler {
private static Logger logger = LoggerFactory.getLogger(FDELHandler.class);
@Override
public HandlerResult run(Cminmsg cminmsg) {
MSG cldtMsg = exchangeService.xmlstrToObject(cminmsg.getCminmsgsClobMsg(), MSG.class);
FLOP flop = cldtMsg.getFLOP().get(0);
SCHD.FLTR fltr = flightInfoService.getByFlid(flop.getFLID().toString());
if(null != fltr)
{
//
flightInfoService.deleteFltr(fltr);
//send and update
this.sendMsg(cminmsg); //只发送删除消息,前端自行物理删除动态航班信息
this.updateCminmsgToProcessed(cminmsg);
return HandlerResult.success(fltr);
}
else {
//没有该动态航班信息
logger.warn("没有flid为:{}的消息",flop.getFLID());
return HandlerResult.failure();
}
}
}
@@ -25,7 +25,7 @@ import com.gzzn.omms.msgexchangeapi.utils.SpringUtil;
*
*/
public class FlopBaseHandler implements IBaseHandler {
private static Logger logger = LoggerFactory.getLogger(CLDTHandler.class);
private static Logger logger = LoggerFactory.getLogger(FlopBaseHandler.class);
protected IExchangeService exchangeService;
protected IFlightInfoService flightInfoService;
@@ -100,6 +100,20 @@ public class FlopBaseHandler implements IBaseHandler {
);
kafkaservice.msgSend("msg", msg);
}
/**
* 仅发送动态消息
* @param cminmsg
*/
protected void sendMsg(Cminmsg cminmsg)
{
//send msg
String msg = exchangeService.xmlstrToJson(
cminmsg.getCminmsgsClobMsg()
);
kafkaservice.msgSend("msg", msg);
}
/**
* 更新Cminmsg状态为已处理