NmmsBase.java 2.7 KB
package com.tianbo.analysis.model;

import com.tianbo.analysis.model.CustomReception;
import com.tianbo.analysis.service.imp.CoustomAnalysisServiceImp;
import com.tianbo.analysis.service.imp.ShareServiceImp;
import com.tianbo.analysis.tools.AWBTools;
import com.tianbo.util.Date.DateUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.scheduling.annotation.Async;

import java.util.Date;

@Slf4j
@Async
public class NmmsBase {

    public ShareServiceImp shareServiceImp;
    public CoustomAnalysisServiceImp coustomAnalysisServiceImp;
    public String awbA ;
    public String awbH ;
    public String rspCode;
    public String nmsStatusCode;
    public String reception;
    public String flightDateStr;
    public CustomReception customReception;
    public Date flightDate;

    public int insertRecept(CustomReception customReception){
        log.warn("公共对象监控打印{}",this);
        this.shareServiceImp = new ShareServiceImp();
        // 发送日志 插入
        this.coustomAnalysisServiceImp = new CoustomAnalysisServiceImp();
        this.customReception = customReception;

        // 主单号;处理主单格式,将海关回执的主单号58019316861,变为580-19316861
        this.awbA =  AWBTools.awbFormat(customReception.getWayBillMaster());
        this.awbH = customReception.getWayBillSecond();
        this.rspCode = customReception.getResponseCode();
        this.nmsStatusCode = AWBTools.transCusRspCode(rspCode);

        this.reception = customReception.getResponseText();
        this.flightDateStr = customReception.getFlightDate();
        log.info("开始解析:运单号 {} 回执类型:{} ",awbA,customReception.getMessageType());
        if (!StringUtils.isEmpty(flightDateStr)) {
            this.flightDate = DateUtil.formatByyyyyMMdd(flightDateStr);

            // 判断航班号 航班日期  是否为空
            if (flightDate != null && customReception.getFlightNo() != null){
                //有分单号 更新分单回执
                if(!StringUtils.isEmpty(awbH)){
                    return second();
                }

                if (!StringUtils.isEmpty(awbA)){
                    return master();
                }
            }else {
                //从发送日志表查找发送MESSAGEID进行二次入库
                return shareServiceImp.share(customReception.getMessageType(), customReception);
            }
        }

        return 0;

    }

    /**
     * 入库分单回执信息
     * @return 成功返回1,失败返回0。
     */
    public int second() {
        return 0;
    }

    /**
     * 入库分单回执信息
     * @return 成功返回1,失败返回0。
     */
    public int master() {
        return 0;
    }
}