添加主航班的共享航班信息
This commit is contained in:
@@ -0,0 +1,39 @@
|
|||||||
|
package com.gzzn.omms.msgexchangeapi.entity.msg;
|
||||||
|
|
||||||
|
import java.math.BigInteger;
|
||||||
|
|
||||||
|
import javax.xml.bind.annotation.XmlElement;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
|
public class MAFLDATA {
|
||||||
|
|
||||||
|
@ApiModelProperty(value="航班id")
|
||||||
|
@XmlElement(name = "FLID", required = true)
|
||||||
|
@JsonProperty("FLID")
|
||||||
|
protected BigInteger flid;//航班id
|
||||||
|
|
||||||
|
@ApiModelProperty(value="航班号 ")
|
||||||
|
@XmlElement(name = "FLNO", required = true)
|
||||||
|
@JsonProperty("FLNO")
|
||||||
|
protected String flno;//flight number 航班号
|
||||||
|
|
||||||
|
public BigInteger getFlid() {
|
||||||
|
return flid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFlid(BigInteger flid) {
|
||||||
|
this.flid = flid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getFlno() {
|
||||||
|
return flno;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFlno(String flno) {
|
||||||
|
this.flno = flno;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -360,7 +360,7 @@ public class SCHD
|
|||||||
@JsonProperty("FLTY")
|
@JsonProperty("FLTY")
|
||||||
protected String flty;//航班类型如客机、货机、军用、VIP等
|
protected String flty;//航班类型如客机、货机、军用、VIP等
|
||||||
|
|
||||||
@ApiModelProperty(value="Flight indicator 航班标识 ")
|
@ApiModelProperty(value="Flight indicator 航班标识,D 国内 I 国际 M 混合 ")
|
||||||
@XmlElement(name = "FLIN", required = true)
|
@XmlElement(name = "FLIN", required = true)
|
||||||
@JsonProperty("FLIN")
|
@JsonProperty("FLIN")
|
||||||
@XmlSchemaType(name = "string")
|
@XmlSchemaType(name = "string")
|
||||||
@@ -633,6 +633,11 @@ public class SCHD
|
|||||||
@JsonProperty("ABN")
|
@JsonProperty("ABN")
|
||||||
protected List<ABNDATA> abn;//abnormal 异常状态信息列表,DLY,RTN,CAN,ALT
|
protected List<ABNDATA> abn;//abnormal 异常状态信息列表,DLY,RTN,CAN,ALT
|
||||||
|
|
||||||
|
@ApiModelProperty(value="共享航班数据信息")
|
||||||
|
@XmlElement(name = "MAFL")
|
||||||
|
@JsonProperty("MAFL")
|
||||||
|
protected List<MAFLDATA> mafl;//共享航班数据信息
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取flid属性的值。
|
* 获取flid属性的值。
|
||||||
*
|
*
|
||||||
@@ -2135,6 +2140,17 @@ public class SCHD
|
|||||||
public void setAbn(List<ABNDATA> abn) {
|
public void setAbn(List<ABNDATA> abn) {
|
||||||
this.abn = abn;
|
this.abn = abn;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<MAFLDATA> getMafl() {
|
||||||
|
if (null == mafl) {
|
||||||
|
mafl = new ArrayList<MAFLDATA>();
|
||||||
|
}
|
||||||
|
return mafl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMafl(List<MAFLDATA> mafl) {
|
||||||
|
this.mafl = mafl;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,6 +31,10 @@ public class FDELHandler extends FlopBaseHandler {
|
|||||||
//
|
//
|
||||||
flightInfoService.deleteFltr(fltr);
|
flightInfoService.deleteFltr(fltr);
|
||||||
|
|
||||||
|
|
||||||
|
//TODO: 如果是共享航班,更新对应的主航班共享航班列表。从主航班中删除
|
||||||
|
|
||||||
|
|
||||||
//send and update
|
//send and update
|
||||||
this.sendMsg(cminmsg); //只发送删除消息,前端自行物理删除动态航班信息
|
this.sendMsg(cminmsg); //只发送删除消息,前端自行物理删除动态航班信息
|
||||||
this.updateCminmsgToProcessed(cminmsg);
|
this.updateCminmsgToProcessed(cminmsg);
|
||||||
|
|||||||
+33
-1
@@ -7,10 +7,13 @@ import java.util.HashMap;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import com.gzzn.omms.msgexchangeapi.entity.CminmsgWapper;
|
import com.gzzn.omms.msgexchangeapi.entity.CminmsgWapper;
|
||||||
|
import com.gzzn.omms.msgexchangeapi.entity.msg.MAFLDATA;
|
||||||
import com.gzzn.omms.msgexchangeapi.entity.msg.MSG;
|
import com.gzzn.omms.msgexchangeapi.entity.msg.MSG;
|
||||||
import com.gzzn.omms.msgexchangeapi.entity.msg.SCHD;
|
import com.gzzn.omms.msgexchangeapi.entity.msg.SCHD;
|
||||||
import com.gzzn.omms.msgexchangeapi.entity.msg.SCHD.FLTR;
|
import com.gzzn.omms.msgexchangeapi.entity.msg.SCHD.FLTR;
|
||||||
@@ -18,9 +21,11 @@ import com.gzzn.omms.msgexchangeapi.msghandler.MsgHandlerDispatcher;
|
|||||||
import com.gzzn.omms.msgexchangeapi.redis.RedisService;
|
import com.gzzn.omms.msgexchangeapi.redis.RedisService;
|
||||||
import com.gzzn.omms.msgexchangeapi.service.exchange.IExchangeService;
|
import com.gzzn.omms.msgexchangeapi.service.exchange.IExchangeService;
|
||||||
|
|
||||||
|
|
||||||
@Service("flightInfoService")
|
@Service("flightInfoService")
|
||||||
public class FlightInfoServiceImpl implements IFlightInfoService {
|
public class FlightInfoServiceImpl implements IFlightInfoService {
|
||||||
private static final String redisKey="flightInfo";
|
private static final String redisKey="flightInfo";
|
||||||
|
Logger logger = LoggerFactory.getLogger(FlightInfoServiceImpl.class);
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
RedisService redisService;
|
RedisService redisService;
|
||||||
@@ -40,11 +45,38 @@ public class FlightInfoServiceImpl implements IFlightInfoService {
|
|||||||
.getSCHD()
|
.getSCHD()
|
||||||
.getFLTR();
|
.getFLTR();
|
||||||
|
|
||||||
Map<String, Object> mapFltr = new HashMap();
|
|
||||||
|
//建立Map索引,便于查找
|
||||||
|
Map<String, Object> mapFltr = new HashMap();
|
||||||
for(FLTR fltr : lsFltr)
|
for(FLTR fltr : lsFltr)
|
||||||
{
|
{
|
||||||
mapFltr.put(fltr.getFLID().toString(), fltr);
|
mapFltr.put(fltr.getFLID().toString(), fltr);
|
||||||
}
|
}
|
||||||
|
//设置主航班的共享航班信息
|
||||||
|
for(FLTR fltr : lsFltr)
|
||||||
|
{
|
||||||
|
if(fltr.getMAID() == null)
|
||||||
|
{
|
||||||
|
continue; //不是共享航班
|
||||||
|
}
|
||||||
|
|
||||||
|
String maid = fltr.getMAID().toString();
|
||||||
|
FLTR fltrMa = (FLTR) mapFltr.get(maid);
|
||||||
|
if(null == fltrMa)
|
||||||
|
{
|
||||||
|
logger.error("共享航班:{},未找到航班id为:{}的主航班信息{}",fltr.getFLID(),maid);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
MAFLDATA mafldata = new MAFLDATA();
|
||||||
|
mafldata.setFlid(fltr.getFLID());
|
||||||
|
mafldata.setFlno(fltr.getFLNO());
|
||||||
|
|
||||||
|
fltrMa.getMafl().add(mafldata);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//保存到redis
|
||||||
return redisService.hmset(redisKey, mapFltr);
|
return redisService.hmset(redisKey, mapFltr);
|
||||||
} //end function
|
} //end function
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ import com.gzzn.omms.msgexchangeapi.dao.CminmsgDao;
|
|||||||
import com.gzzn.omms.msgexchangeapi.entity.Cminmsg;
|
import com.gzzn.omms.msgexchangeapi.entity.Cminmsg;
|
||||||
import com.gzzn.omms.msgexchangeapi.entity.CminmsgWapper;
|
import com.gzzn.omms.msgexchangeapi.entity.CminmsgWapper;
|
||||||
import com.gzzn.omms.msgexchangeapi.msghandler.HandlerResult;
|
import com.gzzn.omms.msgexchangeapi.msghandler.HandlerResult;
|
||||||
import com.gzzn.omms.msgexchangeapi.msghandler.flop.LACLHandler;
|
|
||||||
import com.gzzn.omms.msgexchangeapi.service.exchange.IExchangeService;
|
import com.gzzn.omms.msgexchangeapi.service.exchange.IExchangeService;
|
||||||
import com.gzzn.omms.msgexchangeapi.utils.JsonUtil;
|
import com.gzzn.omms.msgexchangeapi.utils.JsonUtil;
|
||||||
|
|
||||||
@@ -27,7 +26,7 @@ public class DNLDHandlerTest {
|
|||||||
@Test
|
@Test
|
||||||
public void testRun()
|
public void testRun()
|
||||||
{
|
{
|
||||||
Cminmsg cminmsg = cminmsgDao.findOne(82463L);
|
Cminmsg cminmsg = cminmsgDao.findOne(233338L);
|
||||||
CminmsgWapper cminmsgWapper = new CminmsgWapper(cminmsg);
|
CminmsgWapper cminmsgWapper = new CminmsgWapper(cminmsg);
|
||||||
cminmsgWapper.setMsg(exchangeService.xmlToMsg(cminmsg.getCminmsgsClobMsg()));
|
cminmsgWapper.setMsg(exchangeService.xmlToMsg(cminmsg.getCminmsgsClobMsg()));
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user