From 68b6c66761a4b57e7d31e04b9adb6fe40ed888e6 Mon Sep 17 00:00:00 2001 From: liuxy Date: Thu, 12 Jun 2025 18:07:05 +0800 Subject: [PATCH] =?UTF-8?q?rev=EF=BC=9A=E5=87=BA=E5=85=A5=E5=BA=93?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/PdaIosOutServiceImpl.java | 9 +++++++ .../service/util/tasks/BackInTask.java | 3 ++- .../service/util/tasks/MoveTask.java | 3 ++- .../service/util/tasks/PdaPointTask.java | 3 ++- .../service/util/tasks/StInTask.java | 6 ++--- .../service/util/tasks/StOutTask.java | 4 +-- .../service/impl/OutBillServiceImpl.java | 25 +++++++++++++++++-- .../src/views/wms/st/outbill/DivDialog.vue | 1 + .../src/views/wms/st/outbill/ViewDialog.vue | 1 + 9 files changed, 45 insertions(+), 10 deletions(-) diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/service/impl/PdaIosOutServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/service/impl/PdaIosOutServiceImpl.java index b0f194e..d17ebec 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/service/impl/PdaIosOutServiceImpl.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/service/impl/PdaIosOutServiceImpl.java @@ -3,6 +3,8 @@ package org.nl.wms.pda.ios_manage.service.impl; import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import org.nl.common.exception.BadRequestException; import org.nl.wms.basedata_manage.service.IStructattrService; import org.nl.wms.basedata_manage.service.dao.Structattr; @@ -160,6 +162,13 @@ public class PdaIosOutServiceImpl implements PdaIosOutService { attrDao.setLock_type(IOSEnum.LOCK_TYPE.code("入库锁")); attrDao.setTaskdtl_id(task_id); iStructattrService.updateById(attrDao); + + // 更新起点绑定id + iSchBasePointService.update( + new UpdateWrapper().lambda() + .set(SchBasePoint::getIos_id, null) + .eq(SchBasePoint::getPoint_code, pointDao.getPoint_code()) + ); } return PdaResponse.requestOk(); } diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/BackInTask.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/BackInTask.java index 903ee9a..c64a5d0 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/BackInTask.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/BackInTask.java @@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.CodeUtil; import org.nl.common.utils.SecurityUtils; import org.nl.config.IdUtil; import org.nl.wms.basedata_manage.service.IStructattrService; @@ -53,7 +54,7 @@ public class BackInTask extends AbstractTask { public String create(JSONObject json) { SchBaseTask task = new SchBaseTask(); task.setTask_id(IdUtil.getStringId()); - task.setTask_code(IdUtil.getStringId()); + task.setTask_code(CodeUtil.getNewCode("TASK_CODE")); task.setTask_status(TaskStatus.CREATE.getCode()); task.setConfig_code(json.getString("config_code")); task.setPoint_code1(json.getString("point_code1")); diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/MoveTask.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/MoveTask.java index 17d1300..b6eb4cd 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/MoveTask.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/MoveTask.java @@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.CodeUtil; import org.nl.common.utils.SecurityUtils; import org.nl.config.IdUtil; import org.nl.wms.sch_manage.enums.TaskStatus; @@ -51,7 +52,7 @@ public class MoveTask extends AbstractTask { public String create(JSONObject json) { SchBaseTask task = new SchBaseTask(); task.setTask_id(IdUtil.getStringId()); - task.setTask_code(IdUtil.getStringId()); + task.setTask_code(CodeUtil.getNewCode("TASK_CODE")); task.setTask_status(TaskStatus.CREATE.getCode()); task.setConfig_code(json.getString("config_code")); task.setPoint_code1(json.getString("point_code1")); diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/PdaPointTask.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/PdaPointTask.java index 4febb84..02889e6 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/PdaPointTask.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/PdaPointTask.java @@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.CodeUtil; import org.nl.common.utils.SecurityUtils; import org.nl.config.IdUtil; import org.nl.wms.basedata_manage.service.IStructattrService; @@ -53,7 +54,7 @@ public class PdaPointTask extends AbstractTask { public String create(JSONObject json) { SchBaseTask task = new SchBaseTask(); task.setTask_id(IdUtil.getStringId()); - task.setTask_code(IdUtil.getStringId()); + task.setTask_code(CodeUtil.getNewCode("TASK_CODE")); task.setTask_status(TaskStatus.CREATE.getCode()); task.setConfig_code(json.getString("config_code")); task.setPoint_code1(json.getString("point_code1")); diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/StInTask.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/StInTask.java index 0b0e95e..536b14b 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/StInTask.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/StInTask.java @@ -114,7 +114,7 @@ public class StInTask extends AbstractTask { } rawAssistIStorService.taskFinish(taskObj); taskObj.setTask_status(TaskStatus.FINISHED.getCode()); - taskObj.setRemark("完成"); + taskObj.setRemark("已完成"); taskService.updateById(taskObj); } @@ -138,10 +138,10 @@ public class StInTask extends AbstractTask { @Transactional(rollbackFor = Exception.class) public void finishTask(SchBaseTask taskObj) { // 任务完成 - rawAssistIStorService.taskFinish(taskObj); taskObj.setTask_status(TaskStatus.FINISHED.getCode()); - taskObj.setRemark("完成"); + taskObj.setRemark("已完成"); taskService.updateById(taskObj); + rawAssistIStorService.taskFinish(taskObj); } @Transactional(rollbackFor = Exception.class) diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/StOutTask.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/StOutTask.java index fb89a39..a868c79 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/StOutTask.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/StOutTask.java @@ -132,10 +132,10 @@ public class StOutTask extends AbstractTask { @Transactional(rollbackFor = Exception.class) public void finishTask(SchBaseTask taskObj) { // 任务完成 - outBillService.taskFinish(taskObj); taskObj.setTask_status(TaskStatus.FINISHED.getCode()); - taskObj.setRemark("完成"); + taskObj.setRemark("已完成"); taskService.updateById(taskObj); + outBillService.taskFinish(taskObj); } @Transactional(rollbackFor = Exception.class) diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/OutBillServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/OutBillServiceImpl.java index 77b8ea0..0ef5d46 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/OutBillServiceImpl.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/OutBillServiceImpl.java @@ -8,6 +8,7 @@ import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -27,6 +28,8 @@ import org.nl.wms.basedata_manage.service.dao.MdPbStoragevehicleext; import org.nl.wms.basedata_manage.service.dao.Structattr; import org.nl.wms.basedata_manage.service.dao.mapper.MdPbStoragevehicleextMapper; import org.nl.wms.basedata_manage.service.dto.MdPbStoragevehicleextDto; +import org.nl.wms.sch_manage.enums.TaskStatus; +import org.nl.wms.sch_manage.service.ISchBaseTaskService; import org.nl.wms.sch_manage.service.dao.SchBasePoint; import org.nl.wms.sch_manage.service.dao.SchBaseTask; import org.nl.wms.sch_manage.service.dao.mapper.SchBasePointMapper; @@ -52,6 +55,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.math.BigDecimal; import java.util.*; +import java.util.stream.Collectors; /** * @author dsh @@ -78,6 +82,12 @@ public class OutBillServiceImpl extends ServiceImpl i @Resource private MdPbStoragevehicleextMapper mdPbStoragevehicleextMapper; + /** + * 任务服务 + */ + @Resource + private ISchBaseTaskService iSchBaseTaskService; + @Resource private IBsrealStorattrService iBsrealStorattrService; @@ -1058,6 +1068,19 @@ public class OutBillServiceImpl extends ServiceImpl i .eq(IOStorInvDis::getIostorinv_id,whereJson.get("iostorinv_id")) ); + // 判断此单据下的所有任务有没有完成的 + boolean is_finish = iSchBaseTaskService.list( + new QueryWrapper().lambda() + .in(SchBaseTask::getTask_id, storInvDisList.stream() + .map(IOStorInvDis::getTask_id) + .collect(Collectors.toList()) + ) + ).stream() + .allMatch(row -> row.getTask_status().equals(TaskStatus.FINISHED.getCode())); + if (!is_finish) { + throw new BadRequestException("当前有未完成的任务不能强制确认!"); + } + //需要更新的出入库单明细 Set dtlSet = new HashSet<>(); @@ -1162,7 +1185,6 @@ public class OutBillServiceImpl extends ServiceImpl i // 完成当前分配明细 ioStorInvDisMapper.update(ioStorInvDis,new LambdaUpdateWrapper<>(IOStorInvDis.class) .set(IOStorInvDis::getWork_status,IOSEnum.INBILL_DIS_STATUS.code("完成")) - .set(IOStorInvDis::getReal_qty,ioStorInvDis.getPlan_qty()) .eq(IOStorInvDis::getIostorinvdis_id,ioStorInvDis.getIostorinvdis_id()) ); @@ -1217,7 +1239,6 @@ public class OutBillServiceImpl extends ServiceImpl i // 如果分配明细全部完成则更新明细表状态 if (countDis == 0){ // 更新明细表状态 - ioStorInvDtl.setReal_qty(ioStorInvDis.getPlan_qty()); ioStorInvDtl.setBill_status(IOSEnum.BILL_STATUS.code("完成")); ioStorInvDtlMapper.updateById(ioStorInvDtl); diff --git a/wms/nladmin-ui/src/views/wms/st/outbill/DivDialog.vue b/wms/nladmin-ui/src/views/wms/st/outbill/DivDialog.vue index c807905..d3dacbb 100644 --- a/wms/nladmin-ui/src/views/wms/st/outbill/DivDialog.vue +++ b/wms/nladmin-ui/src/views/wms/st/outbill/DivDialog.vue @@ -209,6 +209,7 @@ +