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 30f11f7..71a76f7 100644 --- a/src/main/java/com/gaotao/modules/schedule/controller/ScheduleController.java +++ b/src/main/java/com/gaotao/modules/schedule/controller/ScheduleController.java @@ -1131,9 +1131,11 @@ public class ScheduleController { **/ @RequestMapping(value = "checkFinishPartRollWithNoFqc") public R checkFinishPartRollWithNoFqc(@RequestBody Map inMap){ - Map resultMap = scheduleService.checkFinishPartRollWithNoFqc(inMap); + scheduleService.checkFinishPartRollWithNoFqc(inMap); return R.ok() - .put("resultMap", resultMap); + .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 4b71712..1cac655 100644 --- a/src/main/java/com/gaotao/modules/schedule/service/ScheduleService.java +++ b/src/main/java/com/gaotao/modules/schedule/service/ScheduleService.java @@ -641,9 +641,8 @@ public interface ScheduleService { * @Description 产量报告 --检查报告一部分卷数量 * @DateTime 2022/2/18 17:32 * @Param [inMap] - * @return java.util.Map **/ - Map checkFinishPartRollWithNoFqc(Map inMap); + void checkFinishPartRollWithNoFqc(Map inMap); /** * @Author LR 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 c44ce78..bb0917f 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 @@ -3070,7 +3070,7 @@ public class ScheduleServiceImpl implements ScheduleService { } @Override - public Map checkFinishPartRollWithNoFqc(Map inMap) { + public void checkFinishPartRollWithNoFqc(Map inMap) { String strPageData = String.valueOf(inMap.get("pageData")); SearchScheduleData pageData = JSON.parseObject(strPageData, SearchScheduleData.class); String strSfdcMaterialList = String.valueOf(inMap.get("materialList")); @@ -3146,41 +3146,82 @@ public class ScheduleServiceImpl implements ScheduleService { String msg = String.valueOf(checkMap3.get("resultMsg")); throw new RRException(msg); } - - //4.调用存储过程 上机的主材依次校验 - //先循环验证参数是否符合规则 - for (int i = 0; i < sfdcMaterialList.size(); i++) { - SfdcMaterialData sfdcMaterialData = sfdcMaterialList.get(0); - Float transQty = sfdcMaterialData.getTransQty(); - Float netIssueQty = sfdcMaterialData.getNetIssueQty(); - Integer histSeqNo = sfdcMaterialData.getHistSeqNo(); - //判断是否符合规则 - if (netIssueQty == null) { - throw new RRException("材料上本卷耗用数量不能为空!"); - } - if (netIssueQty <= 0) { - throw new RRException("材料上本卷耗用数量必须大于0!"); - } - if (netIssueQty > transQty) { - throw new RRException("材料上本卷耗用数量大于发料数量!"); - } - //调用存储过程校验每一个卷的数量 - Map resultMap = this.checkFinishRollWithSfdcMaterialHist(site, orderNo, itemNo, rollNo, seqNo, editTotalReportQty, otherRollQty, editNewRollQty, netIssueQty, histSeqNo, username); - //区分是否抛出异常的信息 - String resultCode = String.valueOf(resultMap.get("resultCode")); - if ("400".equalsIgnoreCase(resultCode)) { - String msg = String.valueOf(resultMap.get("resultMsg")); - throw new RRException(msg); - } - return resultMap; - } - return null; } @Override @Transactional public void finishPartRollWithNoFqc(Map inMap) { + String strPageData = String.valueOf(inMap.get("pageData")); + SearchScheduleData pageData = JSON.parseObject(strPageData, SearchScheduleData.class); + String strSfdcMaterialList = String.valueOf(inMap.get("materialList")); + List sfdcMaterialList = JSON.parseArray(strSfdcMaterialList, SfdcMaterialData.class); + //公共参数 + String site = pageData.getSite(); + String orderNo = pageData.getOrderNo(); + Integer itemNo = pageData.getItemNo(); + String seqNo = pageData.getSeqNo(); + String rollNo = pageData.getRollNo(); + String username = pageData.getOperatorId(); + Float defectedQty = pageData.getDefectedQty(); + Float sfdcReportedQty = pageData.getSfdcReportedQty();//报告数量 + Float sfdcApprovedQty = pageData.getSfdcApprovedQty();//合格数量 + Float sfdcSetupTime = pageData.getSfdcSetupTime();//调机时间 + Float sfdcProdTime = pageData.getSfdcProdTime(); //生产时间 + Float sfdcDownTime = pageData.getSfdcDownTime();//停机时间 + String eventTime = pageData.getEventTime();//开工时间 + String tillTime = pageData.getTillTime();//完工时间 + String remark = pageData.getRemark();//备注 + Float sfdcSetupDownTime = pageData.getSfdcSetupDownTime();//调机停机 + Float sfdcProdSetupTime = pageData.getSfdcProdSetupTime();//生产调机 + Float sfdcManufactureTime = pageData.getSfdcManufactureTime();//制造时间 + String exceptionFlag = pageData.getExceptionFlag(); + String exceptionReason = pageData.getExceptionReason(); + //首先调用校验的方法 + this.checkFinishPartRollWithNoFqc(inMap); + + //1.调用存储过程 处理Sfdc和派工单 + this.finishPartRollProcessSfdcAndSchedule(site, orderNo, itemNo, seqNo, rollNo, sfdcReportedQty, sfdcApprovedQty, + sfdcSetupTime, sfdcProdTime, sfdcDownTime, eventTime, tillTime, remark, + sfdcSetupDownTime, sfdcProdSetupTime, defectedQty, sfdcManufactureTime, username); + //2.调用存储过程 处理异常信息 + if ("Y".equalsIgnoreCase(exceptionFlag)) { + this.finishRollProcessException(site, orderNo, itemNo, seqNo, rollNo, exceptionReason, username); + } + } + + /** + * @return void + * @Author LR + * @Description 处理Sfdc和派工单 + * @DateTime 2022/1/25 17:50 + **/ + public void finishPartRollProcessSfdcAndSchedule(String site, String orderNo, Integer itemNo, String seqNo, String rollNo, Float sfdcReportedQty, Float sfdcApproveQty, + Float sfdcSetupTime, Float sfdcProdTime, Float sfdcDownTime, String eventTime, String tillTime, String remark, + Float sfdcSetupDownTime, Float sfdcProdSetupTime, Float defectedQty, Float sfdcManufactureTime, String username) { + List params = new ArrayList<>(); + params.add(site); + params.add(orderNo); + params.add(itemNo); + params.add(seqNo); + params.add(rollNo); + params.add(sfdcReportedQty); + params.add(sfdcApproveQty); + + params.add(sfdcSetupTime); + params.add(sfdcProdTime); + params.add(sfdcDownTime); + params.add(eventTime); + params.add(tillTime); + params.add(remark); + + params.add(sfdcSetupDownTime); + params.add(sfdcProdSetupTime); + params.add(defectedQty); + params.add(sfdcManufactureTime); + params.add(username); + //执行存储过程 + procedureMapper.execProduceData("finishPartRollProcessSfdcAndSchedule", params); }