Selaa lähdekoodia

仓库修改仓储费协议可多选商品类别

lazhaoqian 3 vuotta sitten
vanhempi
commit
72386cbffd

+ 3 - 3
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/domain/TWarehouseAgreement.java

@@ -50,7 +50,7 @@ public class TWarehouseAgreement extends BaseEntity {
     /**
      * 货物品名,t_goods 中的no或 name,模糊查找选择后,存储f_id,显示name
      */
-    private Long fGoodsid;
+    private String fGoodsid;
 
     /**
      * 结算方式,也可以从表t_stltypes中下拉选择,存储id,显示name
@@ -161,11 +161,11 @@ public class TWarehouseAgreement extends BaseEntity {
         this.fContractno = fContractno;
     }
 
-    public Long getfGoodsid() {
+    public String getfGoodsid() {
         return fGoodsid;
     }
 
-    public void setfGoodsid(Long fGoodsid) {
+    public void setfGoodsid(String fGoodsid) {
         this.fGoodsid = fGoodsid;
     }
 

+ 1 - 1
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/mapper/TWarehouseAgreementitemsMapper.java

@@ -75,7 +75,7 @@ public interface TWarehouseAgreementitemsMapper {
      * @return
      */
     List<TWarehouseAgreementitems> getItemsBytWarehouseAgreementMsg(@Param("fCorpid") Long fCorpid,
-                                                                    @Param("fGoodsid") Long fGoodsid,
+                                                                    @Param("fGoodsid") String fGoodsid,
                                                                     @Param("feeUnitid") Long feeUnitid);
 
     /**

+ 10 - 9
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/TWarehouseAgreementServiceImpl.java

@@ -34,6 +34,7 @@ import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
 import java.math.BigDecimal;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * 仓储费Service业务层处理
@@ -95,12 +96,12 @@ public class TWarehouseAgreementServiceImpl implements ITWarehouseAgreementServi
         // 用户表
         List<SysUser> sysUserList = new ArrayList<>();
         // 商品
-        List<Long> goodsId = new ArrayList<>();
+        //List<String> goodsId = new ArrayList<>();
         // 费用
         List<Long> feesId = new ArrayList<>();
         if (!StringUtils.isNull(tWarehouseAgreement)) {
             corpsId.add(tWarehouseAgreement.getfCorpid());
-            goodsId.add(tWarehouseAgreement.getfGoodsid());
+            //goodsId.add(tWarehouseAgreement.getfGoodsid());
             map.put("tWarehouseAgreement", tWarehouseAgreement);
         }
         // 协议从表
@@ -120,14 +121,14 @@ public class TWarehouseAgreementServiceImpl implements ITWarehouseAgreementServi
                 corpsList.add(corps);
             }
         }
-        List<TGoods> goodsList = new ArrayList<>();
-        List<Long> goodsIdList = StringUtils.integerDeduplication(goodsId);
-        for (Long goods : goodsIdList) {
-            TGoods tGoods = tGoodsMapper.selectTGoodsById(goods);
+        /*List<TGoods> goodsList = new ArrayList<>();
+        List<String> goodsIdList = goodsId.stream().distinct().collect(Collectors.toList());
+        for (String goods : goodsIdList) {
+            TGoods tGoods = tGoodsMapper.selectTGoodsById(Long.valueOf(goods));
             if (StringUtils.isNotNull(tGoods)) {
                 goodsList.add(tGoods);
             }
-        }
+        }*/
         List<TFees> feesList = new ArrayList<>();
         List<Long> longList = StringUtils.integerDeduplication(feesId);
         for (Long fees : longList) {
@@ -137,7 +138,7 @@ public class TWarehouseAgreementServiceImpl implements ITWarehouseAgreementServi
             }
         }
         map.put("corps", corpsList);
-        map.put("goodsList", goodsList);
+       // map.put("goodsList", goodsList);
         map.put("feesList", feesList);
         map.put("tWarehouseAgreementitems", tWarehouseAgreementitemss);
         map.put("dept", sysDeptMapper.selectDeptById(tWarehouseAgreement.getfDeptid()));
@@ -443,7 +444,7 @@ public class TWarehouseAgreementServiceImpl implements ITWarehouseAgreementServi
      * @author shanxin
      */
     public Map<String, Object> getCarryingCost(Long fCorpid,
-                                               Long fGoodsid,
+                                               String fGoodsid,
                                                Long days,
                                                Long feeUnitid,
                                                BigDecimal itemNums,

+ 12 - 6
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/TWarehouseBillsServiceImpl.java

@@ -572,7 +572,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
             // 业务编码
             String billNo = billnoSerialServiceImpl.getBillNo(billsType, warehouseBills.getfBsdate());
             warehouseBills.setfBillno(billNo);
-            if ("SJRK".equals(billsType)) {
+            if ("SJRK".equals(billsType) || "HQZY".equals(billsType)) {
                 // 存货编码
                 Date time = new Date();
                 String bscorpno = billnoSerialServiceImpl.getCorpNo(warehouseBills.getfCorpid(), time);
@@ -584,7 +584,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
             fPid = warehouseBills.getfId();
         } else {
             fPid = warehouseBills.getfId();
-            if (!"SJRK".equals(billsType)) {
+            if (!"SJRK".equals(billsType) && !"HQZY".equals(billsType)) {
                 warehouseBills.setfChargedate(warehouseBills.getfBsdate());
             }
             warehouseBills.setUpdateBy(loginUser.getUser().getUserName());
@@ -1236,7 +1236,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
                 warehouseBills.setfReviewDate(new Date());
             }
             warehouseBills.setfBilltype(billsType);
-            if (!"SJRK".equals(billsType)) {
+            if (!"SJRK".equals(billsType) && !"HQZY".equals(billsType)) {
                 warehouseBills.setfChargedate(warehouseBills.getfBsdate());
             }
             warehouseBills.setfBsdeptid(loginUser.getUser().getDeptId());
@@ -1257,7 +1257,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
                 warehouseBills.setfReviewDate(new Date());
             }
             warehouseBills.setUpdateTime(new Date());
-            if (!"SJRK".equals(billsType)) {
+            if (!"SJRK".equals(billsType) && !"HQZY".equals(billsType)) {
                 warehouseBills.setfChargedate(warehouseBills.getfBsdate());
             }
             warehouseBills.setUpdateBy(loginUser.getUser().getUserName());
@@ -3914,7 +3914,10 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
             Date fBsdate = (Date) item.get("fBsdate");
             long fCorpid = warehouseBills.getfCorpid();
             String fBilltype = (String) item.get("fBilltype");
-            long fGoodsid = Long.parseLong((String) item.get("fTypeid"));
+            String fGoodsid = (String) item.get("fTypeid");
+            if (StringUtils.isNotEmpty(fGoodsid)) {
+                fGoodsid = "\""+fGoodsid+"\"";
+            }
             long fId = Long.valueOf(String.valueOf(item.get("fId"))).longValue();
             // 累计计费天数
             long accumulatedDays = DateUtils.getDateDay((Date) item.get("fChargedate"), (Date) item.get("fOriginalbilldate"));
@@ -4021,7 +4024,10 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
             Date fBsdate = (Date) item.get("fBsdate");
             long fCorpid = warehouseBills.getfCorpid();
             String fBilltype = (String) item.get("fBilltype");
-            long fGoodsid = Long.parseLong((String) item.get("fTypeid"));
+            String fGoodsid = (String) item.get("fTypeid");
+            if (StringUtils.isNotEmpty(fGoodsid)) {
+                fGoodsid = "\""+fGoodsid+"\"";
+            }
             long fId = Long.valueOf(String.valueOf(item.get("fId"))).longValue();
             // 累计计费天数
             long accumulatedDays = DateUtils.getDateDay((Date) item.get("fChargedate"), (Date) item.get("fOriginalbilldate"));

+ 1 - 1
ruoyi-warehouse/src/main/resources/mapper/warehouseBusiness/TWarehouseAgreementMapper.xml

@@ -113,7 +113,7 @@
             <if test="fContractno != null  and fContractno != ''">and agre.f_contractno = #{fContractno}</if>
             <if test="fDeptid != null ">and agre.f_deptid = #{fDeptid}</if>
             <if test="fCorpid != null ">and agre.f_corpid = #{fCorpid}</if>
-            <if test="fGoodsid != null">and agre.f_goodsid = #{fGoodsid}</if>
+            <if test="fGoodsid != null">and JSON_CONTAINS( agre.f_goodsid -> '$[*]', #{fGoodsid}, '$')</if>
             <if test="fStltypeid != null ">and agre.f_stltypeid = #{fStltypeid}</if>
             <if test="fFeetypeid != null ">and agre.f_feetypeid = #{fFeetypeid}</if>
             <if test="tPackages != null  and tPackages != ''">and agre.t_packages = #{tPackages}</if>

+ 1 - 1
ruoyi-warehouse/src/main/resources/mapper/warehouseBusiness/TWarehouseAgreementitemsMapper.xml

@@ -106,7 +106,7 @@
             LEFT JOIN t_warehouse_agreementitems AS items ON agreement.f_id = items.f_pid
         WHERE
             agreement.f_corpid = #{fCorpid}
-            AND agreement.t_packages = #{fGoodsid}
+            AND JSON_CONTAINS( agreement.t_packages -> '$[*]', #{fGoodsid}, '$')
             AND items.f_feeUnitid = #{feeUnitid}
             AND agreement.f_status = '0'
             AND agreement.del_flag = '0'