重构优化登机桥消息处理
This commit is contained in:
@@ -561,6 +561,13 @@ public class SCHD
|
|||||||
@JsonProperty("ABTM")
|
@JsonProperty("ABTM")
|
||||||
protected List<BRIDGEDATA> abtm;//Air bridge time 登机桥时间数据
|
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.航班着陆中止原因的描述")
|
@ApiModelProperty(value="flight’s landing has been aborted.航班着陆中止原因的描述")
|
||||||
@XmlElement(name = "FLAB")
|
@XmlElement(name = "FLAB")
|
||||||
@JsonProperty("FLAB")
|
@JsonProperty("FLAB")
|
||||||
@@ -2151,6 +2158,14 @@ public class SCHD
|
|||||||
public void setMafl(List<MAFLDATA> mafl) {
|
public void setMafl(List<MAFLDATA> mafl) {
|
||||||
this.mafl = 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;
|
package com.gzzn.omms.msgexchangeapi.msghandler.flop;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
@@ -31,36 +33,108 @@ public class ABTMHandler extends FlopBaseHandler{
|
|||||||
|
|
||||||
//
|
//
|
||||||
OPTBRIDGEDATA optbridgedata = flop.getABTM().get(0);
|
OPTBRIDGEDATA optbridgedata = flop.getABTM().get(0);
|
||||||
|
BRIDGEDATA bridgedata = getElement(fltr.getABTM(),optbridgedata.getABOP());
|
||||||
//更新对应的撤桥或者靠桥数据,没有则新增
|
|
||||||
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
|
|
||||||
|
|
||||||
//
|
//
|
||||||
if(updated == false)
|
if(null == bridgedata)
|
||||||
{
|
{
|
||||||
BRIDGEDATA data = new BRIDGEDATA();
|
//新增
|
||||||
BeanUtils.copyProperties(optbridgedata, data);
|
bridgedata = new BRIDGEDATA();
|
||||||
fltr.getABTM().add(data);
|
BeanUtils.copyProperties(optbridgedata, bridgedata);
|
||||||
|
fltr.getABTM().add(bridgedata);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
//更新
|
||||||
|
bridgedata.setAOTM(optbridgedata.getAOTM());
|
||||||
}
|
}
|
||||||
|
|
||||||
return fltr;
|
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