diff --git a/src/main/java/com/gaotao/modules/shopOrder/controller/ReportFormSearchController.java b/src/main/java/com/gaotao/modules/shopOrder/controller/ReportFormSearchController.java index 5011340..37850a3 100644 --- a/src/main/java/com/gaotao/modules/shopOrder/controller/ReportFormSearchController.java +++ b/src/main/java/com/gaotao/modules/shopOrder/controller/ReportFormSearchController.java @@ -1,5 +1,8 @@ package com.gaotao.modules.shopOrder.controller; +import com.gaotao.common.annotation.RepeatSubmit; +import com.gaotao.common.utils.R; +import com.gaotao.modules.schedule.data.SearchScheduleData; import com.gaotao.modules.shopOrder.entity.*; import com.gaotao.modules.shopOrder.service.ReportFormSearchService; import org.springframework.beans.factory.annotation.Autowired; @@ -205,4 +208,38 @@ public class ReportFormSearchController { } return map; } + + /** + * TODO 校验是否可以强制关单 + * @author LR + * @date 2022/6/30 16:20 + * @Param [inData] + * @return com.gaotao.common.utils.R + **/ + @PostMapping(value = "checkForceCloseShopOrder") + @ResponseBody + public R checkForceCloseShopOrder(@RequestBody SearchScheduleData inData){ + List> resultList = reportFormSearchService.checkForceCloseShopOrder(inData); + return R.ok() + .put("code", 200) + .put("resultList", resultList) + .put("msg", "操作成功!"); + } + + /** + * TODO 强制关单 + * @author LR + * @date 2022/6/30 16:22 + * @Param [inData] + * @return com.gaotao.common.utils.R + **/ + @PostMapping(value = "forceCloseShopOrder") + @ResponseBody + @RepeatSubmit + public R checkCloseShopOrder(@RequestBody SearchScheduleData inData){ + reportFormSearchService.forceCloseShopOrder(inData); + return R.ok() + .put("code", 200) + .put("msg", "操作成功!"); + } } diff --git a/src/main/java/com/gaotao/modules/shopOrder/service/Impl/ReportFormSearchServiceImpl.java b/src/main/java/com/gaotao/modules/shopOrder/service/Impl/ReportFormSearchServiceImpl.java index 3be3015..a8761a3 100644 --- a/src/main/java/com/gaotao/modules/shopOrder/service/Impl/ReportFormSearchServiceImpl.java +++ b/src/main/java/com/gaotao/modules/shopOrder/service/Impl/ReportFormSearchServiceImpl.java @@ -1,18 +1,25 @@ package com.gaotao.modules.shopOrder.service.Impl; +import com.gaotao.common.exception.XJException; +import com.gaotao.modules.schedule.data.SearchScheduleData; +import com.gaotao.modules.schedule.mapper.ProcedureMapper; import com.gaotao.modules.shopOrder.dao.ReportFormSearchMapper; import com.gaotao.modules.shopOrder.entity.*; import com.gaotao.modules.shopOrder.service.ReportFormSearchService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; +import java.util.Map; @Service public class ReportFormSearchServiceImpl implements ReportFormSearchService { @Autowired private ReportFormSearchMapper reportFormSearchMapper; + @Autowired + private ProcedureMapper procedureMapper; //=============查询-生产订单不良================== @Override public List searchShopOrderScript(SearchShopOrderScriptData indata){ @@ -76,4 +83,79 @@ public class ReportFormSearchServiceImpl implements ReportFormSearchService { List result = reportFormSearchMapper.searchShopOrderAbnormalRecord(indata); return result; } + + @Override + public List> checkForceCloseShopOrder(SearchScheduleData inData) { + //公共参数 + String site = inData.getSite(); + String orderNo = inData.getOrderNo(); + String status = inData.getStatus(); + String username = inData.getUsername(); + //调用存储过程 + List> resultList = this.checkForceCloseShopOrder(site, orderNo, status, username); + //判断是否只有一行 + if(resultList.size() == 1){ + //判断是否通过校验 + Map resultMap = resultList.get(0); + String resultCode = String.valueOf(resultMap.get("resultCode")); + if("400".equals(resultCode)){ + String resultMsg = String.valueOf(resultMap.get("resultMsg")); + throw new XJException(resultMsg, Integer.parseInt(resultCode)); + } + } + return resultList; + } + + /** + * TODO 强制关单检查 + * @author LR + * @date 2022/6/30 16:31 + * @Param [site, orderNo, status, username] + * @return java.util.List> + **/ + public List> checkForceCloseShopOrder(String site, String orderNo, String status, String username) { + List params = new ArrayList<>(); + params.add(site); + params.add(orderNo); + params.add(status); + params.add(username); + //调用存储过程 + List> resulitList = procedureMapper.getProcedureData("checkForceCloseShopOrder", params); + //返回参数 + return resulitList; + } + + @Override + @Transactional + public void forceCloseShopOrder(SearchScheduleData inData) { + //公共参数 + String site = inData.getSite(); + String orderNo = inData.getOrderNo(); + String username = inData.getUsername(); + String exceptionFlag = inData.getExceptionFlag(); + String exceptionReason = inData.getExceptionReason(); + //校验是否通过 + this.checkForceCloseShopOrder(inData); + + //执行存储过程 处理强制关单 + this.forceCloseShopOrder(site, orderNo, username, exceptionFlag, exceptionReason); + } + + /** + * TODO 执行强制关单的操作 + * @author LR + * @date 2022/6/30 16:40 + * @Param [site, orderNo, username, exceptionFlag, exceptionReason] + * @return void + **/ + public void forceCloseShopOrder(String site, String orderNo, String username, String exceptionFlag, String exceptionReason) { + List params = new ArrayList<>(); + params.add(site); + params.add(orderNo); + params.add(username); + params.add(exceptionFlag); + params.add(exceptionReason); + //调用存储过程 + procedureMapper.execProduceData("forceCloseShopOrder", params); + } } diff --git a/src/main/java/com/gaotao/modules/shopOrder/service/ReportFormSearchService.java b/src/main/java/com/gaotao/modules/shopOrder/service/ReportFormSearchService.java index 39c50a6..43f7a73 100644 --- a/src/main/java/com/gaotao/modules/shopOrder/service/ReportFormSearchService.java +++ b/src/main/java/com/gaotao/modules/shopOrder/service/ReportFormSearchService.java @@ -1,8 +1,10 @@ package com.gaotao.modules.shopOrder.service; +import com.gaotao.modules.schedule.data.SearchScheduleData; import com.gaotao.modules.shopOrder.entity.*; import java.util.List; +import java.util.Map; public interface ReportFormSearchService { //=============查询-生产订单不良=================== @@ -100,4 +102,22 @@ public interface ReportFormSearchService { * @throw */ List searchShopOrderAbnormalRecord(CExceptionLogData indata); + + /** + * TODO 校验是否可以强制关单 + * @author LR + * @date 2022/6/30 16:22 + * @Param [inData] + * @return java.util.List> + **/ + List> checkForceCloseShopOrder(SearchScheduleData inData); + + /** + * TODO 强制关单 + * @author LR + * @date 2022/6/30 16:23 + * @Param [inData] + * @return void + **/ + void forceCloseShopOrder(SearchScheduleData inData); }