소스 검색

优化 查询物品 代码

Your Name 3 년 전
부모
커밋
968793858b

+ 11 - 0
java110-bean/src/main/java/com/java110/dto/resourceStore/ResourceStoreDto.java

@@ -1,6 +1,7 @@
 package com.java110.dto.resourceStore;
 
 import com.java110.dto.PageDto;
+import com.java110.dto.resourceStoreTimes.ResourceStoreTimesDto;
 
 import java.io.Serializable;
 import java.util.Date;
@@ -74,6 +75,8 @@ public class ResourceStoreDto extends PageDto implements Serializable {
     private String isFixed;
     private String isFixedName;
 
+    private List<ResourceStoreTimesDto> times;
+
     public String getResName() {
         return resName;
     }
@@ -401,4 +404,12 @@ public class ResourceStoreDto extends PageDto implements Serializable {
     public void setShObjIds(String[] shObjIds) {
         this.shObjIds = shObjIds;
     }
+
+    public List<ResourceStoreTimesDto> getTimes() {
+        return times;
+    }
+
+    public void setTimes(List<ResourceStoreTimesDto> times) {
+        this.times = times;
+    }
 }

+ 9 - 0
java110-bean/src/main/java/com/java110/dto/resourceStoreTimes/ResourceStoreTimesDto.java

@@ -23,6 +23,7 @@ public class ResourceStoreTimesDto extends PageDto implements Serializable {
 
     private String hasStock;
     private String resCode;
+    private String[] resCodes;
     private String timesId;
 
 
@@ -111,4 +112,12 @@ public class ResourceStoreTimesDto extends PageDto implements Serializable {
     public void setTotalPrice(String totalPrice) {
         this.totalPrice = totalPrice;
     }
+
+    public String[] getResCodes() {
+        return resCodes;
+    }
+
+    public void setResCodes(String[] resCodes) {
+        this.resCodes = resCodes;
+    }
 }

+ 12 - 0
java110-db/src/main/resources/mapper/store/ResourceStoreTimesV1ServiceDaoImplMapper.xml

@@ -43,6 +43,12 @@
         <if test="resCode !=null and resCode != ''">
             and t.res_code= #{resCode}
         </if>
+        <if test="resCodes != null ">
+            and t.res_code in
+            <foreach collection="resCodes" item="item" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
         <if test="timesId !=null and timesId != ''">
             and t.times_id= #{timesId}
         </if>
@@ -108,6 +114,12 @@
         <if test="resCode !=null and resCode != ''">
             and t.res_code= #{resCode}
         </if>
+        <if test="resCodes != null ">
+            and t.res_code in
+            <foreach collection="resCodes" item="item" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
         <if test="timesId !=null and timesId != ''">
             and t.times_id= #{timesId}
         </if>

+ 4 - 0
service-store/src/main/java/com/java110/store/cmd/resourceStore/ListResourceStoresCmd.java

@@ -26,6 +26,10 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
+/**
+ * 查询物品
+ * add by wuxw 2023-01-19
+ */
 @Java110Cmd(serviceCode = "resourceStore.listResourceStores")
 public class ListResourceStoresCmd extends Cmd {
 

+ 28 - 0
service-store/src/main/java/com/java110/store/smo/impl/ResourceStoreInnerServiceSMOImpl.java

@@ -5,8 +5,10 @@ import com.java110.dto.PageDto;
 import com.java110.dto.file.FileRelDto;
 import com.java110.dto.purchaseApply.PurchaseApplyDto;
 import com.java110.dto.resourceStore.ResourceStoreDto;
+import com.java110.dto.resourceStoreTimes.ResourceStoreTimesDto;
 import com.java110.intf.common.IFileRelInnerServiceSMO;
 import com.java110.intf.store.IResourceStoreInnerServiceSMO;
+import com.java110.intf.store.IResourceStoreTimesV1InnerServiceSMO;
 import com.java110.intf.user.IUserInnerServiceSMO;
 import com.java110.po.purchase.ResourceStorePo;
 import com.java110.store.dao.IResourceStoreServiceDao;
@@ -43,6 +45,9 @@ public class ResourceStoreInnerServiceSMOImpl extends BaseServiceSMO implements
     @Autowired
     private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl;
 
+    @Autowired
+    private IResourceStoreTimesV1InnerServiceSMO resourceStoreTimesV1InnerServiceSMOImpl;
+
     @Override
     public List<ResourceStoreDto> queryResourceStores(@RequestBody ResourceStoreDto resourceResourceStoreDto) {
         //校验是否传了 分页信息
@@ -53,7 +58,10 @@ public class ResourceStoreInnerServiceSMOImpl extends BaseServiceSMO implements
         List<ResourceStoreDto> resourceResourceStores = BeanConvertUtil.covertBeanList(resourceResourceStoreServiceDaoImpl.getResourceStoreInfo(BeanConvertUtil.beanCovertMap(resourceResourceStoreDto)), ResourceStoreDto.class);
         //获取图片地址
         List<ResourceStoreDto> resourceStoreDtos = new ArrayList<>();
+        List<String> resCodes = new ArrayList<>();
         for (ResourceStoreDto resourceStoreDto : resourceResourceStores) {
+
+            resCodes.add(resourceStoreDto.getResCode());
             //获取资源id
             String resId = resourceStoreDto.getResId();
             FileRelDto fileRelDto = new FileRelDto();
@@ -69,6 +77,26 @@ public class ResourceStoreInnerServiceSMOImpl extends BaseServiceSMO implements
             }
             resourceStoreDtos.add(resourceStoreDto);
         }
+
+        ResourceStoreTimesDto resourceStoreTimesDto = new ResourceStoreTimesDto();
+        resourceStoreTimesDto.setStoreId(resourceResourceStoreDto.getStoreId());
+        resourceStoreTimesDto.setResCodes(resCodes.toArray(new String[resCodes.size()]));
+        List<ResourceStoreTimesDto> resourceStoreTimesDtos = resourceStoreTimesV1InnerServiceSMOImpl.queryResourceStoreTimess(resourceStoreTimesDto);
+
+        if(resourceStoreTimesDtos == null || resourceStoreTimesDtos.size()< 1){
+            return resourceStoreDtos;
+        }
+
+        List<ResourceStoreTimesDto> times = null;
+        for (ResourceStoreDto resourceStoreDto : resourceResourceStores) {
+            times = new ArrayList<>();
+            for(ResourceStoreTimesDto tmpResourceStoreTimesDto: resourceStoreTimesDtos){
+                if(resourceStoreDto.getResCode().equals(tmpResourceStoreTimesDto.getResCode())){
+                    times.add(tmpResourceStoreTimesDto);
+                }
+            }
+            resourceStoreDto.setTimes(times);
+        }
         return resourceStoreDtos;
     }