重构优化登机桥消息处理
This commit is contained in:
@@ -561,6 +561,13 @@ public class SCHD
|
||||
@JsonProperty("ABTM")
|
||||
protected List<BRIDGEDATA> abtm;//Air bridge time 登机桥时间数据
|
||||
|
||||
|
||||
@ApiModelProperty(value="登机桥数据,逗号分隔")
|
||||
@XmlElement(name = "ABDG")
|
||||
@JsonProperty("ABDG")
|
||||
protected String abdg;//登机桥数据,逗号分隔
|
||||
|
||||
|
||||
@ApiModelProperty(value="flight’s landing has been aborted.航班着陆中止原因的描述")
|
||||
@XmlElement(name = "FLAB")
|
||||
@JsonProperty("FLAB")
|
||||
@@ -2151,6 +2158,14 @@ public class SCHD
|
||||
public void setMafl(List<MAFLDATA> mafl) {
|
||||
this.mafl = mafl;
|
||||
}
|
||||
|
||||
public String getAbdg() {
|
||||
return abdg;
|
||||
}
|
||||
|
||||
public void setAbdg(String abdg) {
|
||||
this.abdg = abdg;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package com.gzzn.omms.msgexchangeapi.msghandler.flop;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
@@ -31,36 +33,108 @@ public class ABTMHandler extends FlopBaseHandler{
|
||||
|
||||
//
|
||||
OPTBRIDGEDATA optbridgedata = flop.getABTM().get(0);
|
||||
|
||||
//更新对应的撤桥或者靠桥数据,没有则新增
|
||||
Boolean updated = false;
|
||||
for(int i = 0; i < fltr.getABTM().size(); i++)
|
||||
{
|
||||
BRIDGEDATA bridgedata = fltr.getABTM().get(i);
|
||||
|
||||
if(bridgedata.getABOP().equals(optbridgedata.getABOP()))
|
||||
{
|
||||
if(StringUtils.isEmpty(optbridgedata.getAOTM()))
|
||||
{
|
||||
//撤销靠桥或撤桥
|
||||
fltr.getABTM().remove(i);
|
||||
}
|
||||
else {
|
||||
BeanUtils.copyProperties(optbridgedata, bridgedata);
|
||||
}
|
||||
updated = true;
|
||||
break;
|
||||
}
|
||||
}//end for
|
||||
BRIDGEDATA bridgedata = getElement(fltr.getABTM(),optbridgedata.getABOP());
|
||||
|
||||
//
|
||||
if(updated == false)
|
||||
if(null == bridgedata)
|
||||
{
|
||||
BRIDGEDATA data = new BRIDGEDATA();
|
||||
BeanUtils.copyProperties(optbridgedata, data);
|
||||
fltr.getABTM().add(data);
|
||||
//新增
|
||||
bridgedata = new BRIDGEDATA();
|
||||
BeanUtils.copyProperties(optbridgedata, bridgedata);
|
||||
fltr.getABTM().add(bridgedata);
|
||||
}
|
||||
else {
|
||||
//更新
|
||||
bridgedata.setAOTM(optbridgedata.getAOTM());
|
||||
}
|
||||
|
||||
return fltr;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private BRIDGEDATA getElement(List<BRIDGEDATA> abtms,String action)
|
||||
{
|
||||
for(BRIDGEDATA bridgedata : abtms)
|
||||
{
|
||||
if(bridgedata.getABOP().equals(action))
|
||||
{
|
||||
return bridgedata;
|
||||
}
|
||||
}//end for
|
||||
|
||||
return null;
|
||||
}//end function
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 是否撤桥动作
|
||||
* @param optbridgedata 操作数据封装
|
||||
* @return
|
||||
*/
|
||||
private Boolean isDetach(OPTBRIDGEDATA optbridgedata)
|
||||
{
|
||||
if(optbridgedata.getABOP().equals("D")
|
||||
&& !StringUtils.isEmpty(optbridgedata.getAOTM()))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
} //end function
|
||||
|
||||
|
||||
/**
|
||||
* 是否靠桥动作
|
||||
* @param optbridgedata
|
||||
* @return
|
||||
*/
|
||||
private Boolean isAttach(OPTBRIDGEDATA optbridgedata)
|
||||
{
|
||||
if(optbridgedata.getABOP().equals("A")
|
||||
&& !StringUtils.isEmpty(optbridgedata.getAOTM()))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
} //end function
|
||||
|
||||
|
||||
/**
|
||||
* 是否取消撤桥动作
|
||||
* @param optbridgedata 操作数据封装
|
||||
* @return
|
||||
*/
|
||||
private Boolean isCancelDetach(OPTBRIDGEDATA optbridgedata)
|
||||
{
|
||||
if(optbridgedata.getABOP().equals("D")
|
||||
&& StringUtils.isEmpty(optbridgedata.getAOTM()))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
} //end function
|
||||
|
||||
|
||||
/**
|
||||
* 是否取消靠桥动作
|
||||
* @param optbridgedata
|
||||
* @return
|
||||
*/
|
||||
private Boolean isCancelAttach(OPTBRIDGEDATA optbridgedata)
|
||||
{
|
||||
if(optbridgedata.getABOP().equals("A")
|
||||
&& StringUtils.isEmpty(optbridgedata.getAOTM()))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
} //end function
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user