From d95f6551e8214d69cd0fd511ec693641eb61ba16 Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Mon, 01 Aug 2022 10:36:26 +0800
Subject: [PATCH] 1、大屏首页接口修复,解决double类型相加精度问题
---
src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml | 7 ++++---
src/main/java/org/springblade/modules/farm/controller/FarmController.java | 2 +-
src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java | 41 +++++++++++++++++++++++++++++++++++++----
3 files changed, 42 insertions(+), 8 deletions(-)
diff --git a/src/main/java/org/springblade/modules/farm/controller/FarmController.java b/src/main/java/org/springblade/modules/farm/controller/FarmController.java
index a2c1b71..6e3d3c0 100644
--- a/src/main/java/org/springblade/modules/farm/controller/FarmController.java
+++ b/src/main/java/org/springblade/modules/farm/controller/FarmController.java
@@ -167,7 +167,7 @@
}
/**
- * 删除
+ * 大屏农场数量与人员数量
*/
@GetMapping("/SelectCount")
public R SelectCount() {
diff --git a/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml b/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml
index aac4754..3eb5c87 100644
--- a/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml
+++ b/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml
@@ -102,9 +102,10 @@
<!--农场数量-->
<select id="selectCountFarm" resultType="java.lang.Integer">
- SELECT COUNT(*) as count
- FROM `blade_dept`
- WHERE tenant_id='000000' AND is_deleted=0 AND parent_id!=0
+ SELECT
+ COUNT( * ) AS count
+ FROM
+ sys_farm
</select>
<!--人员数量-->
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 b1cd6d7..31f80af 100644
--- a/src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java
+++ b/src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java
@@ -49,6 +49,7 @@
import springfox.documentation.annotations.ApiIgnore;
import javax.validation.Valid;
+import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.*;
@@ -137,7 +138,9 @@
if (res.get(i).getStrainId().equals(count.get(j).getStrainId())){
FarmPlantVO data = new FarmPlantVO();
data.setStrainId(res.get(i).getStrainId());
- data.setArea((Double.parseDouble(res.get(i).getArea()) + Double.parseDouble(count.get(j).getArea()))+"");
+ BigDecimal b1 = new BigDecimal(res.get(i).getArea());
+ BigDecimal b2 = new BigDecimal(count.get(j).getArea());
+ data.setArea(b1.add(b2).doubleValue()+"");
data.setStrainName(res.get(i).getStrainName());
count.set(j,data);
type = false;
@@ -295,11 +298,41 @@
*/
@GetMapping("/pagePalnt")
public R pagePalnt(FarmPlantVO farmPlant, Query query) {
- int i = farmplantService.selectCount(farmPlant);
+ int num = farmplantService.selectCount(farmPlant);
IPage<FarmPlantVO> pages = farmplantService.selectFarmPlantPage(Condition.getPage(query), farmPlant);
+ List<FarmPlantVO> res = pages.getRecords();
+ List<FarmPlantVO> count = new ArrayList<>();
+ //按种类合并种植物
+ for (int i = 0; i < res.size(); i++) {
+ if (i == 0){
+ count.add(res.get(0));
+ }else {
+ boolean type = false;
+ for (int j = 0; j < count.size(); j++) {
+ if (res.get(i).getStrainId().equals(count.get(j).getStrainId())){
+ FarmPlantVO data = new FarmPlantVO();
+ data.setStrainId(res.get(i).getStrainId());
+ BigDecimal b1 = new BigDecimal(res.get(i).getArea());
+ BigDecimal b2 = new BigDecimal(count.get(j).getArea());
+ data.setArea(b1.add(b2).doubleValue()+"");
+ data.setStrainName(res.get(i).getStrainName());
+ data.setUrl(res.get(i).getUrl());
+ count.set(j,data);
+ type = false;
+ break;
+ }else{
+ type = true;
+ }
+ }
+ if (type){
+ count.add(res.get(i));
+ }
+ }
+ }
+
Map map = new HashMap<>();
- map.put("num", i);
- map.put("page", pages);
+ map.put("num", num);
+ map.put("page", count);
return R.data(map);
}
--
Gitblit v1.9.3