共享航班删除后,更新主航班信息并推送更新给前端。

This commit is contained in:
zhouxiunai
2019-01-16 10:44:37 +08:00
parent 2557390fcd
commit b55c446261
2 changed files with 31 additions and 4 deletions
@@ -2,9 +2,11 @@ package com.gzzn.omms.msgexchangeapi.msghandler.flop;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.StringUtils;
import com.gzzn.omms.msgexchangeapi.entity.CminmsgWapper;
import com.gzzn.omms.msgexchangeapi.entity.msg.FLOP;
import com.gzzn.omms.msgexchangeapi.entity.msg.MAFLDATA;
import com.gzzn.omms.msgexchangeapi.entity.msg.MSG;
import com.gzzn.omms.msgexchangeapi.entity.msg.SCHD;
import com.gzzn.omms.msgexchangeapi.msghandler.HandlerResult;
@@ -31,14 +33,28 @@ public class FDELHandler extends FlopBaseHandler {
//
flightInfoService.deleteFltr(fltr);
//TODO: 如果是共享航班,更新对应的主航班共享航班列表。从主航班中删除
//send and update
this.sendMsg(cminmsg); //只发送删除消息,前端自行物理删除动态航班信息
this.updateCminmsgToProcessed(cminmsg);
//如果是共享航班,要对应更新
if(null != fltr.getMAID())
{
SCHD.FLTR fltrMafl = flightInfoService.getByFlid(fltr.getMAID().toString()); //获取对应的主航班
//TODO: 如果是共享航班,更新对应的主航班共享航班列表。从主航班中删除
for(int i=0;i < fltrMafl.getMafl().size();i++)
{
MAFLDATA mafldata = fltrMafl.getMafl().get(i);
if(mafldata.getFlid() == fltr.getFLID())
{
fltrMafl.getMafl().remove(i);
}
}//end for
//推送变更后的主航班信息
this.sendFltr(fltrMafl);
}
return HandlerResult.success(fltr);
}
else {
@@ -101,6 +101,17 @@ public class FlopBaseHandler implements IBaseHandler {
kafkaservice.msgSend("msg", msg);
}
/**
* 发送动态航班信息
* @param fltr
*/
protected void sendFltr(SCHD.FLTR fltr)
{
//send schd
String schdMsg = JsonUtil.getString(fltr);
kafkaservice.msgSend("schd", schdMsg);
}
/**
* 仅发送动态消息