From 3632162b5cbffbe53f86094604f213d20fda2e35 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期五, 27 六月 2025 14:50:36 +0800
Subject: [PATCH] 2.0后台模块接口

---
 springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/api/DepartmentController.java |   64 +++++++++++++++++++++----------
 1 files changed, 43 insertions(+), 21 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/api/DepartmentController.java b/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/api/DepartmentController.java
index 46802b7..de5d127 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/api/DepartmentController.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/api/DepartmentController.java
@@ -8,6 +8,7 @@
 import com.panzhihua.common.model.vos.west.SystemUserVo;
 import com.panzhihua.common.utlis.StringUtils;
 import com.panzhihua.westcommittee.model.dto.UpdateStatusDeptDto;
+import com.panzhihua.westcommittee.model.entity.ComAct;
 import com.panzhihua.westcommittee.model.entity.Department;
 import com.panzhihua.westcommittee.model.entity.SystemUser;
 import com.panzhihua.westcommittee.service.*;
@@ -30,10 +31,10 @@
 @RestController
 @RequestMapping("/department")
 public class DepartmentController extends BaseController {
-	
+
 	@Resource
 	private IDepartmentService departmentService;
-	
+
 	@Resource
 	private ISystemUserService systemUserService;
 
@@ -101,26 +102,32 @@
 	@ApiOperation(value = "获取单位列表", tags = {"西区纪委后台-单位管理"})
 	@OperLog(operModul = "西区纪委后台",operType = 0, businessType = "获取单位列表")
 	public R<List<Department>> getList(String name,Integer level,String code,int type){
-		if(level==null){
-			List<Department> list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name));
-			return  R.ok(list4);
-		}else {
+        SystemUserVo loginUserInfoWest = getLoginUserInfoWest();
+        if(level==null){
+            if(loginUserInfoWest.getSystemRoleId()!=1){
+                return  R.ok(new ArrayList<>());
+            }
+            level=loginUserInfoWest.getAccountLevel();
+            type=2;
+        }
 			List<Department> list4=new ArrayList<>();
 			if(level==2 && type==1){
 				list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).eq( Department::getTier, 2));
 			}else if(level==2 && type==2){
 				 list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).ge( Department::getTier, 2));
 			}else  if(level==3 && type==1){
-				list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).eq( Department::getTier, 3));
+				list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).eq( Department::getTier, 3).eq(Department::getStreetId, loginUserInfoWest.getStreetId()));
 			}else if(level==3 && type==2){
-				 list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).ge( Department::getTier, 3));
+                List<Long> ids = comActService.list(new LambdaQueryWrapper<ComAct>().eq(ComAct::getStreetId, loginUserInfoWest.getStreetId())).stream().map(ComAct::getCommunityId).collect(Collectors.toList());
+                list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).eq( Department::getTier, 3).eq(Department::getStreetId, loginUserInfoWest.getStreetId())
+                        .or(w->w.eq(Department::getTier,4).in(Department::getCommunityId,ids)));
 			}else  if(level==4 && type==1){
-				list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).eq( Department::getTier, 4));
+				list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).eq( Department::getTier, 4).eq(Department::getCommunityId,loginUserInfoWest.getCommunityId()));
 			}else if(level==4 && type==2){
-				list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).ge(Department::getTier, 4));
+				list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).eq(Department::getTier, 4).eq(Department::getCommunityId,loginUserInfoWest.getCommunityId()));
 			}
 			return R.ok(list4);
-		}
+
 	}
 
 
@@ -128,8 +135,23 @@
 	@ApiOperation(value = "获取单位列表1", tags = {"西区纪委后台-单位管理"})
 	@OperLog(operModul = "西区纪委后台",operType = 0, businessType = "获取单位列表")
 	public R<Page<Department>> getDeptList(String name,int pageNum,int pageSize){
-		Page<Department> list4 = departmentService.page(new Page<Department>(pageNum,pageSize),new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).or().eq(StringUtils.isNotEmpty(name),Department::getId,name));
-		for (Department department : list4.getRecords()) {
+        SystemUserVo loginUserInfoWest = getLoginUserInfoWest();
+        if(loginUserInfoWest.getSystemRoleId()!=1){
+            return  R.ok(new Page<>());
+        }
+        Integer accountLevel = loginUserInfoWest.getAccountLevel();
+        Page<Department> list4 = null;
+        if(accountLevel==2 ){
+           list4 = departmentService.page(new Page<Department>(pageNum,pageSize),new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).or().eq(StringUtils.isNotEmpty(name),Department::getId,name).ge(Department::getTier,accountLevel));
+        }else if(accountLevel==3){
+            String streetId = loginUserInfoWest.getStreetId();
+            List<Long> ids = comActService.list(new LambdaQueryWrapper<ComAct>().eq(ComAct::getStreetId, streetId)).stream().map(ComAct::getCommunityId).collect(Collectors.toList());
+         	 list4 = departmentService.page(new Page<Department>(pageNum,pageSize),new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).or().eq(StringUtils.isNotEmpty(name),Department::getId,name).eq(Department::getTier,accountLevel).eq(Department::getStreetId,streetId)
+                    .or(department -> department.and(department1 -> department1.eq(Department::getTier, 4).in(Department::getCommunityId, ids))));
+        }else if(accountLevel==4){
+             list4 = departmentService.page(new Page<Department>(pageNum,pageSize),new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).or().eq(StringUtils.isNotEmpty(name),Department::getId,name).eq(Department::getTier,4).eq(Department::getCommunityId,loginUserInfoWest.getCommunityId()));
+        }
+        for (Department department : list4.getRecords()) {
 			int count = systemUserService.count(new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getOneDepartmentId, department.getId()));
 			department.setUserCount(count);
 
@@ -148,8 +170,8 @@
 		departmentService.save(department);
 		return R.ok();
 	}
-	
-	
+
+
 	@PostMapping("/edit")
 	@ApiOperation(value = "编辑单位信息", tags = {"西区纪委后台-单位管理"})
 	public R edit(@RequestBody Department department){
@@ -185,9 +207,9 @@
 		}
 		return R.ok();
 	}
-	
-	
-	
+
+
+
 	@DeleteMapping("/delete/{id}")
 	@ApiOperation(value = "删除单位信息", tags = {"西区纪委后台-单位管理"})
 	public R delete(@PathVariable("id") Integer id){
@@ -214,9 +236,9 @@
 		departmentService.updateById(department);
 		return R.ok();
 	}
-	
-	
-	
+
+
+
 	@GetMapping("/getDepartmentList/{tier}")
 	@ApiOperation(value = "根据单位层级查询单位数据", tags = {"西区纪委后台-用户管理"})
 	@ApiImplicitParams({

--
Gitblit v1.7.1