From 6d7b76894e347fbf3fc23c05847c46bf560af790 Mon Sep 17 00:00:00 2001 From: lym <1994302445@qq.com> Date: Mon, 17 Jun 2024 18:11:42 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E5=BA=8F=E5=90=8D=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/order/OrderController.java | 4 +-- .../executor/service/order/OrderService.java | 2 +- .../service/order/OrderServiceImpl.java | 24 +++++++++---- .../mapper/orderItem/OrderItemMapper.xml | 2 +- .../system/enums/ErrorCodeConstants.java | 2 ++ .../process/ProcessGroupServiceImpl.java | 33 +++++++++++++++++ .../service/process/ProcessServiceImpl.java | 35 +++++++++++++++++-- 7 files changed, 90 insertions(+), 12 deletions(-) diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java index 2ce19340d..7660b92f8 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java @@ -108,8 +108,8 @@ public class OrderController { @PutMapping("/restore") @Operation(summary = "还原") @Parameter(name = "orderId", description = "生产单id", required = true, example = "1") - @PreAuthorize("@ss.hasPermission('executor:order:restore')") - public CommonResult restoreOrder(@Valid @RequestBody Long orderId) { + @PreAuthorize("@ss.hasPermission('executor:order:update')") + public CommonResult restoreOrder(@RequestParam("orderId") Long orderId) { orderService.restoreOrder(orderId); return success(true); } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderService.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderService.java index 44bce53f6..50aaf4492 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderService.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderService.java @@ -56,7 +56,7 @@ public interface OrderService { * * @param orderId 编号组 */ - void restoreOrder(@Valid Long orderId); + void restoreOrder(Long orderId); /** * 获得生产单表 order_{N} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java index a0143389b..bf92232a0 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java @@ -141,8 +141,7 @@ public class OrderServiceImpl implements OrderService { validatePhoneNumber(createReqVO.getPhoneNumber()); //验证自定义单号是否存在,业务员、拆单员是否存在 - validateOrderImportForCreateOrUpdate(createReqVO.getCustomOrderNo(), createReqVO.getSalesman(), createReqVO.getSplitter()); - + validateCustomOrderNoExists(createReqVO.getCustomOrderNo()); LocalDateTime time = getAfterDate(createReqVO.getDeliveryDate()); createReqVO.setDeliveryDate(time); // 插入 @@ -161,8 +160,7 @@ public class OrderServiceImpl implements OrderService { validatePhoneNumber(updateReqVO.getPhoneNumber()); //验证自定义单号是否存在,业务员、拆单员是否存在 - validateOrderImportForCreateOrUpdate(updateReqVO.getCustomOrderNo(), updateReqVO.getSalesman(), updateReqVO.getSplitter()); - + validateCustomOrderNoExists(updateReqVO.getCustomOrderNo(), updateReqVO.getId()); // 更新 OrderDO updateObj = BeanUtils.toBean(updateReqVO, OrderDO.class); orderMapper.updateById(updateObj); @@ -421,6 +419,20 @@ public class OrderServiceImpl implements OrderService { } // 验证自定义单号是否存在 + private void validateCustomOrderNoExists(String customOrderNo, Long orderId) { + if (customOrderNo != null) { + if (!customOrderNo.isEmpty()) { + if (orderMapper.selectCount(new LambdaQueryWrapper() + .ne(OrderDO::getId, orderId) + .eq(OrderDO::getCustomOrderNo, customOrderNo) + .eq(OrderDO::getDeleted, false) + .eq(OrderDO::getOrganId, OrganContextHolder.getOrganId())) > 0) { + throw exception(CUSTOM_ORDER_EXISTS); + } + } + } + } + private void validateCustomOrderNoExists(String customOrderNo) { if (customOrderNo != null) { if (!customOrderNo.isEmpty()) { @@ -467,11 +479,11 @@ public class OrderServiceImpl implements OrderService { } } - private void validateOrderImportForCreateOrUpdate(String customOrderNo, String salesman, String splitter) { + private void validateOrderImportForCreateOrUpdate(String customOrderNo, String salesman, String splitter, Long orderId) { // 关闭数据权限,避免因为没有数据权限,查询不到数据,进而导致唯一校验不正确 Long organId = SecurityFrameworkUtils.getLoginUser().getOrganId(); DataPermissionUtils.executeIgnore(() -> { - validateCustomOrderNoExists(customOrderNo); + validateCustomOrderNoExists(customOrderNo, orderId); validateSalesmanOrderNoExists(salesman, organId); validateSplitterOrderNoExists(splitter, organId); }); diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml index b45980fb8..e711ed14b 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml @@ -6,7 +6,7 @@