diff --git a/src/main/java/com/gaotao/modules/schedule/controller/ScheduleController.java b/src/main/java/com/gaotao/modules/schedule/controller/ScheduleController.java index b44bc2e..f3aa381 100644 --- a/src/main/java/com/gaotao/modules/schedule/controller/ScheduleController.java +++ b/src/main/java/com/gaotao/modules/schedule/controller/ScheduleController.java @@ -1707,6 +1707,16 @@ public class ScheduleController extends AbstractController { return R.ok("操作成功,请刷新数据!"); } + /** + * 暂停生产/继续生产(调用存储过程 UspUpdateProductionStatus,更新 ParkFlag 并写入 SFDC_TimeHist) + * @param inData site, orderNo, seqNo, itemNo, rollNo(无则传*), currentTime, operatorId, parkFlag(N=开始 Y=暂停) + */ + @PostMapping(value = "updateProductionStatus") + public R updateProductionStatus(@RequestBody SearchScheduleData inData) { + scheduleService.updateProductionStatus(inData); + return R.ok("操作成功,请刷新数据!"); + } + /** * @Author sxm * @Description 确认生产已排料 / 取消生产已排料 diff --git a/src/main/java/com/gaotao/modules/schedule/mapper/ScheduleMapper.java b/src/main/java/com/gaotao/modules/schedule/mapper/ScheduleMapper.java index f66efcb..d3af7ef 100644 --- a/src/main/java/com/gaotao/modules/schedule/mapper/ScheduleMapper.java +++ b/src/main/java/com/gaotao/modules/schedule/mapper/ScheduleMapper.java @@ -569,6 +569,13 @@ public interface ScheduleMapper { **/ void pauseOrReopenProduceOrder(SearchScheduleData inData); + /** + * 调用存储过程 UspUpdateProductionStatus:暂停/继续生产(更新 ParkFlag 并写入 SFDC_TimeHist) + * @param inData 含 site, orderNo, seqNo, itemNo, rollNo(无则传*), currentTime, operatorId, parkFlag(N=开始 Y=暂停) + * @return 存储过程返回的 resultCode、resultMsg + */ + java.util.Map updateProductionStatus(SearchScheduleData inData); + /** * @Author sxm * @Description 确认/取消 生产订单已排料 diff --git a/src/main/java/com/gaotao/modules/schedule/service/ScheduleService.java b/src/main/java/com/gaotao/modules/schedule/service/ScheduleService.java index 6b4f30c..02af9bc 100644 --- a/src/main/java/com/gaotao/modules/schedule/service/ScheduleService.java +++ b/src/main/java/com/gaotao/modules/schedule/service/ScheduleService.java @@ -1005,6 +1005,12 @@ public interface ScheduleService { **/ void pauseOrReopenProduceOrder(SearchScheduleData inData); + /** + * 调用存储过程 UspUpdateProductionStatus:暂停/继续生产 + * @param inData 含 site, orderNo, seqNo, itemNo, rollNo, currentTime, operatorId, parkFlag + */ + void updateProductionStatus(SearchScheduleData inData); + /** * @return * @Author sxm diff --git a/src/main/java/com/gaotao/modules/schedule/service/impl/ScheduleServiceImpl.java b/src/main/java/com/gaotao/modules/schedule/service/impl/ScheduleServiceImpl.java index dbd81a8..80c9459 100644 --- a/src/main/java/com/gaotao/modules/schedule/service/impl/ScheduleServiceImpl.java +++ b/src/main/java/com/gaotao/modules/schedule/service/impl/ScheduleServiceImpl.java @@ -4529,6 +4529,25 @@ public class ScheduleServiceImpl implements ScheduleService { scheduleMapper.pauseOrReopenProduceOrder(inData); } + @Override + public void updateProductionStatus(SearchScheduleData inData) { + if (inData.getCurrentTime() == null || inData.getCurrentTime().isEmpty()) { + inData.setCurrentTime(DateUtils.format(new Date(), "yyyy-MM-dd HH:mm:ss")); + } + if (inData.getRollNo() == null || inData.getRollNo().isEmpty()) { + inData.setRollNo("*"); + } + Map resultMap = scheduleMapper.updateProductionStatus(inData); + if (resultMap == null) { + return; + } + String resultCode = String.valueOf(resultMap.get("resultCode")); + if ("400".equalsIgnoreCase(resultCode)) { + String msg = String.valueOf(resultMap.get("resultMsg")); + throw new XJException(msg != null && !"null".equals(msg) ? msg : "操作失败"); + } + } + @Override @Transactional public void costRollUpProduceOrder(SearchScheduleData inData) { diff --git a/src/main/resources/mapper/schedule/ScheduleMapper.xml b/src/main/resources/mapper/schedule/ScheduleMapper.xml index b3de1ee..b9251e2 100644 --- a/src/main/resources/mapper/schedule/ScheduleMapper.xml +++ b/src/main/resources/mapper/schedule/ScheduleMapper.xml @@ -2053,4 +2053,17 @@ #{userId} + + + \ No newline at end of file