From 93f60c6f6cb711c2ac3a805f23deea260f2a2419 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Thu, 23 Nov 2023 15:28:38 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E8=AE=BE=E5=A4=87=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProOrderWorkorderController.java | 12 +++++++ .../plan/mapper/ProOrderWorkorderMapper.java | 4 +++ .../service/IProOrderWorkorderService.java | 2 ++ .../impl/ProOrderWorkorderServiceImpl.java | 32 +++++++++++++++++++ .../mapper/plan/ProOrderWorkorderMapper.xml | 16 ++++++++++ 5 files changed, 66 insertions(+) diff --git a/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java b/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java index ef9b4bb96..7955afdb3 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java @@ -77,6 +77,18 @@ public class ProOrderWorkorderController extends BaseController { return proOrderWorkorderService.subChangeWorkOrder(splitOrderDTO); } + /** + * 提交修改工单-设备变更接口 + * + * @param splitOrderDTO + * @return + */ + @PostMapping("/subChangeWorkOrderM") + @RequiresPermissions("mes:pro:workorder:edit") + public AjaxResult subChangeWorkOrderM(@RequestBody SplitOrderDTO splitOrderDTO) { + return proOrderWorkorderService.subChangeWorkOrderM(splitOrderDTO); + } + /** * 通过子工单获取批次信息list(父工单批次信息) * diff --git a/op-modules/op-plan/src/main/java/com/op/plan/mapper/ProOrderWorkorderMapper.java b/op-modules/op-plan/src/main/java/com/op/plan/mapper/ProOrderWorkorderMapper.java index 2fe38f039..d575119c9 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/mapper/ProOrderWorkorderMapper.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/mapper/ProOrderWorkorderMapper.java @@ -154,5 +154,9 @@ public interface ProOrderWorkorderMapper { void deleteProOrderWorkorderByOrderIds(String[] orderIds); List getBatchInfo(String workorderCode); + + ProOrderWorkorder getWorkOrderByCode(String workorderCode); + + void updateProOrderWorkorderM(ProOrderWorkorder proWorkOrder); } diff --git a/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderWorkorderService.java b/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderWorkorderService.java index 8c7de2c9c..968ef5420 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderWorkorderService.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderWorkorderService.java @@ -120,4 +120,6 @@ public interface IProOrderWorkorderService { * @param whiteWorkOrder */ void deleteWhiteWorkorderByWorkOrder(List whiteWorkOrder); + + AjaxResult subChangeWorkOrderM(SplitOrderDTO splitOrderDTO); } diff --git a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java index 3509a1c85..fb0a89814 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java @@ -1035,4 +1035,36 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { return workBatch; } + /** + * 提交修改工单设备接口 + * + * @param splitOrderDTO + * @return + */ + @Override + @DS("#header.poolName") + @Transactional + public AjaxResult subChangeWorkOrderM(SplitOrderDTO splitOrderDTO) { + ProOrderWorkorder proWorkOrder = splitOrderDTO.getProOrderWorkorder(); + proWorkOrder.setProdLineCode(JSONArray.toJSONString(splitOrderDTO.getProdLineCodeArray())); + proWorkOrder.setUpdateBy(SecurityUtils.getUsername()); + proWorkOrder.setUpdateTime(DateUtils.getNowDate()); + // 白坯订单变更逻辑 + if (splitOrderDTO.getProOrderWorkorder().getProdType().equals("white")) { + + proOrderWorkorderMapper.updateProOrderWorkorderM(proWorkOrder); + }else{ + proOrderWorkorderMapper.updateProOrderWorkorder(proWorkOrder); + //pro_order_workorder + ProOrderWorkorder topWorkOrder = proOrderWorkorderMapper.getWorkOrderByCode(proWorkOrder.getWorkorderCode()); + while (!"0".equals(topWorkOrder.getParentOrder()) && StringUtils.isNotEmpty(topWorkOrder.getParentOrder())) { + //pro_order_workorder + topWorkOrder = proOrderWorkorderMapper.getWorkOrderByCode(topWorkOrder.getParentOrder()); + proWorkOrder.setWorkorderId(topWorkOrder.getWorkorderId()); + proOrderWorkorderMapper.updateProOrderWorkorderM(proWorkOrder); + } + } + return success("变更成功"); + } + } diff --git a/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml b/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml index 57a1c89b2..15976353f 100644 --- a/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml +++ b/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml @@ -353,6 +353,13 @@ from pro_order_workorder_batch where workorder_id = #{workorderId} and del_flag = '0' + insert into mes_prepare_detail @@ -424,6 +431,15 @@ where workorder_code = #{workorderId} and del_flag = '0' + + update pro_order_workorder + + prod_line_code = #{prodLineCode}, + update_by = #{updateBy}, + update_time = #{updateTime}, + + where workorder_id = #{workorderId} + update pro_order_workorder