From f98a284238bfc2699206f746fa9cc4e0909e9828 Mon Sep 17 00:00:00 2001 From: mashuai Date: Sun, 13 Jul 2025 11:45:54 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=80=E6=96=99=E6=8E=A5=E6=94=B6=E5=8D=95?= =?UTF-8?q?=E6=8D=AE=E5=AE=8C=E7=BB=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BackReceiveServiceImpl.java | 18 ++++++++---------- .../resources/mapper/app/BackReceiveMapper.xml | 3 +++ .../service/impl/BackApplyServiceImpl.java | 7 +++++++ .../mapper/material/BackApplyMapper.xml | 14 +++++++++----- 4 files changed, 27 insertions(+), 15 deletions(-) diff --git a/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/app/service/impl/BackReceiveServiceImpl.java b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/app/service/impl/BackReceiveServiceImpl.java index f940554a..7b08f552 100644 --- a/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/app/service/impl/BackReceiveServiceImpl.java +++ b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/app/service/impl/BackReceiveServiceImpl.java @@ -268,17 +268,7 @@ public class BackReceiveServiceImpl implements BackReceiveService { if (taskStatus == 0) { throw new RuntimeException("该退料单已完成退料"); } - //修改任务状态 - /* res = updateTaskStatus(taskId, 40); - if (res == 0) { - throw new RuntimeException("tm_task修改状态"); - }*/ record.setId(record.getParentId()); - List list = receiveView2(record); - boolean allZeros = list.stream().allMatch(n -> Double.valueOf(n.getNum()).intValue() == 0); - if (allZeros) { - res = updateTaskStatus(taskId, 40); - } //更加退料接收的数据创建下一步流程 //合格的插入入库记录input_apply_details,修改库存ma_type,修改机具状态 if (StringUtils.isNotBlank(record.getTypeId())) { @@ -289,6 +279,8 @@ public class BackReceiveServiceImpl implements BackReceiveService { int passNum = 0; int maintenanceNum = 0; int scrapNum = 0; + List list = receiveView2(record); + boolean allZeros = list.stream().allMatch(n -> Double.valueOf(n.getNum()).intValue() == 0); if (allZeros) { //修改back_apply_details为已退料(1) res = updateStatus(record); @@ -369,6 +361,12 @@ public class BackReceiveServiceImpl implements BackReceiveService { int postStoreNum = backReceiveMapper.getmaChineByCt(record); record.setPostStoreNum(postStoreNum); } + List endList = receiveView2(record); + // 如果endList中所有数据的backStatus都为1,则修改任务状态为完成 + boolean allFinished = endList.stream().allMatch(n -> "1".equals(n.getBackStatus())); + if (allFinished) { + res = updateTaskStatus(taskId, 40); + } } else { throw new RuntimeException("typeId为空"); } diff --git a/sgzb-modules/sgzb-base/src/main/resources/mapper/app/BackReceiveMapper.xml b/sgzb-modules/sgzb-base/src/main/resources/mapper/app/BackReceiveMapper.xml index b56aa56a..65134d58 100644 --- a/sgzb-modules/sgzb-base/src/main/resources/mapper/app/BackReceiveMapper.xml +++ b/sgzb-modules/sgzb-base/src/main/resources/mapper/app/BackReceiveMapper.xml @@ -1179,6 +1179,9 @@ ) aa on aa.typeId=bad.type_id WHERE bai.id=#{id} + + AND bad.type_id = #{typeId} + order by bad.create_time diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/BackApplyServiceImpl.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/BackApplyServiceImpl.java index 95a82071..fcf97220 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/BackApplyServiceImpl.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/BackApplyServiceImpl.java @@ -543,6 +543,13 @@ public class BackApplyServiceImpl implements BackApplyService { // 查看该协议已建立退料数据 List oldBackTypes = backApplyMapper.getBackApplyDetailsTypeCount(bean); if (CollectionUtils.isNotEmpty(oldBackTypes)) { + // 判断oldBackTypes中的backStatus是否为1,如果为1,去back_check_details表查询实际退料数量 + for (BackApplyInfo backApplyInfo : oldBackTypes) { + if ("1".equals(backApplyInfo.getBackStatus())) { + BackApplyInfo info = backApplyMapper.getList(backApplyInfo); + backApplyInfo.setBackNum(info != null ? (int) Double.parseDouble(info.getNum()) : 0); + } + } oldBackMap = oldBackTypes.stream().collect(Collectors.groupingBy(BackApplyInfo::getTypeId, Collectors.summingInt(BackApplyInfo::getBackNum))); } diff --git a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/BackApplyMapper.xml b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/BackApplyMapper.xml index b007189e..ddb8525d 100644 --- a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/BackApplyMapper.xml +++ b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/BackApplyMapper.xml @@ -918,6 +918,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" SELECT - bcd.type_id AS typeId, - sum( bcd.back_num ) AS backNum + bad.parent_id AS id, + bad.back_status AS backStatus, + bad.type_id AS typeId, + sum( bad.audit_num ) AS backNum FROM - back_check_details bcd - LEFT JOIN back_apply_info bai ON bai.id = bcd.parent_id + back_apply_details bad + LEFT JOIN back_apply_info bai ON bai.id = bad.parent_id LEFT JOIN tm_task tt ON bai.task_id = tt.task_id LEFT JOIN tm_task_agreement tta ON tta.task_id = tt.task_id WHERE tta.agreement_id = #{agreementId} GROUP BY - bcd.type_id + bad.parent_id, + bad.type_id