فهرست منبع

1、修改编辑销售出库问题

zhoux 1 سال پیش
والد
کامیت
0bc086ec4c

+ 2 - 1
src/main/java/com/dk/mdm/service/ivt/inventory/InventoryService.java

@@ -218,7 +218,8 @@ public class InventoryService extends BaseService<Inventory> {
                 throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.SKU_IS_NULL.getMessage());
             }
             //存货ID
-            if (inventoryBatchVO.getInvId() == null || "".equals(inventoryBatchVO.getInvId())) {
+            if (Constant.InventoryType.OUTBOUND .equals(inventoryBatchVO.getInventoryType())
+                    && ( inventoryBatchVO.getInvId() == null || "".equals(inventoryBatchVO.getInvId()))) {
                 throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.SKU_IS_NOT_IN_INVENTORY.getMessage());
             }
             //仓库ID

+ 9 - 4
src/main/java/com/dk/mdm/service/ivt/outbound/OutboundSaleOrderService.java

@@ -718,15 +718,20 @@ public class OutboundSaleOrderService extends BaseService<Outbound> {
                 this.deleteOutsideGoodsInto(outboundVO, outsideGoods);
                 //新建外协品生产外协入库单
                 this.insertOutsideGoodsInto(outboundVO, outsideGoods);
-                List<OutboundItemVO> delOutsideGoods = outboundVO.getDeleteItemList().stream().filter(it -> it.getSkuId() == null).collect(Collectors.toList());
-                //删除外协品生产外协入库单
-                this.deleteOutsideGoodsInto(outboundVO, delOutsideGoods);
+                if(outboundVO.getDeleteItemList() != null){
+                    List<OutboundItemVO> delOutsideGoods = outboundVO.getDeleteItemList().stream().filter(it -> it.getSkuId() == null).collect(Collectors.toList());
+                    //删除外协品生产外协入库单
+                    this.deleteOutsideGoodsInto(outboundVO, delOutsideGoods);
+                }
                 //endregion
 
                 //region 修改库存
                 //筛选出skuId不为空的 走库存
                 List<OutboundItemVO> invList = outboundVO.getItemList().stream().filter(it -> it.getSkuId() != null).collect(Collectors.toList());
-                List<OutboundItemVO> invDelList = outboundVO.getDeleteItemList().stream().filter(it -> it.getSkuId() != null).collect(Collectors.toList());
+                List<OutboundItemVO> invDelList = null;
+                if(outboundVO.getDeleteItemList() != null){
+                    invDelList = outboundVO.getDeleteItemList().stream().filter(it -> it.getSkuId() != null).collect(Collectors.toList());
+                }
                 if ((invList != null && invList.size() > 0) || (invDelList != null && invDelList.size() > 0)) {
                     Map<String, Object> invMap = new HashMap<>();
                     invMap.put("outDetail", invList);

+ 12 - 9
src/main/java/com/dk/mdm/service/sale/OrderService.java

@@ -405,18 +405,21 @@ public class OrderService extends BaseService<Order> {
         // 转化实体
         Order order = orderConvert.convertToPo(orderVO);
         //删除的
-        List<OrderItemVO> deleteOrderItemVOList = orderVO.getDeleteItemList().stream().filter(it -> it.getItemId() != null).collect(Collectors.toList());
-        if (deleteOrderItemVOList.size() > 0) {
-            for (OrderItemVO orderItemVO : deleteOrderItemVOList) {
-                orderItemForUpdate = orderItemMapper.selectByIdForUpdate(orderItemVO.getItemId());
-                // 非待出库单据不能删除
-                if (!Constant.OutStatus.DAICHUKU.getName().equals(orderItemForUpdate.getOutStatus())) {
-                    throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.NO_WAIT_INTO.getMessage());
-                } else {
-                    orderItemMapper.deleteById(orderItemVO.getItemId());
+        if(orderVO.getDeleteItemList() != null){
+            List<OrderItemVO> deleteOrderItemVOList = orderVO.getDeleteItemList().stream().filter(it -> it.getItemId() != null).collect(Collectors.toList());
+            if (deleteOrderItemVOList.size() > 0) {
+                for (OrderItemVO orderItemVO : deleteOrderItemVOList) {
+                    orderItemForUpdate = orderItemMapper.selectByIdForUpdate(orderItemVO.getItemId());
+                    // 非待出库单据不能删除
+                    if (!Constant.OutStatus.DAICHUKU.getName().equals(orderItemForUpdate.getOutStatus())) {
+                        throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.NO_WAIT_INTO.getMessage());
+                    } else {
+                        orderItemMapper.deleteById(orderItemVO.getItemId());
+                    }
                 }
             }
         }
+
         // 新增的
         List<OrderItemVO> insertOrderItemVOList = orderVO.getItemList().stream().filter(it -> it.getItemId() == null).collect(Collectors.toList());
         for (OrderItemVO orderItemVO : insertOrderItemVOList) {