|
|
|
|
@ -66,7 +66,27 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public IPage<YieldOrder> selectPage(IPage<YieldOrder> page, YieldOrder entity) { |
|
|
|
|
List<YieldOrder> dataList = baseMapper.selectPage(page, entity); |
|
|
|
|
List<YieldOrder> dataList = baseMapper.selectPage(page, entity, null); |
|
|
|
|
return page.setRecords(dataList); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public IPage<YieldOrder> selectPageElectroplate(IPage<YieldOrder> page, YieldOrder entity) { |
|
|
|
|
List<YieldOrderEnum> yieldTypeList = new ArrayList<>(); |
|
|
|
|
yieldTypeList.add(YieldOrderEnum.YIELD_TYPE_1); |
|
|
|
|
List<YieldOrder> dataList = baseMapper.selectPage(page, entity, yieldTypeList); |
|
|
|
|
return page.setRecords(dataList); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public IPage<YieldOrder> selectPageSintering(IPage<YieldOrder> page, YieldOrder entity) { |
|
|
|
|
List<YieldOrderEnum> yieldTypeList = new ArrayList<>(); |
|
|
|
|
yieldTypeList.add(YieldOrderEnum.YIELD_TYPE_2); |
|
|
|
|
yieldTypeList.add(YieldOrderEnum.YIELD_TYPE_3); |
|
|
|
|
yieldTypeList.add(YieldOrderEnum.YIELD_TYPE_4); |
|
|
|
|
yieldTypeList.add(YieldOrderEnum.YIELD_TYPE_5); |
|
|
|
|
yieldTypeList.add(YieldOrderEnum.YIELD_TYPE_6); |
|
|
|
|
List<YieldOrder> dataList = baseMapper.selectPage(page, entity, yieldTypeList); |
|
|
|
|
return page.setRecords(dataList); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -77,7 +97,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
ids.forEach(id -> { |
|
|
|
|
YieldOrder yieldOrder = new YieldOrder(); |
|
|
|
|
yieldOrder.setId(id); |
|
|
|
|
yieldOrder.setReceiveStatus(YieldOrderEnum.RECEIVE_STATUS_YES.getCategory()); |
|
|
|
|
yieldOrder.setReceiveStatus(YieldOrderEnum.RECEIVE_STATUS_YES.getCode()); |
|
|
|
|
yieldOrderList.add(yieldOrder); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
@ -115,7 +135,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
.ne(YieldOrder::getId, yieldOrder.getId()); |
|
|
|
|
YieldOrder yieldOrderCheck = baseMapper.selectOne(wrapper); |
|
|
|
|
if (ObjectUtil.isNotEmpty(yieldOrderCheck)) { |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCategory()); |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo("已存在该流程卡号的数据"); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
@ -125,7 +145,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
// 2. 当生产订单类型为:表处理,壳体,插针订单,当镀种为空或面积为0时,不得自动分派并提示
|
|
|
|
|
if (YieldOrderEnum.YIELD_TYPE_1.equals(yieldOrder.getYieldType()) || YieldOrderEnum.YIELD_TYPE_4.equals(yieldOrder.getYieldType()) || YieldOrderEnum.YIELD_TYPE_5.equals(yieldOrder.getYieldType())) { |
|
|
|
|
if (StringUtils.isBlank(yieldOrder.getPlate()) || yieldOrder.getYpArea() == 0) { |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCategory()); |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo("生产订单中镀种或面积为空,请维护基础数据"); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
@ -135,7 +155,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
|
|
|
|
|
// 3. 玻璃饼订单工艺路线包含外购不再自动分派,直接关闭订单
|
|
|
|
|
if (YieldOrderEnum.YIELD_TYPE_3.equals(yieldOrder.getYieldType()) && yieldOrder.getPrimaryCraft().contains(YieldOrderConst.PRIMARY_CRAFT_WG)) { |
|
|
|
|
yieldOrder.setStatus(YieldOrderEnum.STATUS_CLOSED.getCategory()); |
|
|
|
|
yieldOrder.setStatus(YieldOrderEnum.STATUS_CLOSED.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo("玻璃饼订单工艺路线包含外购,关闭订单无需自动分派"); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
@ -146,7 +166,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
if (YieldOrderEnum.YIELD_TYPE_2.equals(yieldOrder.getYieldType()) && StringUtils.isBlank(yieldOrder.getReworkCode())) { |
|
|
|
|
//验证订单是否存在当前B号,如果不存在则不能下发
|
|
|
|
|
if (StringUtils.isBlank(yieldOrder.getRoamNo())) { |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCategory()); |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo("订单不存在B号,请手动匹配B号!"); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
@ -155,7 +175,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
|
|
|
|
|
String roamNoText = dsPartService.findNameByRoamNo(yieldOrder.getPartCode(), yieldOrder.getRoamNo()); |
|
|
|
|
if (StringUtils.isBlank(roamNoText)) { |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCategory()); |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo("未找到ERP一级B号路线,请核查!"); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
@ -165,7 +185,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
try { |
|
|
|
|
this.saveSubYieldOrder(yieldOrder, Boolean.FALSE, yieldOrder.getReceiveUser()); |
|
|
|
|
} catch (BusinessException e) { |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCategory()); |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo(e.getErrorMessage()); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
@ -212,7 +232,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
|
|
|
|
|
if (ObjectUtil.isEmpty(craft)) { |
|
|
|
|
String errMsg = StringUtils.isNotBlank(roamNo) ? "订单流转单号匹配失败,请联系工艺员!" : "未找到B号工艺,请核实订单是否存在B号!"; |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCategory()); |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo(errMsg); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
@ -222,7 +242,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
DsPartEntity part = dsPartService.getById(craft.getPartId()); |
|
|
|
|
//验证零件是否已经被删除
|
|
|
|
|
if (CommonConstant.DELETE_TRUE.equals(part.getIsDeleted())) { |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCategory()); |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo("零件信息已删除,工艺匹配失败,请联系工艺员!"); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
@ -233,7 +253,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
if (!YieldOrderEnum.YIELD_TYPE_2.equals(yieldOrder.getYieldType()) |
|
|
|
|
&& !YieldOrderEnum.YIELD_TYPE_6.equals(yieldOrder.getYieldType()) |
|
|
|
|
&& ObjectUtil.isEmpty(part.getArea())) { |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCategory()); |
|
|
|
|
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCode()); |
|
|
|
|
yieldOrder.setValidationTime(DateUtil.now()); |
|
|
|
|
yieldOrder.setValidationMomo("零件面积为空,工艺匹配失败,请联系工艺员!"); |
|
|
|
|
this.updateById(yieldOrder); |
|
|
|
|
@ -356,16 +376,16 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
yieldOrder.setRoamNoNext(yieldJson.getString("nextRoam")); |
|
|
|
|
yieldOrder.setPriorityErp(yieldJson.getInteger("priority")); |
|
|
|
|
if (YieldOrderEnum.PRIORITY_ERP_NORMAL.equals(yieldOrder.getPriorityErp())) { |
|
|
|
|
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_NORMAL.getCategory()); |
|
|
|
|
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_NORMAL.getCode()); |
|
|
|
|
} else { |
|
|
|
|
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_LOW.getCategory()); |
|
|
|
|
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_LOW.getCode()); |
|
|
|
|
} |
|
|
|
|
yieldOrder.setNewLevFlag(yieldJson.getString("newlevFlag")); |
|
|
|
|
yieldOrder.setUseDeptCode(yieldJson.getString("useDeptcode")); |
|
|
|
|
yieldOrder.setReceiveStatus(YieldOrderEnum.RECEIVE_STATUS_YES.getCategory()); |
|
|
|
|
yieldOrder.setReceiveStatus(YieldOrderEnum.RECEIVE_STATUS_YES.getCode()); |
|
|
|
|
yieldOrder.setReceiveUser(yieldJson.getLong("failureMan")); |
|
|
|
|
yieldOrder.setReceiveTime(yieldJson.getDate("failureTime")); |
|
|
|
|
yieldOrder.setStatus(YieldOrderEnum.STATUS_APS.getCategory()); |
|
|
|
|
yieldOrder.setStatus(YieldOrderEnum.STATUS_APS.getCode()); |
|
|
|
|
|
|
|
|
|
// 先根据流程卡号验证订单是否重复,如果重复则不保存
|
|
|
|
|
List<YieldOrder> orderList = baseMapper.selectList(Wrappers.lambdaQuery(YieldOrder.class).eq(YieldOrder::getCardNo, yieldOrder.getCardNo())); |
|
|
|
|
@ -447,16 +467,16 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
yieldOrder.setRoamNoNext(yieldJson.getString("nextRoam")); |
|
|
|
|
yieldOrder.setPriorityErp(yieldJson.getInteger("priority")); |
|
|
|
|
if (YieldOrderEnum.PRIORITY_ERP_NORMAL.equals(yieldOrder.getPriorityErp())) { |
|
|
|
|
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_NORMAL.getCategory()); |
|
|
|
|
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_NORMAL.getCode()); |
|
|
|
|
} else { |
|
|
|
|
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_LOW.getCategory()); |
|
|
|
|
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_LOW.getCode()); |
|
|
|
|
} |
|
|
|
|
yieldOrder.setNewLevFlag(yieldJson.getString("newlevFlag")); |
|
|
|
|
yieldOrder.setUseDeptCode(yieldJson.getString("useDeptcode")); |
|
|
|
|
yieldOrder.setReceiveStatus(YieldOrderEnum.RECEIVE_STATUS_YES.getCategory()); |
|
|
|
|
yieldOrder.setReceiveStatus(YieldOrderEnum.RECEIVE_STATUS_YES.getCode()); |
|
|
|
|
yieldOrder.setReceiveUser(yieldJson.getLong("failureMan")); |
|
|
|
|
yieldOrder.setReceiveTime(yieldJson.getDate("failureTime")); |
|
|
|
|
yieldOrder.setStatus(YieldOrderEnum.STATUS_APS.getCategory()); |
|
|
|
|
yieldOrder.setStatus(YieldOrderEnum.STATUS_APS.getCode()); |
|
|
|
|
// 若任务下达时间为空, 取从erp同步的时间
|
|
|
|
|
if (ObjectUtil.isEmpty(yieldOrder.getReleaseDate())) { |
|
|
|
|
yieldOrder.setReleaseDate(yieldJson.getDate("syncTime")); |
|
|
|
|
@ -555,11 +575,11 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
String errMsg = MessageFormat.format("子件{0}未编制!", dsPartSub.getPartCode()); |
|
|
|
|
throw new BusinessException(errMsg); |
|
|
|
|
} |
|
|
|
|
Integer yieldType = YieldOrderEnum.YIELD_TYPE_6.getCategory(); |
|
|
|
|
Integer yieldType = YieldOrderEnum.YIELD_TYPE_6.getCode(); |
|
|
|
|
if (DsPartConst.SIN_TER_TYPE_KT.equals(dsPartSub.getSinTerType())) { |
|
|
|
|
yieldType = YieldOrderEnum.YIELD_TYPE_4.getCategory(); |
|
|
|
|
yieldType = YieldOrderEnum.YIELD_TYPE_4.getCode(); |
|
|
|
|
} else if (DsPartConst.SIN_TER_TYPE_CZ.equals(dsPartSub.getSinTerType())) { |
|
|
|
|
yieldType = YieldOrderEnum.YIELD_TYPE_5.getCategory(); |
|
|
|
|
yieldType = YieldOrderEnum.YIELD_TYPE_5.getCode(); |
|
|
|
|
} |
|
|
|
|
//非石墨模子件,面积不允许为空
|
|
|
|
|
if (!yieldType.equals(YieldOrderEnum.YIELD_TYPE_6) && dsPart.getArea() == null) { |
|
|
|
|
@ -599,7 +619,7 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie |
|
|
|
|
subYield.setYpQty(yieldOrder.getYpQty() * dsPartSub.getQuota().intValue()); |
|
|
|
|
subYield.setPrimaryCraft(dsPart.getCraftWay()); |
|
|
|
|
subYield.setRoamNo(roamNo); |
|
|
|
|
subYield.setStatus(YieldOrderEnum.STATUS_NORMAL.getCategory()); |
|
|
|
|
subYield.setStatus(YieldOrderEnum.STATUS_NORMAL.getCode()); |
|
|
|
|
subYield.setYieldType(yieldType); |
|
|
|
|
subYield.setEntrustDept("热表分厂"); |
|
|
|
|
subYield.setBusinessType(-1); |
|
|
|
|
|