Explorar el Código

开单并出库

于继渤 hace 1 año
padre
commit
2bdd939d65

+ 22 - 0
src/main/java/com/dk/mdm/infrastructure/convert/sale/OutBoundDtoConvert.java

@@ -0,0 +1,22 @@
+package com.dk.mdm.infrastructure.convert.sale;
+
+import com.dk.mdm.model.vo.ivt.OutboundVO;
+import com.dk.mdm.model.vo.sale.OrderVO;
+import org.mapstruct.Mapper;
+
+/**
+ * @desc   : Order转换类
+ * @author : 付斌
+ * @date   : 2024-02-28 10:18
+ */
+@Mapper(componentModel = "spring")
+public interface OutBoundDtoConvert {
+
+    /**
+     * @desc   : 转换vo为pojo
+     * @author : 付斌
+     * @date   : 2024-02-28 15:26
+     */
+    OutboundVO convertToPo(OrderVO orderVO);
+
+}

+ 3 - 0
src/main/java/com/dk/mdm/mapper/common/CommonMapper.xml

@@ -504,6 +504,9 @@
         <if test="skuName != null">
             AND tmgs.sku_name LIKE concat('%',my_ex.likequery(#{skuName}),'%')
         </if>
+        <if test="brandId != null">
+            AND tmgb.brand_id = #{brandId}::uuid
+        </if>
         <if test="categoryId != null">
             AND tmgs.category_id = #{categoryId}::uuid
         </if>

+ 14 - 0
src/main/java/com/dk/mdm/model/vo/sale/OrderItemVO.java

@@ -213,6 +213,20 @@ public class OrderItemVO extends PageInfo<OrderItemVO> implements Serializable {
     @TableField(typeHandler = UuidTypeHandler.class)
     private String whId;
 
+    /**
+     * 售价
+     */
+    @Excel(name = "出库价")
+    @ApiModelProperty(value = "出库价")
+    private BigDecimal priceOut;
+
+
+    private String fromId;
+
+    private String fromItemId;
+
+    private String invId;
+
     private static final long serialVersionUID = 1L;
 
 }

+ 12 - 2
src/main/java/com/dk/mdm/model/vo/sale/OrderVO.java

@@ -10,6 +10,7 @@ import com.dk.common.infrastructure.handler.JsonTypeHandler;
 import com.dk.common.infrastructure.handler.TimestampTypeHandler;
 import com.dk.common.infrastructure.handler.UuidTypeHandler;
 import com.dk.common.model.pojo.PageInfo;
+import com.dk.common.model.vo.AnnexVO;
 import com.dk.mdm.model.vo.mac.RecPayItemVO;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModel;
@@ -305,10 +306,12 @@ public class OrderVO extends PageInfo<OrderVO> implements Serializable {
      * 附件 (index(显示顺序)、name(文件名)、path(路径)、type(类型)、time(上传时间)...)
      */
     @Excel(name = "附件 (index(显示顺序)、name(文件名)、path(路径)、type(类型)、time(上传时间)...)")
+//    @ApiModelProperty(value = "附件 (index(显示顺序)、name(文件名)、path(路径)、type(类型)、time(上传时间)...)")
+//    @TableField(typeHandler = JsonTypeHandler.class)
+//    private JSONArray annexPaths;
     @ApiModelProperty(value = "附件 (index(显示顺序)、name(文件名)、path(路径)、type(类型)、time(上传时间)...)")
     @TableField(typeHandler = JsonTypeHandler.class)
-    private JSONArray annexPaths;
-
+    private List<AnnexVO> annexPaths;
 
     /**
      * 制单员
@@ -371,6 +374,13 @@ public class OrderVO extends PageInfo<OrderVO> implements Serializable {
     @ApiModelProperty(value = "收款明细")
     private List<RecPayItemVO> receiptList;
 
+    @ApiModelProperty(value = "开单并出库办理标识")
+    private Boolean outboundProcessingFlag;
+
+    @Excel(name = "自动办理标识")
+    @ApiModelProperty(value = "自动办理标识")
+    private Boolean flgAutoHandle;
+
     private static final long serialVersionUID = 1L;
 
 }

+ 25 - 0
src/main/java/com/dk/mdm/service/sale/OrderService.java

@@ -13,6 +13,7 @@ import com.dk.common.response.ResponseResultVO;
 import com.dk.mdm.infrastructure.convert.mac.RecPayItemConvert;
 import com.dk.mdm.infrastructure.convert.sale.OrderConvert;
 import com.dk.mdm.infrastructure.convert.sale.OrderItemConvert;
+import com.dk.mdm.infrastructure.convert.sale.OutBoundDtoConvert;
 import com.dk.mdm.mapper.mac.AccountItemMapper;
 import com.dk.mdm.mapper.mac.RecPayHandleItemMapper;
 import com.dk.mdm.mapper.mac.RecPayItemMapper;
@@ -45,10 +46,12 @@ import com.dk.mdm.model.response.mac.RecPayResponse;
 import com.dk.mdm.model.response.sale.MultiOwnerResponse;
 import com.dk.mdm.model.response.sale.OrderItemResponse;
 import com.dk.mdm.model.response.sale.OrderResponse;
+import com.dk.mdm.model.vo.ivt.OutboundVO;
 import com.dk.mdm.model.vo.mac.RecPayItemVO;
 import com.dk.mdm.model.vo.sale.OrderItemVO;
 import com.dk.mdm.model.vo.sale.OrderVO;
 import com.dk.mdm.service.common.CommonService;
+import com.dk.mdm.service.ivt.outbound.OutboundSaleOrderService;
 import com.dk.mdm.service.mac.AccountService;
 import com.dk.mdm.service.mac.RecPayItemService;
 import com.dk.mdm.service.mac.ReceiptService;
@@ -133,6 +136,12 @@ public class OrderService extends BaseService<Order> {
     @Autowired
     private RecPayItemConvert recPayItemConvert;
 
+    @Autowired
+    private OutboundSaleOrderService outboundSaleOrderService;
+
+    @Autowired
+    private OutBoundDtoConvert outBoundDtoConvert;
+
     /**
      * @desc : 条件查询
      * @author : 付斌
@@ -330,6 +339,22 @@ public class OrderService extends BaseService<Order> {
             accountService.updateByUuid(accountUpdate);
         }
         /**************************************** 客户收款end ********************************/
+        //开单并出库办理
+        if (orderVO.getOutboundProcessingFlag()){
+            for (OrderItemVO orderItemVO : orderVO.getItemList()) {
+                orderItemVO.setOutingQty(orderItemVO.getItemQty());
+                orderItemVO.setOutingAmt(orderItemVO.getItemAmt());
+                orderItemVO.setPriceOut(orderItemVO.getPriceSale());
+                orderItemVO.setFromId(orderVO.getOrderId());
+                orderItemVO.setFromItemId(orderItemVO.getFromItemId());
+            }
+            OutboundVO outboundVO = outBoundDtoConvert.convertToPo(orderVO);
+            outboundVO.setOutDate(LocalDate.now());
+            outboundVO.setOutingQty(orderVO.getSumQuantity());
+            outboundVO.setOutingAmt(orderVO.getSumAmount());
+            outboundSaleOrderService.saleOrderOutboundInsert(outboundVO);
+        }
+
         return ResponseResultUtil.success();
     }