于继渤 2 gadi atpakaļ
vecāks
revīzija
0c201a467c

+ 2 - 0
src/main/java/com/dk/mdm/controller/ivt/IntoReturnController.java

@@ -20,6 +20,8 @@ import org.springframework.web.bind.annotation.RestController;
 import io.swagger.annotations.Api;
 import com.dk.mdm.service.ivt.IntoReturnService;
 
+import java.util.List;
+
 @Api(tags = "入库退货API接口")
 @RestController
 @RequestMapping("/ivt/intoReturn")

+ 9 - 1
src/main/java/com/dk/mdm/mapper/ivt/InboundMapper.xml

@@ -118,6 +118,10 @@
         <result column="price_purchase" property="pricePurchase"/>
         <result column="reject_qty" property="rejectQty"/>
         <result column="sku_images" property="skuImages"  typeHandler="JsonTypeHandler"/>
+        <result column="usable_qty" property="usable_qty"/>
+        <result column="inv_qty" property="invQty"/>
+        <result column="outing_qty" property="outingQty"/>
+
     </resultMap>
 
 
@@ -450,7 +454,10 @@
         tmgs.price_purchase AS  list_price_purchase,
         tmgs.sku_images AS  list_sku_images,
 
-        ( tpii.into_qty + tpii.return_qty)  AS list_reject_qty
+        ( tpii.into_qty + tpii.return_qty)  AS list_reject_qty,
+        tpit.usable_qty AS list_usable_qty,
+        tpit.inv_qty AS list_inv_qty,
+        tpit.outing_qty AS list_outing_qty
     </sql>
 
 
@@ -462,6 +469,7 @@
         FROM dkic_b.t_psi_inbound  tpi
         left join dkic_b.t_psi_inbound_item tpii  on tpi.into_id = tpii.into_id
         left join  dkic_b.t_mst_goods_sku  tmgs on tmgs.sku_id = tpii.sku_id
+        left join  dkic_b.t_psi_inventory  tpit on tpit.sku_id = tpii.sku_id
         <include refid="Condition_Join"/>
         <if test="pageSize != null and currentPage != null and pageSize != 0 and currentPage != 0">
             limit #{end} offset #{start}

+ 5 - 12
src/main/java/com/dk/mdm/mapper/ivt/IntoReturnMapper.xml

@@ -5,7 +5,7 @@
     <!-- 通用设置 -->
     <!-- 通用查询列 -->
     <sql id="Base_Column_List">
-        return_id, return_no, return_type, into_id, pur_id, into_no, pur_no, org_id, staff_id, sup_id, contact_name, contact_phone, delivery_date, sum_quantity, sum_standard, sum_amount, sale_discount, return_status, out_status, outing_qty, outing_amt, out_qty, out_amt, amt_payable, amt_handle, amt_residue, remarks, annex_paths, make_staff, make_time, flg_valid, cp_id, op_create_time, op_create_user_id, op_update_time, op_update_user_id, op_app_code, op_timestamp, op_db_user
+        return_id, return_no, return_type,  pur_id, into_no, pur_no, org_id, staff_id, sup_id, contact_name, contact_phone, delivery_date, sum_quantity, sum_standard, sum_amount, sale_discount, return_status, out_status, outing_qty, outing_amt, out_qty, out_amt, amt_payable, amt_handle, amt_residue, remarks, annex_paths, make_staff, make_time, flg_valid, cp_id, op_create_time, op_create_user_id, op_update_time, op_update_user_id, op_app_code, op_timestamp, op_db_user
     </sql>
 
     <!-- 通用查询映射结果 -->
@@ -13,7 +13,7 @@
         <id column="return_id" property="returnId"/>
                 <result column="return_no" property="returnNo"/>
                 <result column="return_type" property="returnType"/>
-                <result column="into_id" property="intoId" typeHandler="UuidTypeHandler"/>
+
                 <result column="pur_id" property="purId" typeHandler="UuidTypeHandler"/>
                 <result column="into_no" property="intoNo"/>
                 <result column="pur_no" property="purNo"/>
@@ -55,7 +55,7 @@
 
 
     <sql id="Base_Column_List_Response">
-        tpir.return_id, tpir.return_no, tpir.return_type, tpir.into_id, tpir.pur_id, tpir.into_no, tpir.pur_no, tpir.org_id,
+        tpir.return_id, tpir.return_no, tpir.return_type,  tpir.pur_id, tpir.into_no, tpir.pur_no, tpir.org_id,
         tpir.staff_id, tpir.sup_id, tpir.contact_name, tpir.contact_phone, tpir.delivery_date, tpir.sum_quantity,
         tpir.sum_standard, tpir.sum_amount, tpir.sale_discount, tpir.return_status, tpir.out_status,
         tpir.outing_qty, tpir.outing_amt, tpir.out_qty, tpir.out_amt, tpir.amt_payable, tpir.amt_handle, tpir.amt_residue,
@@ -67,7 +67,6 @@
         <id column="return_id" property="returnId"/>
         <result column="return_no" property="returnNo"/>
         <result column="return_type" property="returnType"/>
-        <result column="into_id" property="intoId" typeHandler="UuidTypeHandler"/>
         <result column="pur_id" property="purId" typeHandler="UuidTypeHandler"/>
         <result column="into_no" property="intoNo"/>
         <result column="pur_no" property="purNo"/>
@@ -121,9 +120,7 @@
             <if test="returnType != null and returnType != ''">
                 AND return_type = #{returnType}
             </if>
-            <if test="intoId != null and intoId != ''">
-                AND into_id = #{intoId}
-            </if>
+
             <if test="purId != null and purId != ''">
                 AND pur_id = #{purId}
             </if>
@@ -240,9 +237,7 @@
             <if test="returnType != null and returnType != ''">
                 AND tpir.return_type = #{returnType}
             </if>
-            <if test="intoId != null and intoId != ''">
-                AND tpir.into_id = #{intoId}
-            </if>
+
             <if test="purId != null and purId != ''">
                 AND tpir.pur_id = #{purId}
             </if>
@@ -414,7 +409,6 @@
         <trim suffixOverrides=",">
             return_no,
             return_type,
-            into_id,
             pur_id,
             into_no,
             pur_no,
@@ -451,7 +445,6 @@
             <trim suffixOverrides=",">
                 #{item.returnNo},
                 #{item.returnType},
-                #{item.intoId}::uuid,
                 #{item.purId}::uuid,
                 #{item.intoNo},
                 #{item.purNo},

+ 1 - 7
src/main/java/com/dk/mdm/model/pojo/ivt/IntoReturn.java

@@ -63,13 +63,7 @@ public class IntoReturn extends PageInfo<IntoReturn> implements Serializable {
     private String returnType;
 
 
-    /**
-     * 入库单
-     */
-    @Excel(name = "入库单")
-    @ApiModelProperty(value = "入库单")
-    @TableField(typeHandler = UuidTypeHandler.class)
-    private String intoId;
+
 
 
     /**

+ 1 - 7
src/main/java/com/dk/mdm/model/query/ivt/IntoReturnQuery.java

@@ -66,13 +66,7 @@ public class IntoReturnQuery extends PageInfo<IntoReturnQuery> implements Serial
     private String returnType;
 
 
-    /**
-     * 入库单
-     */
-    @Excel(name = "入库单")
-    @ApiModelProperty(value = "入库单")
-    @TableField(typeHandler = UuidTypeHandler.class)
-    private String intoId;
+
 
 
     /**

+ 1 - 7
src/main/java/com/dk/mdm/model/response/ivt/IntoReturnResponse.java

@@ -63,13 +63,7 @@ public class IntoReturnResponse  implements Serializable {
     private String returnType;
 
 
-    /**
-     * 入库单
-     */
-    @Excel(name = "入库单")
-    @ApiModelProperty(value = "入库单")
-    @TableField(typeHandler = UuidTypeHandler.class)
-    private String intoId;
+
 
 
     /**

+ 1 - 7
src/main/java/com/dk/mdm/model/vo/ivt/InboundVO.java

@@ -42,13 +42,7 @@ public class InboundVO extends PageInfo<InboundVO> implements Serializable {
      * 数据库字段
      */
 
-    /**
-     * 入库单ID
-     */
-    @TableId(value = "into_id", type = IdType.AUTO)
-    @ApiModelProperty(value = "入库单ID")
-    @TableField(typeHandler = UuidTypeHandler.class)
-    private String intoId;
+
 
 
     /**

+ 90 - 86
src/main/java/com/dk/mdm/service/ivt/IntoReturnService.java

@@ -106,91 +106,97 @@ public class IntoReturnService extends BaseService<IntoReturn> {
             rollbackFor = {Exception.class}
     )
     public ResponseResultVO<?> insert(IntoReturnVO intoReturnVO) {
-        //校验明细长度
-        List<IntoReturnItemVO> intoReturnItemVOList = intoReturnVO.getIntoReturnItemVOList();
-        //明细不存在
-        if (intoReturnItemVOList == null || intoReturnItemVOList.size() == 0) {
-            //返回 采购退货明细不可为空,请重新操作
-            return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.PURCHASE_RETURN_DETAIL_NOT_EXIST.getMessage());
-        }
-        //查询采购订单
-        PurchaseResponse purchaseResponse = purchaseMapper.selectById(intoReturnVO.getPurId());
-        //设置总单
-        intoReturnVO = this.insertTotal(intoReturnVO, purchaseResponse);
-        //设置明细
-        intoReturnItemVOList = this.insertDetail(intoReturnVO, intoReturnItemVOList);
-
-        //反写入库单 反写退货数量金额
-        Inbound inbound = inboundMapper.selectById(intoReturnVO.getIntoId());
-        inboundMapper.updateAmount(new Inbound().setIntoId(intoReturnVO.getIntoId())
-                .setReturnQty(inbound.getReturnQty().add(intoReturnVO.getSumQuantity()))
-                .setReturnAmt(inbound.getReturnAmt().add(intoReturnVO.getSumAmount())));
-        //反写订单已入库退货数量、金额
-        purchaseMapper.updateAmount(new Purchase().setPurId(purchaseResponse.getPurId())
-                .setReturnQty(purchaseResponse.getReturnQty().add(intoReturnVO.getSumQuantity()))
-                .setReturnAmt(purchaseResponse.getReturnAmt().add(intoReturnVO.getSumAmount()))
-        );
-
-        //反写入库订单明细、反写订单明细
-        for (IntoReturnItemVO intoReturnItemVO : intoReturnItemVOList) {
-
-            //根据退货明细中入库明细id查询入库明细数据
-            InboundItem inboundItem = inboundItemMapper.selectById(intoReturnItemVO.getIntoItemId());
-            inboundItemMapper.updateAmount(
-                    new InboundItem()
-                            .setItemId(inboundItem.getItemId())
-                            .setReturnQty(inboundItem.getReturnQty().add(intoReturnItemVO.getItemQty().setScale(6, BigDecimal.ROUND_HALF_UP)))
-                            .setReturnAmt(inboundItem.getReturnAmt().add(intoReturnItemVO.getItemAmt().setScale(6, BigDecimal.ROUND_HALF_UP)))
-            );
-            //TODO 反写订单出库明细 退货数量和退货金额
-            //查询采购订单明细数据
-            PurchaseItemResponse purchaseItemResponse = purchaseItemMapper.selectById(intoReturnItemVO.getPurItemId());
-            //反写订单明细退货数量和退货金额
-            purchaseItemMapper.updateAmount(
-                    new PurchaseItem()
-                            .setItemId(intoReturnItemVO.getPurItemId())
-                            .setReturnQty(purchaseItemResponse.getReturnQty().add(intoReturnItemVO.getItemQty().setScale(6, BigDecimal.ROUND_HALF_UP)))
-                            .setReturnAmt(purchaseItemResponse.getReturnAmt().add(intoReturnItemVO.getItemAmt().setScale(6, BigDecimal.ROUND_HALF_UP)))
-
+            //校验明细长度
+            List<IntoReturnItemVO> intoReturnItemVOList = intoReturnVO.getIntoReturnItemVOList();
+            //明细不存在
+            if (intoReturnItemVOList == null || intoReturnItemVOList.size() == 0) {
+                //返回 采购退货明细不可为空,请重新操作
+                return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.PURCHASE_RETURN_DETAIL_NOT_EXIST.getMessage());
+            }
+            //查询采购订单
+            PurchaseResponse purchaseResponse = purchaseMapper.selectById(intoReturnVO.getPurId());
+            //设置总单
+            intoReturnVO = this.insertTotal(intoReturnVO, purchaseResponse);
+            //设置明细
+            intoReturnItemVOList = this.insertDetail(intoReturnVO, intoReturnItemVOList);
+
+
+            //反写采购订单已入库退货数量、金额
+            purchaseMapper.updateAmount(new Purchase().setPurId(intoReturnVO.getPurId())
+                    .setReturnQty(purchaseResponse.getReturnQty().add(intoReturnVO.getSumQuantity()))
+                    .setReturnAmt(purchaseResponse.getReturnAmt().add(intoReturnVO.getSumAmount()))
             );
-        }
-
-        //新建出库单
-        OutboundVO outboundVO = new OutboundVO();
-        //来源ID
-        outboundVO.setFromId(intoReturnVO.getReturnId());
-        //来源单号
-        outboundVO.setFromNo(intoReturnVO.getReturnNo());
-        //部门
-        outboundVO.setOrgId(intoReturnVO.getOrgId());
-        //员工
-        outboundVO.setStaffId(intoReturnVO.getStaffId());
-        //出库状态 待出库
-        outboundVO.setOutStatus(Constant.OutStatus.DAICHUKU.getName());
-        //供应商
-        outboundVO.setSupId(intoReturnVO.getSupId());
-        outboundVO.setMakeStaff(authUtils.getStaff().getStaffId());
-        outboundVO.setCpId(authUtils.getStaff().getCpId());
+            BigDecimal sumReturnQty = BigDecimal.ZERO;
+            BigDecimal sumReturnAmt = BigDecimal.ZERO;
+            //反写入库订单明细、反写订单明细
+            for (IntoReturnItemVO intoReturnItemVO : intoReturnItemVOList) {
+
+                //根据退货明细中入库明细id查询入库明细数据
+                InboundItem inboundItem = inboundItemMapper.selectById(intoReturnItemVO.getIntoItemId());
+                BigDecimal returnQty = inboundItem.getReturnQty().add(intoReturnItemVO.getItemQty().setScale(6, BigDecimal.ROUND_HALF_UP));
+                BigDecimal returnAmt = inboundItem.getReturnAmt().add(intoReturnItemVO.getItemAmt().setScale(6, BigDecimal.ROUND_HALF_UP));
+                sumReturnQty = sumReturnQty.add(returnQty);
+                sumReturnAmt = sumReturnAmt.add(returnAmt);
+                inboundItemMapper.updateAmount(
+                        new InboundItem()
+                                .setItemId(inboundItem.getItemId())
+                                .setReturnQty(returnQty)
+                                .setReturnAmt(returnAmt)
+                );
+                //TODO 反写订单出库明细 退货数量和退货金额
+                //查询采购订单明细数据
+                PurchaseItemResponse purchaseItemResponse = purchaseItemMapper.selectById(intoReturnItemVO.getPurItemId());
+                //反写订单明细退货数量和退货金额
+                purchaseItemMapper.updateAmount(
+                        new PurchaseItem()
+                                .setItemId(intoReturnItemVO.getPurItemId())
+                                .setReturnQty(purchaseItemResponse.getReturnQty().add(intoReturnItemVO.getItemQty().setScale(6, BigDecimal.ROUND_HALF_UP)))
+                                .setReturnAmt(purchaseItemResponse.getReturnAmt().add(intoReturnItemVO.getItemAmt().setScale(6, BigDecimal.ROUND_HALF_UP)))
+
+                );
+            }
+            //反写入库单退货数量金额 todo
+            Inbound inbound = inboundMapper.selectById(intoReturnVO.getIntoId());
+            inboundMapper.updateAmount(new Inbound().setIntoId(intoReturnVO.getIntoId())
+                    .setReturnQty(inbound.getReturnQty().add(sumReturnQty))
+                    .setReturnAmt(inbound.getReturnAmt().add(sumReturnAmt)));
+            //新建出库单
+            OutboundVO outboundVO = new OutboundVO();
+            //来源ID
+            outboundVO.setFromId(intoReturnVO.getReturnId());
+            //来源单号
+            outboundVO.setFromNo(intoReturnVO.getReturnNo());
+            //部门
+            outboundVO.setOrgId(intoReturnVO.getOrgId());
+            //员工
+            outboundVO.setStaffId(intoReturnVO.getStaffId());
+            //出库状态 待出库
+            outboundVO.setOutStatus(Constant.OutStatus.DAICHUKU.getName());
+            //供应商
+            outboundVO.setSupId(intoReturnVO.getSupId());
+            outboundVO.setMakeStaff(authUtils.getStaff().getStaffId());
+            outboundVO.setCpId(authUtils.getStaff().getCpId());
+
+            outboundVO.setFromId(intoReturnVO.getReturnId());
+            List<OutboundItemVO> itemList = new ArrayList<>();
+            Integer itemIndex = 0;
+            for (IntoReturnItemVO intoReturnItemVO : intoReturnItemVOList) {
+                //来源单ID 入库退货
+                OutboundItemVO outboundItemVO = new OutboundItemVO();
+
+                outboundItemVO.setFromId(intoReturnItemVO.getReturnId());
+                outboundItemVO.setFromItemId(intoReturnItemVO.getItemId());
+                outboundItemVO.setSkuId(intoReturnItemVO.getSkuId());
+                outboundItemVO.setItemIndex(itemIndex + 1);
+                outboundItemVO.setPriceOut(intoReturnItemVO.getPriceReturn());
+                outboundItemVO.setInvId(intoReturnItemVO.getInvId());
+                itemList.add(outboundItemVO);
+            }
+
+            outboundVO.setItemList(itemList);
+            //新建出库单
+            outboundService.insertOutBound(outboundVO);
 
-        outboundVO.setFromId(intoReturnVO.getReturnId());
-        List<OutboundItemVO> itemList = new ArrayList<>();
-        Integer itemIndex = 0;
-        for (IntoReturnItemVO intoReturnItemVO : intoReturnItemVOList) {
-            //来源单ID 入库退货
-            OutboundItemVO outboundItemVO = new OutboundItemVO();
-
-            outboundItemVO.setFromId(intoReturnItemVO.getReturnId());
-            outboundItemVO.setFromItemId(intoReturnItemVO.getItemId());
-            outboundItemVO.setSkuId(intoReturnItemVO.getSkuId());
-            outboundItemVO.setItemIndex(itemIndex + 1);
-            outboundItemVO.setPriceOut(intoReturnItemVO.getPriceReturn());
-            outboundItemVO.setInvId(intoReturnItemVO.getInvId());
-            itemList.add(outboundItemVO);
-        }
-
-        outboundVO.setItemList(itemList);
-        //新建出库单
-        outboundService.insertOutBound(outboundVO);
         return ResponseResultUtil.success();
     }
 
@@ -270,6 +276,7 @@ public class IntoReturnService extends BaseService<IntoReturn> {
 
 
     //TODO 未完成
+
     /**
      * @desc : 冲正
      * @date : 2022/6/28 16:58
@@ -288,7 +295,6 @@ public class IntoReturnService extends BaseService<IntoReturn> {
         List<IntoReturnResponse> intoReturnResponsesList = intoReturnMapper.selectByCond(new IntoReturnQuery().setIntoReturnIdList(intoReturnIdList));
 
 
-
         //本次冲正退货总额
         BigDecimal sumReturnAmount = intoReturnResponsesList.stream().map(IntoReturnResponse::getSumAmount)
                 .reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP);
@@ -328,8 +334,6 @@ public class IntoReturnService extends BaseService<IntoReturn> {
         //endregion
 
 
-
-
     }
 
 }