From 039abee6b27058ca46b1e1e82aa0b5407a5dad44 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期一, 28 七月 2025 15:25:26 +0800
Subject: [PATCH] 优化 和修改bug

---
 springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/api/SystemUserController.java |   92 ++++++++++++++++++++++++++++++++--------------
 1 files changed, 64 insertions(+), 28 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/api/SystemUserController.java b/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/api/SystemUserController.java
index 9553043..23e6ed2 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/api/SystemUserController.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/api/SystemUserController.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.panzhihua.common.controller.BaseController;
 import com.panzhihua.common.interfaces.OperLog;
 import com.panzhihua.common.model.vos.LoginReturnVO;
@@ -25,6 +26,7 @@
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.util.ObjectUtils;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.annotation.Resource;
 import java.time.LocalDateTime;
@@ -118,35 +120,43 @@
 		Set<String> collect1 = new HashSet<>();
 		if(collect.size() > 0){
 			LambdaQueryWrapper<SystemMenu> queryWrapper = new LambdaQueryWrapper<SystemMenu>().in(SystemMenu::getId, collect);
-			switch (systemUser.getAccountLevel()){
-				case 3:
-					queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del",
-							"/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del",
-							"/work_order_transaction_management/work_order_item_configuration", "/work_order_transaction_management/work_order_item_configuration/save",
-							"/work_order_transaction_management/problem_type_management", "/work_order_transaction_management/problem_type_management/add",
-							"/work_order_transaction_management/problem_type_management/edit", "/work_order_transaction_management/problem_type_management/del", "/work_order_transaction_management/banner_management",
-							"/work_order_transaction_management/banner_management/add", "/work_order_transaction_management/banner_management/edit", "/work_order_transaction_management/banner_management/del"));
-					break;
-				case 4:
-					queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del",
-							"/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del",
-							"/work_order_transaction_management/work_order_item_configuration", "/work_order_transaction_management/work_order_item_configuration/save",
-							"/work_order_transaction_management/problem_type_management", "/work_order_transaction_management/problem_type_management/add",
-							"/work_order_transaction_management/problem_type_management/edit", "/work_order_transaction_management/problem_type_management/del", "/work_order_transaction_management/banner_management",
-							"/work_order_transaction_management/banner_management/add", "/work_order_transaction_management/banner_management/edit", "/work_order_transaction_management/banner_management/del"));
-					break;
-				case 5:
-					queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del",
-							"/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del",
-							"/system_setting/people_management", "/system_setting/people_management/add", "/system_setting/people_management/edit", "/system_setting/people_management/del",
-							"/system_setting/people_management/freeze", "/system_setting/unit_management", "/system_setting/people_management/detail", "/system_setting/unit_management/add",
-							"/system_setting/unit_management/edit", "/system_setting/unit_management/del", "/work_order_transaction_management/work_order_item_configuration",
-							"/work_order_transaction_management/work_order_item_configuration/save", "/work_order_transaction_management/problem_type_management",
-							"/work_order_transaction_management/problem_type_management/add", "/work_order_transaction_management/problem_type_management/edit",
-							"/work_order_transaction_management/problem_type_management/del", "/work_order_transaction_management/banner_management",
-							"/work_order_transaction_management/banner_management/add", "/work_order_transaction_management/banner_management/edit", "/work_order_transaction_management/banner_management/del"));
-					break;
+			if(systemUser.getSystemRoleId()>2 && systemUser.getAccountLevel()==2){
+				queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/work_order_transaction_management","/work_order_transaction_management/work_order_item_configuration"
+				,"/work_order_transaction_management/work_order_item_configuration/save","/system_setting","/system_setting/position_management","/system_setting/position_management/add"
+				,"/system_setting/position_management/edit","/system_setting/position_management/del","/system_setting/role_management","/system_setting/role_management/add"
+				,"/system_setting/role_management/edit","/system_setting/role_management/del","/system_setting/role_management/detail"));
 			}
+			if(systemUser.getSystemRoleId()<3 && systemUser.getAccountLevel()==3){
+				queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/work_order_transaction_management","/work_order_transaction_management/work_order_item_configuration"
+				,"/work_order_transaction_management/work_order_item_configuration/save"));
+			}
+			if(systemUser.getSystemRoleId()>2 && systemUser.getAccountLevel()==3){
+				queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/work_order_transaction_management","/work_order_transaction_management/work_order_item_configuration"
+						,"/work_order_transaction_management/work_order_item_configuration/save","/system_setting","/system_setting/position_management","/system_setting/position_management/add"
+						,"/system_setting/position_management/edit","/system_setting/position_management/del","/system_setting/role_management","/system_setting/role_management/add"
+						,"/system_setting/role_management/edit","/system_setting/role_management/del","/system_setting/role_management/detail"));
+			}
+			if(systemUser.getSystemRoleId()<3 && systemUser.getAccountLevel()==4){
+				queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/work_order_transaction_management","/work_order_transaction_management/work_order_item_configuration"
+						,"/work_order_transaction_management/work_order_item_configuration/save"));
+			}
+			if(systemUser.getSystemRoleId()>2 && systemUser.getAccountLevel()==4){
+				queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/work_order_transaction_management","/work_order_transaction_management/work_order_item_configuration"
+						,"/work_order_transaction_management/work_order_item_configuration/save","/system_setting","/system_setting/position_management","/system_setting/position_management/add"
+						,"/system_setting/position_management/edit","/system_setting/position_management/del","/system_setting/role_management","/system_setting/role_management/add"
+						,"/system_setting/role_management/edit","/system_setting/role_management/del","/system_setting/role_management/detail"));
+			}
+
+
+//				queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del",
+//						"/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del",
+//						"/work_order_transaction_management/work_order_item_configuration", "/work_order_transaction_management/work_order_item_configuration/save",
+//						"/work_order_transaction_management/problem_type_management", "/work_order_transaction_management/problem_type_management/add",
+//						"/work_order_transaction_management/problem_type_management/edit", "/work_order_transaction_management/problem_type_management/del", "/work_order_transaction_management/banner_management",
+//						"/work_order_transaction_management/banner_management/add", "/work_order_transaction_management/banner_management/edit", "/work_order_transaction_management/banner_management/del","/complaint/assign","/complaint/assign/list","/complaint/assign/assign","/complaint/assign/export"
+//						,"/statistics","/logManagement","/logManagement/list","/party_member","/party_member/list","/party_member/add","/party_member/edit","/party_member/del","/party_member/detail"
+//				,"/party_member/freeze","/party_member/import","/party_member/export","/work_order_transaction_management/problem_type_management","/work_order_transaction_management/problem_type_management/edit"
+//				,"/work_order_transaction_management/problem_type_management/add","/work_order_transaction_management/problem_type_management/del",""));
 			List<SystemMenu> systemMenus = systemMenuService.list(queryWrapper);
 			collect1 = systemMenus.stream().map(SystemMenu::getUrl).collect(Collectors.toSet());
 		}
@@ -173,6 +183,8 @@
 				tokenVo.setCommunityId(systemUser.getCommunityId().toString());
 				break;
 		}
+		tokenVo.setOneDepartmentId(systemUser.getOneDepartmentId());
+		tokenVo.setSystemRoleId(systemUser.getSystemRoleId());
 		return R.ok(tokenVo);
 	}
 
@@ -195,6 +207,9 @@
 	public R<IPage<SystemUserListVo>> list(SystemUserList query){
 		Integer id = this.getLoginUserInfoWest().getId();
 		SystemUser user = systemUserService.getById(id);
+		if(user.getSystemRoleId()>2){
+			return R.ok(new Page<>());
+		}
 		IPage<SystemUserListVo> list = systemUserService.list(user, query);
 		return R.ok(list);
 	}
@@ -451,4 +466,25 @@
 
 
 
+
+
+	@ResponseBody
+	@PostMapping("/importUser")
+	@ApiOperation(value = "用户导入", tags = {"西区纪委后台-人员管理"})
+	public R<?> importUser(MultipartFile file) {
+		String s = file.getOriginalFilename();
+		if (s == null || !("xls".equals(s.substring(s.lastIndexOf(".") + 1)) || "xlsx".equals(s.substring(s.lastIndexOf(".") + 1)))) {
+			return R.fail("只能上传.xls或.xlsx格式的文件");
+		}
+		try {
+			return systemUserService.importUser(s, file);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		return R.ok();
+	}
+
+
+
+
 }

--
Gitblit v1.7.1