From bf0ba48d2531d6550d0ededb9ef1b3c0d31b535f Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Fri, 17 Sep 2021 09:35:33 +0800
Subject: [PATCH] 1.首页统计
---
src/main/java/org/springblade/modules/system/mapper/DeptMapper.java | 2 +-
src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml | 25 ++++++++++++++++++-------
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java | 2 +-
src/main/java/org/springblade/modules/system/service/IDeptService.java | 2 +-
src/main/java/org/springblade/modules/information/controller/InformationController.java | 15 +++++++++------
5 files changed, 30 insertions(+), 16 deletions(-)
diff --git a/src/main/java/org/springblade/modules/information/controller/InformationController.java b/src/main/java/org/springblade/modules/information/controller/InformationController.java
index b68532b..f7a88ae 100644
--- a/src/main/java/org/springblade/modules/information/controller/InformationController.java
+++ b/src/main/java/org/springblade/modules/information/controller/InformationController.java
@@ -1146,21 +1146,24 @@
}
String deptid = strArrays.substring(0, strArrays.length() - 1);
Map<String, Object> map = new HashMap<String, Object>();
- Map<Object, Object> objectStringMap = iDeptService.selectHold(deptid);
- if (objectStringMap == null) {
+ List<Map<String, Object>> objectStringMap = iDeptService.selectHold(deptid);
+ if (objectStringMap.size()==0) {
map.put("name", list.get(i).get("deptname"));
map.put("cz", cznumber);
map.put("wcz", wcznumber);
lists.add(map);
} else {
- String cz = objectStringMap.get("cz").toString();
- cznumber = Integer.valueOf(cz);
- String wcz = objectStringMap.get("wcz").toString();
- wcznumber = Integer.valueOf(wcz);
+ for (int c=0;c<objectStringMap.size();c++){
+ String cz = objectStringMap.get(c).get("cz").toString();
+ cznumber += Integer.valueOf(cz);
+ String wcz = objectStringMap.get(c).get("wcz").toString();
+ wcznumber += Integer.valueOf(wcz);
+ }
map.put("name", list.get(i).get("deptname"));
map.put("cz", cznumber);
map.put("wcz", wcznumber);
lists.add(map);
+
}
}
return R.data(lists);
diff --git a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java
index f9a3b5d..13ebc9b 100644
--- a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java
+++ b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java
@@ -83,7 +83,7 @@
List<String> selectIn();
List<Map<Object,String>> selectCount();
List<Map<Object,String>> selectId(String id);
- Map<Object,Object> selectHold(String deptid);
+ List<Map<String, Object>> selectHold(String deptid);
/**
* 懒加载获取部门树形结构,不包含顶级管理员公安局
*/
diff --git a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
index 1fea3ec..d5cb1f4 100644
--- a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
@@ -382,13 +382,24 @@
</select>
<select id="selectHold" resultType="java.util.HashMap">
- SELECT
- IFNULL(B.cz,0) as cz,
- IFNULL(C.wcz,0) as wcz
- FROM (SELECT jurisdiction FROM blade_user ) A
- LEFT JOIN (SELECT COUNT(hold) as cz,jurisdiction FROM blade_user WHERE hold=0 and status=1 GROUP BY jurisdiction ) B ON A.jurisdiction=B.jurisdiction
- LEFT JOIN (SELECT COUNT(hold) as wcz,jurisdiction FROM blade_user WHERE hold=1 and status=1 GROUP BY jurisdiction ) C ON A.jurisdiction=C.jurisdiction
- WHERE A.jurisdiction in(${deptid}) GROUP BY cz,wcz
+ SELECT IFNULL(B.cz, 0) as cz,
+ IFNULL(C.wcz, 0) as wcz,
+ A.jurisdiction
+ FROM (SELECT jurisdiction FROM blade_user) A
+ LEFT JOIN (SELECT COUNT(hold) as cz, jurisdiction
+ FROM blade_user
+ WHERE hold = 1
+ AND role_id = '1412226235153731586'
+ and status = 1
+ GROUP BY jurisdiction) B ON A.jurisdiction = B.jurisdiction
+ LEFT JOIN (SELECT COUNT(hold) as wcz, jurisdiction
+ FROM blade_user
+ WHERE hold = 2
+ AND role_id = '1412226235153731586'
+ and status = 1
+ GROUP BY jurisdiction) C ON A.jurisdiction = C.jurisdiction
+ WHERE A.jurisdiction in (${deptid})
+ GROUP BY cz, wcz, jurisdiction
</select>
<!--查询部门下面的所有单位-->
diff --git a/src/main/java/org/springblade/modules/system/service/IDeptService.java b/src/main/java/org/springblade/modules/system/service/IDeptService.java
index d3c39ac..70f8c04 100644
--- a/src/main/java/org/springblade/modules/system/service/IDeptService.java
+++ b/src/main/java/org/springblade/modules/system/service/IDeptService.java
@@ -125,7 +125,7 @@
List<DeptVO> search(String deptName, Long parentId);
List<Map<Object,String>> selectCount();
List<Map<Object,String>> selectId(String id);
- Map<Object,Object> selectHold(String deptid);
+ List<Map<String, Object>> selectHold(String deptid);
List<String> selectIn();
List<DeptVO> securityLazyTree(String jurisdiction, Long parentId);
diff --git a/src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java b/src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
index 1326ea8..dfb15ec 100644
--- a/src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
+++ b/src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
@@ -201,7 +201,7 @@
}
@Override
- public Map<Object, Object> selectHold(String deptid) {
+ public List<Map<String, Object>> selectHold(String deptid) {
return baseMapper.selectHold(deptid);
}
--
Gitblit v1.9.3