From 4cb8e239ae86c525c2087eaef8b8381c6b6663de Mon Sep 17 00:00:00 2001
From: 疯狂的狮子Li <15040126243@163.com>
Date: 星期一, 13 六月 2022 17:31:45 +0800
Subject: [PATCH] !186 fix: 修复用户注销时,没有记录注销日志 Merge pull request !186 from 沫离/dev

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java |   71 ++++++++++++++++++-----------------
 1 files changed, 36 insertions(+), 35 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java
index 9616004..475cdb7 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java
@@ -1,20 +1,20 @@
 package com.ruoyi.web.controller.system;
 
+import cn.dev33.satoken.annotation.SaCheckPermission;
+import cn.hutool.core.lang.tree.Tree;
 import cn.hutool.core.util.ArrayUtil;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.constant.UserConstants;
 import com.ruoyi.common.core.controller.BaseController;
-import com.ruoyi.common.core.domain.AjaxResult;
-import com.ruoyi.common.core.domain.TreeSelect;
+import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.domain.entity.SysDept;
 import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.system.service.ISysDeptService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
 import lombok.RequiredArgsConstructor;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
@@ -29,7 +29,7 @@
  */
 @Validated
 @Api(value = "閮ㄩ棬鎺у埗鍣�", tags = {"閮ㄩ棬绠$悊"})
-@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RequiredArgsConstructor
 @RestController
 @RequestMapping("/system/dept")
 public class SysDeptController extends BaseController {
@@ -40,35 +40,35 @@
      * 鑾峰彇閮ㄩ棬鍒楄〃
      */
     @ApiOperation("鑾峰彇閮ㄩ棬鍒楄〃")
-    @PreAuthorize("@ss.hasPermi('system:dept:list')")
+    @SaCheckPermission("system:dept:list")
     @GetMapping("/list")
-    public AjaxResult<List<SysDept>> list(SysDept dept) {
+    public R<List<SysDept>> list(SysDept dept) {
         List<SysDept> depts = deptService.selectDeptList(dept);
-        return AjaxResult.success(depts);
+        return R.ok(depts);
     }
 
     /**
      * 鏌ヨ閮ㄩ棬鍒楄〃锛堟帓闄よ妭鐐癸級
      */
     @ApiOperation("鏌ヨ閮ㄩ棬鍒楄〃锛堟帓闄よ妭鐐癸級")
-    @PreAuthorize("@ss.hasPermi('system:dept:list')")
+    @SaCheckPermission("system:dept:list")
     @GetMapping("/list/exclude/{deptId}")
-    public AjaxResult<List<SysDept>> excludeChild(@PathVariable(value = "deptId", required = false) Long deptId) {
+    public R<List<SysDept>> excludeChild(@ApiParam("閮ㄩ棬ID") @PathVariable(value = "deptId", required = false) Long deptId) {
         List<SysDept> depts = deptService.selectDeptList(new SysDept());
         depts.removeIf(d -> d.getDeptId().equals(deptId)
-                || ArrayUtil.contains(StringUtils.split(d.getAncestors(), ","), deptId + ""));
-        return AjaxResult.success(depts);
+            || ArrayUtil.contains(StringUtils.split(d.getAncestors(), ","), deptId + ""));
+        return R.ok(depts);
     }
 
     /**
      * 鏍规嵁閮ㄩ棬缂栧彿鑾峰彇璇︾粏淇℃伅
      */
     @ApiOperation("鏍规嵁閮ㄩ棬缂栧彿鑾峰彇璇︾粏淇℃伅")
-    @PreAuthorize("@ss.hasPermi('system:dept:query')")
+    @SaCheckPermission("system:dept:query")
     @GetMapping(value = "/{deptId}")
-    public AjaxResult<SysDept> getInfo(@PathVariable Long deptId) {
+    public R<SysDept> getInfo(@ApiParam("閮ㄩ棬ID") @PathVariable Long deptId) {
         deptService.checkDeptDataScope(deptId);
-        return AjaxResult.success(deptService.selectDeptById(deptId));
+        return R.ok(deptService.selectDeptById(deptId));
     }
 
     /**
@@ -76,9 +76,9 @@
      */
     @ApiOperation("鑾峰彇閮ㄩ棬涓嬫媺鏍戝垪琛�")
     @GetMapping("/treeselect")
-    public AjaxResult<List<TreeSelect>> treeselect(SysDept dept) {
+    public R<List<Tree<Long>>> treeselect(SysDept dept) {
         List<SysDept> depts = deptService.selectDeptList(dept);
-        return AjaxResult.success(deptService.buildDeptTreeSelect(depts));
+        return R.ok(deptService.buildDeptTreeSelect(depts));
     }
 
     /**
@@ -86,26 +86,25 @@
      */
     @ApiOperation("鍔犺浇瀵瑰簲瑙掕壊閮ㄩ棬鍒楄〃鏍�")
     @GetMapping(value = "/roleDeptTreeselect/{roleId}")
-    public AjaxResult<Map<String, Object>> roleDeptTreeselect(@PathVariable("roleId") Long roleId) {
+    public R<Map<String, Object>> roleDeptTreeselect(@ApiParam("瑙掕壊ID") @PathVariable("roleId") Long roleId) {
         List<SysDept> depts = deptService.selectDeptList(new SysDept());
         Map<String, Object> ajax = new HashMap<>();
         ajax.put("checkedKeys", deptService.selectDeptListByRoleId(roleId));
         ajax.put("depts", deptService.buildDeptTreeSelect(depts));
-        return AjaxResult.success(ajax);
+        return R.ok(ajax);
     }
 
     /**
      * 鏂板閮ㄩ棬
      */
     @ApiOperation("鏂板閮ㄩ棬")
-    @PreAuthorize("@ss.hasPermi('system:dept:add')")
+    @SaCheckPermission("system:dept:add")
     @Log(title = "閮ㄩ棬绠$悊", businessType = BusinessType.INSERT)
     @PostMapping
-    public AjaxResult<Void> add(@Validated @RequestBody SysDept dept) {
+    public R<Void> add(@Validated @RequestBody SysDept dept) {
         if (UserConstants.NOT_UNIQUE.equals(deptService.checkDeptNameUnique(dept))) {
-            return AjaxResult.error("鏂板閮ㄩ棬'" + dept.getDeptName() + "'澶辫触锛岄儴闂ㄥ悕绉板凡瀛樺湪");
+            return R.fail("鏂板閮ㄩ棬'" + dept.getDeptName() + "'澶辫触锛岄儴闂ㄥ悕绉板凡瀛樺湪");
         }
-        dept.setCreateBy(getUsername());
         return toAjax(deptService.insertDept(dept));
     }
 
@@ -113,19 +112,20 @@
      * 淇敼閮ㄩ棬
      */
     @ApiOperation("淇敼閮ㄩ棬")
-    @PreAuthorize("@ss.hasPermi('system:dept:edit')")
+    @SaCheckPermission("system:dept:edit")
     @Log(title = "閮ㄩ棬绠$悊", businessType = BusinessType.UPDATE)
     @PutMapping
-    public AjaxResult<Void> edit(@Validated @RequestBody SysDept dept) {
+    public R<Void> edit(@Validated @RequestBody SysDept dept) {
+        Long deptId = dept.getDeptId();
+        deptService.checkDeptDataScope(deptId);
         if (UserConstants.NOT_UNIQUE.equals(deptService.checkDeptNameUnique(dept))) {
-            return AjaxResult.error("淇敼閮ㄩ棬'" + dept.getDeptName() + "'澶辫触锛岄儴闂ㄥ悕绉板凡瀛樺湪");
-        } else if (dept.getParentId().equals(dept.getDeptId())) {
-            return AjaxResult.error("淇敼閮ㄩ棬'" + dept.getDeptName() + "'澶辫触锛屼笂绾ч儴闂ㄤ笉鑳芥槸鑷繁");
+            return R.fail("淇敼閮ㄩ棬'" + dept.getDeptName() + "'澶辫触锛岄儴闂ㄥ悕绉板凡瀛樺湪");
+        } else if (dept.getParentId().equals(deptId)) {
+            return R.fail("淇敼閮ㄩ棬'" + dept.getDeptName() + "'澶辫触锛屼笂绾ч儴闂ㄤ笉鑳芥槸鑷繁");
         } else if (StringUtils.equals(UserConstants.DEPT_DISABLE, dept.getStatus())
-                && deptService.selectNormalChildrenDeptById(dept.getDeptId()) > 0) {
-            return AjaxResult.error("璇ラ儴闂ㄥ寘鍚湭鍋滅敤鐨勫瓙閮ㄩ棬锛�");
+            && deptService.selectNormalChildrenDeptById(deptId) > 0) {
+            return R.fail("璇ラ儴闂ㄥ寘鍚湭鍋滅敤鐨勫瓙閮ㄩ棬锛�");
         }
-        dept.setUpdateBy(getUsername());
         return toAjax(deptService.updateDept(dept));
     }
 
@@ -133,16 +133,17 @@
      * 鍒犻櫎閮ㄩ棬
      */
     @ApiOperation("鍒犻櫎閮ㄩ棬")
-    @PreAuthorize("@ss.hasPermi('system:dept:remove')")
+    @SaCheckPermission("system:dept:remove")
     @Log(title = "閮ㄩ棬绠$悊", businessType = BusinessType.DELETE)
     @DeleteMapping("/{deptId}")
-    public AjaxResult<Void> remove(@PathVariable Long deptId) {
+    public R<Void> remove(@ApiParam("閮ㄩ棬ID涓�") @PathVariable Long deptId) {
         if (deptService.hasChildByDeptId(deptId)) {
-            return AjaxResult.error("瀛樺湪涓嬬骇閮ㄩ棬,涓嶅厑璁稿垹闄�");
+            return R.fail("瀛樺湪涓嬬骇閮ㄩ棬,涓嶅厑璁稿垹闄�");
         }
         if (deptService.checkDeptExistUser(deptId)) {
-            return AjaxResult.error("閮ㄩ棬瀛樺湪鐢ㄦ埛,涓嶅厑璁稿垹闄�");
+            return R.fail("閮ㄩ棬瀛樺湪鐢ㄦ埛,涓嶅厑璁稿垹闄�");
         }
+        deptService.checkDeptDataScope(deptId);
         return toAjax(deptService.deleteDeptById(deptId));
     }
 }

--
Gitblit v1.9.3