|
|
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean
|
|
|
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesPartShippingGroup
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagement
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesLoadingList
|
|
|
import cn.estsh.i3plus.pojo.mes.dbinterface.MesInterfaceDataMapper
|
|
|
import cn.estsh.i3plus.pojo.mes.repository.MesLoadingListRepository
|
|
|
import cn.estsh.i3plus.pojo.mes.repository.MesShippingOrderManagementRepository
|
|
|
import org.slf4j.Logger
|
|
|
import org.slf4j.LoggerFactory
|
|
|
import org.springframework.beans.factory.annotation.Autowired
|
|
|
import org.springframework.util.StringUtils
|
|
|
|
|
|
/**
|
|
|
* @Description : MES2PISCES 装车单明细
|
|
|
* @Reference :
|
|
|
* @Author : gsz
|
|
|
* @CreateDate 2024/7/14 10:59
|
|
|
* @Modify:
|
|
|
* */
|
|
|
class MesToPiscesMesLoadingListDetail {
|
|
|
|
|
|
public static final Logger LOGGER = LoggerFactory.getLogger(MesToPiscesMesLoadingListDetail.class)
|
|
|
|
|
|
@Autowired
|
|
|
private MesLoadingListRepository mesLoadingListRepository;
|
|
|
@Autowired
|
|
|
private MesShippingOrderManagementRepository mesShippingRepository;
|
|
|
|
|
|
def filterData(MesInterfaceDataMapper mapper, List<Map<String, Object>> srcData) throws Exception {
|
|
|
if (srcData == null || srcData.size() == 0) {
|
|
|
return srcData
|
|
|
}
|
|
|
String organizeCode = mapper.getOrganizeCode();
|
|
|
Map<String, MesShippingOrderManagement> mesProductionRecordMap = new HashMap<>();
|
|
|
Map<Long, MesLoadingList> mesLoadingListMap = new HashMap<>();
|
|
|
|
|
|
for (Map<String, Object> rowMap : srcData) {
|
|
|
|
|
|
//发运单
|
|
|
if (!StringUtils.isEmpty(rowMap.get("shipping_code"))) {
|
|
|
MesShippingOrderManagement mesShippingOrderManagement = getShippingCode(organizeCode,String.valueOf(rowMap.get("shipping_code")),mesProductionRecordMap)
|
|
|
if (!Objects.isNull(mesShippingOrderManagement)) {
|
|
|
rowMap.put("SHIPPING_FID", mesShippingOrderManagement.getFid())
|
|
|
} else {
|
|
|
rowMap.put("SHIPPING_FID", null)
|
|
|
LOGGER.info("发运单shipping_code:{},信息不存在", String.valueOf(rowMap.get("shipping_code")))
|
|
|
}
|
|
|
}else{
|
|
|
rowMap.put("SHIPPING_FID", null)
|
|
|
}
|
|
|
//装车单
|
|
|
if (!StringUtils.isEmpty(rowMap.get("pid"))) {
|
|
|
long id = Long.parseLong(String.valueOf(rowMap.get("pid")));
|
|
|
if (Objects.isNull(mesLoadingListMap) || !mesLoadingListMap.containsKey(id)) {
|
|
|
DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode)
|
|
|
DdlPreparedPack.getNumEqualPack(id,"id",packBean)
|
|
|
mesLoadingListMap.put(id, mesLoadingListRepository.getByProperty(packBean))
|
|
|
}
|
|
|
MesLoadingList mesLoadingList = mesLoadingListMap.get(id)
|
|
|
if (!Objects.isNull(mesLoadingList)) {
|
|
|
rowMap.put("LOADING_LIST_FID", mesLoadingList.getFid())
|
|
|
} else {
|
|
|
rowMap.put("LOADING_LIST_FID", null)
|
|
|
LOGGER.info("装车id:{},信息不存在", String.valueOf(rowMap.get("pid")))
|
|
|
}
|
|
|
}else{
|
|
|
rowMap.put("LOADING_LIST_FID", null)
|
|
|
}
|
|
|
}
|
|
|
return srcData;
|
|
|
}
|
|
|
|
|
|
|
|
|
private MesShippingOrderManagement getShippingCode(String organizeCode, String shippingCode, Map<String, MesShippingOrderManagement> mesShippingOrderManagementMap) {
|
|
|
if (Objects.isNull(mesShippingOrderManagementMap) || !mesShippingOrderManagementMap.containsKey(shippingCode)) {
|
|
|
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode);
|
|
|
DdlPreparedPack.getStringEqualPack(shippingCode, "shippingCode", ddlPackBean);
|
|
|
mesShippingOrderManagementMap.put(shippingCode, mesShippingRepository.getByProperty(ddlPackBean))
|
|
|
}
|
|
|
return mesShippingOrderManagementMap.get(shippingCode);
|
|
|
}
|
|
|
|
|
|
} |