Quellcode durchsuchen

Merge branch 'master' of http://git.dongkesoft.com:9001/iBOSS-2.0-Mini/iboss-server-mdm

koushanshan vor 1 Jahr
Ursprung
Commit
16a8ddf6b2

+ 4 - 2
src/main/java/com/dk/mdm/mapper/sale/OrderItemMapper.xml

@@ -108,6 +108,8 @@
         <result column="sku_code" property="skuCode"/>
         <result column="sku_model" property="skuModel"/>
         <result column="sku_name" property="skuName"/>
+        <result column="skuModel" property="skuModel"/>
+        <result column="skuName" property="skuName"/>
         <result column="can_out_qty" property="canOutQty"/>
     </resultMap>
 
@@ -434,8 +436,8 @@
                t.item_id                                            as "sOrderItemId",
                t.sku_id,
                tmgs.sku_code                                        as "skuCode",
-               tmgs.sku_model                                       as "skuModel",
-               tmgs.sku_name                                        as "skuName",
+               tpobi.sku_model                                       as "skuModel",
+               tpobi.sku_name                                        as "skuName",
                tpobi.out_qty                                        as "outboundOutQty",
                sys.f_remove_zero(tpobi.out_qty - tpobi.return_qty)                     as "canReturnQty",
                - sys.f_remove_zero(tpobi.out_qty - tpobi.return_qty)                 as outing_qty,

+ 3 - 1
src/main/java/com/dk/mdm/mapper/sale/OrderMapper.xml

@@ -786,7 +786,9 @@
                t.discount,
                t.fact_amt,
                t.disc_amt,
-               tmo.flg_business
+               tmo.flg_business,
+               t.outbound_processing_flag,
+               t.flg_auto_handle
         FROM dkic_b.t_psi_order as t
                  left join dkic_b.t_mst_sale_channel tmsc on t.sales_channel = tmsc.channel_id
                  left join dkic_b.t_mst_org tmo on t.org_id = tmo.org_id

+ 37 - 3
src/main/java/com/dk/mdm/service/sale/OrderService.java

@@ -521,7 +521,10 @@ public class OrderService extends BaseService<Order> {
         for (OrderItemVO orderItemVO : insertOrderItemVOList) {
             OrderItem orderItem = orderItemConvert.convertToPo(orderItemVO);
             orderItem.setOrderId(order.getOrderId()).setCpId(order.getCpId()).setOutStatus(Constant.OutStatus.DAICHUKU.getName());
+            orderItem.setItemId(UUID.randomUUID().toString());
             orderItemMapper.insert(orderItem);
+            orderItemVO.setItemId(orderItem.getItemId());
+            orderItemVO.setOrderId(orderVO.getOrderId());
         }
         // 编辑的
         List<OrderItemVO> editOrderItemVOList = orderVO.getItemList().stream().filter(it -> it.getItemId() != null).collect(Collectors.toList());
@@ -535,9 +538,11 @@ public class OrderService extends BaseService<Order> {
             }
             // 如果出库数量不是0,则不能改仓库
             if (outintOrOutQty.compareTo(BigDecimal.ZERO) != 0) {
-                if (!orderItemForUpdate.getWhId().equals(orderItemVO.getWhId())) {
-                    throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.ORDER_ISOUT.getMessage());
-                }
+               if(orderItemForUpdate.getSkuId()!=null){ //过滤外协品
+                   if (!orderItemForUpdate.getWhId().equals(orderItemVO.getWhId())) {
+                       throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.ORDER_ISOUT.getMessage());
+                   }
+               }
             }
             OrderItem orderItem = orderItemConvert.convertToPo(orderItemVO);
             orderItemService.updateByUuid(orderItem);
@@ -758,7 +763,36 @@ public class OrderService extends BaseService<Order> {
             accountService.updateMac(macId);
         }
         /**************************************** 客户收款end ********************************/
+        if(insertOrderItemVOList.size()>0){ //编辑生产出库单
+
+            //开单并出库办理
+            if (orderVO.getOutboundProcessingFlag() != null && orderVO.getOutboundProcessingFlag()) {
+                for (OrderItemVO orderItemVO : insertOrderItemVOList) {
+                    orderItemVO.setOutingQty(orderItemVO.getItemQty());
+                    orderItemVO.setOutingAmt(orderItemVO.getItemAmt());
+                    orderItemVO.setPriceOut(orderItemVO.getFactPrice());
+                    orderItemVO.setFromId(orderVO.getOrderId());
+                    orderItemVO.setFromItemId(orderItemVO.getItemId());
+                }
+                orderVO.setItemList(insertOrderItemVOList);
+                OutboundVO outboundVO = outBoundDtoConvert.convertToPo(orderVO);
+                outboundVO.setOutDate(LocalDate.now());
+                outboundVO.setOutingQty(orderVO.getSumQuantity());
+                outboundVO.setOutingAmt(orderVO.getFactAmt());
+                outboundVO.setFlgAutoHandle(orderVO.getFlgAutoHandle());
+                outboundVO.setFlgHandleSetting(orderVO.getFlgHandleSetting());
+                outboundVO.setFromId(order.getOrderId());
+                outboundVO.setFromNo(order.getOrderNo());
+                outboundVO.setOutDate(orderVO.getDeliveryDate());
+                outboundVO.setFactAmt(orderVO.getFactAmt());
+                outboundVO.setDiscount(orderVO.getDiscount());
+                outboundVO.setDiscAmt(orderVO.getDiscAmt());
+                outboundVO.setSumAmount(orderVO.getSumAmount());
+
+                outboundSaleOrderService.inventoryOUtBond(outboundVO);
+            }
 
+        }
         return ResponseResultUtil.success();
     }