Explorar o código

优化 将仓库管理模块中的循环查询,删除 改为 批量查询和批量删除

zhaiyifei hai 11 meses
pai
achega
25d7734ae0

+ 2 - 4
src/main/java/com/yunfeiyun/agmp/fms/service/impl/FmsSolarServiceImpl.java

@@ -1,13 +1,10 @@
 package com.yunfeiyun.agmp.fms.service.impl;
 
-import cn.hutool.core.annotation.Link;
 import com.xkzhangsan.time.LunarDate;
 import com.xkzhangsan.time.calendar.CalendarUtil;
 import com.xkzhangsan.time.calendar.CalendarWrapper;
 import com.xkzhangsan.time.calendar.DayWrapper;
 import com.xkzhangsan.time.utils.StringUtil;
-import com.yunfeiyun.agmp.common.utils.DateUtils;
-import com.yunfeiyun.agmp.common.utils.LunchCalenderUtil;
 import com.yunfeiyun.agmp.fms.domain.FmsSolar;
 import com.yunfeiyun.agmp.fms.mapper.FmsSolarMapper;
 import com.yunfeiyun.agmp.fms.service.IFmsSolarService;
@@ -16,7 +13,8 @@ import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import java.util.*;
+import java.util.LinkedHashMap;
+import java.util.List;
 import java.util.stream.Collectors;
 
 

+ 5 - 0
src/main/java/com/yunfeiyun/agmp/fms/service/impl/FmsTaskpickServiceImpl.java

@@ -49,6 +49,8 @@ public class FmsTaskpickServiceImpl implements IFmsTaskpickService
      */
     @Override
     public List<FmsTaskPickListResVo> selectFmsTaskpickList(FmsTaskPickListReqVo fmsTaskPickListReqVo) {
+        String tid = SecurityUtils.getTid();
+        fmsTaskPickListReqVo.setTid(tid);
         return fmsTaskpickMapper.selectFmsTaskpickList(fmsTaskPickListReqVo);
     }
 
@@ -59,6 +61,8 @@ public class FmsTaskpickServiceImpl implements IFmsTaskpickService
      **/
     @Override
     public List<FmsTaskPickStockListResVo> selectFmsTaskPickStockList(FmsCrop fmsCrop) {
+        String tid = SecurityUtils.getTid();
+        fmsCrop.setTid(tid);
         return fmsTaskpickMapper.selectFmsTaskPickStockList(fmsCrop);
     }
 
@@ -89,6 +93,7 @@ public class FmsTaskpickServiceImpl implements IFmsTaskpickService
      **/
     @Override
     public List<FmsTaskPickStockDetailResVo> selectFmsTaskPickStockDetailList(FmsTaskPickStockDetailReqVo fmsTaskPickStockDetailReqVo) {
+        fmsTaskPickStockDetailReqVo.setTid(SecurityUtils.getTid());
         return fmsTaskpickMapper.selectFmsTaskPickStockDetailList(fmsTaskPickStockDetailReqVo);
     }
 

+ 27 - 41
src/main/resources/mapper/FmsTaskpickMapper.xml

@@ -9,20 +9,19 @@
     </sql>
 
     <select id="selectFmsTaskpickList" parameterType="FmsTaskPickListReqVo" resultType="FmsTaskPickListResVo">
-        SELECT c.cropName, c.cropType, t.taskNo, t.taskId,r.resUrl as cropPreview, p.planNo, l.landName, b.blockName, p.planArea, i.pickWeight, i.pickNo, t.taskPlanstartdate, t.taskPlanenddate, s.taskrcdHour, t.taskCreateddate, t.taskAudittype, t.taskStatus, t.taskContent, t.taskAuditor,
-        su.userName as taskManagername
-        FROM
-        FmsTask t
-        LEFT JOIN FmsCrop c ON t.cropId = c.cropId
-        LEFT JOIN FmsLand l ON t.landId = l.landId
-        LEFT JOIN FmsBlock b ON t.blockId = b.blockId
-        LEFT JOIN FmsPlan p ON t.planId = p.planId
-        LEFT JOIN FmsTaskpick i ON t.taskId = i.taskId
-        LEFT JOIN FmsTaskrcd s ON t.taskId = s.taskId and s.taskrcdAuditstatus = 2
-        LEFT JOIN SysUser su on su.userId = t.taskManager
-        LEFT JOIN
-        (select * from SysRes where resMediatype = '1' and resBiztype = 'CROP')
-        r on r.resBusId = c.cropId
+        SELECT c.cropName, c.cropType, t.taskNo, t.taskId,r.resUrl as cropPreview, p.planNo, l.landName, b.blockName,
+            p.planArea, i.pickWeight, i.pickNo, t.taskPlanstartdate, t.taskPlanenddate, s.taskrcdHour,
+            t.taskCreateddate, t.taskAudittype, t.taskStatus, t.taskContent, t.taskAuditor,
+            su.userName as taskManagername
+        FROM FmsTask t
+            LEFT JOIN FmsCrop c ON t.cropId = c.cropId
+            LEFT JOIN FmsLand l ON t.landId = l.landId
+            LEFT JOIN FmsBlock b ON t.blockId = b.blockId
+            LEFT JOIN FmsPlan p ON t.planId = p.planId
+            LEFT JOIN FmsTaskpick i ON t.taskId = i.taskId
+            LEFT JOIN FmsTaskrcd s ON t.taskId = s.taskId and s.taskrcdAuditstatus = 2
+            LEFT JOIN SysUser su on su.userId = t.taskManager
+            LEFT JOIN (select * from SysRes where resMediatype = '1' and resBiztype = 'CROP') r on r.resBusId = c.cropId
         <where>
             <if test="cropId != null and cropId != ''">and t.cropId = #{cropId}</if>
             <if test="landId != null and landId != ''">and t.landId = #{landId}</if>
@@ -50,15 +49,12 @@
     </select>
 
     <select id="selectFmsTaskPickStockList" parameterType="String" resultType="com.yunfeiyun.agmp.fms.domain.resvo.FmsTaskPickStockListResVo">
-        SELECT
-        t.cropId,c.cropName,c.cropType,sum(tp.pickWeight) as pickWeight
-        FROM
-        FmsTaskpick tp
-        LEFT JOIN FmsTask t on t.taskId = tp.taskId
-        LEFT JOIN FmsCrop c on c.cropId = t.cropId
+        SELECT t.cropId,c.cropName,c.cropType,sum(tp.pickWeight) as pickWeight
+        FROM FmsTaskpick tp
+            LEFT JOIN FmsTask t on t.taskId = tp.taskId
+            LEFT JOIN FmsCrop c on c.cropId = t.cropId
         <where>
-            t.cropId is not null
-            and tp.tid = #{tid}
+            t.cropId is not null and tp.tid = #{tid}
             <if test="cropName != null and cropName != ''">and c.cropName like CONCAT("%",#{cropName},"%")</if>
             <if test="dataFilter == true and blockIds != null and blockIds.size() > 0">
                 AND t.blockId in
@@ -67,7 +63,7 @@
                 </foreach>
             </if>
         </where>
-        GROUP BY t.cropId,c.cropName,c.cropType
+        GROUP BY t.cropId, c.cropName,c.cropType
     </select>
 
     <select id="selectFmsTaskPickStockListStat" parameterType="FmsTaskPickListReqVo" resultType="FmsTaskPickStockListResVo">
@@ -177,25 +173,15 @@
     </select>
 
     <select id="selectFmsTaskPickStockDetailList" parameterType="FmsTaskPickStockDetailReqVo" resultType="com.yunfeiyun.agmp.fms.domain.resvo.FmsTaskPickStockDetailResVo">
-        SELECT
-        tp.pickNo,
-        p.planNo,
-        l.landName,
-        b.blockName,
-        p.planArea,
-        t.taskCompletedate,
-        tp.pickWeight
-        FROM
-        FmsTaskpick tp
-        LEFT JOIN FmsTask t on t.taskId = tp.taskId
-        LEFT JOIN FmsPlan p on p.planId = t.planId
-        LEFT JOIN FmsLand l on l.landId = t.landId
-        LEFT JOIN FmsBlock b on b.blockId = t.blockId
-        LEFT JOIN FmsTaskrcd r on r.taskId = t.taskId and r.taskrcdAuditstatus = '2'
+        SELECT tp.pickNo, p.planNo, l.landName, b.blockName, p.planArea, t.taskCompletedate, tp.pickWeight
+        FROM FmsTaskpick tp
+            LEFT JOIN FmsTask t on t.taskId = tp.taskId
+            LEFT JOIN FmsPlan p on p.planId = t.planId
+            LEFT JOIN FmsLand l on l.landId = t.landId
+            LEFT JOIN FmsBlock b on b.blockId = t.blockId
+            LEFT JOIN FmsTaskrcd r on r.taskId = t.taskId and r.taskrcdAuditstatus = '2'
         <where>
-            t.cropId = #{cropId}
-            and
-            t.tid = #{tid}
+            t.cropId = #{cropId} and t.tid = #{tid}
             <if test="landId !=null and landId != ''">and t.landId = #{landId}</if>
             <if test="blockId !=null and blockId != ''">and t.blockId = #{blockId}</if>
             <if test="planNo !=null and planNo != ''">and p.planNo = #{planNo}</if>