NmmsImportServiceImpl.java 2.9 KB
package com.tianbo.analysis.service.imp;

import com.tianbo.analysis.dao.ORIGINMANIFESTMASTERMapper;
import com.tianbo.analysis.dao.OriginmanifestsecondaryMapper;
import com.tianbo.analysis.model.ORIGINMANIFESTMASTER;
import com.tianbo.analysis.model.Originmanifestsecondary;
import com.tianbo.analysis.service.NmmsImportService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.Date;
import java.util.List;

/**
 * @author shenhl
 * <p>
 * 2022/2/15/15:14
 */
@Service
@Slf4j
public class NmmsImportServiceImpl implements NmmsImportService{

    @Autowired
    OriginmanifestsecondaryMapper originmanifestsecondaryMapper;

    @Autowired
    ORIGINMANIFESTMASTERMapper originmanifestmasterMapper;

            @Override
            public int mountAwbh(ORIGINMANIFESTMASTER master) {

                int w = 0;
                String awba = "";
                try {
                    if (master.getAwbhIds().contains(",")){
                        String[] split = master.getAwbhIds().split(",");
                        // 查询该分单绑定的主单id
                        for (int i=0; i< split.length; i++){
                            w = mountAwbhBreakUp(master.getAwbhIds(), master.getFlightno(), master.getFlightDate());
                        }
                    }else {
                        w = mountAwbhBreakUp(master.getAwbhIds(), master.getFlightno(), master.getFlightDate());
                    }
                    return w;
                }catch (Exception e){
                    e.printStackTrace();
                    return w;
                }
            }

            private int mountAwbhBreakUp(String awbh, String flightNo, Date flightDate){
                int w = 0;
                String awba = "";
                // 查询需要挂载的主单号
                Originmanifestsecondary originmanifestsecondary = originmanifestsecondaryMapper.findAwba(awbh);
                log.info("查询的主单id:{}", originmanifestsecondary);
                if (originmanifestsecondary != null){
                    awba = originmanifestsecondary.getWaybillnomaster();
                    // 通过主单号 航班号 航班日期 查询相对应的主单id
                    ORIGINMANIFESTMASTER originmanifestmaster = originmanifestmasterMapper.findAwba(awba, flightNo, flightDate);
                    // 修改分单表 所绑定的主单id
            if (originmanifestmaster!=null){
                log.info("挂载主单的id:{}", originmanifestmaster);
                log.info("修改分单数据参数:{}", awbh, originmanifestmaster.getAutoid());
                w = originmanifestsecondaryMapper.updateMasterAutoId(awbh, originmanifestmaster.getAutoid());
                log.info("修改后的状态:{}", w);
            }
        }



        return w;
    }
}