From 8d06717f05bac39b52eb3a12638169868f9f5944 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Thu, 22 Aug 2024 20:37:05 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=89=AB=E7=A0=81=E5=8D=95=E5=87=8F?= =?UTF-8?q?=E4=B8=80=E5=88=A0=E9=99=A4biz?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/collect/IoCollectOrderService.java | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/glxp/api/service/collect/IoCollectOrderService.java b/src/main/java/com/glxp/api/service/collect/IoCollectOrderService.java index 8070fef5e..8de3faf5c 100644 --- a/src/main/java/com/glxp/api/service/collect/IoCollectOrderService.java +++ b/src/main/java/com/glxp/api/service/collect/IoCollectOrderService.java @@ -350,10 +350,23 @@ public class IoCollectOrderService extends ServiceImpl() .eq(IoCollectOrderBiz::getId, bizIdFk)); if (bizServiceOne == null) throw new JsonException("扫码详情未查找到"); + //反差单据类型 查看是否来源业务单 + String orderIdFk = bizServiceOne.getOrderIdFk(); + IoCollectOrder ioCollectOrder = collectOrderMapper.selectOne(new LambdaQueryWrapper().eq(IoCollectOrder::getBillNo, orderIdFk)); + if (ioCollectOrder == null) throw new JsonException("反差单据失败"); + String busType = ioCollectOrder.getBusType(); + Long workPlaceCode = ioCollectOrder.getWorkPlaceCode(); + SysWorkplaceDocumentEntity byWorkplaceCode = sysWorkplaceDocumentService.findByWorkplaceCode(workPlaceCode, busType); + if (byWorkplaceCode == null) throw new JsonException("反差工位单据类型失败"); + Integer scanType = byWorkplaceCode.getScanType(); Integer oneScanCount = bizServiceOne.getScanCount(); Integer newCount = oneScanCount - delCount; - bizServiceOne.setScanCount(newCount); - collectOrderBizService.updateById(bizServiceOne); + if (scanType == 1 && newCount <= 0){ + collectOrderBizService.removeById(bizServiceOne); + }else { + bizServiceOne.setScanCount(newCount); + collectOrderBizService.updateById(bizServiceOne); + } } }