From 9d1892790a7a18d18c19b8b1cf643056d1547f01 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Wed, 13 Jul 2022 18:02:25 +0800
Subject: [PATCH] 农事操作,大屏统计接口调整,根据农场id 查询

---
 src/main/java/org/springblade/modules/farm/vo/FarmingStatisVO.java                         |    2 
 src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml                 |    3 
 src/main/java/org/springblade/modules/farm/controller/FarmingRecordController.java         |   10 
 src/main/java/org/springblade/modules/sale/mapper/SaleMapper.xml                           |   33 ++---
 src/main/java/org/springblade/modules/sale/service/impl/SaleServiceImpl.java               |   10 +
 src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java               |    4 
 src/main/java/org/springblade/modules/lang/mapper/LandMapper.java                          |    8 
 src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.java         |   10 
 src/main/java/org/springblade/modules/farmplant/controller/FarmProductStockController.java |    8 
 src/main/java/org/springblade/modules/task/controller/TaskController.java                  |    4 
 src/main/java/org/springblade/modules/task/mapper/TaskMapper.java                          |    3 
 src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml          |   78 ++++++------
 src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml                           |   28 ++--
 src/main/java/org/springblade/modules/task/vo/TaskVO.java                                  |    7 +
 src/main/java/org/springblade/modules/sale/service/ISaleService.java                       |    8 +
 src/main/java/org/springblade/modules/sale/controller/SaleController.java                  |    6 
 src/main/java/org/springblade/modules/sale/vo/SaleVO.java                                  |    5 
 src/main/java/org/springblade/modules/farm/mapper/FarmingRecordMapper.xml                  |   58 +++++++--
 src/main/java/org/springblade/modules/sale/mapper/SaleMapper.java                          |   10 +
 src/main/java/org/springblade/modules/task/service/ITaskService.java                       |    2 
 src/main/java/org/springblade/modules/farm/mapper/FarmingRecordMapper.java                 |    6 
 src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml                           |   40 +++---
 src/main/java/org/springblade/modules/lang/controller/LandController.java                  |   12 +
 src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml                         |    4 
 24 files changed, 210 insertions(+), 149 deletions(-)

diff --git a/src/main/java/org/springblade/modules/farm/controller/FarmingRecordController.java b/src/main/java/org/springblade/modules/farm/controller/FarmingRecordController.java
index 9e1a961..89e1a44 100644
--- a/src/main/java/org/springblade/modules/farm/controller/FarmingRecordController.java
+++ b/src/main/java/org/springblade/modules/farm/controller/FarmingRecordController.java
@@ -227,17 +227,17 @@
 
 	/**
 	 * 大屏农资使用概况统计
-	 *
+	 * @param farmId 农场id
 	 * @return
 	 */
 	@GetMapping("/getStockCount")
-	public R getStockCount(String deptId) {
+	public R getStockCount(String farmId) {
 		//今年
-		Double aDouble = farmService.selectJyCount(deptId);
+		Double aDouble = farmService.selectJyCount(farmId);
 		//去年
-		Double aDouble1 = farmService.selectQyCount(deptId);
+		Double aDouble1 = farmService.selectQyCount(farmId);
 		//本月
-		Double aDouble2 = farmService.selectByCount(deptId);
+		Double aDouble2 = farmService.selectByCount(farmId);
 		Map map = new HashMap();
 		map.put("jn", aDouble);
 		map.put("qn", aDouble1);
diff --git a/src/main/java/org/springblade/modules/farm/mapper/FarmingRecordMapper.java b/src/main/java/org/springblade/modules/farm/mapper/FarmingRecordMapper.java
index 4a4002a..450e9b8 100644
--- a/src/main/java/org/springblade/modules/farm/mapper/FarmingRecordMapper.java
+++ b/src/main/java/org/springblade/modules/farm/mapper/FarmingRecordMapper.java
@@ -55,11 +55,11 @@
 	 */
 	List<FarmingStatisVO> getFarmingStatis(String deptId);
 	//今年农资使用量
-	Double selectJyCount(String deptId);
+	Double selectJyCount(@Param("farmId") String farmId);
 	//去年农资使用量
-	Double selectQyCount(String deptId);
+	Double selectQyCount(@Param("farmId") String deptId);
 	//本月农资使用量
-	Double selectByCount(String deptId);
+	Double selectByCount(@Param("farmId") String deptId);
 
 	/**
 	 * 查询农事记录信息(种植开始起)
diff --git a/src/main/java/org/springblade/modules/farm/mapper/FarmingRecordMapper.xml b/src/main/java/org/springblade/modules/farm/mapper/FarmingRecordMapper.xml
index 06562e3..f249185 100644
--- a/src/main/java/org/springblade/modules/farm/mapper/FarmingRecordMapper.xml
+++ b/src/main/java/org/springblade/modules/farm/mapper/FarmingRecordMapper.xml
@@ -40,6 +40,9 @@
         <if test="farmingRecord.strainId!=null and farmingRecord.strainId!=''">
             and sfr.strain_id = #{farmingRecord.strainId}
         </if>
+        <if test="farmingRecord.farmId!=null and farmingRecord.farmId!=''">
+            and sl.farm_id = #{farm.farmId}
+        </if>
     </select>
 
     <select id="selectFarmingRecordPages" resultType="org.springblade.modules.farm.vo.FarmingRecordVO">
@@ -83,8 +86,7 @@
 
     <!--查询统计本年农事记录操作总数-->
     <select id="getFarmingStatis" resultType="org.springblade.modules.farm.vo.FarmingStatisVO">
-        select case
-                   when type = 0 then '施肥'
+        select type,case when type = 0 then '施肥'
                    when type = 1 then '翻耕'
                    when type = 2 then '灌溉'
                    when type = 3 then '起垄'
@@ -108,29 +110,29 @@
 
     <!--今年农资使用量-->
     <select id="selectJyCount" resultType="java.lang.Double">
-        SELECT IFNULL(SUM(census), 0) AS jynum
-        FROM sys_farming_record
+        SELECT IFNULL(SUM(census), 0) AS jynum FROM sys_farming_record sfr
+        left join sys_land sl on sl.id = sfr.land_id
         WHERE
-            YEAR ( time ) = YEAR ( NOW( ) )
-          AND stock_id != NULL
-          and dept_id=#{deptId}
+            YEAR(sfr.time) = YEAR(NOW())
+          AND sfr.stock_id != NULL
+          and sl.farm_id=#{farmId}
     </select>
     <!--去年农资使用量-->
     <select id="selectQyCount" resultType="java.lang.Double">
-        SELECT IFNULL(SUM(census), 0) AS qynum
-        FROM sys_farming_record
+        SELECT IFNULL(SUM(census), 0) AS qynum from sys_farming_record sfr
+        left join sys_land sl on sl.id = sfr.land_id
         WHERE
-            YEAR (time) = YEAR ( date_sub(now()
+            YEAR (sfr.time) = YEAR ( date_sub(now()
             , INTERVAL 1 YEAR))
-          and dept_id=#{deptId}
+          and sl.farm_id=#{farmId}
     </select>
 
     <!--本月农资使用量-->
     <select id="selectByCount" resultType="java.lang.Double">
-        SELECT IFNULL(SUM(census), 0) AS bynum
-        FROM sys_farming_record
-        WHERE DATE_FORMAT(time, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')
-          and dept_id = #{deptId}
+        SELECT IFNULL(SUM(census), 0) AS bynum from sys_farming_record sfr
+        left join sys_land sl on sl.id = sfr.land_id
+        WHERE DATE_FORMAT(sfr.time, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')
+        and sl.farm_id=#{farmId}
     </select>
 
     <!--查询农事记录信息(种植开始起)-->
@@ -178,7 +180,31 @@
         left join blade_user bu on bu.id = sfr.operator
 		left join sys_land sl on sl.id = sfr.land_id
 		left join sys_strain ss on ss.id = sfr.strain_id
-        where sl.farm_id = #{farm.farmId}
+        where 1=1
+        <if test="farm.landId!=null and farm.landId!=''">
+            and sfr.land_id = #{farm.landId}
+        </if>
+        <if test="farm.type!=null and farm.type!=''">
+            and sfr.type = #{farm.type}
+        </if>
+        <if test="farm.stockId!=null and farm.stockId!=''">
+            and sfr.stock_id = #{farm.stockId}
+        </if>
+        <if test="farm.jobWay!=null and farm.jobWay!=''">
+            and sfr.job_way = #{farm.jobWay}
+        </if>
+        <if test="farm.operator!=null and farm.operator!=''">
+            and sfr.operator = #{farm.operator}
+        </if>
+        <if test="farm.deptId!=null and farm.deptId!=''">
+            and sfr.dept_id = #{farm.deptId}
+        </if>
+        <if test="farm.farmId!=null and farm.farmId!=''">
+            and sl.farm_id = #{farm.farmId}
+        </if>
+        <if test="farm.strainId!=null and farm.strainId!=''">
+            and sfr.strain_id = #{farm.strainId}
+        </if>
         order by sfr.time desc,sfr.create_time desc
     </select>
 </mapper>
diff --git a/src/main/java/org/springblade/modules/farm/vo/FarmingStatisVO.java b/src/main/java/org/springblade/modules/farm/vo/FarmingStatisVO.java
index 947cb29..fa8402f 100644
--- a/src/main/java/org/springblade/modules/farm/vo/FarmingStatisVO.java
+++ b/src/main/java/org/springblade/modules/farm/vo/FarmingStatisVO.java
@@ -5,6 +5,8 @@
 @Data
 public class FarmingStatisVO {
 
+	private String type;
+
 	private String name;
 
 	private Integer value;
diff --git a/src/main/java/org/springblade/modules/farmplant/controller/FarmProductStockController.java b/src/main/java/org/springblade/modules/farmplant/controller/FarmProductStockController.java
index dfbf22d..f056e7e 100644
--- a/src/main/java/org/springblade/modules/farmplant/controller/FarmProductStockController.java
+++ b/src/main/java/org/springblade/modules/farmplant/controller/FarmProductStockController.java
@@ -172,12 +172,12 @@
 	 * 大屏经营概况库存数量与年产量
 	 */
 	@GetMapping("/statisticsStockAndYield")
-	public R statisticsStockAndYield(String year,String deptId) {
+	public R statisticsStockAndYield(String year,String farmId) {
 
 		//库存数量统计
 		Map map = new HashMap();
 		//统计当前库存农产品
-		Map<String, String> sum = farmProductStockService.statisticsStock(year, deptId);
+		Map<String, String> sum = farmProductStockService.statisticsStock(year, farmId);
 		//统计当前库存加工产品
 		Map<String, String> jgsum = null;
 		map.put("sum",sum.get("sum"));
@@ -214,9 +214,9 @@
 	 * 农产品监管
 	 */
 	@GetMapping("/productsSupervise")
-	public R productsSupervise(String year,String deptId) {
+	public R productsSupervise(String year,String farmId) {
 
-		Map<String, String> cssum = farmProductStockService.productsSupervise(year, deptId);
+		Map<String, String> cssum = farmProductStockService.productsSupervise(year, farmId);
 
 		return R.data(cssum);
 	}
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 70d330c..7bc0c3f 100644
--- a/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
+++ b/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
@@ -48,6 +48,9 @@
         <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
     </select>
 
diff --git a/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.java b/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.java
index be95ceb..223b367 100644
--- a/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.java
+++ b/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.java
@@ -35,11 +35,11 @@
 	List<FarmProductStockVO> statisticsProduct(@Param("farmProductStock") FarmProductStockVO farmProductStock);
 	List<FarmProductStockVO> statisticsProductx(@Param("page") IPage page, @Param("farmProductStock") FarmProductStockVO farmProductStock);
 	Map<String, String> selctProductCount(String year);
-	Map<String, String> statisticsStock(String year,String deptId);
-	List<Map<String, String>> statisticsStockYear(String year,String deptId);
-	List<Map<String, String>> statisticsStockMonth(String year,String deptId);
-	List<Map<String, String>> statisticsStockDay(String year,String deptId);
-	Map<String, String> productsSupervise(String year,String deptId);
+	Map<String, String> statisticsStock(@Param("year") String year,@Param("farmId") String farmId);
+	List<Map<String, String>> statisticsStockYear(@Param("year") String year,@Param("farmId") String farmId);
+	List<Map<String, String>> statisticsStockMonth(@Param("year") String year,@Param("farmId") String farmId);
+	List<Map<String, String>> statisticsStockDay(@Param("year") String year,@Param("farmId") String farmId);
+	Map<String, String> productsSupervise(@Param("year") String year,@Param("farmId") String farmId);
 	List<Map<String, Double>> statisticsYield(String year,String deptId);
 	boolean stockCompare(double sale,String id);
 	boolean stockReduce(double sale,String id);
diff --git a/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml b/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml
index c74a8df..b5c0e40 100644
--- a/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml
+++ b/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml
@@ -93,18 +93,15 @@
 
     <!--大屏经营概况库存数量统计-->
     <select id="statisticsStock" resultType="java.util.HashMap">
-        SELECT
-        SUM( stock.weight ) AS sum ,
-        SUM( stock.recovery ) AS cssum
-        FROM
-        sys_farm_product_stock AS stock
+        SELECT SUM( stock.weight ) AS sum,SUM( stock.recovery ) AS cssum FROM sys_farm_product_stock AS stock
+        left join sys_land sl on sl.id = stock.land_id
         WHERE
         1 = 1
         <if test="year!=null and year!=''">
             and YEAR ( stock.time ) = #{year}
         </if>
-        <if test="deptId!=null and deptId!=''">
-            and stock.dept_id = #{deptId}
+        <if test="farmId!=null and farmId!=''">
+            and sl.farm_id = #{farmId}
         </if>
     </select>
     <!--按年统计产量-->
@@ -135,29 +132,30 @@
 <!--    </select>-->
         <select id="statisticsStockYear" resultType="java.util.HashMap">
             select m.id time, IFNULL(b,0) num from
-        (
-          select 1 as id union
-            select 2 union
-            select 3 union
-            select 4 union
-            select 5 union
-            select 6 union
-            select 7 union
-            select 8 union
-            select 9 union
-            select 10 union
-            select 11 union
-            select 12
-        ) m
-        left join
-        (
-            select month(ssr.time) a,sum(weight) b from sys_recovery ssr
-
-            where  year(ssr.time) = #{year}
-            GROUP BY month(ssr.time)
-        ) n
-        on m.id = n.a
-        order by id
+                (
+                  select 1 as id union
+                    select 2 union
+                    select 3 union
+                    select 4 union
+                    select 5 union
+                    select 6 union
+                    select 7 union
+                    select 8 union
+                    select 9 union
+                    select 10 union
+                    select 11 union
+                    select 12
+                ) m
+                left join
+                (
+                    select month(ssr.time) a,sum(weight) b from sys_recovery ssr
+                    left join sys_land sl on sl.id = ssr.land_id
+                    where  year(ssr.time) = #{year}
+                    and sl.farm_id = #{farmId}
+                    GROUP BY month(ssr.time)
+                ) n
+            on m.id = n.a
+            order by id
         </select>
     <!--按月份统计产量-->
     <select id="statisticsStockMonth" resultType="java.util.HashMap">
@@ -248,8 +246,9 @@
         DATE_FORMAT( recovery.time, '%Y-%c-%d' ) AS gptime
         FROM
         sys_recovery recovery
-        WHERE
-        DATE_FORMAT( recovery.time, '%Y-%m' ) = #{year}
+        left join sys_land sl on sl.id = recovery.land_id
+        WHERE DATE_FORMAT( recovery.time, '%Y-%m' ) = #{year}
+        and sl.farm_id = #{farmId}
         GROUP BY
         gptime
         ) AS righttable ON DATE_FORMAT( lefttable.date, '%Y-%c-%d' ) = righttable.gptime
@@ -274,8 +273,10 @@
         LEFT JOIN
         (
         SELECT HOUR(recovery.time) AS order_hour, SUM(weight) AS num from sys_recovery recovery
+        left join sys_land sl on sl.id = recovery.land_id
         WHERE recovery.time >= str_to_date(concat(#{year},' 00:00:00'),'%Y-%m-%d %T')
         AND recovery.time &lt;= str_to_date(concat(#{year},' 23:59:59'),'%Y-%m-%d %T')
+        and sl.farm_id = #{farmId}
         GROUP BY order_hour
         ) b ON a.order_hour=b.order_hour
         ORDER BY a.order_hour
@@ -288,15 +289,14 @@
         IFNULL( SUM( CASE WHEN LEAVES = 2 THEN weight END ), 0 ) AS '2',
         IFNULL( SUM( CASE WHEN LEAVES = 3 THEN weight END ), 0 ) AS '3',
         IFNULL( SUM( CASE WHEN LEAVES = 4 THEN weight END ), 0 ) AS '4'
-        FROM
-        sys_recovery
-        WHERE
-        1 = 1
+        FROM sys_recovery sr
+        left join sys_land sl on sr.land_id = sl.id
+        WHERE 1 = 1
         <if test="year!=null and year!=''">
-            and YEAR ( time ) = #{year}
+            and YEAR ( sr.time ) = #{year}
         </if>
-        <if test="deptId!=null and deptId!=''">
-            and dept_id = #{deptId}
+        <if test="farmId!=null and farmId!=''">
+            and sl.farm_id = #{farmId}
         </if>
     </select>
     <!--大屏经营概况年产量统计-->
diff --git a/src/main/java/org/springblade/modules/lang/controller/LandController.java b/src/main/java/org/springblade/modules/lang/controller/LandController.java
index 9720cf3..4b1f7e2 100644
--- a/src/main/java/org/springblade/modules/lang/controller/LandController.java
+++ b/src/main/java/org/springblade/modules/lang/controller/LandController.java
@@ -339,13 +339,15 @@
 
 	/**
 	 * 大屏地块统计接口
+	 * @param framId 农场id
+	 * @return
 	 */
 	@GetMapping("/selectXCount")
-	public R selectXCount(String deptId) {
-		List<Map<String, Object>> list = landService.selectZAre(deptId);
-		List<Map<String, Object>> lists = landService.selectSAre(deptId);
-		List<Map<String, Object>> listw = landService.selectWAre(deptId);
-		List list1 = landService.selectNum(deptId);
+	public R selectXCount(String framId) {
+		List<Map<String, Object>> list = landService.selectZAre(framId);
+		List<Map<String, Object>> lists = landService.selectSAre(framId);
+		List<Map<String, Object>> listw = landService.selectWAre(framId);
+		List list1 = landService.selectNum(framId);
 		//总面积
 		Double num = 0.0;
 		for (int i = 0; i < list.size(); i++) {
diff --git a/src/main/java/org/springblade/modules/lang/mapper/LandMapper.java b/src/main/java/org/springblade/modules/lang/mapper/LandMapper.java
index fad1a68..f020b79 100644
--- a/src/main/java/org/springblade/modules/lang/mapper/LandMapper.java
+++ b/src/main/java/org/springblade/modules/lang/mapper/LandMapper.java
@@ -66,13 +66,13 @@
 
 	List selectLandList(String userid);
 
-	List selectNum(String deptId);
+	List selectNum(@Param("farmId") String farmId);
 
-	List<Map<String, Object>> selectZAre(String deptId);
+	List<Map<String, Object>> selectZAre(@Param("farmId") String farmId);
 
-	List<Map<String, Object>> selectSAre(String deptId);
+	List<Map<String, Object>> selectSAre(@Param("farmId") String farmId);
 
-	List<Map<String, Object>> selectWAre(String deptId);
+	List<Map<String, Object>> selectWAre(@Param("farmId") String farmId);
 
 	/**
 	 * 地块列表(不分页)
diff --git a/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml b/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
index 3a83ae7..da1e7a9 100644
--- a/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
+++ b/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
@@ -142,11 +142,10 @@
     </select>
     <!--土地总面积-->
     <select id="selectZAre" resultType="java.util.HashMap">
-        SELECT IFNULL(land_area, 0) as area, IFNULL(land_unit, 0) as unit
-        FROM sys_land
+        SELECT IFNULL(land_area, 0) as area, IFNULL(land_unit, 0) as unit FROM sys_land
         WHERE is_deleted = 0
-        <if test="deptId!= null and deptId!=''">
-            and dept_id=#{deptId}
+        <if test="farmId!= null and farmId!=''">
+            and farm_id=#{farmId}
         </if>
     </select>
     <!--土地使用面积-->
@@ -155,8 +154,8 @@
         FROM sys_land
         WHERE is_deleted = 0
         and type = 0
-        <if test="deptId!= null and deptId!=''">
-            and dept_id=#{deptId}
+        <if test="farmId!= null and farmId!=''">
+            and farm_id=#{farmId}
         </if>
     </select>
     <!--土地未使用面积-->
@@ -165,18 +164,19 @@
         FROM sys_land
         WHERE is_deleted = 0
         and type = 1
-        <if test="deptId!= null and deptId!=''">
-            and dept_id=#{deptId}
+        <if test="farmId!= null and farmId!=''">
+            and farm_id=#{farmId}
         </if>
     </select>
+
     <select id="selectNum" resultType="java.util.HashMap">
-        SELECT strain_id
-        FROM `sys_farm_plant`
-        WHERE status = 1
-        <if test="deptId!= null and deptId!=''">
-            and dept_id=#{deptId}
+        SELECT strain_id FROM sys_farm_plant sfp
+        left join sys_land sl on sl.id = sfp.land_id
+        WHERE sfp.status = 1
+        <if test="farmId!= null and farmId!=''">
+            and sl.farm_id=#{farmId}
         </if>
-        GROUP BY strain_id
+        GROUP BY sfp.strain_id
     </select>
 
 </mapper>
diff --git a/src/main/java/org/springblade/modules/sale/controller/SaleController.java b/src/main/java/org/springblade/modules/sale/controller/SaleController.java
index 7c09149..5582a92 100644
--- a/src/main/java/org/springblade/modules/sale/controller/SaleController.java
+++ b/src/main/java/org/springblade/modules/sale/controller/SaleController.java
@@ -152,10 +152,12 @@
 
 	/**
 	 * 统计市场流通/去年流通量/本月流通量
+	 * @param sale
+	 * @return
 	 */
 	@GetMapping("/selectMarketCirculate")
-	public R selectMarketCirculate() {
-		return R.data(saleService.selectMarketCirculate());
+	public R selectMarketCirculate(SaleVO sale) {
+		return R.data(saleService.selectMarketCirculate(sale));
 	}
 
 	/**
diff --git a/src/main/java/org/springblade/modules/sale/mapper/SaleMapper.java b/src/main/java/org/springblade/modules/sale/mapper/SaleMapper.java
index f4df1f4..33af1b5 100644
--- a/src/main/java/org/springblade/modules/sale/mapper/SaleMapper.java
+++ b/src/main/java/org/springblade/modules/sale/mapper/SaleMapper.java
@@ -16,6 +16,7 @@
  */
 package org.springblade.modules.sale.mapper;
 
+import org.apache.ibatis.annotations.Param;
 import org.springblade.modules.sale.entity.Sale;
 import org.springblade.modules.sale.vo.SaleVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -41,6 +42,13 @@
 	List<SaleVO> selectSalePage(IPage page, SaleVO sale);
 	Map<String, String> selctSaletCount();
 	List<Map<Object,String>> selctSaletZ();
-	List<Map<Object,String>> selectMarketCirculate();
+
+	/**
+	 * 统计市场流通/去年流通量/本月流通量
+	 * @param sale
+	 * @return
+	 */
+	List<Map<Object,String>> selectMarketCirculate(@Param("sale") SaleVO sale);
+
 	List<Map<Object,String>> selectMarketDistrict();
 }
diff --git a/src/main/java/org/springblade/modules/sale/mapper/SaleMapper.xml b/src/main/java/org/springblade/modules/sale/mapper/SaleMapper.xml
index 0d20db2..f4cd29c 100644
--- a/src/main/java/org/springblade/modules/sale/mapper/SaleMapper.xml
+++ b/src/main/java/org/springblade/modules/sale/mapper/SaleMapper.xml
@@ -81,25 +81,22 @@
     </select>
     <!--统计市场流通/去年流通量/本月流通量-->
     <select id="selectMarketCirculate" resultType="java.util.HashMap" >
-        SELECT
-            IFNULL( SUM( sale_num ), 0 ) AS num
-        FROM
-            sys_sale
-        WHERE
-            YEAR ( sale_time ) = YEAR ( NOW( ) ) UNION ALL
-        SELECT
-            IFNULL( SUM( sale_num ), 0 ) AS num
-        FROM
-            sys_sale
-        WHERE
-            YEAR ( sale_time ) = YEAR ( date_sub( now( ), INTERVAL 1 YEAR ) ) UNION ALL
-        SELECT
-            IFNULL( SUM( sale_num ), 0 ) AS num
-        FROM
-            sys_sale
-        WHERE
-            DATE_FORMAT( sale_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
+        SELECT IFNULL( SUM( sale_num ), 0 ) AS num FROM sys_sale ss
+        left join sys_land sl on sl.id = ss.land_id
+        WHERE YEAR ( ss.sale_time ) = YEAR ( NOW())
+        and sl.farm_id = #{sale.farmId}
+        UNION ALL
+        SELECT IFNULL(SUM(sale_num), 0) AS num FROM sys_sale ss
+        left join sys_land sl on sl.id = ss.land_id
+        WHERE YEAR ( ss.sale_time ) = YEAR ( date_sub( now( ), INTERVAL 1 YEAR ) )
+        and sl.farm_id = #{sale.farmId}
+        UNION ALL
+        SELECT IFNULL( SUM( sale_num ), 0 ) AS num FROM sys_sale ss
+        left join sys_land sl on sl.id = ss.land_id
+        WHERE DATE_FORMAT( ss.sale_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
+        and sl.farm_id = #{sale.farmId}
     </select>
+
     <select id="selectMarketDistrict" resultType="java.util.HashMap" >
         SELECT
             IFNULL( SUM( sale_num ), 0 ) AS num,
diff --git a/src/main/java/org/springblade/modules/sale/service/ISaleService.java b/src/main/java/org/springblade/modules/sale/service/ISaleService.java
index 97d7b3b..13af245 100644
--- a/src/main/java/org/springblade/modules/sale/service/ISaleService.java
+++ b/src/main/java/org/springblade/modules/sale/service/ISaleService.java
@@ -42,6 +42,12 @@
 	IPage<SaleVO> selectSalePage(IPage<SaleVO> page, SaleVO sale);
 	Map<String, String> selctSaletCount();
 	List<Map<Object,String>> selctSaletZ();
-	List<Map<Object,String>> selectMarketCirculate();
+
+	/**
+	 * 统计市场流通/去年流通量/本月流通量
+	 * @param sale
+	 * @return
+	 */
+	List<Map<Object,String>> selectMarketCirculate(SaleVO sale);
 	List<Map<Object,String>> selectMarketDistrict();
 }
diff --git a/src/main/java/org/springblade/modules/sale/service/impl/SaleServiceImpl.java b/src/main/java/org/springblade/modules/sale/service/impl/SaleServiceImpl.java
index dd49e94..c2e6300 100644
--- a/src/main/java/org/springblade/modules/sale/service/impl/SaleServiceImpl.java
+++ b/src/main/java/org/springblade/modules/sale/service/impl/SaleServiceImpl.java
@@ -50,9 +50,15 @@
 	public List<Map<Object, String>> selctSaletZ() {
 		return baseMapper.selctSaletZ();
 	}
+
+	/**
+	 * 统计市场流通/去年流通量/本月流通量
+	 * @param sale
+	 * @return
+	 */
 	@Override
-	public List<Map<Object, String>> selectMarketCirculate() {
-		return baseMapper.selectMarketCirculate();
+	public List<Map<Object, String>> selectMarketCirculate(SaleVO sale) {
+		return baseMapper.selectMarketCirculate(sale);
 	}
 	@Override
 	public List<Map<Object, String>> selectMarketDistrict() {
diff --git a/src/main/java/org/springblade/modules/sale/vo/SaleVO.java b/src/main/java/org/springblade/modules/sale/vo/SaleVO.java
index 05ae913..5065874 100644
--- a/src/main/java/org/springblade/modules/sale/vo/SaleVO.java
+++ b/src/main/java/org/springblade/modules/sale/vo/SaleVO.java
@@ -59,4 +59,9 @@
 	 * 种养时间
 	 */
 	private String transplanTime;
+
+	/**
+	 * 农场id
+	 */
+	private String farmId;
 }
diff --git a/src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml b/src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml
index f8619e3..0e83182 100644
--- a/src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml
+++ b/src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml
@@ -26,9 +26,7 @@
 
 
     <select id="selectStockPage" resultMap="stockResultMap">
-        select *
-        from sys_stock
-        where is_deleted = 0
+        select * from sys_stock where is_deleted = 0
     </select>
 
     <select id="selectLists" resultType="org.springblade.modules.stock.vo.StockVO">
diff --git a/src/main/java/org/springblade/modules/task/controller/TaskController.java b/src/main/java/org/springblade/modules/task/controller/TaskController.java
index c9f9d71..14efacc 100644
--- a/src/main/java/org/springblade/modules/task/controller/TaskController.java
+++ b/src/main/java/org/springblade/modules/task/controller/TaskController.java
@@ -157,7 +157,7 @@
 	 * 统计任务总数
 	 */
 	@GetMapping("/countTaskNum")
-	public R countTaskNum(String year) {
-		return R.data(taskService.countTaskNum(year));
+	public R countTaskNum(TaskVO task) {
+		return R.data(taskService.countTaskNum(task));
 	}
 }
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.java b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.java
index 2cff998..acad224 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.java
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.java
@@ -16,6 +16,7 @@
  */
 package org.springblade.modules.task.mapper;
 
+import org.apache.ibatis.annotations.Param;
 import org.springblade.modules.task.entity.Task;
 import org.springblade.modules.task.vo.TaskVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -43,5 +44,5 @@
 
 	int selectCount(String taskuser);
 
-	List<Map<Object,String>> countTaskNum(String year);
+	List<Map<Object,String>> countTaskNum(@Param("task") TaskVO task);
 }
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
index f720add..59977ec 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
@@ -174,30 +174,28 @@
     </select>
 
     <select id="countTaskNum" resultType="java.util.HashMap">
-    SELECT
-        count( * ) AS count
-    FROM
-        sys_task
+    SELECT count( * ) AS count FROM sys_task st
+    left join sys_land sl on sl.id = st.land_id
+    WHERE 1 = 1
+        AND st.STATUS = '0'
+        AND st.create_time like concat('%',#{task.year},'%')
+        AND sl.farm_id = #{task.farmId}
+    UNION ALL
+    SELECT count( * ) AS count FROM sys_task st
+    left join sys_land sl on sl.id = st.land_id
     WHERE
         1 = 1
-        AND STATUS = '0'
-        AND create_time like concat('%',#{year},'%') UNION ALL
-    SELECT
-        count( * ) AS count
-    FROM
-        sys_task
+        AND ( st.STATUS = '1' OR st.STATUS = '2' )
+        AND  st.create_time like concat('%',#{task.year},'%')
+        AND sl.farm_id = #{task.farmId}
+    UNION ALL
+    SELECT count( * ) AS count FROM sys_task st
+    left join sys_land sl on sl.id = st.land_id
     WHERE
         1 = 1
-        AND ( STATUS = '1' OR STATUS = '2' )
-        AND  create_time like concat('%',#{year},'%') UNION ALL
-    SELECT
-        count( * ) AS count
-    FROM
-        sys_task
-    WHERE
-        1 = 1
-        AND ( STATUS = '1' OR STATUS = '2' )
-        AND  create_time like concat('%',#{year},'%')
-        AND now( ) > time
+        AND ( st.STATUS = '1' OR st.STATUS = '2' )
+        AND  st.create_time like concat('%',#{task.year},'%')
+        AND now() > st.time
+        AND sl.farm_id = #{task.farmId}
     </select>
 </mapper>
diff --git a/src/main/java/org/springblade/modules/task/service/ITaskService.java b/src/main/java/org/springblade/modules/task/service/ITaskService.java
index 20c7d1a..4ba3469 100644
--- a/src/main/java/org/springblade/modules/task/service/ITaskService.java
+++ b/src/main/java/org/springblade/modules/task/service/ITaskService.java
@@ -41,5 +41,5 @@
 	 */
 	IPage<TaskVO> selectTaskPage(IPage<TaskVO> page, TaskVO task);
 	int selectCount(String taskuser);
-	List<Map<Object,String>> countTaskNum(String year);
+	List<Map<Object,String>> countTaskNum(TaskVO task);
 }
diff --git a/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java b/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
index 238c562..52876c0 100644
--- a/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
+++ b/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
@@ -47,8 +47,8 @@
 	}
 
 	@Override
-	public List<Map<Object, String>> countTaskNum(String year) {
-		return baseMapper.countTaskNum(year);
+	public List<Map<Object, String>> countTaskNum(TaskVO task) {
+		return baseMapper.countTaskNum(task);
 	}
 
 
diff --git a/src/main/java/org/springblade/modules/task/vo/TaskVO.java b/src/main/java/org/springblade/modules/task/vo/TaskVO.java
index 8ea9bc9..0461185 100644
--- a/src/main/java/org/springblade/modules/task/vo/TaskVO.java
+++ b/src/main/java/org/springblade/modules/task/vo/TaskVO.java
@@ -35,4 +35,11 @@
 	private String reaname;
 	private String User;
 	private int sta;
+
+	private String year;
+
+	/**
+	 * 农场id
+	 */
+	private String farmId;
 }

--
Gitblit v1.9.3