From 3d1aca23a6841a5b32a5153bca034a338aaf729d Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Sat, 20 Aug 2022 09:32:19 +0800
Subject: [PATCH] 小程序、后台数据统计播种面积更新
---
src/main/java/org/springblade/modules/farmplant/service/impl/FarmPlantServiceImpl.java | 38 +++++++++---------
src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml | 43 ++++++++++++---------
src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java | 35 +++++++++--------
3 files changed, 62 insertions(+), 54 deletions(-)
diff --git a/src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java b/src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java
index bd5112a..dbbfe7c 100644
--- a/src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java
+++ b/src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java
@@ -427,24 +427,25 @@
*/
@GetMapping("/getFarmPlantStatisticsCountx")
public R getFarmPlantStatisticsCountx(FarmPlantVO farmPlant, Query query) {
- Double num = 0.0;
+// Double num = 0.0;
IPage<FarmPlantVO> pages = farmplantService.getFarmPlantStatisticsCountz(Condition.getPage(query), farmPlant);
- for (int i = 0; i < pages.getRecords().size(); i++) {
- String area = pages.getRecords().get(i).getArea();
- Double a = Double.parseDouble(area);
- DecimalFormat df = new DecimalFormat("#.00");
- String format = df.format(a);
- pages.getRecords().get(i).setArea(format);
- num += a;
- }
- Map map = new HashMap();
- List list = new ArrayList();
- DecimalFormat df = new DecimalFormat("#.00");
- String format = df.format(num);
- map.put("znum", format);
- list.add(map);
- list.add(pages);
- return R.data(list);
+// for (int i = 0; i < pages.getRecords().size(); i++) {
+// String area = pages.getRecords().get(i).getArea();
+// Double a = Double.parseDouble(area);
+// DecimalFormat df = new DecimalFormat("#.00");
+// String format = df.format(a);
+// pages.getRecords().get(i).setArea(format);
+// num += a;
+// }
+// Map map = new HashMap();
+// List list = new ArrayList();
+// DecimalFormat df = new DecimalFormat("#.00");
+// String format = df.format(num);
+// map.put("znum", format);
+// list.add(map);
+// list.add(pages);
+// return R.data(list);
+ return R.data(pages);
}
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 a4a5f11..37d20b6 100644
--- a/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
+++ b/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
@@ -131,8 +131,14 @@
<!--自定义查询农场养殖记录分页数据-->
<select id="getFarmPlantStatistics" resultType="org.springblade.modules.farmplant.vo.FarmPlantVO">
- select sfp.strain_id,ss.strain_name strainName,sum(TRUNCATE(sl.land_area,3)) areas,land_unit landUnit from sys_farm_plant
- sfp
+ SELECT a.strain_id,a.strainName,SUM(TRUNCATE(a.land_area,3)) areas FROM
+ (
+ select sfp.strain_id,
+ ss.strain_name strainName,
+ ( 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,
+ land_unit landUnit
+ 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
@@ -151,7 +157,8 @@
<if test="farmPlant.status !=null and farmPlant.status!=''">
and sfp.status = #{farmPlant.status}
</if>
- group by sfp.strain_id,strain_name,land_unit
+ ) a
+ GROUP BY a.strain_id,a.strainName
</select>
<!--查询农场养殖记录数据-->
@@ -396,34 +403,34 @@
<!-- and sfp.tenant_id = #{farmPlant.tenantId}-->
<!-- </if>-->
<!-- group by sfp.strain_id,strain_name,land_unit-->
- SELECT
- sfp.strain_id,
+ SELECT a.strain_id,a.strainName,SUM(TRUNCATE(a.land_area,3)) areas FROM
+ (
+ select sfp.strain_id,
ss.strain_name strainName,
- sum( sl.land_area ) area,
+ ( 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,
land_unit landUnit
- FROM
+ 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
+ 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.startTime!=null and farmPlant.startTime!=''">
and sfp.transplan_time >= #{farmPlant.startTime}
</if>
<if test="farmPlant.endTime!=null and farmPlant.endTime!=''">
and sfp.transplan_time <= #{farmPlant.endTime}
</if>
- <if test="farmPlant.farmId!=null and farmPlant.farmId!=''">
- and sl.farm_id = #{farmPlant.farmId}
- </if>
- <if test="farmPlant.status !=null and farmPlant.status!=''">
- and sfp.status = #{farmPlant.status}
+ <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.deptId !=null and farmPlant.deptId != ''">-->
-<!-- and sfp.dept_id = #{farmPlant.deptId}-->
-<!-- </if>-->
- group by sfp.strain_id,strain_name,land_unit
+ <if test="farmPlant.status !=null and farmPlant.status!=''">
+ and sfp.status = #{farmPlant.status}
+ </if>
+ ) a
+ GROUP BY a.strain_id,a.strainName
</select>
<!--查询种养记录列表(不分页)-->
diff --git a/src/main/java/org/springblade/modules/farmplant/service/impl/FarmPlantServiceImpl.java b/src/main/java/org/springblade/modules/farmplant/service/impl/FarmPlantServiceImpl.java
index f81a4b3..630f043 100644
--- a/src/main/java/org/springblade/modules/farmplant/service/impl/FarmPlantServiceImpl.java
+++ b/src/main/java/org/springblade/modules/farmplant/service/impl/FarmPlantServiceImpl.java
@@ -59,15 +59,15 @@
@Override
public IPage<FarmPlantVO> getFarmPlantStatisticsCountz(IPage<FarmPlantVO> page, FarmPlantVO farm) {
List<FarmPlantVO> farmPlantVOS = baseMapper.getFarmPlantStatisticsCountz(page, farm);
- //遍历
- farmPlantVOS.forEach(farmPlantVO -> {
- if (farmPlantVO.getLandUnit().equals("1")) {
- farmPlantVO.setArea(String.format("%.2f", Double.parseDouble(farmPlantVO.getArea()) * 0.1));
- }
- if (farmPlantVO.getLandUnit().equals("2")) {
- farmPlantVO.setArea(String.format("%.2f", Double.parseDouble(farmPlantVO.getArea()) * 0.0015));
- }
- });
+// //遍历
+// farmPlantVOS.forEach(farmPlantVO -> {
+// if (farmPlantVO.getLandUnit().equals("1")) {
+// farmPlantVO.setArea(String.format("%.2f", Double.parseDouble(farmPlantVO.getArea()) * 0.1));
+// }
+// if (farmPlantVO.getLandUnit().equals("2")) {
+// farmPlantVO.setArea(String.format("%.2f", Double.parseDouble(farmPlantVO.getArea()) * 0.0015));
+// }
+// });
return page.setRecords(farmPlantVOS);
}
@@ -82,16 +82,16 @@
public IPage<FarmPlantVO> getFarmPlantStatistics(IPage<FarmPlantVO> page, FarmPlantVO farm) {
List<FarmPlantVO> farmPlantVOS = baseMapper.getFarmPlantStatistics(page, farm);
//遍历
- farmPlantVOS.forEach(farmPlantVO -> {
- if (farmPlantVO.getLandUnit().equals("1")) {
- BigDecimal bg = new BigDecimal(farmPlantVO.getAreas() * 0.1);
- farmPlantVO.setAreas(bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
- }
- if (farmPlantVO.getLandUnit().equals("2")) {
- BigDecimal bg = new BigDecimal(farmPlantVO.getAreas() * 0.0015);
- farmPlantVO.setAreas(bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
- }
- });
+// farmPlantVOS.forEach(farmPlantVO -> {
+// if (farmPlantVO.getLandUnit().equals("1")) {
+// BigDecimal bg = new BigDecimal(farmPlantVO.getAreas() * 0.1);
+// farmPlantVO.setAreas(bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
+// }
+// if (farmPlantVO.getLandUnit().equals("2")) {
+// BigDecimal bg = new BigDecimal(farmPlantVO.getAreas() * 0.0015);
+// farmPlantVO.setAreas(bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
+// }
+// });
return page.setRecords(farmPlantVOS);
}
--
Gitblit v1.9.3