汇总工单发送SAP逻辑调整

tags/yfai-mes-ext-v1.7
jun 8 months ago
parent 55393e79c6
commit 6ae6ba0940

@ -28,7 +28,7 @@ public interface IMesWorkOrderService extends IBaseMesService<MesWorkOrder> {
void doProductReportExt(MesWorkOrder mesWorkOrder);
@ApiOperation("非排序工单导入前删除")
void deleteUnSortOrder(String organizeCode, List<String> partNoList,String userName);
void doCloseUnSortOrder(String organizeCode,String userName);
@ApiOperation("汇总工单给SAP")
List<MesWorkOrderModel> sumMesWorkOrderQtyToSap(String organizeCode);

@ -45,7 +45,7 @@ public class MesWorkOrderCloseOrderJob extends BaseMesScheduleJob {
String userName = "CLOSE_JOB";
for (String organizeCode : organizeCodeList) {
mesWorkOrderService.deleteUnSortOrder(organizeCode, null, userName);
mesWorkOrderService.doCloseUnSortOrder(organizeCode, userName);
}
LOGGER.info("工单关闭开始结束 ----- end");

@ -118,6 +118,9 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
@Autowired
private IMesCcscTaskService mesCcscTaskService;
@Autowired
private MesWorkOrderToSapRepository mesWorkOrderToSapRepository;
@Override
public MesWorkOrder insert(MesWorkOrder bean) {
//校验产线与工位的关系
@ -1034,12 +1037,25 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
}
@Override
public void deleteUnSortOrder(String organizeCode, List<String> partNoList,String userName) {
public void doCloseUnSortOrder(String organizeCode,String userName) {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode);
DdlPreparedPack.getInPackList(partNoList, "partNo", ddlPackBean);
DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.ORDER_TYPE.UN_SORT.getValue(), "workOrderType", ddlPackBean);
DdlPreparedPack.getStringSmallerNotEqualPack(TimeTool.getToday(), "planStartTime", ddlPackBean);
DdlPreparedPack.getNumberSmallerPack(MesExtEnumUtil.ORDER_STATUS.CLOSE.getValue(), "workOrderStatus", ddlPackBean);
List<MesWorkOrder> mesWorkOrderList = baseRDao.findByHqlWhere(ddlPackBean);
if(CollectionUtils.isEmpty(mesWorkOrderList)){
return;
}
//关闭工单回传
List<String> partNoAndDataKey = mesWorkOrderList.stream().map(t -> new StringJoiner(MesExtConstWords.COMMA).add(t.getPartNo()).add(t.getProductVersion()).add(t.getPlanStartTime().substring(0, 10)).toString()).distinct().collect(Collectors.toList());
List<MesWorkOrderToSap> mesWorkOrderToSapList = new ArrayList<>();
for (String partNoAndData : partNoAndDataKey) {
MesWorkOrderToSap orderToSap = new MesWorkOrderToSap(organizeCode, partNoAndData.split(MesExtConstWords.COMMA)[0], partNoAndData.split(MesExtConstWords.COMMA)[1], 0d, partNoAndData.split(MesExtConstWords.COMMA)[2]);
ConvertBean.serviceModelInitialize(orderToSap,userName);
mesWorkOrderToSapList.add(orderToSap);
}
mesWorkOrderToSapRepository.saveAll(mesWorkOrderToSapList);
//关闭工单
baseRDao.updateByProperties(new String[]{"modifyUser", "modifyDatetime", "workOrderStatus"},
new Object[]{userName, TimeTool.getNowTime(true), MesExtEnumUtil.ORDER_STATUS.CLOSE.getValue()}, ddlPackBean);
}

@ -24,7 +24,7 @@ public class MesWorkOrderToSapServiceImpl extends BaseMesService<MesWorkOrderToS
//数据处理
for (MesWorkOrderModel mesWorkOrder : mesWorkOrderList) {
MesWorkOrderToSap orderToSap = new MesWorkOrderToSap(mesWorkOrder.getOrganizeCode(), mesWorkOrder.getPartNo(), mesWorkOrder.getProductVersion(), mesWorkOrder.getQty(), mesWorkOrder.getPlanStartTime());
ConvertBean.serviceModelUpdate(orderToSap,userName);
ConvertBean.serviceModelInitialize(orderToSap,userName);
mesWorkOrderToSapList.add(orderToSap);
}
baseRDao.saveAll(mesWorkOrderToSapList);

@ -522,6 +522,7 @@ public class MesSpotCheckOrderService extends BaseMesService<MesSpotCheckOrder>
MesSpotCheckOrderPart spotCheckOrderPart = new MesSpotCheckOrderPart();
spotCheckOrderPart.setSpotCheckOrderId(spotCheckOrderId);
BeanUtils.copyProperties(k, spotCheckOrderPart, "id");
spotCheckOrderPart.setSystemSyncStatus(CommonEnumUtil.FALSE);
ConvertBean.serviceModelInitialize(spotCheckOrderPart, userName);
spotCheckOrderPartList.add(spotCheckOrderPart);
});
@ -541,6 +542,7 @@ public class MesSpotCheckOrderService extends BaseMesService<MesSpotCheckOrder>
result.setSpotCheckItemId(k.getId());
result.setTaskItemName(k.getSpotCheckItemName());
result.setSpotCheckStandardValue(k.getStandardValue());
result.setSystemSyncStatus(CommonEnumUtil.FALSE);
ConvertBean.serviceModelInitialize(result, userName);
spotCheckOrderResults.add(result);
});

Loading…
Cancel
Save