fubin 2 лет назад
Родитель
Сommit
99a234962d

+ 11 - 0
src/main/java/com/dk/mdm/controller/ivt/outBound/OutboundSaleOrderController.java

@@ -135,6 +135,17 @@ public class OutboundSaleOrderController {
     }
 
     /**
+     * @desc : 获取销售出库信息(编辑用,适用于直接新建的出库单)
+     * @author : 付斌
+     * @date : 2024-03-03 9:28
+     */
+    @ApiOperation(value = "编辑出库单", notes = "编辑出库单")
+    @PostMapping({"get_outbound_together_for_update/{id}"})
+    public ResponseResultVO<?> getOutboundTogetherForUpdate(@PathVariable String id) {
+        return outboundSaleOrderService.getOutboundTogetherForUpdate(id);
+    }
+
+    /**
      * @desc : 获取销售出库信息(新建退货用)
      * @author : 付斌
      * @date : 2024-03-03 9:28

+ 7 - 0
src/main/java/com/dk/mdm/mapper/ivt/OutboundItemMapper.java

@@ -46,6 +46,13 @@ public interface OutboundItemMapper extends BaseMapper<OutboundItem>{
     List<OutboundItemResponse> selectByCondForOutEdit(String id);
 
     /**
+     * @desc   : 根据条件进行查询(编辑用,适用于直接新建的出库单)
+     * @author : 付斌
+     * @date   : 2024-03-12 9:36
+     */
+    List<OutboundItemResponse> selectByCondForOutEditTogether(String id);
+
+    /**
      * @desc   : 获取出库信息(新建退货用)
      * @author : 付斌
      * @date   : 2024-03-28 14:43

+ 36 - 2
src/main/java/com/dk/mdm/mapper/ivt/OutboundItemMapper.xml

@@ -356,10 +356,42 @@
         order by t.item_index
     </select>
 
+    <!-- 根据条件进行查询(编辑用,适用于直接新建的出库单) -->
+    <select id="selectByCondForOutEditTogether" resultMap="BaseResultMapResponse">
+        SELECT t.item_id,
+               t.out_id,
+               t.from_item_id,
+               t.from_id,
+               t.item_index,
+               t.sku_id,
+               tmgs.sku_code            as "skuCode",
+               tmgs.sku_model           as "skuModel",
+               tmgs.sku_name            as "skuName",
+               t.price_out,
+               t.outing_qty + t.out_qty as outing_qty,
+               t.outing_amt + t.out_amt as outing_amt,
+               t.out_qty,
+               t.out_amt,
+               t.non_std_code,
+               t.remarks,
+               t.inv_id,
+               tpi.wh_id                as "whId",
+               tpi.inv_qty              as "invQty",
+               tpi.usable_qty           as "usableQty",
+               tmw.wh_name              as "whName"
+        FROM dkic_b.t_psi_outbound_item as t
+                 left join dkic_b.t_mst_goods_sku tmgs on tmgs.sku_id = t.sku_id
+                 left join dkic_b.t_psi_inventory as tpi on tpi.inv_id = t.inv_id
+                 left join dkic_b.t_mst_warehouse as tmw on tmw.wh_id = tpi.wh_id
+        where t.flg_valid
+          and t.out_id = #{id}::uuid
+        order by t.item_index
+    </select>
+
     <!-- 获取出库信息(新建退货用) -->
     <select id="selectByCondForReturn" resultMap="BaseResultMapResponse">
-        SELECT t.out_id                                   as "sOutId",
-               t.item_id                                  as "sOutItemId",
+        SELECT t.out_id                                   as s_out_id,
+               t.item_id                                  as s_out_item_id,
                t.sku_id,
                tmgs.sku_code                              as "skuCode",
                tmgs.sku_model                             as "skuModel",
@@ -369,6 +401,8 @@
                - (t.out_qty - t.return_qty)               as outing_qty,
                t.price_out,
                - t.price_out * (t.out_qty - t.return_qty) as outing_amt,
+               0                                          as out_qty,
+               0                                          as out_amt,
                t.inv_id,
                t.non_std_code,
                t.remarks

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

@@ -331,6 +331,8 @@
                t.price_sale                                         as "priceOut",
                - t.price_sale * (tpobi.out_qty - tpobi.return_qty)  as outing_amt,
                tpobi.inv_id                                         as "invId",
+               0                                                    as out_qty,
+               0                                                    as out_amt,
                t.non_std_code,
                tpobi.remarks
         FROM dkic_b.t_psi_outbound_item as tpobi

+ 5 - 1
src/main/java/com/dk/mdm/model/response/sale/OrderItemResponse.java

@@ -9,7 +9,7 @@ import com.dk.common.infrastructure.annotaiton.ExportTitle;
 import com.dk.common.infrastructure.handler.TimestampTypeHandler;
 import com.dk.common.infrastructure.handler.UuidTypeHandler;
 import com.dk.common.model.pojo.PageInfo;
-import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
@@ -262,15 +262,19 @@ public class OrderItemResponse extends PageInfo<OrderItemResponse> implements Se
     private BigDecimal canReturnQty;
 
     @ApiModelProperty(value = "源出库单ID")
+    @JsonProperty("sOutId")
     private String sOutId;
 
     @ApiModelProperty(value = "源出库单明细ID")
+    @JsonProperty("sOutItemId")
     private String sOutItemId;
 
     @ApiModelProperty(value = "源销售订单ID")
+    @JsonProperty("sOrderId")
     private String sOrderId;
 
     @ApiModelProperty(value = "源销售明细ID")
+    @JsonProperty("sOrderItemId")
     private String sOrderItemId;
 
     /**

+ 26 - 8
src/main/java/com/dk/mdm/service/ivt/outbound/OutboundSaleOrderService.java

@@ -1309,6 +1309,22 @@ public class OutboundSaleOrderService extends BaseService<Outbound> {
     }
 
     /**
+     * @desc : 获取销售出库信息(编辑用,适用于直接新建的出库单)
+     * @author : 付斌
+     * @date : 2024-03-02 17:27
+     */
+    public ResponseResultVO<?> getOutboundTogetherForUpdate(String id) {
+        Map<String, Object> dataInfo = new HashMap<>();
+        OutboundResponse outboundResponse = outboundMapper.selectById(id);
+        dataInfo.put("data", outboundResponse);
+
+        // 商品明细
+        List<OutboundItemResponse> outboundItemResponseList = outboundItemMapper.selectByCondForOutEditTogether(id);
+        dataInfo.put("dataItem", outboundItemResponseList);
+        return ResponseResultUtil.success(dataInfo);
+    }
+
+    /**
      * @desc : 获取出库信息(新建退货用)
      * @author : 付斌
      * @date : 2024-03-02 17:27
@@ -1317,14 +1333,16 @@ public class OutboundSaleOrderService extends BaseService<Outbound> {
         OutboundResponse outboundResponse = outboundMapper.selectByIdForReturn(id);
         List<OutboundItemResponse> outboundItemList = outboundItemMapper.selectByCondForReturn(new OutboundItemQuery().setOutId(id));
 
-        // 求和
-        OutboundItemResponse sumEntity = outboundItemList.stream().reduce((x, y) -> {
-            OutboundItemResponse item = new OutboundItemResponse();
-            item.setOutingQty(x.getOutingQty().add(y.getOutingQty()));
-            item.setOutingAmt(x.getOutingAmt().add(y.getOutingAmt()));
-            return item;
-        }).get();
-        outboundResponse.setOutingQty(sumEntity.getOutingQty()).setOutingAmt(sumEntity.getOutingAmt());
+        if(outboundItemList != null && outboundItemList.size() > 0){
+            // 求和
+            OutboundItemResponse sumEntity = outboundItemList.stream().reduce((x, y) -> {
+                OutboundItemResponse item = new OutboundItemResponse();
+                item.setOutingQty(x.getOutingQty().add(y.getOutingQty()));
+                item.setOutingAmt(x.getOutingAmt().add(y.getOutingAmt()));
+                return item;
+            }).get();
+            outboundResponse.setOutingQty(sumEntity.getOutingQty()).setOutingAmt(sumEntity.getOutingAmt());
+        }
 
         Map<String, Object> dataInfo = new HashMap<>();
         dataInfo.put("data", outboundResponse);