添加上下轮档及撤销上下轮档事件。子系统增加omms
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
package com.gzzn.omms.msgexchangeapi.msghandler.flop;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import com.gzzn.omms.msgexchangeapi.entity.msg.CHOCKSDATA;
|
||||
import com.gzzn.omms.msgexchangeapi.entity.msg.DELAYDATA;
|
||||
import com.gzzn.omms.msgexchangeapi.entity.msg.FLOP;
|
||||
import com.gzzn.omms.msgexchangeapi.entity.msg.OPTCHOCKSDATA;
|
||||
import com.gzzn.omms.msgexchangeapi.entity.msg.OPTDELAYDATA;
|
||||
import com.gzzn.omms.msgexchangeapi.entity.msg.SCHD;
|
||||
import com.gzzn.omms.msgexchangeapi.msghandler.flop.base.FlopBaseHandler;
|
||||
|
||||
@@ -17,28 +17,51 @@ import com.gzzn.omms.msgexchangeapi.msghandler.flop.base.FlopBaseHandler;
|
||||
*
|
||||
*/
|
||||
public class CHOTHandler extends FlopBaseHandler {
|
||||
private static Logger logger = LoggerFactory.getLogger(CHOTHandler.class);
|
||||
|
||||
@Override
|
||||
protected SCHD.FLTR updateFltr(FLOP flop,SCHD.FLTR fltr)
|
||||
{
|
||||
//update
|
||||
if(CollectionUtils.isEmpty(flop.getCHOT()) )
|
||||
{
|
||||
//清空轮档时间事件
|
||||
fltr.getCHOT().clear();
|
||||
}
|
||||
else {
|
||||
//新增
|
||||
for (OPTCHOCKSDATA optchocksdata : flop.getCHOT() ) {
|
||||
|
||||
//靠桥,撤桥,取消靠桥,取消撤桥
|
||||
if(flop.getCHOT().size() != 1)
|
||||
{
|
||||
logger.error("CHOT 的xml消息不符合只有一条的接口约定");
|
||||
return fltr;
|
||||
}
|
||||
|
||||
CHOCKSDATA chocksdata = new CHOCKSDATA();
|
||||
BeanUtils.copyProperties(optchocksdata, chocksdata);
|
||||
//
|
||||
OPTCHOCKSDATA optchocksdata = flop.getCHOT().get(0);
|
||||
|
||||
//更新对应的撤桥或者靠桥数据,没有则新增
|
||||
Boolean updated = false;
|
||||
for(int i = 0; i < fltr.getCHOT().size(); i++)
|
||||
{
|
||||
CHOCKSDATA chocksdata = fltr.getCHOT().get(i);
|
||||
|
||||
if(chocksdata.getCHID().equals(optchocksdata.getCHID()))
|
||||
{
|
||||
if(StringUtils.isEmpty(optchocksdata.getCHTM()))
|
||||
{
|
||||
//撤销上下轮档
|
||||
fltr.getCHOT().remove(i);
|
||||
}
|
||||
else {
|
||||
BeanUtils.copyProperties(optchocksdata, chocksdata);//tofix 检查可能的错误
|
||||
}
|
||||
updated = true;
|
||||
break;
|
||||
}
|
||||
}//end for
|
||||
|
||||
//
|
||||
if(updated == false)
|
||||
{
|
||||
CHOCKSDATA chocksdata = new CHOCKSDATA();
|
||||
BeanUtils.copyProperties(optchocksdata, chocksdata);
|
||||
fltr.getCHOT().add(chocksdata);
|
||||
}
|
||||
|
||||
fltr.getCHOT().add(chocksdata);
|
||||
}
|
||||
}
|
||||
|
||||
return fltr;
|
||||
return fltr;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user