From 1bd9b7f5767b2f1dce2b63b4c9174f457e5775bc Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Thu, 19 May 2022 15:55:58 +0800
Subject: [PATCH] 首页地块统计
---
src/main/java/org/springblade/common/config/BladeConfiguration.java | 2 +
src/main/java/org/springblade/modules/lang/mapper/LandMapper.java | 4 ++
src/main/java/org/springblade/modules/lang/service/impl/LandServiceImpl.java | 16 ++++++++
src/main/java/org/springblade/modules/resource/endpoint/OssEndpoint.java | 1
src/main/java/org/springblade/modules/lang/controller/LandController.java | 69 ++++++++++++++++++++++++++++++++++
src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml | 11 +++++
src/main/java/org/springblade/modules/lang/service/ILandService.java | 9 ++++
7 files changed, 112 insertions(+), 0 deletions(-)
diff --git a/src/main/java/org/springblade/common/config/BladeConfiguration.java b/src/main/java/org/springblade/common/config/BladeConfiguration.java
index 10b3dd2..405bf2d 100644
--- a/src/main/java/org/springblade/common/config/BladeConfiguration.java
+++ b/src/main/java/org/springblade/common/config/BladeConfiguration.java
@@ -51,6 +51,8 @@
secureRegistry.excludePathPatterns("/webjars/**");
secureRegistry.excludePathPatterns("/swagger-resources/**");
secureRegistry.excludePathPatterns("/druid/**");
+ secureRegistry.excludePathPatterns("/land/land/**");
+ secureRegistry.excludePathPatterns("/blade-resource/oss/endpoint/**");
return secureRegistry;
}
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 8be108d..4df3c4e 100644
--- a/src/main/java/org/springblade/modules/lang/controller/LandController.java
+++ b/src/main/java/org/springblade/modules/lang/controller/LandController.java
@@ -43,7 +43,9 @@
import java.awt.geom.Point2D;
import java.text.DecimalFormat;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
/**
* 地块表 控制器
@@ -218,4 +220,71 @@
return R.data(landService.selectLandList(userid));
}
+
+ /**
+ * 首页地块统计接口
+ */
+ @GetMapping("/selectCount")
+ public R selectCount() {
+ List<Map<String, Object>> list = landService.selectZAre();
+ List<Map<String, Object>> lists = landService.selectSAre();
+ List list1 = landService.selectNum();
+ //总面积
+ Double num=0.0;
+ for (int i=0;i<list.size();i++){
+ //面积
+ String area = list.get(i).get("area").toString();
+ //单位
+ String unit = list.get(i).get("unit").toString();
+ Double area1=Double.parseDouble(area);
+ //面积单位(0: 亩 1:分 2:平方米)
+ if (unit.equals("0")){
+ num+=area1;
+ }
+ if (unit.equals("1")){
+ double v = area1 * 0.1;
+ num+=v;
+ }
+ else {
+ double v = area1 *0.0015;
+ num+=v;
+ }
+ }
+ //使用面积
+ Double snum=0.0;
+ for (int i=0;i<lists.size();i++){
+ //面积
+ String area = lists.get(i).get("area").toString();
+ //单位
+ String unit = lists.get(i).get("unit").toString();
+ Double area1=Double.parseDouble(area);
+ //面积单位(0: 亩 1:分 2:平方米)
+ if (unit.equals("0")){
+ snum+=area1;
+ }
+ if (unit.equals("1")){
+ double v = area1 * 0.1;
+ snum+=v;
+ }
+ else {
+ double v = area1 *0.0015;
+ snum+=v;
+ }
+ }
+ //品种数量
+ int size = list1.size();
+ //地块使用率
+ double v = snum / num;
+ double v1 = v * 100;
+ DecimalFormat df = new DecimalFormat("#0.00");
+ String format = df.format(v1);
+ Double a=Double.parseDouble(format);
+ Map map =new HashMap();
+ map.put("rate",a);
+ map.put("zarea",(double) Math.round(num * 100) / 100);
+ map.put("sarea",(double) Math.round(snum * 100) / 100);
+ map.put("num",size);
+ return R.data(map);
+ }
+
}
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 b306b83..f4d03c0 100644
--- a/src/main/java/org/springblade/modules/lang/mapper/LandMapper.java
+++ b/src/main/java/org/springblade/modules/lang/mapper/LandMapper.java
@@ -24,6 +24,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List;
+import java.util.Map;
/**
* 地块表 Mapper 接口
@@ -54,4 +55,7 @@
*/
int updateLandById(@Param("land") Land land);
List selectLandList(String userid);
+ List selectNum();
+ List<Map<String, Object>> selectZAre();
+ List<Map<String, Object>> selectSAre();
}
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 7bf73dd..4bd7a54 100644
--- a/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
+++ b/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
@@ -63,5 +63,16 @@
<select id="selectLandList" resultType="java.util.HashMap">
select id,land_name as landName from sys_land where user_id=#{userid} and is_deleted = 0
</select>
+ <!--土地总面积-->
+ <select id="selectZAre" resultType="java.util.HashMap">
+ SELECT land_area as area,land_unit as unit FROM sys_land WHERE is_deleted=0
+ </select>
+ <!--土地使用面积-->
+ <select id="selectSAre" resultType="java.util.HashMap">
+ SELECT land_area as area,land_unit as unit FROM sys_land WHERE is_deleted=0 and type=0
+ </select>
+ <select id="selectNum" resultType="java.util.HashMap">
+ SELECT strain_id FROM `sys_farm_plant` WHERE status=1 GROUP BY strain_id
+ </select>
</mapper>
diff --git a/src/main/java/org/springblade/modules/lang/service/ILandService.java b/src/main/java/org/springblade/modules/lang/service/ILandService.java
index 1fd7099..ff29c77 100644
--- a/src/main/java/org/springblade/modules/lang/service/ILandService.java
+++ b/src/main/java/org/springblade/modules/lang/service/ILandService.java
@@ -24,6 +24,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List;
+import java.util.Map;
/**
* 地块表 服务类
@@ -60,4 +61,12 @@
* @return
*/
List selectLandList(String userid);
+
+ /**
+ * 土地总面积
+ * @return
+ */
+ List<Map<String, Object>> selectZAre();
+ List<Map<String, Object>> selectSAre();
+ List selectNum();
}
diff --git a/src/main/java/org/springblade/modules/lang/service/impl/LandServiceImpl.java b/src/main/java/org/springblade/modules/lang/service/impl/LandServiceImpl.java
index 8b13d64..f28ba01 100644
--- a/src/main/java/org/springblade/modules/lang/service/impl/LandServiceImpl.java
+++ b/src/main/java/org/springblade/modules/lang/service/impl/LandServiceImpl.java
@@ -25,6 +25,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List;
+import java.util.Map;
/**
* 地块表 服务实现类
@@ -64,4 +65,19 @@
return baseMapper.selectLandList(userid);
}
+ @Override
+ public List<Map<String, Object>> selectZAre() {
+ return baseMapper.selectZAre();
+ }
+
+ @Override
+ public List<Map<String, Object>> selectSAre() {
+ return baseMapper.selectSAre();
+ }
+
+ @Override
+ public List selectNum() {
+ return baseMapper.selectNum();
+ }
+
}
diff --git a/src/main/java/org/springblade/modules/resource/endpoint/OssEndpoint.java b/src/main/java/org/springblade/modules/resource/endpoint/OssEndpoint.java
index e048470..ebc25ca 100644
--- a/src/main/java/org/springblade/modules/resource/endpoint/OssEndpoint.java
+++ b/src/main/java/org/springblade/modules/resource/endpoint/OssEndpoint.java
@@ -159,6 +159,7 @@
return R.data(bladeFile);
}
+
/**
* 文件上传,自定义上传
*
--
Gitblit v1.9.3