From 4262e1fb86b1bd9f3e38430cdf02696c10d5a801 Mon Sep 17 00:00:00 2001 From: whycxzp <glperry@163.com> Date: 星期五, 20 六月 2025 17:30:43 +0800 Subject: [PATCH] 维修调度-出库 --- src/main/java/com/whyc/service/WorkflowLinkService.java | 23 +++++++++++++++-------- src/main/java/com/whyc/mapper/DeviceSpareMapper.java | 3 +++ src/main/java/com/whyc/service/DeviceSpareService.java | 4 ++++ src/main/resources/mapper/DeviceSpareMapper.xml | 16 ++++++++++++++++ 4 files changed, 38 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/whyc/mapper/DeviceSpareMapper.java b/src/main/java/com/whyc/mapper/DeviceSpareMapper.java index 50a605e..ddd3748 100644 --- a/src/main/java/com/whyc/mapper/DeviceSpareMapper.java +++ b/src/main/java/com/whyc/mapper/DeviceSpareMapper.java @@ -2,7 +2,10 @@ import com.whyc.pojo.web_site.DeviceSpare; +import java.util.List; + public interface DeviceSpareMapper extends CustomMapper<DeviceSpare>{ + void outBound(List<DeviceSpare> spareList); } diff --git a/src/main/java/com/whyc/service/DeviceSpareService.java b/src/main/java/com/whyc/service/DeviceSpareService.java index 5dd1598..b0d0ed2 100644 --- a/src/main/java/com/whyc/service/DeviceSpareService.java +++ b/src/main/java/com/whyc/service/DeviceSpareService.java @@ -187,4 +187,8 @@ } } + + public void outBound(List<DeviceSpare> spareList) { + mapper.outBound(spareList); + } } diff --git a/src/main/java/com/whyc/service/WorkflowLinkService.java b/src/main/java/com/whyc/service/WorkflowLinkService.java index f3acc30..d7b1737 100644 --- a/src/main/java/com/whyc/service/WorkflowLinkService.java +++ b/src/main/java/com/whyc/service/WorkflowLinkService.java @@ -72,7 +72,7 @@ link.setDealAndClose(1); } }break; - //璁惧鍏ュ簱鐢宠 TODO 鍏ュ簱褰卞搷搴撳瓨 + //璁惧鍏ュ簱鐢宠 case 2: //璁惧鎶ュ簾鐢宠 case 3:{ @@ -149,19 +149,26 @@ link.setDealAndClose(1); } }break; - case 4:{ //TODO 鍑哄簱鐢宠 + case 4:{ // 鍑哄簱鐢宠 if(link.getStatus() == WorkflowEnum.LINK_STATUS_PASS.getValue().intValue()){ - mainInDB.setStatus(WorkflowEnum.MAIN_STATUS_WAIT_FOR_DEALING.getValue()); + mainInDB.setStatus(WorkflowEnum.MAIN_STATUS_END_PASS.getValue()); + mainInDB.setEndTime(now); + mainInDB.setEndReason(link.getDealReason()); mainService.updateById(mainInDB); + //鑾峰彇鍑哄簱鐢宠鍗曡澶� + List<WorkflowDevice> deviceListInDB = deviceService.getByMainId(mainInDB.getId()); + List<DeviceSpare> spareList = new ArrayList<>(); + deviceListInDB.forEach(device -> { + DeviceSpare spare = new DeviceSpare(); + BeanUtils.copyProperties(device,spare); + spareList.add(spare); + }); + //鏇存柊搴撳瓨 + deviceSpareService.outBound(spareList); }else if(link.getStatus() == WorkflowEnum.LINK_STATUS_REJECT.getValue().intValue()){ mainInDB.setStatus(WorkflowEnum.MAIN_STATUS_END_REJECT.getValue()); mainInDB.setEndReason(link.getDealRejectReason()); mainInDB.setEndTime(now); - //妫�鏌ユ槸鍚︽湁鍏宠仈宸ュ崟.濡傛灉鏈夊叧鑱斿伐鍗�,鍏宠仈宸ュ崟鐘舵�侀噸缃负瀹岀粨寰呭鐞�,瀹屾垚鏃堕棿閲嶇疆涓虹┖ - if(mainInDB.getRelatedId() != null){ - Integer relatedId = mainInDB.getRelatedId(); - //mainService.resetRepairStatus(relatedId,mainInDB.getQuantity()); - } mainService.updateById(mainInDB); link.setDealAndClose(1); } diff --git a/src/main/resources/mapper/DeviceSpareMapper.xml b/src/main/resources/mapper/DeviceSpareMapper.xml new file mode 100644 index 0000000..36a7fe5 --- /dev/null +++ b/src/main/resources/mapper/DeviceSpareMapper.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.whyc.mapper.DeviceSpareMapper" > + + <update id="outBound"> + <foreach collection="list" item="item" separator=";"> + update web_site.tb_device_spare set quantity = quantity - #{item.quantity} + where name = #{item.name} + and model = #{item.model} + and version = #{item.version} + and brand = #{item.brand} + and type = #{item.type} + and supplier = #{item.supplier} + </foreach> + </update> +</mapper> \ No newline at end of file -- Gitblit v1.9.1