From 2e4f364403e5c4d00010d29ccd022553fd5d0029 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Mon, 29 Aug 2022 10:47:58 +0800
Subject: [PATCH] 秧苗显示

---
 src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml |  105 ++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 89 insertions(+), 16 deletions(-)

diff --git a/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml b/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
index 9ac221e..dfd120f 100644
--- a/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
+++ b/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
@@ -75,23 +75,96 @@
     </select>
 
     <select id="selectFarmPlantPageCount" resultType="org.springblade.modules.farmplant.vo.FarmPlantVO">
-        SELECT
-            a.strain_id,a.strainName,SUM(TRUNCATE(a.land_area,3)) area,a.url,a.tenant_id,a.dept_id
+        SELECT b.strain_id,b.strainName,SUM(b.area) AS area,b.url,b.tenant_id,b.dept_id FROM
+        (
+            SELECT
+            a.strain_id,a.strainName,SUM(TRUNCATE(a.land_area,3)) area,a.url,a.tenant_id,a.dept_id,a.planting_way
         FROM
             (
                 SELECT
-                    sfp.*,
-                    ss.strain_name AS strainName,
-                    ss.url,
-                    sl.land_name AS landName,
-                    land_unit AS landUnit,
-                    ( CASE WHEN land_unit = 2 THEN FORMAT(sl.land_area * 0.0015,3) WHEN land_unit = 1 THEN sl.land_area * 0.1 ELSE sl.land_area END ) land_area
+                sfp.*,
+                ss.strain_name AS strainName,
+                ss.url,
+                sl.land_name AS landName,
+                land_unit AS landUnit,
+                ( CASE WHEN land_unit = 2 THEN FORMAT(sl.land_area * 0.0015,3) WHEN land_unit = 1 THEN sl.land_area * 0.1 ELSE
+                sl.land_area END ) land_area
                 FROM
-                    sys_farm_plant sfp
-                        LEFT JOIN sys_strain ss ON ss.id = sfp.strain_id
-                        LEFT JOIN sys_land sl ON sl.id = sfp.land_id
+                sys_farm_plant sfp
+                LEFT JOIN sys_strain ss ON ss.id = sfp.strain_id
+                LEFT JOIN sys_land sl ON sl.id = sfp.land_id
                 WHERE
-                    1 = 1
+                1 = 1
+                <if test="farmPlant.plant!=null and farmPlant.plant!=''">
+                    and sfp.plant = #{farmPlant.plant}
+                </if>
+                <if test="farmPlant.year!=null and farmPlant.year!=''">
+                    and sfp.create_time like concat('%',#{farmPlant.year},'%')
+                </if>
+                <if test="farmPlant.landId!=null and farmPlant.landId!=''">
+                    and sfp.land_id = #{farmPlant.landId}
+                </if>
+                <if test="farmPlant.strainId!=null and farmPlant.strainId!=''">
+                    and sfp.strain_id = #{farmPlant.strainId}
+                </if>
+                <if test="farmPlant.plantingWay!=null and farmPlant.plantingWay!=''">
+                    and sfp.planting_way = #{farmPlant.plantingWay}
+                </if>
+                <if test="farmPlant.jobWay!=null and farmPlant.jobWay!=''">
+                    and sfp.job_way = #{farmPlant.jobWay}
+                </if>
+                <if test="farmPlant.status!=null and farmPlant.status!=''">
+                    and sfp.status = #{farmPlant.status}
+                </if>
+                <if test="farmPlant.strainName!=null and farmPlant.strainName!=''">
+                    and ss.strain_name like concat('%',#{farmPlant.strainName},'%')
+                </if>
+                <if test="farmPlant.varieties!=null and farmPlant.varieties!=''">
+                    and sfp.varieties like concat('%',#{farmPlant.varieties},'%')
+                </if>
+                <if test="farmPlant.startTime!=null and farmPlant.startTime!=''">
+                    and sfp.transplan_time &gt;= #{farmPlant.startTime}
+                </if>
+                <if test="farmPlant.endTime!=null and farmPlant.endTime!=''">
+                    and sfp.transplan_time &lt;= #{farmPlant.endTime}
+                </if>
+                <if test="farmPlant.deptId!=null and farmPlant.deptId!=''">
+                    and sfp.dept_id = #{farmPlant.deptId}
+                </if>
+                <if test="farmPlant.tenantId!=null and farmPlant.tenantId!=''">
+                    and sfp.tenant_id = #{farmPlant.tenantId}
+                </if>
+                <if test="farmPlant.farmId!=null and farmPlant.farmId!=''">
+                    and sl.farm_id = #{farmPlant.farmId}
+                </if>ORDER BY
+                sfp.id
+                DESC
+            ) a
+            GROUP BY
+            a.strain_id,a.dept_id,a.planting_way HAVING planting_way !=2
+        ) b
+        GROUP BY
+        b.strain_id,b.dept_id
+    </select>
+
+    <select id="selectFarmPlantPageCountYM" resultType="org.springblade.modules.farmplant.vo.FarmPlantVO">
+        SELECT
+        a.strain_id,a.strainName,SUM(TRUNCATE(a.land_area,3)) area,a.url,a.tenant_id,a.dept_id,a.planting_way
+        FROM
+        (
+        SELECT
+        sfp.*,
+        ss.strain_name AS strainName,
+        ss.url,
+        sl.land_name AS landName,
+        land_unit AS landUnit,
+        ( CASE WHEN land_unit = 2 THEN FORMAT(sl.land_area * 0.0015,3) WHEN land_unit = 1 THEN sl.land_area * 0.1 ELSE sl.land_area END ) land_area
+        FROM
+        sys_farm_plant sfp
+        LEFT JOIN sys_strain ss ON ss.id = sfp.strain_id
+        LEFT JOIN sys_land sl ON sl.id = sfp.land_id
+        WHERE
+        1 = 1
         <if test="farmPlant.plant!=null and farmPlant.plant!=''">
             and sfp.plant = #{farmPlant.plant}
         </if>
@@ -134,11 +207,11 @@
         <if test="farmPlant.farmId!=null and farmPlant.farmId!=''">
             and sl.farm_id = #{farmPlant.farmId}
         </if>
-                ORDER BY
-                    sfp.id DESC
-            ) a
+        ORDER BY
+        sfp.id DESC
+        ) a
         GROUP BY
-            a.strain_id,a.dept_id
+        a.strain_id,a.dept_id,a.planting_way HAVING planting_way !=0 AND planting_way !=1
     </select>
 
     <!--自定义查询农场养殖记录分页数据-->

--
Gitblit v1.9.3