From 050b6bc88dfbff427d67ad5fd335f7cb0ec13ee1 Mon Sep 17 00:00:00 2001 From: whycxzp <glperry@163.com> Date: 星期四, 12 九月 2024 15:38:24 +0800 Subject: [PATCH] 用户编辑权限校验 --- src/main/java/com/whyc/service/UserService.java | 19 +++++++++++++++++++ 1 files changed, 19 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/whyc/service/UserService.java b/src/main/java/com/whyc/service/UserService.java index 5ee7cb3..f62daac 100644 --- a/src/main/java/com/whyc/service/UserService.java +++ b/src/main/java/com/whyc/service/UserService.java @@ -45,6 +45,9 @@ @Autowired private ApplicationContext applicationContext; + @Resource + private PermitGroupUserService permitGroupUserService; + public Response add(UserInf user) { try { UserInf userFound = userBridgeService.findPasswordByUserName(user.getUName()); @@ -79,6 +82,8 @@ } } public Response addByRSA(UserInf user) { + //棣栧厛鏍¢獙褰撳墠鐢ㄦ埛鎵�鍦ㄧ殑鏉冮檺缁�,鏄惁瀛樺湪鐢ㄦ埛缂栬緫鏉冮檺 usr_edit_permit + if (!checkUserPermit()) return new Response<>().set(1, false, "鎮ㄦ病鏈夋潈闄愮紪杈戠敤鎴�"); try { UserInf userFound = userBridgeService.findPasswordByUserName(user.getUName()); if (userFound.getUId() != 0) { @@ -110,6 +115,16 @@ e.printStackTrace(); return new Response<>().set(0); } + } + + private boolean checkUserPermit() { + //棣栧厛鏍¢獙褰撳墠鐢ㄦ埛鎵�鍦ㄧ殑鏉冮檺缁�,鏄惁瀛樺湪鐢ㄦ埛缂栬緫鏉冮檺 usr_edit_permit + Long uId = ActionUtil.getUser().getUId(); + List<String> itemList = permitGroupUserService.getItemList(uId); + if (!itemList.contains("usr_edit_permit")){ + return false; + } + return true; } public Response registerUser(UserInf user){ @@ -172,6 +187,8 @@ } public Response update(UserInf user) { + //棣栧厛鏍¢獙褰撳墠鐢ㄦ埛鎵�鍦ㄧ殑鏉冮檺缁�,鏄惁瀛樺湪鐢ㄦ埛缂栬緫鏉冮檺 usr_edit_permit + if (!checkUserPermit()) return new Response<>().set(1, false, "鎮ㄦ病鏈夋潈闄愮紪杈戠敤鎴�"); //闈炵郴缁熺鐞嗗憳鐢ㄦ埛,绂佹淇敼璁块棶ip鍜岃闂椂闂� if(user.getUId()!=1 && user.getUName().equals("sys_admin")){ user.setVisitIp((String) ActionUtil.objeNull); @@ -195,6 +212,8 @@ @Transactional public boolean delete(int id) { + //棣栧厛鏍¢獙褰撳墠鐢ㄦ埛鎵�鍦ㄧ殑鏉冮檺缁�,鏄惁瀛樺湪鐢ㄦ埛缂栬緫鏉冮檺 usr_edit_permit + if (!checkUserPermit()) return false; UpdateWrapper wrapper = new UpdateWrapper(); wrapper.eq("uId", id); //鍒犻櫎瀵瑰簲鐨勫寘鏈虹粍璁板綍 -- Gitblit v1.9.1