|
|
|
|
@ -174,7 +174,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
//热表订单
|
|
|
|
|
List<YieldOrderEnum> yieldTypeList = new ArrayList<>(); |
|
|
|
|
yieldTypeList.add(YieldOrderEnum.YIELD_TYPE_1); |
|
|
|
|
List<YieldOrder> dataList = baseMapper.selectPage(page, entity, yieldTypeList,null); |
|
|
|
|
List<YieldOrder> dataList = baseMapper.selectPage(page, entity, yieldTypeList, null); |
|
|
|
|
if (CollectionUtils.isNotEmpty(dataList)) { |
|
|
|
|
// 1. 收集所有需要查询的 taskingId
|
|
|
|
|
List<Long> taskingIdList = dataList.stream() |
|
|
|
|
@ -240,7 +240,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
public IPage<YieldOrder> selectPageElectroplate(IPage<YieldOrder> page, YieldOrderDto entity) { |
|
|
|
|
List<YieldOrderEnum> yieldTypeList = new ArrayList<>(); |
|
|
|
|
yieldTypeList.add(YieldOrderEnum.YIELD_TYPE_1); |
|
|
|
|
List<YieldOrder> dataList = baseMapper.selectPage(page, entity, yieldTypeList,null); |
|
|
|
|
List<YieldOrder> dataList = baseMapper.selectPage(page, entity, yieldTypeList, null); |
|
|
|
|
return page.setRecords(dataList); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -269,14 +269,14 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
|
|
|
|
|
entity.setIsSinTerIng(true); |
|
|
|
|
|
|
|
|
|
List<YieldOrder> dataList = baseMapper.selectPage(page, entity, yieldTypeList,yieldStatusList); |
|
|
|
|
List<YieldOrder> dataList = baseMapper.selectPage(page, entity, yieldTypeList, yieldStatusList); |
|
|
|
|
|
|
|
|
|
// 获取所有父订单ID
|
|
|
|
|
List<Long> idList = dataList.stream() |
|
|
|
|
.map(YieldOrder::getId) |
|
|
|
|
.collect(Collectors.toList()); |
|
|
|
|
|
|
|
|
|
if(!CollectionUtils.isEmpty(idList)){ |
|
|
|
|
if (!CollectionUtils.isEmpty(idList)) { |
|
|
|
|
// 查询子订单
|
|
|
|
|
List<YieldOrder> childOrderList = baseMapper.selectByFatherYoIds(idList); |
|
|
|
|
|
|
|
|
|
@ -333,13 +333,13 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
List<YieldOrder> yieldOrderList = baseMapper.selectList(queryWrapper); |
|
|
|
|
|
|
|
|
|
// 遍历订单列表,根据异常钻状态,判断调用的校验方法
|
|
|
|
|
log.info("遍历订单列表,根据异常钻状态,判断调用的校验方法:{}",yieldOrderList.size()); |
|
|
|
|
log.info("遍历订单列表,根据异常钻状态,判断调用的校验方法:{}", yieldOrderList.size()); |
|
|
|
|
for (YieldOrder yieldOrder : yieldOrderList) { |
|
|
|
|
log.info("合规性校验开始:{}",yieldOrder.getId()); |
|
|
|
|
log.info("合规性校验开始:{}", yieldOrder.getId()); |
|
|
|
|
if (YieldOrderEnum.VALIDATION_NO.getCode() == yieldOrder.getValidationResult() || YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCode() == yieldOrder.getValidationResult()) { |
|
|
|
|
// 进行数据校验,验证不通过,不进行后续验证,直接返回;
|
|
|
|
|
log.info("进行数据校验,验证不通过,不进行后续验证,直接返回"); |
|
|
|
|
log.info("数据校验:{}",yieldOrder.getId()); |
|
|
|
|
log.info("数据校验:{}", yieldOrder.getId()); |
|
|
|
|
if (!this.verifyYieldOrderData(yieldOrder)) { |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
@ -454,7 +454,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//校验B号
|
|
|
|
|
if(StringUtils.isEmpty(yieldOrder.getRoamNo())){ |
|
|
|
|
if (StringUtils.isEmpty(yieldOrder.getRoamNo())) { |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo("未查询到B号"); |
|
|
|
|
@ -462,12 +462,12 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
} |
|
|
|
|
//查询一级工序名称
|
|
|
|
|
String firseqName = dsPartService.findNameByRoamNo(yieldOrder.getPartCode(), yieldOrder.getRoamNo()); |
|
|
|
|
if(StringUtils.isEmpty(firseqName)){ |
|
|
|
|
if (StringUtils.isEmpty(firseqName)) { |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo("未查询一级工序名称"); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
}else { |
|
|
|
|
} else { |
|
|
|
|
yieldOrder.setFirseqNameStatus(YieldOrderEnum.FIRSEQ_NAME_EXIST.getCode()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -475,11 +475,11 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
if (firseqName.contains(YieldOrderConst.ROAMNO_TEXT_FJ)) { |
|
|
|
|
DsPartEntity partEntity = dsPartService.selectDsPartByPatCodeAndVersion(yieldOrder.getPartCode(), yieldOrder.getPartVersion()); |
|
|
|
|
// 烧结订单 需要校验子件必须包含【玻璃饼、壳体、插针、石墨模】
|
|
|
|
|
if(yieldOrder.getYieldType().equals(YieldOrderEnum.YIELD_TYPE_2.getCode())){ |
|
|
|
|
if(partEntity == null){ |
|
|
|
|
if (yieldOrder.getYieldType().equals(YieldOrderEnum.YIELD_TYPE_2.getCode())) { |
|
|
|
|
if (partEntity == null) { |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo(yieldOrder.getPartCode()+": 未查询到零件信息!"); |
|
|
|
|
yieldOrder.setValidationMomo(yieldOrder.getPartCode() + ": 未查询到零件信息!"); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
|
@ -493,7 +493,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
if (CollectionUtils.isEmpty(childPartIdList)) { |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo(partEntity.getPartCode()+" :未查询到子件信息"); |
|
|
|
|
yieldOrder.setValidationMomo(partEntity.getPartCode() + " :未查询到子件信息"); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
|
@ -505,10 +505,10 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
.map(DsPartEntity::getSinTerType) |
|
|
|
|
.filter(Objects::nonNull) |
|
|
|
|
.collect(Collectors.toSet()); |
|
|
|
|
if(CollectionUtils.isEmpty(sinTerTypeSet)){ |
|
|
|
|
if (CollectionUtils.isEmpty(sinTerTypeSet)) { |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo(partEntity.getPartCode()+" :子件类型为空"); |
|
|
|
|
yieldOrder.setValidationMomo(partEntity.getPartCode() + " :子件类型为空"); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
|
@ -536,7 +536,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
|
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo("零件:"+partEntity.getPartCode()+" 缺少子件类型: " + missingDesc); |
|
|
|
|
yieldOrder.setValidationMomo("零件:" + partEntity.getPartCode() + " 缺少子件类型: " + missingDesc); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
|
@ -678,7 +678,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
if (!result) { |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo(yieldOrder.getPartCode()+": 未查询到零件信息!"); |
|
|
|
|
yieldOrder.setValidationMomo(yieldOrder.getPartCode() + ": 未查询到零件信息!"); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
|
@ -780,7 +780,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
if (CollectionUtils.isNotEmpty(subPartList)) { |
|
|
|
|
for (DsPartEntity subPart : subPartList) { |
|
|
|
|
DsPartRelationEntity partRelation = partRelationService.selectByPartCodeAndSubCode(yieldOrder.getPartCode(), subPart.getPartCode()); |
|
|
|
|
if(null != partRelation){ |
|
|
|
|
if (null != partRelation) { |
|
|
|
|
if (DsPartConstant.SIN_TER_TYPE_SMM == subPart.getSinTerType() && partRelation.getQuota() != 0) { |
|
|
|
|
MoldDemand moldDemand = moldDemandMapper.selectOne(Wrappers.<MoldDemand>lambdaQuery().eq(MoldDemand::getToolCode, subPart.getPartCode()).eq(MoldDemand::getMafStatus, MoldDemandEnum.MAF_STATUS_CREATE.getCode())); |
|
|
|
|
if (moldDemand == null) { |
|
|
|
|
@ -813,7 +813,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
if (!sourceList.contains(targetName)) { |
|
|
|
|
moldDemand.setDemandSource(currentSource + "," + targetName); |
|
|
|
|
} |
|
|
|
|
}else { |
|
|
|
|
} else { |
|
|
|
|
moldDemand.setDemandSource(MoldDemandEnum.BUSINESS_TYPE_ORDER_DEMAND.getName()); |
|
|
|
|
} |
|
|
|
|
moldDemandMapper.updateById(moldDemand); |
|
|
|
|
@ -864,7 +864,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
if (!sourceList.contains(targetName)) { |
|
|
|
|
moldDemand.setDemandSource(currentSource + "," + targetName); |
|
|
|
|
} |
|
|
|
|
}else { |
|
|
|
|
} else { |
|
|
|
|
moldDemand.setDemandSource(MoldDemandEnum.BUSINESS_TYPE_ORDER_DEMAND.getName()); |
|
|
|
|
} |
|
|
|
|
moldDemandMapper.updateById(moldDemand); |
|
|
|
|
@ -1370,6 +1370,19 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
yieldOrder.setKitPreparationTime(new Date()); |
|
|
|
|
boolean b = this.updateById(yieldOrder); |
|
|
|
|
if (b) { |
|
|
|
|
// 查询除玻璃饼外的子件订单(石墨模、插针、壳体)
|
|
|
|
|
List<YieldOrder> subOrders = this.list(Wrappers.lambdaQuery(YieldOrder.class).eq(YieldOrder::getFatherYoId, yieldOrder.getId()).ne(YieldOrder::getYieldType, YieldOrderEnum.YIELD_TYPE_3.getCode())); |
|
|
|
|
if (CollectionUtils.isNotEmpty(subOrders)) { |
|
|
|
|
// 调用出库接口
|
|
|
|
|
Long userId = AuthUtil.getUserId(); |
|
|
|
|
for (YieldOrder subOrder : subOrders) { |
|
|
|
|
try { |
|
|
|
|
wmsTaskClient.subOutRecord(subOrder.getPartCode(), subOrder.getBatchNo(), userId); |
|
|
|
|
} catch (Exception e) { |
|
|
|
|
log.error("子件订单[{}]出库失败:{}", subOrder.getCardNo(), e.getMessage()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
// 订单接收
|
|
|
|
|
this.confirm(yieldOrder.getCardNo(), "0"); |
|
|
|
|
} |
|
|
|
|
@ -1384,7 +1397,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
mesNotifyMessageClient.save(mesNotifyMessageEntity); |
|
|
|
|
} |
|
|
|
|
} catch (Exception e) { |
|
|
|
|
log.error("齐套流转消息发送失败:{}" + e.getMessage()); |
|
|
|
|
log.error("齐套流转消息发送失败:{}", e.getMessage()); |
|
|
|
|
} |
|
|
|
|
return b; |
|
|
|
|
} |
|
|
|
|
@ -1580,14 +1593,14 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
if (null == yieldOrder) { |
|
|
|
|
throw new ServiceException("未找到订单(" + cardNo + ")!"); |
|
|
|
|
} |
|
|
|
|
if(yieldOrder.getReceiveStatus().equals(YieldOrderEnum.RECEIVE_STATUS_YES.getCode())){ |
|
|
|
|
if (yieldOrder.getReceiveStatus().equals(YieldOrderEnum.RECEIVE_STATUS_YES.getCode())) { |
|
|
|
|
throw new ServiceException("订单已接收(" + cardNo + ")!"); |
|
|
|
|
} |
|
|
|
|
if ("1".equals(mark)) { |
|
|
|
|
yieldOrder.setSiteWork(true); |
|
|
|
|
} |
|
|
|
|
//校验订单是否是 急件维护
|
|
|
|
|
List<UrgentPart> urgentPartList = urgentPartService.selectByPlanNoAndPartCode(yieldOrder.getYpCode(),yieldOrder.getPartCode()); |
|
|
|
|
List<UrgentPart> urgentPartList = urgentPartService.selectByPlanNoAndPartCode(yieldOrder.getYpCode(), yieldOrder.getPartCode()); |
|
|
|
|
boolean isUrgent = false; |
|
|
|
|
if (CollectionUtils.isNotEmpty(urgentPartList)) { |
|
|
|
|
for (UrgentPart urgentPart : urgentPartList) { |
|
|
|
|
@ -1768,7 +1781,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
try { |
|
|
|
|
R<List<StGraphiteMoldOut>> listR = wmsTaskClient.generatePreOutOrder(stGraphiteMoldOutDTO); |
|
|
|
|
} catch (Exception e) { |
|
|
|
|
log.error("wms报错:{}",e.getMessage()); |
|
|
|
|
log.error("wms报错:{}", e.getMessage()); |
|
|
|
|
e.printStackTrace(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
@ -2080,8 +2093,8 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
|
|
|
|
|
LambdaQueryWrapper<YieldOrder> queryWrapper = Wrappers.lambdaQuery(YieldOrder.class).eq(YieldOrder::getCardNo, entity.getCardNo()); |
|
|
|
|
List<YieldOrder> yieldOrders = baseMapper.selectList(queryWrapper); |
|
|
|
|
if(CollectionUtils.isNotEmpty(yieldOrders)){ |
|
|
|
|
throw new ServiceException("订单已存在:{}" +entity.getCardNo()); |
|
|
|
|
if (CollectionUtils.isNotEmpty(yieldOrders)) { |
|
|
|
|
throw new ServiceException("订单已存在:{}" + entity.getCardNo()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
entity.setCardNo(nextCardNo()); |
|
|
|
|
|