From c10d6358b9f014375a13821465bc978d0c0da22e Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Wed, 29 May 2024 17:17:08 +0800
Subject: [PATCH] 通过E呼即办数据统计
---
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java | 49 +++++++++++++++++++++++++++++--------------------
1 files changed, 29 insertions(+), 20 deletions(-)
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 3127d74..a0e13c5 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
@@ -20,10 +20,11 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.logging.log4j.util.Strings;
import org.springblade.common.cache.SysCache;
-import org.springblade.common.node.TreeStringNode;
-import org.springblade.common.utils.SpringUtils;
+import org.springblade.common.utils.AuthUtils;
import org.springblade.common.utils.NodeTreeUtil;
+import org.springblade.common.utils.SpringUtils;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.constant.BladeConstant;
@@ -44,17 +45,14 @@
import org.springblade.modules.system.entity.Region;
import org.springblade.modules.system.mapper.DeptMapper;
import org.springblade.modules.system.node.DeptUserTreeNode;
-import org.springblade.modules.system.node.TreeNode;
import org.springblade.modules.system.service.IDeptService;
import org.springblade.modules.system.service.IRegionService;
-import org.springblade.modules.system.vo.DeptDetailVO;
import org.springblade.modules.system.vo.DeptVO;
import org.springblade.modules.system.wrapper.DeptWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
-import java.util.Comparator;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@@ -90,10 +88,10 @@
parentId = 0L;
}
// 判断数据权限控制,非超管角色只可看到本级及以下数据
- if (Func.toLong(parentId) == 0L && !AuthUtil.isAdministrator()) {
+ if (Func.toLong(parentId) == 0L && !AuthUtils.isAdministratorOrAdmin(AuthUtil.getUserRole())) {
Long deptId = Func.firstLong(AuthUtil.getDeptId());
Dept dept = SysCache.getDept(deptId);
- if (dept.getParentId() != 0) {
+ if (dept != null && dept.getParentId() != 0) {
parentId = dept.getParentId();
}
List<DeptVO> deptVOS = baseMapper.lazyList(tenantId, parentId, param);
@@ -118,6 +116,17 @@
return ForestNodeMerger.merge(tree);
}
+ /**
+ * 机构id
+ * @param deptId
+ * @return
+ */
+ @Override
+ public List<DeptVO> tree(Long deptId) {
+ List<DeptVO> tree = baseMapper.tree("000000", deptId);
+ return ForestNodeMerger.merge(tree);
+ }
+
@Override
public List<DeptVO> lazyTree(String tenantId, Long parentId) {
if (AuthUtil.isAdministrator()) {
@@ -134,7 +143,7 @@
if (Func.toLong(parentId) == 0L && !AuthUtil.isAdmin()) {
Long deptId = Func.firstLong(AuthUtil.getDeptId());
Dept dept = SysCache.getDept(deptId);
- if (dept.getParentId() != 0) {
+ if (dept != null && dept.getParentId() != 0) {
parentId = dept.getParentId();
}
List<DeptVO> merge = ForestNodeMerger.merge(baseMapper.lazyTree(tenantId, parentId));
@@ -191,7 +200,7 @@
// 查询当前机构信息
DeptVO dept = baseMapper.getDeptById(id);
// 如果父机构为物业公司
- if (dept.getParentName().equals("物业公司")) {
+ if (!Strings.isBlank(dept.getParentName()) && dept.getParentName().equals("物业公司")) {
// 删除
propertyCompanyService.remove(Wrappers.<PropertyCompanyEntity>update().lambda().eq(PropertyCompanyEntity::getDeptId, id));
}
@@ -255,7 +264,7 @@
dept.setId(one.getId());
flag = updateById(dept);
} else {
- if (dept.getId() > 0) {
+ if (dept.getId() != null && dept.getId() > 0) {
flag = updateById(dept);
} else {
flag = save(dept);
@@ -280,8 +289,7 @@
// 查询物业公司是否存在
QueryWrapper<PropertyCompanyEntity> wrapper = new QueryWrapper<>();
wrapper.eq("is_deleted", 0)
- .eq("dept_id", dept.getId())
- .eq("name", dept.getDeptName());
+ .eq("dept_id", dept.getId());
PropertyCompanyEntity propertyCompanyEntity = propertyCompanyService.getOne(wrapper);
if (null != propertyCompanyEntity) {
// 修改
@@ -324,7 +332,7 @@
public Object dataHandle() {
// 查询所有的社区
QueryWrapper<Region> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("district_code","361102").eq("region_level",5);
+ queryWrapper.eq("district_code", "361102").eq("region_level", 5);
List<Region> list = regionService.list(queryWrapper);
// 遍历
for (Region region : list) {
@@ -343,7 +351,7 @@
QueryWrapper<Dept> deptQueryWrapper = new QueryWrapper<>();
deptQueryWrapper.eq("is_deleted", 0).eq("dept_name", region.getTownName());
Dept parentDept = getOne(deptQueryWrapper);
- if (null!=parentDept){
+ if (null != parentDept) {
dept.setParentId(parentDept.getId());
dept.setAncestors(parentDept.getAncestors() + "," + parentDept.getId());
}
@@ -365,7 +373,7 @@
public Object dataHandleCommunity() {
// 查询所有的社区
QueryWrapper<Region> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("district_code","361102").eq("region_level",5);
+ queryWrapper.eq("district_code", "361102").eq("region_level", 5);
List<Region> list = regionService.list(queryWrapper);
// 遍历
for (Region region : list) {
@@ -426,11 +434,11 @@
String deptIds = "";
int count = 0;
- for (String key:deptMap.keySet()){
+ for (String key : deptMap.keySet()) {
count++;
deptIds += key;
- if (count<deptMap.size()){
- deptIds +=",";
+ if (count < deptMap.size()) {
+ deptIds += ",";
}
}
@@ -448,13 +456,13 @@
public Object dataHandleCommunityByPolice() {
// 查询所有的派出所
QueryWrapper<Dept> wrapper = new QueryWrapper<>();
- wrapper.eq("is_deleted",0).like("dept_name","派出所");
+ wrapper.eq("is_deleted", 0).like("dept_name", "派出所");
List<Dept> list = list(wrapper);
// 遍历
for (Dept dept : list) {
// 通过派出所名称查询对应的警务网格信息
QueryWrapper<PoliceAffairsGridEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("is_deleted",0).eq("pcs_name",dept.getDeptName());
+ queryWrapper.eq("is_deleted", 0).eq("pcs_name", dept.getDeptName());
List<PoliceAffairsGridEntity> policeAffairsGridEntityList
= SpringUtil.getBean(IPoliceAffairsGridService.class).list(queryWrapper);
// 遍历
@@ -477,6 +485,7 @@
/**
* 查询对应的派出所
+ *
* @param deptId
* @return
*/
--
Gitblit v1.9.3