Kaynağa Gözat

修复溯源bug

liuyaowen 9 ay önce
ebeveyn
işleme
c6611e0262

+ 6 - 4
src/main/java/com/yunfeiyun/agmp/tss/controller/AgmTaskPickController.java

@@ -106,11 +106,13 @@ public class AgmTaskPickController extends BaseController
         startPage();
         reqVo.setTid(SecurityUtils.getTid());
         List<WmsFinishgoodsListResVo> list = agmTaskpickService.selectWmsFinishgoodsList(reqVo);
-        List<String> stockIds = list.stream().map(WmsFinishgoodsListResVo::getStockId).collect(Collectors.toList());
         Map<String,BigDecimal> spmOrderMap = new HashMap<>();
-        if(!stockIds.isEmpty()){
-            List<SpmOrderNoSendAmountResVo> spmOrderList = spmOrderMapper.selectSpmOrderNoSendAmount(stockIds);
-            spmOrderMap = spmOrderList.stream().collect(Collectors.toMap(SpmOrderNoSendAmountResVo::getStockId,SpmOrderNoSendAmountResVo::getOrderGoodscount));
+        if(reqVo.isUsefulStock()){
+            List<String> stockIds = list.stream().map(WmsFinishgoodsListResVo::getStockId).collect(Collectors.toList());
+            if(!stockIds.isEmpty()){
+                List<SpmOrderNoSendAmountResVo> spmOrderList = spmOrderMapper.selectSpmOrderNoSendAmount(stockIds);
+                spmOrderMap = spmOrderList.stream().collect(Collectors.toMap(SpmOrderNoSendAmountResVo::getStockId,SpmOrderNoSendAmountResVo::getOrderGoodscount));
+            }
         }
          for (WmsFinishgoodsListResVo wmsFinishgoodsListResVo : list) {
             //查询溯源图片

+ 1 - 1
src/main/java/com/yunfeiyun/agmp/tss/domain/SpmOrder.java

@@ -36,7 +36,7 @@ public class SpmOrder extends BaseEntity {
 
     /** 出库登记单销售数量 */
     @Excel(name = "出库登记单销售数量")
-    private Long orderGoodscount;
+    private String orderGoodscount;
 
     /** 出库登记单订单生成时间 */
     @Excel(name = "出库登记单订单生成时间")

+ 4 - 0
src/main/java/com/yunfeiyun/agmp/tss/domain/reqvo/AgmTaskPickListReqVo.java

@@ -49,6 +49,10 @@ public class AgmTaskPickListReqVo extends BaseEntity {
      * 是否有库存量,0否,1是
      */
     private String hasStock;
+    /**
+     * 是否展示可用库存
+     * */
+    private boolean  usefulStock;
 
     /**
      * 质检状态

+ 3 - 1
src/main/java/com/yunfeiyun/agmp/tss/domain/resvo/SpmOrderOfScreenResVo.java

@@ -3,6 +3,8 @@ package com.yunfeiyun.agmp.tss.domain.resvo;
 import com.yunfeiyun.agmp.common.enums.SpmOrderStatus;
 import lombok.Data;
 
+import java.math.BigDecimal;
+
 @Data
 public class SpmOrderOfScreenResVo {
 	/**订单金额*/
@@ -16,7 +18,7 @@ public class SpmOrderOfScreenResVo {
    /**农产品信息*/
    private String finishgoodscode;
    /**销售数量*/
-   private Integer orderGoodscount;
+   private BigDecimal orderGoodscount;
    /**货物单位*/
    private String goodsUnit;
    /**货物单位*/

+ 3 - 1
src/main/java/com/yunfeiyun/agmp/tss/domain/resvo/SpmOrderOfTssStatResVo.java

@@ -3,6 +3,8 @@ package com.yunfeiyun.agmp.tss.domain.resvo;
 import com.yunfeiyun.agmp.common.enums.SpmOrderStatus;
 import lombok.Data;
 
+import java.math.BigDecimal;
+
 @Data
 public class SpmOrderOfTssStatResVo {
    /**订单金额*/
@@ -16,7 +18,7 @@ public class SpmOrderOfTssStatResVo {
    /**农产品信息*/
    private String finishgoodscode;
    /**销售数量*/
-   private Integer orderGoodscount;
+   private BigDecimal orderGoodscount;
    /**货物单位*/
    private String goodsUnit;
    /**货物单位*/

+ 1 - 1
src/main/java/com/yunfeiyun/agmp/tss/domain/resvo/SpmOrderResVo.java

@@ -21,7 +21,7 @@ public class SpmOrderResVo {
    private String finishgoodscode;
    /**销售数量*/
    @Excel(name = "销售数量")
-   private Integer orderGoodscount;
+   private BigDecimal orderGoodscount;
    /**订单金额*/
    @Excel(name = "订单金额")
    private BigDecimal orderPrice;

+ 1 - 1
src/main/java/com/yunfeiyun/agmp/tss/service/impl/SpmOrderServiceImpl.java

@@ -310,7 +310,7 @@ public class SpmOrderServiceImpl implements ISpmOrderService {
         wmsChangeapplyitem.setChangeapplyitemType(wmsFinishgoodsStockResVo.getFinishgoodsType());
         wmsChangeapplyitem.setChangeapplyitemUnit(wmsFinishgoodsStockResVo.getGoodsUnit());
         wmsChangeapplyitem.setChangeapplyitemSpec(wmsFinishgoodsStockResVo.getGoodsSpec());
-        if (spmOrder.getOrderGoodscount() == 0) {
+        if (new BigDecimal(spmOrder.getOrderGoodscount()).compareTo(BigDecimal.ZERO) == 0) {
             throw new BizException(ErrorCode.WMS_STOCK_CANNOT_CHANGE_ZERO);
         }
         wmsChangeapplyitem.setChangeapplyitemNum(new BigDecimal(spmOrder.getOrderGoodscount()));