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 5a39ebb..9a41c95 100644 --- a/src/main/java/com/gaotao/modules/schedule/controller/ScheduleController.java +++ b/src/main/java/com/gaotao/modules/schedule/controller/ScheduleController.java @@ -829,4 +829,34 @@ public class ScheduleController { .put("msg", "操作成功!"); } + /** + * TODO 材料切换检查 + * @author LR + * @date 2022/1/19 10:32 + * @param inData + * @return com.gaotao.common.utils.R + **/ + @RequestMapping(value = "checkConnectMaterialRoll") + public R checkConnectMaterialRoll(@RequestBody SearchScheduleData inData){ + Map resultMap = scheduleService.checkConnectMaterialRoll(inData); + return R.ok() + .put("resultMap", resultMap); + } + + /** + * TODO 换料操作 + * @author LR + * @date 2022/1/19 14:46 + * @param inData + * @return com.gaotao.common.utils.R + **/ + @RequestMapping(value = "connectMaterialRoll") + public R connectMaterialRoll(@RequestBody SearchScheduleData inData){ + scheduleService.connectMaterialRoll(inData); + return R.ok() + .put("code", 200) + .put("success", true) + .put("msg", "操作成功!"); + } + } 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 7780659..e557641 100644 --- a/src/main/java/com/gaotao/modules/schedule/service/ScheduleService.java +++ b/src/main/java/com/gaotao/modules/schedule/service/ScheduleService.java @@ -464,4 +464,22 @@ public interface ScheduleService { * @return void **/ void connectToolInstanceId(SearchScheduleData inData); + + /** + * @Author LR + * @Description 材料切换检查 + * @DateTime 2022/1/20 10:36 + * @Param [inData] + * @return java.util.Map + **/ + Map checkConnectMaterialRoll(SearchScheduleData inData); + + /** + * @Author LR + * @Description 换料操作 + * @DateTime 2022/1/20 10:37 + * @Param [inData] + * @return void + **/ + void connectMaterialRoll(SearchScheduleData inData); } \ No newline at end of file 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 431491e..449665e 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 @@ -802,27 +802,7 @@ public class ScheduleServiceImpl implements ScheduleService { procedureMapper.execProduceData("startTuning", params); } - /** - * TODO 调用存储过程判断是否可以接换料功能 - * @author LR - * @date 2021/12/22 15:39 - * @return java.util.Map - **/ - public Map checkConnectMaterialRoll(String site, String orderNo, Integer itemNo, String seqNo, String rollNo, String rmRollNo, Integer bomItemNo, Integer histSeqNo) { - List params = new ArrayList<>(); - params.add(site); - params.add(orderNo); - params.add(itemNo); - params.add(seqNo); - params.add(rollNo); - params.add(rmRollNo); - params.add(bomItemNo); - params.add(histSeqNo); - //执行存储过程 - List> resultList = procedureMapper.getProcedureData("checkConnectMaterialRoll", params); - //返回执行的结果 - return resultList.get(0); - } + @Override public Map checkDownTimeCode(SearchScheduleData inData) { @@ -1719,4 +1699,111 @@ public class ScheduleServiceImpl implements ScheduleService { procedureMapper.execProduceData("connectToolInstanceId", params); } + @Override + public Map checkConnectMaterialRoll(SearchScheduleData inData) { + //公共参数 + String site = inData.getSite(); + String orderNo = inData.getOrderNo(); + Integer itemNo = inData.getItemNo(); + String seqNo = inData.getSeqNo(); + String rollNo = inData.getRollNo(); + String rmRollNo = inData.getRmRollNo(); + Integer bomItemNo = inData.getBomItemNo(); + Integer histSeqNo = inData.getHistSeqNo(); + String reportDate = inData.getReportDate(); + String reportTime = inData.getReportTime(); + String currentTime = reportDate + " " + reportTime; + if (histSeqNo <= -1){ + throw new RRException("请选择上料功能!"); + } + + //检查是否是上材料的时机 + String resultCode = this.checkProcessMaterialRoll(site, orderNo, itemNo, seqNo, rollNo, currentTime); + if ("N".equalsIgnoreCase(resultCode)){ + throw new RRException("当前卷号不在调试过程中/不处于停机状态(停机原因是更换材料),不允许上/更换材料!"); + } + + //调用存储过程检查是否可以接料 + //调用是否可以切换刀具的存储过程 + Map resultMap = this.checkConnectMaterialRoll(site, orderNo, itemNo, seqNo, rollNo, rmRollNo, bomItemNo, histSeqNo); + //判断是否检验成功 + String code = String.valueOf(resultMap.get("resultCode")); + if ("400".equalsIgnoreCase(code)){ + String msg = String.valueOf(resultMap.get("resultMsg")); + throw new RRException(msg); + } + return resultMap; + } + + /** + * TODO 调用存储过程判断是否可以接换料功能 + * @author LR + * @date 2021/12/22 15:39 + * @return java.util.Map + **/ + public Map checkConnectMaterialRoll(String site, String orderNo, Integer itemNo, String seqNo, String rollNo, String rmRollNo, Integer bomItemNo, Integer histSeqNo) { + List params = new ArrayList<>(); + params.add(site); + params.add(orderNo); + params.add(itemNo); + params.add(seqNo); + params.add(rollNo); + params.add(rmRollNo); + params.add(bomItemNo); + params.add(histSeqNo); + //执行存储过程 + List> resultList = procedureMapper.getProcedureData("checkConnectMaterialRoll", params); + //返回执行的结果 + return resultList.get(0); + } + + @Override + @Transactional + public void connectMaterialRoll(SearchScheduleData inData) { + //公共参数 + String site = inData.getSite(); + String orderNo = inData.getOrderNo(); + Integer itemNo = inData.getItemNo(); + String seqNo = inData.getSeqNo(); + String rollNo = inData.getRollNo(); + String rmRollNo = inData.getRmRollNo(); + Integer bomItemNo = inData.getBomItemNo(); + Integer histSeqNo = inData.getHistSeqNo(); + String reportDate = inData.getReportDate(); + String reportTime = inData.getReportTime(); + String currentTime = reportDate + " " + reportTime; + Float downTimeQty = inData.getDownTimeQty(); + String username = inData.getOperatorId(); + //首先调用上面是的验证方法 + this.checkConnectMaterialRoll(inData); + + //调用存储过程执行 + this.connectMaterialRoll(site, orderNo, itemNo, seqNo, rollNo, rmRollNo, bomItemNo, histSeqNo, downTimeQty, username, currentTime); + } + + /** + * @Author LR + * @Description 调用存储过程换料功能 + * @DateTime 2022/1/20 11:47 + * @Param [site, orderNo, itemNo, seqNo, rollNo, rmRollNo, bomItemNo, histSeqNo, downTimeQty, username, currentTime] + * @return void + **/ + public void connectMaterialRoll(String site, String orderNo, Integer itemNo, String seqNo, String rollNo, String rmRollNo, Integer bomItemNo, Integer histSeqNo, + Float downTimeQty, String username, String currentTime) { + List params = new ArrayList<>(); + params.add(site); + params.add(orderNo); + params.add(itemNo); + params.add(seqNo); + params.add(rollNo); + params.add(rmRollNo); + params.add(bomItemNo); + params.add(histSeqNo); + params.add(downTimeQty); + params.add(username); + params.add(currentTime); + //执行存储过程 + procedureMapper.execProduceData( "connectMaterialRoll", params); + } + } \ No newline at end of file