diff --git a/src/main/java/com/glxp/api/service/inout/IoChangeInoutService.java b/src/main/java/com/glxp/api/service/inout/IoChangeInoutService.java index bb0ccfe9..bdf1c5d1 100644 --- a/src/main/java/com/glxp/api/service/inout/IoChangeInoutService.java +++ b/src/main/java/com/glxp/api/service/inout/IoChangeInoutService.java @@ -1,6 +1,7 @@ package com.glxp.api.service.inout; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.lang.UUID; import cn.hutool.core.util.StrUtil; import com.glxp.api.constant.Constant; import com.glxp.api.constant.ConstantStatus; @@ -64,12 +65,11 @@ public class IoChangeInoutService { List codeEnttities = codeService.findByOrderId(orderEntity.getBillNo()); if (basicBusTypePreEntity != null) { buildInOrder(basicBusTypePreEntity, codeEnttities, orderEntity); - }else { + } else { //结束,不生成库存, } - } @@ -141,6 +141,12 @@ public class IoChangeInoutService { //生成单据 public void buildInOrder(BasicBusTypePreEntity bussinessChangeTypeEntity, List useInList, IoOrderEntity orderEntity) { + + + if (StrUtil.isEmpty(orderEntity.getRelKey())) { + orderEntity.setRelKey(UUID.fastUUID().toString(true)); + orderService.update(orderEntity); + } if (useInList.size() <= 0) { return; } diff --git a/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java b/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java index 747dfa96..2b0f97c2 100644 --- a/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java +++ b/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java @@ -1,6 +1,7 @@ package com.glxp.api.service.inout; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.lang.UUID; import cn.hutool.core.util.StrUtil; import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.constant.ConstantStatus; @@ -716,6 +717,11 @@ public class IoCheckInoutService { } } if (preInOrder.size() > 0) { + + if (StrUtil.isEmpty(orderEntity.getRelKey())) { + orderEntity.setRelKey(UUID.fastUUID().toString(true)); + } + String preInBillNo = ""; boolean isBreak = false; for (String key : preInOrder.keySet()) { @@ -723,6 +729,7 @@ public class IoCheckInoutService { preInBillNo = preInBillNo + "," + key; IoOrderEntity preInEntity = orderService.findByBillNo(key); preInEntity.setPreOutBillNo(orderEntity.getBillNo()); + preInEntity.setRelKey(orderEntity.getRelKey()); orderService.update(preInEntity); BasicBussinessTypeEntity preBusType = basicBussinessTypeService.findByAction(preInEntity.getAction()); //预验收不删除单号,方便后续查询 diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java index f5b902fc..73c664d9 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java @@ -703,28 +703,31 @@ public class IoOrderServiceImpl implements IoOrderService { * @return */ private List getAllOrder(IoOrderEntity order) { - Set billNos = new HashSet<>(); - billNos.add(order.getBillNo()); - - getLinkedBillNo(order.getBillNo(), billNos); - - //去除本单的单据号 - Iterator iterator = billNos.iterator(); - while (iterator.hasNext()) { - if (iterator.next().equals(order.getBillNo())) { - iterator.remove(); - break; - } - } - - ArrayList orders = new ArrayList<>(); - if (CollUtil.isNotEmpty(billNos)) { - List list = orderDao.selectList(new QueryWrapper().in("billNo", billNos).orderByDesc("id")); - orders.addAll(list); - } +// Set billNos = new HashSet<>(); +// billNos.add(order.getBillNo()); + + + List orderEntities = orderDao.selectList(new QueryWrapper().eq("relKey", order.getRelKey())); + +// getLinkedBillNo(order.getBillNo(), billNos); +// +// //去除本单的单据号 +// Iterator iterator = billNos.iterator(); +// while (iterator.hasNext()) { +// if (iterator.next().equals(order.getBillNo())) { +// iterator.remove(); +// break; +// } +// } +// +// ArrayList orders = new ArrayList<>(); +// if (CollUtil.isNotEmpty(billNos)) { +// List list = orderDao.selectList(new QueryWrapper().in("billNo", billNos).orderByDesc("id")); +// orders.addAll(list); +// } //将查询入口单据放在第一位的顺序 - orders.add(0, order); - return orders; +// orders.add(0, order); + return orderEntities; } /**