mirror of
				https://github.com/dromara/RuoYi-Vue-Plus.git
				synced 2025-11-04 16:23:42 +08:00 
			
		
		
		
	update 优化接口防重和加锁
This commit is contained in:
		@@ -42,6 +42,11 @@
 | 
			
		||||
            <artifactId>ruoyi-common-log</artifactId>
 | 
			
		||||
        </dependency>
 | 
			
		||||
 | 
			
		||||
        <dependency>
 | 
			
		||||
            <groupId>org.dromara</groupId>
 | 
			
		||||
            <artifactId>ruoyi-common-idempotent</artifactId>
 | 
			
		||||
        </dependency>
 | 
			
		||||
 | 
			
		||||
        <!--velocity代码生成使用模板 -->
 | 
			
		||||
        <dependency>
 | 
			
		||||
            <groupId>org.apache.velocity</groupId>
 | 
			
		||||
 
 | 
			
		||||
@@ -3,9 +3,11 @@ package org.dromara.generator.controller;
 | 
			
		||||
import cn.dev33.satoken.annotation.SaCheckPermission;
 | 
			
		||||
import cn.hutool.core.convert.Convert;
 | 
			
		||||
import cn.hutool.core.io.IoUtil;
 | 
			
		||||
import com.baomidou.lock.annotation.Lock4j;
 | 
			
		||||
import jakarta.servlet.http.HttpServletResponse;
 | 
			
		||||
import lombok.RequiredArgsConstructor;
 | 
			
		||||
import org.dromara.common.core.domain.R;
 | 
			
		||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.PageQuery;
 | 
			
		||||
@@ -50,6 +52,7 @@ public class GenController extends BaseController {
 | 
			
		||||
     *
 | 
			
		||||
     * @param tableId 表ID
 | 
			
		||||
     */
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @SaCheckPermission("tool:gen:query")
 | 
			
		||||
    @GetMapping(value = "/{tableId}")
 | 
			
		||||
    public R<Map<String, Object>> getInfo(@PathVariable Long tableId) {
 | 
			
		||||
@@ -91,6 +94,7 @@ public class GenController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("tool:gen:import")
 | 
			
		||||
    @Log(title = "代码生成", businessType = BusinessType.IMPORT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PostMapping("/importTable")
 | 
			
		||||
    public R<Void> importTableSave(String tables, String dataName) {
 | 
			
		||||
        String[] tableNames = Convert.toStrArray(tables);
 | 
			
		||||
@@ -105,6 +109,7 @@ public class GenController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("tool:gen:edit")
 | 
			
		||||
    @Log(title = "代码生成", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping
 | 
			
		||||
    public R<Void> editSave(@Validated @RequestBody GenTable genTable) {
 | 
			
		||||
        genTableService.validateEdit(genTable);
 | 
			
		||||
@@ -170,6 +175,7 @@ public class GenController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("tool:gen:edit")
 | 
			
		||||
    @Log(title = "代码生成", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @Lock4j
 | 
			
		||||
    @GetMapping("/synchDb/{tableId}")
 | 
			
		||||
    public R<Void> synchDb(@PathVariable("tableId") Long tableId) {
 | 
			
		||||
        genTableService.synchDb(tableId);
 | 
			
		||||
 
 | 
			
		||||
@@ -1,11 +1,13 @@
 | 
			
		||||
package org.dromara.system.controller.monitor;
 | 
			
		||||
 | 
			
		||||
import cn.dev33.satoken.annotation.SaCheckPermission;
 | 
			
		||||
import com.baomidou.lock.annotation.Lock4j;
 | 
			
		||||
import jakarta.servlet.http.HttpServletResponse;
 | 
			
		||||
import lombok.RequiredArgsConstructor;
 | 
			
		||||
import org.dromara.common.core.constant.CacheConstants;
 | 
			
		||||
import org.dromara.common.core.domain.R;
 | 
			
		||||
import org.dromara.common.excel.utils.ExcelUtil;
 | 
			
		||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.PageQuery;
 | 
			
		||||
@@ -69,6 +71,7 @@ public class SysLogininforController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("monitor:logininfor:remove")
 | 
			
		||||
    @Log(title = "登录日志", businessType = BusinessType.CLEAN)
 | 
			
		||||
    @Lock4j
 | 
			
		||||
    @DeleteMapping("/clean")
 | 
			
		||||
    public R<Void> clean() {
 | 
			
		||||
        logininforService.cleanLogininfor();
 | 
			
		||||
@@ -77,6 +80,7 @@ public class SysLogininforController extends BaseController {
 | 
			
		||||
 | 
			
		||||
    @SaCheckPermission("monitor:logininfor:unlock")
 | 
			
		||||
    @Log(title = "账户解锁", businessType = BusinessType.OTHER)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @GetMapping("/unlock/{userName}")
 | 
			
		||||
    public R<Void> unlock(@PathVariable("userName") String userName) {
 | 
			
		||||
        String loginName = CacheConstants.PWD_ERR_CNT_KEY + userName;
 | 
			
		||||
 
 | 
			
		||||
@@ -1,21 +1,22 @@
 | 
			
		||||
package org.dromara.system.controller.monitor;
 | 
			
		||||
 | 
			
		||||
import cn.dev33.satoken.annotation.SaCheckPermission;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.web.core.BaseController;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.PageQuery;
 | 
			
		||||
import com.baomidou.lock.annotation.Lock4j;
 | 
			
		||||
import jakarta.servlet.http.HttpServletResponse;
 | 
			
		||||
import lombok.RequiredArgsConstructor;
 | 
			
		||||
import org.dromara.common.core.domain.R;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.excel.utils.ExcelUtil;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.PageQuery;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
 | 
			
		||||
import org.dromara.common.web.core.BaseController;
 | 
			
		||||
import org.dromara.system.domain.bo.SysOperLogBo;
 | 
			
		||||
import org.dromara.system.domain.vo.SysOperLogVo;
 | 
			
		||||
import org.dromara.system.service.ISysOperLogService;
 | 
			
		||||
import lombok.RequiredArgsConstructor;
 | 
			
		||||
import org.springframework.validation.annotation.Validated;
 | 
			
		||||
import org.springframework.web.bind.annotation.*;
 | 
			
		||||
 | 
			
		||||
import jakarta.servlet.http.HttpServletResponse;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
@@ -67,6 +68,7 @@ public class SysOperlogController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @Log(title = "操作日志", businessType = BusinessType.CLEAN)
 | 
			
		||||
    @SaCheckPermission("monitor:operlog:remove")
 | 
			
		||||
    @Lock4j
 | 
			
		||||
    @DeleteMapping("/clean")
 | 
			
		||||
    public R<Void> clean() {
 | 
			
		||||
        operLogService.cleanOperLog();
 | 
			
		||||
 
 | 
			
		||||
@@ -10,6 +10,7 @@ import org.dromara.common.core.domain.R;
 | 
			
		||||
import org.dromara.common.core.domain.dto.UserOnlineDTO;
 | 
			
		||||
import org.dromara.common.core.utils.StreamUtils;
 | 
			
		||||
import org.dromara.common.core.utils.StringUtils;
 | 
			
		||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
 | 
			
		||||
@@ -81,6 +82,7 @@ public class SysUserOnlineController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("monitor:online:forceLogout")
 | 
			
		||||
    @Log(title = "在线用户", businessType = BusinessType.FORCE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @DeleteMapping("/{tokenId}")
 | 
			
		||||
    public R<Void> forceLogout(@PathVariable String tokenId) {
 | 
			
		||||
        try {
 | 
			
		||||
@@ -114,6 +116,7 @@ public class SysUserOnlineController extends BaseController {
 | 
			
		||||
     * @param tokenId token值
 | 
			
		||||
     */
 | 
			
		||||
    @Log(title = "在线设备", businessType = BusinessType.FORCE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @DeleteMapping("/myself/{tokenId}")
 | 
			
		||||
    public R<Void> remove(@PathVariable("tokenId") String tokenId) {
 | 
			
		||||
        try {
 | 
			
		||||
 
 | 
			
		||||
@@ -5,6 +5,7 @@ import jakarta.servlet.http.HttpServletResponse;
 | 
			
		||||
import lombok.RequiredArgsConstructor;
 | 
			
		||||
import org.dromara.common.core.domain.R;
 | 
			
		||||
import org.dromara.common.excel.utils.ExcelUtil;
 | 
			
		||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.PageQuery;
 | 
			
		||||
@@ -78,6 +79,7 @@ public class SysConfigController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:config:add")
 | 
			
		||||
    @Log(title = "参数管理", businessType = BusinessType.INSERT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PostMapping
 | 
			
		||||
    public R<Void> add(@Validated @RequestBody SysConfigBo config) {
 | 
			
		||||
        if (!configService.checkConfigKeyUnique(config)) {
 | 
			
		||||
@@ -92,6 +94,7 @@ public class SysConfigController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:config:edit")
 | 
			
		||||
    @Log(title = "参数管理", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping
 | 
			
		||||
    public R<Void> edit(@Validated @RequestBody SysConfigBo config) {
 | 
			
		||||
        if (!configService.checkConfigKeyUnique(config)) {
 | 
			
		||||
@@ -106,6 +109,7 @@ public class SysConfigController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:config:edit")
 | 
			
		||||
    @Log(title = "参数管理", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping("/updateByKey")
 | 
			
		||||
    public R<Void> updateByKey(@RequestBody SysConfigBo config) {
 | 
			
		||||
        configService.updateConfig(config);
 | 
			
		||||
 
 | 
			
		||||
@@ -6,6 +6,7 @@ import lombok.RequiredArgsConstructor;
 | 
			
		||||
import org.dromara.common.core.constant.SystemConstants;
 | 
			
		||||
import org.dromara.common.core.domain.R;
 | 
			
		||||
import org.dromara.common.core.utils.StringUtils;
 | 
			
		||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.web.core.BaseController;
 | 
			
		||||
@@ -73,6 +74,7 @@ public class SysDeptController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:dept:add")
 | 
			
		||||
    @Log(title = "部门管理", businessType = BusinessType.INSERT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PostMapping
 | 
			
		||||
    public R<Void> add(@Validated @RequestBody SysDeptBo dept) {
 | 
			
		||||
        if (!deptService.checkDeptNameUnique(dept)) {
 | 
			
		||||
@@ -86,6 +88,7 @@ public class SysDeptController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:dept:edit")
 | 
			
		||||
    @Log(title = "部门管理", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping
 | 
			
		||||
    public R<Void> edit(@Validated @RequestBody SysDeptBo dept) {
 | 
			
		||||
        Long deptId = dept.getDeptId();
 | 
			
		||||
 
 | 
			
		||||
@@ -6,6 +6,7 @@ import jakarta.servlet.http.HttpServletResponse;
 | 
			
		||||
import lombok.RequiredArgsConstructor;
 | 
			
		||||
import org.dromara.common.core.domain.R;
 | 
			
		||||
import org.dromara.common.excel.utils.ExcelUtil;
 | 
			
		||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.PageQuery;
 | 
			
		||||
@@ -86,6 +87,7 @@ public class SysDictDataController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:dict:add")
 | 
			
		||||
    @Log(title = "字典数据", businessType = BusinessType.INSERT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PostMapping
 | 
			
		||||
    public R<Void> add(@Validated @RequestBody SysDictDataBo dict) {
 | 
			
		||||
        if (!dictDataService.checkDictDataUnique(dict)) {
 | 
			
		||||
@@ -100,6 +102,7 @@ public class SysDictDataController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:dict:edit")
 | 
			
		||||
    @Log(title = "字典数据", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping
 | 
			
		||||
    public R<Void> edit(@Validated @RequestBody SysDictDataBo dict) {
 | 
			
		||||
        if (!dictDataService.checkDictDataUnique(dict)) {
 | 
			
		||||
 
 | 
			
		||||
@@ -1,10 +1,12 @@
 | 
			
		||||
package org.dromara.system.controller.system;
 | 
			
		||||
 | 
			
		||||
import cn.dev33.satoken.annotation.SaCheckPermission;
 | 
			
		||||
import com.baomidou.lock.annotation.Lock4j;
 | 
			
		||||
import jakarta.servlet.http.HttpServletResponse;
 | 
			
		||||
import lombok.RequiredArgsConstructor;
 | 
			
		||||
import org.dromara.common.core.domain.R;
 | 
			
		||||
import org.dromara.common.excel.utils.ExcelUtil;
 | 
			
		||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.PageQuery;
 | 
			
		||||
@@ -68,6 +70,7 @@ public class SysDictTypeController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:dict:add")
 | 
			
		||||
    @Log(title = "字典类型", businessType = BusinessType.INSERT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PostMapping
 | 
			
		||||
    public R<Void> add(@Validated @RequestBody SysDictTypeBo dict) {
 | 
			
		||||
        if (!dictTypeService.checkDictTypeUnique(dict)) {
 | 
			
		||||
@@ -82,6 +85,7 @@ public class SysDictTypeController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:dict:edit")
 | 
			
		||||
    @Log(title = "字典类型", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping
 | 
			
		||||
    public R<Void> edit(@Validated @RequestBody SysDictTypeBo dict) {
 | 
			
		||||
        if (!dictTypeService.checkDictTypeUnique(dict)) {
 | 
			
		||||
@@ -109,6 +113,7 @@ public class SysDictTypeController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:dict:remove")
 | 
			
		||||
    @Log(title = "字典类型", businessType = BusinessType.CLEAN)
 | 
			
		||||
    @Lock4j
 | 
			
		||||
    @DeleteMapping("/refreshCache")
 | 
			
		||||
    public R<Void> refreshCache() {
 | 
			
		||||
        dictTypeService.resetDictCache();
 | 
			
		||||
 
 | 
			
		||||
@@ -9,6 +9,7 @@ import org.dromara.common.core.constant.SystemConstants;
 | 
			
		||||
import org.dromara.common.core.constant.TenantConstants;
 | 
			
		||||
import org.dromara.common.core.domain.R;
 | 
			
		||||
import org.dromara.common.core.utils.StringUtils;
 | 
			
		||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.satoken.utils.LoginHelper;
 | 
			
		||||
@@ -129,6 +130,7 @@ public class SysMenuController extends BaseController {
 | 
			
		||||
    @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY)
 | 
			
		||||
    @SaCheckPermission("system:menu:add")
 | 
			
		||||
    @Log(title = "菜单管理", businessType = BusinessType.INSERT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PostMapping
 | 
			
		||||
    public R<Void> add(@Validated @RequestBody SysMenuBo menu) {
 | 
			
		||||
        if (!menuService.checkMenuNameUnique(menu)) {
 | 
			
		||||
@@ -145,6 +147,7 @@ public class SysMenuController extends BaseController {
 | 
			
		||||
    @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY)
 | 
			
		||||
    @SaCheckPermission("system:menu:edit")
 | 
			
		||||
    @Log(title = "菜单管理", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping
 | 
			
		||||
    public R<Void> edit(@Validated @RequestBody SysMenuBo menu) {
 | 
			
		||||
        if (!menuService.checkMenuNameUnique(menu)) {
 | 
			
		||||
 
 | 
			
		||||
@@ -4,6 +4,7 @@ import cn.dev33.satoken.annotation.SaCheckPermission;
 | 
			
		||||
import lombok.RequiredArgsConstructor;
 | 
			
		||||
import org.dromara.common.core.domain.R;
 | 
			
		||||
import org.dromara.common.core.service.DictService;
 | 
			
		||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.PageQuery;
 | 
			
		||||
@@ -55,6 +56,7 @@ public class SysNoticeController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:notice:add")
 | 
			
		||||
    @Log(title = "通知公告", businessType = BusinessType.INSERT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PostMapping
 | 
			
		||||
    public R<Void> add(@Validated @RequestBody SysNoticeBo notice) {
 | 
			
		||||
        int rows = noticeService.insertNotice(notice);
 | 
			
		||||
@@ -71,6 +73,7 @@ public class SysNoticeController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:notice:edit")
 | 
			
		||||
    @Log(title = "通知公告", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping
 | 
			
		||||
    public R<Void> edit(@Validated @RequestBody SysNoticeBo notice) {
 | 
			
		||||
        return toAjax(noticeService.updateNotice(notice));
 | 
			
		||||
 
 | 
			
		||||
@@ -98,6 +98,7 @@ public class SysOssConfigController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:ossConfig:edit")
 | 
			
		||||
    @Log(title = "对象存储状态修改", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping("/changeStatus")
 | 
			
		||||
    public R<Void> changeStatus(@RequestBody SysOssConfigBo bo) {
 | 
			
		||||
        return toAjax(ossConfigService.updateOssConfigStatus(bo));
 | 
			
		||||
 
 | 
			
		||||
@@ -7,6 +7,7 @@ import lombok.RequiredArgsConstructor;
 | 
			
		||||
import org.dromara.common.core.constant.SystemConstants;
 | 
			
		||||
import org.dromara.common.core.domain.R;
 | 
			
		||||
import org.dromara.common.excel.utils.ExcelUtil;
 | 
			
		||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.PageQuery;
 | 
			
		||||
@@ -71,6 +72,7 @@ public class SysPostController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:post:add")
 | 
			
		||||
    @Log(title = "岗位管理", businessType = BusinessType.INSERT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PostMapping
 | 
			
		||||
    public R<Void> add(@Validated @RequestBody SysPostBo post) {
 | 
			
		||||
        if (!postService.checkPostNameUnique(post)) {
 | 
			
		||||
@@ -86,6 +88,7 @@ public class SysPostController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:post:edit")
 | 
			
		||||
    @Log(title = "岗位管理", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping
 | 
			
		||||
    public R<Void> edit(@Validated @RequestBody SysPostBo post) {
 | 
			
		||||
        if (!postService.checkPostNameUnique(post)) {
 | 
			
		||||
 
 | 
			
		||||
@@ -6,6 +6,7 @@ import jakarta.servlet.http.HttpServletResponse;
 | 
			
		||||
import lombok.RequiredArgsConstructor;
 | 
			
		||||
import org.dromara.common.core.domain.R;
 | 
			
		||||
import org.dromara.common.excel.utils.ExcelUtil;
 | 
			
		||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.PageQuery;
 | 
			
		||||
@@ -77,6 +78,7 @@ public class SysRoleController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:role:add")
 | 
			
		||||
    @Log(title = "角色管理", businessType = BusinessType.INSERT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PostMapping
 | 
			
		||||
    public R<Void> add(@Validated @RequestBody SysRoleBo role) {
 | 
			
		||||
        roleService.checkRoleAllowed(role);
 | 
			
		||||
@@ -94,6 +96,7 @@ public class SysRoleController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:role:edit")
 | 
			
		||||
    @Log(title = "角色管理", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping
 | 
			
		||||
    public R<Void> edit(@Validated @RequestBody SysRoleBo role) {
 | 
			
		||||
        roleService.checkRoleAllowed(role);
 | 
			
		||||
@@ -116,6 +119,7 @@ public class SysRoleController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:role:edit")
 | 
			
		||||
    @Log(title = "角色管理", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping("/dataScope")
 | 
			
		||||
    public R<Void> dataScope(@RequestBody SysRoleBo role) {
 | 
			
		||||
        roleService.checkRoleAllowed(role);
 | 
			
		||||
@@ -128,6 +132,7 @@ public class SysRoleController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:role:edit")
 | 
			
		||||
    @Log(title = "角色管理", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping("/changeStatus")
 | 
			
		||||
    public R<Void> changeStatus(@RequestBody SysRoleBo role) {
 | 
			
		||||
        roleService.checkRoleAllowed(role);
 | 
			
		||||
@@ -181,6 +186,7 @@ public class SysRoleController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:role:edit")
 | 
			
		||||
    @Log(title = "角色管理", businessType = BusinessType.GRANT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping("/authUser/cancel")
 | 
			
		||||
    public R<Void> cancelAuthUser(@RequestBody SysUserRole userRole) {
 | 
			
		||||
        return toAjax(roleService.deleteAuthUser(userRole));
 | 
			
		||||
@@ -194,6 +200,7 @@ public class SysRoleController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:role:edit")
 | 
			
		||||
    @Log(title = "角色管理", businessType = BusinessType.GRANT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping("/authUser/cancelAll")
 | 
			
		||||
    public R<Void> cancelAuthUserAll(Long roleId, Long[] userIds) {
 | 
			
		||||
        return toAjax(roleService.deleteAuthUsers(roleId, userIds));
 | 
			
		||||
@@ -207,6 +214,7 @@ public class SysRoleController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:role:edit")
 | 
			
		||||
    @Log(title = "角色管理", businessType = BusinessType.GRANT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping("/authUser/selectAll")
 | 
			
		||||
    public R<Void> selectAuthUserAll(Long roleId, Long[] userIds) {
 | 
			
		||||
        roleService.checkRoleDataScope(roleId);
 | 
			
		||||
 
 | 
			
		||||
@@ -118,6 +118,7 @@ public class SysTenantController extends BaseController {
 | 
			
		||||
    @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY)
 | 
			
		||||
    @SaCheckPermission("system:tenant:edit")
 | 
			
		||||
    @Log(title = "租户管理", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping("/changeStatus")
 | 
			
		||||
    public R<Void> changeStatus(@RequestBody SysTenantBo bo) {
 | 
			
		||||
        tenantService.checkTenantAllowed(bo.getTenantId());
 | 
			
		||||
@@ -170,6 +171,7 @@ public class SysTenantController extends BaseController {
 | 
			
		||||
    @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY)
 | 
			
		||||
    @SaCheckPermission("system:tenant:edit")
 | 
			
		||||
    @Log(title = "租户管理", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @Lock4j
 | 
			
		||||
    @GetMapping("/syncTenantPackage")
 | 
			
		||||
    public R<Void> syncTenantPackage(@NotBlank(message = "租户ID不能为空") String tenantId,
 | 
			
		||||
                                     @NotNull(message = "套餐ID不能为空") Long packageId) {
 | 
			
		||||
@@ -181,6 +183,7 @@ public class SysTenantController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY)
 | 
			
		||||
    @Log(title = "租户管理", businessType = BusinessType.INSERT)
 | 
			
		||||
    @Lock4j
 | 
			
		||||
    @GetMapping("/syncTenantDict")
 | 
			
		||||
    public R<Void> syncTenantDict() {
 | 
			
		||||
        if (!TenantHelper.isEnable()) {
 | 
			
		||||
 
 | 
			
		||||
@@ -121,6 +121,7 @@ public class SysTenantPackageController extends BaseController {
 | 
			
		||||
    @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY)
 | 
			
		||||
    @SaCheckPermission("system:tenantPackage:edit")
 | 
			
		||||
    @Log(title = "租户套餐", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping("/changeStatus")
 | 
			
		||||
    public R<Void> changeStatus(@RequestBody SysTenantPackageBo bo) {
 | 
			
		||||
        return toAjax(tenantPackageService.updatePackageStatus(bo));
 | 
			
		||||
 
 | 
			
		||||
@@ -16,6 +16,7 @@ import org.dromara.common.core.utils.StringUtils;
 | 
			
		||||
import org.dromara.common.encrypt.annotation.ApiEncrypt;
 | 
			
		||||
import org.dromara.common.excel.core.ExcelResult;
 | 
			
		||||
import org.dromara.common.excel.utils.ExcelUtil;
 | 
			
		||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
 | 
			
		||||
import org.dromara.common.log.annotation.Log;
 | 
			
		||||
import org.dromara.common.log.enums.BusinessType;
 | 
			
		||||
import org.dromara.common.mybatis.core.page.PageQuery;
 | 
			
		||||
@@ -154,6 +155,7 @@ public class SysUserController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:user:add")
 | 
			
		||||
    @Log(title = "用户管理", businessType = BusinessType.INSERT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PostMapping
 | 
			
		||||
    public R<Void> add(@Validated @RequestBody SysUserBo user) {
 | 
			
		||||
        deptService.checkDeptDataScope(user.getDeptId());
 | 
			
		||||
@@ -178,6 +180,7 @@ public class SysUserController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:user:edit")
 | 
			
		||||
    @Log(title = "用户管理", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping
 | 
			
		||||
    public R<Void> edit(@Validated @RequestBody SysUserBo user) {
 | 
			
		||||
        userService.checkUserAllowed(user.getUserId());
 | 
			
		||||
@@ -227,6 +230,7 @@ public class SysUserController extends BaseController {
 | 
			
		||||
    @ApiEncrypt
 | 
			
		||||
    @SaCheckPermission("system:user:resetPwd")
 | 
			
		||||
    @Log(title = "用户管理", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping("/resetPwd")
 | 
			
		||||
    public R<Void> resetPwd(@RequestBody SysUserBo user) {
 | 
			
		||||
        userService.checkUserAllowed(user.getUserId());
 | 
			
		||||
@@ -240,6 +244,7 @@ public class SysUserController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:user:edit")
 | 
			
		||||
    @Log(title = "用户管理", businessType = BusinessType.UPDATE)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping("/changeStatus")
 | 
			
		||||
    public R<Void> changeStatus(@RequestBody SysUserBo user) {
 | 
			
		||||
        userService.checkUserAllowed(user.getUserId());
 | 
			
		||||
@@ -272,6 +277,7 @@ public class SysUserController extends BaseController {
 | 
			
		||||
     */
 | 
			
		||||
    @SaCheckPermission("system:user:edit")
 | 
			
		||||
    @Log(title = "用户管理", businessType = BusinessType.GRANT)
 | 
			
		||||
    @RepeatSubmit()
 | 
			
		||||
    @PutMapping("/authRole")
 | 
			
		||||
    public R<Void> insertAuthRole(Long userId, Long[] roleIds) {
 | 
			
		||||
        userService.checkUserDataScope(userId);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user