Compare commits

..

No commits in common. "69a32a8ec5c881e9abe3279756db3d82c0b2337e" and "8e1c6be5a63530d48b3faecbcad1c15dea0a4bd3" have entirely different histories.

29 changed files with 73 additions and 73 deletions

View File

@ -1,5 +1,5 @@
FROM openjdk:24-ea-17-jdk-oraclelinux9 FROM openjdk:24-ea-17-jdk-oraclelinux9
LABEL maintainer="server" MAINTAINER server
#系统编码 #系统编码
ENV LANG=C.UTF-8 LC_ALL=C.UTF-8 ENV LANG=C.UTF-8 LC_ALL=C.UTF-8

View File

@ -31,21 +31,11 @@
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId> <artifactId>spring-boot-maven-plugin</artifactId>
</plugin> </plugin>
<!-- <plugin> -->
<!-- <groupId>org.apache.maven.plugins</groupId> -->
<!-- <artifactId>maven-surefire-plugin</artifactId> -->
<!-- <configuration> -->
<!-- <skip>true</skip> -->
<!-- </configuration> -->
<!-- </plugin> -->
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId> <artifactId>maven-surefire-plugin</artifactId>
<version>3.5.2</version>
<configuration> <configuration>
<argLine> <skip>true</skip>
-javaagent:"${settings.localRepository}/org/mockito/mockito-core/5.14.2/mockito-core-5.14.2.jar"
</argLine>
</configuration> </configuration>
</plugin> </plugin>
</plugins> </plugins>

View File

@ -24,7 +24,7 @@ public class IndexController {
} }
@Operation(summary = "生成验证码", description = "生成验证码") @Operation(summary = "生成验证码", description = "生成验证码")
@GetMapping("public/check-code") @GetMapping("public/checkCode")
public ResponseEntity<byte[]> checkCode() { public ResponseEntity<byte[]> checkCode() {
HttpHeaders headers = new HttpHeaders(); HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.IMAGE_JPEG); headers.setContentType(MediaType.IMAGE_JPEG);

View File

@ -22,7 +22,7 @@ public class ConfigurationController {
private ConfigurationService configurationService; private ConfigurationService configurationService;
@Operation(summary = "获取web配置文件", description = "读取web配置文件并返回给前端") @Operation(summary = "获取web配置文件", description = "读取web配置文件并返回给前端")
@GetMapping("public/web-config") @GetMapping("public/webConfig")
public WebConfiguration webConfig() { public WebConfiguration webConfig() {
return configurationService.webConfig(); return configurationService.webConfig();
} }

View File

@ -32,7 +32,7 @@ import java.util.Map;
@Tag(name = "邮件模板", description = "邮件模板相关接口") @Tag(name = "邮件模板", description = "邮件模板相关接口")
@PermissionTag(permission = "emailTemplate:*") @PermissionTag(permission = "emailTemplate:*")
@RestController @RestController
@RequestMapping("api/email-template") @RequestMapping("api/emailTemplate")
public class EmailTemplateController { public class EmailTemplateController {
@Resource @Resource

View File

@ -32,7 +32,7 @@ import java.util.Map;
@Tag(name = "邮箱用户配置", description = "邮箱用户发送配置相关接口") @Tag(name = "邮箱用户配置", description = "邮箱用户发送配置相关接口")
@PermissionTag(permission = "emailUsers:*") @PermissionTag(permission = "emailUsers:*")
@RestController @RestController
@RequestMapping("api/email-users") @RequestMapping("api/emailUsers")
public class EmailUsersController { public class EmailUsersController {
@Resource @Resource

View File

@ -27,7 +27,7 @@ import java.util.List;
@Tag(name = "多语言类型", description = "多语言类型相关接口") @Tag(name = "多语言类型", description = "多语言类型相关接口")
@PermissionTag(permission = "i18n:*") @PermissionTag(permission = "i18n:*")
@RestController @RestController
@RequestMapping("api/i18n-type") @RequestMapping("api/i18nType")
public class I18nTypeController { public class I18nTypeController {
@Resource @Resource

View File

@ -31,7 +31,7 @@ import java.util.List;
@Tag(name = "菜单图标", description = "菜单图标相关接口") @Tag(name = "菜单图标", description = "菜单图标相关接口")
@PermissionTag(permission = "menuIcon:*") @PermissionTag(permission = "menuIcon:*")
@RestController @RestController
@RequestMapping("api/menu-icon") @RequestMapping("api/menuIcon")
public class MenuIconController { public class MenuIconController {
@Resource @Resource

View File

@ -87,7 +87,7 @@ public class FilesController {
} }
@Operation(summary = "获取所有文件存储基础路径", description = "获取所有文件存储基础路径") @Operation(summary = "获取所有文件存储基础路径", description = "获取所有文件存储基础路径")
@GetMapping("private/file-storage-paths") @GetMapping("private/getAllFilesStoragePath")
public Result<List<String>> getAllFilesStoragePath() { public Result<List<String>> getAllFilesStoragePath() {
Map<String, String> typeMap = FileStorageConstant.typeMap; Map<String, String> typeMap = FileStorageConstant.typeMap;
List<String> list = typeMap.keySet().stream().toList(); List<String> list = typeMap.keySet().stream().toList();
@ -96,14 +96,14 @@ public class FilesController {
} }
@Operation(summary = "上传文件", description = "上传文件") @Operation(summary = "上传文件", description = "上传文件")
@PostMapping("private/file") @PostMapping("private/upload")
public Result<FileInfoVo> upload(FileUploadDto dto) { public Result<FileInfoVo> upload(FileUploadDto dto) {
FileInfoVo vo = filesService.upload(dto); FileInfoVo vo = filesService.upload(dto);
return Result.success(vo, ResultCodeEnum.SUCCESS_UPLOAD); return Result.success(vo, ResultCodeEnum.SUCCESS_UPLOAD);
} }
@Operation(summary = "上传图片文件", description = "上传图片文件") @Operation(summary = "上传图片文件", description = "上传图片文件")
@PostMapping("private/image") @PostMapping("private/uploadImage")
public Result<FileInfoVo> uploadImage(FileUploadDto dto) { public Result<FileInfoVo> uploadImage(FileUploadDto dto) {
FileInfoVo vo = filesService.uploadFileByThumbnail(dto); FileInfoVo vo = filesService.uploadFileByThumbnail(dto);
return Result.success(vo, ResultCodeEnum.SUCCESS_UPLOAD); return Result.success(vo, ResultCodeEnum.SUCCESS_UPLOAD);

View File

@ -29,7 +29,7 @@ import java.util.List;
@Tag(name = "文件分片信息表,仅在手动分片上传时使用", description = "文件分片信息表,仅在手动分片上传时使用相关接口") @Tag(name = "文件分片信息表,仅在手动分片上传时使用", description = "文件分片信息表,仅在手动分片上传时使用相关接口")
@PermissionTag(permission = "filesParDetail:*") @PermissionTag(permission = "filesParDetail:*")
@RestController @RestController
@RequestMapping("/api/files-par-detail") @RequestMapping("/api/filesParDetail")
public class FilesParDetailController { public class FilesParDetailController {
@Resource @Resource

View File

@ -28,7 +28,7 @@ import java.util.List;
@Tag(name = "任务调度执行日志", description = "调度任务执行日志相关接口") @Tag(name = "任务调度执行日志", description = "调度任务执行日志相关接口")
@PermissionTag(permission = "scheduleExecuteLog:*") @PermissionTag(permission = "scheduleExecuteLog:*")
@RestController @RestController
@RequestMapping("api/schedule-execute-log") @RequestMapping("api/scheduleExecuteLog")
public class ScheduleExecuteLogController { public class ScheduleExecuteLogController {
@Resource @Resource

View File

@ -29,7 +29,7 @@ import java.util.List;
@Tag(name = "用户登录日志", description = "用户登录日志相关接口") @Tag(name = "用户登录日志", description = "用户登录日志相关接口")
@PermissionTag(permission = "userLoginLog:*") @PermissionTag(permission = "userLoginLog:*")
@RestController @RestController
@RequestMapping("api/user-login-log") @RequestMapping("api/userLoginLog")
public class UserLoginLogController { public class UserLoginLogController {
@Resource @Resource

View File

@ -75,15 +75,15 @@ public class MessageController {
} }
@Operation(summary = "根据消息id查询消息详情", description = "根据消息id查询消息详情") @Operation(summary = "根据消息id查询消息详情", description = "根据消息id查询消息详情")
@GetMapping("private/message/{id}") @GetMapping("private/getMessageDetailById")
public Result<MessageDetailVo> getMessageDetailById(@PathVariable Long id) { public Result<MessageDetailVo> getMessageDetailById(Long id) {
MessageDetailVo vo = messageService.getMessageDetailById(id); MessageDetailVo vo = messageService.getMessageDetailById(id);
return Result.success(vo); return Result.success(vo);
} }
@Operation(summary = "根据消息id获取接收人信息", description = "根据消息id获取接收人信息") @Operation(summary = "根据消息id获取接收人信息", description = "根据消息id获取接收人信息")
@GetMapping("private/messages/{message-id}/recipients") @GetMapping("private/getReceivedUserinfoByMessageId")
public Result<List<MessageReceivedWithUserVo>> getReceivedUserinfoByMessageId(Long messageId, @PathVariable("message-id") String parameter) { public Result<List<MessageReceivedWithUserVo>> getReceivedUserinfoByMessageId(Long messageId) {
List<MessageReceivedWithUserVo> voList = messageService.getReceivedUserinfoByMessageId(messageId); List<MessageReceivedWithUserVo> voList = messageService.getReceivedUserinfoByMessageId(messageId);
return Result.success(voList); return Result.success(voList);
} }

View File

@ -32,7 +32,7 @@ import java.util.List;
@Tag(name = "消息接收(用户消息)", description = "消息接收(用户消息)相关接口") @Tag(name = "消息接收(用户消息)", description = "消息接收(用户消息)相关接口")
@PermissionTag(permission = "messageReceived:*") @PermissionTag(permission = "messageReceived:*")
@RestController @RestController
@RequestMapping("/api/message-received") @RequestMapping("/api/messageReceived")
public class MessageReceivedController { public class MessageReceivedController {
@Resource @Resource
@ -82,14 +82,14 @@ public class MessageReceivedController {
} }
@Operation(summary = "用户将消息标为已读", description = "用户将消息标为已读") @Operation(summary = "用户将消息标为已读", description = "用户将消息标为已读")
@PutMapping("private/user/messages/read-status") @PutMapping("private/markAsRead")
public Result<String> markAsReadByUser(@Valid @RequestBody List<Long> ids) { public Result<String> markAsReadByUser(@Valid @RequestBody List<Long> ids) {
messageReceivedService.markAsReadByUser(ids); messageReceivedService.markAsReadByUser(ids);
return Result.success(ResultCodeEnum.UPDATE_SUCCESS); return Result.success(ResultCodeEnum.UPDATE_SUCCESS);
} }
@Operation(summary = "用户删除消息", description = "用户删除消息") @Operation(summary = "用户删除消息", description = "用户删除消息")
@DeleteMapping("private/user/messages") @DeleteMapping("private/deleteMessage")
public Result<String> deleteMessageByUser(@RequestBody List<Long> ids) { public Result<String> deleteMessageByUser(@RequestBody List<Long> ids) {
messageReceivedService.deleteMessageByUser(ids); messageReceivedService.deleteMessageByUser(ids);
return Result.success(ResultCodeEnum.DELETE_SUCCESS); return Result.success(ResultCodeEnum.DELETE_SUCCESS);

View File

@ -76,7 +76,7 @@ public class MessageTypeController {
} }
@Operation(summary = "所有消息列表", description = "获取所有消息列表") @Operation(summary = "所有消息列表", description = "获取所有消息列表")
@GetMapping("private/messages") @GetMapping("private/getMessageList")
public Result<List<MessageTypeVo>> getMessageList() { public Result<List<MessageTypeVo>> getMessageList() {
List<MessageTypeVo> voList = messageTypeService.getMessageList(); List<MessageTypeVo> voList = messageTypeService.getMessageList();
return Result.success(voList); return Result.success(voList);

View File

@ -31,7 +31,7 @@ import java.util.List;
@Tag(name = "任务调度分组", description = "任务调度分组相关接口") @Tag(name = "任务调度分组", description = "任务调度分组相关接口")
@PermissionTag(permission = "schedulersGroup:*") @PermissionTag(permission = "schedulersGroup:*")
@RestController @RestController
@RequestMapping("api/schedulers-group") @RequestMapping("api/schedulersGroup")
public class SchedulersGroupController { public class SchedulersGroupController {
@Resource @Resource
@ -77,7 +77,7 @@ public class SchedulersGroupController {
@Operation(summary = "获取所有任务调度分组", description = "获取所有任务调度分组") @Operation(summary = "获取所有任务调度分组", description = "获取所有任务调度分组")
@PermissionTag(permission = "schedulersGroup:query") @PermissionTag(permission = "schedulersGroup:query")
@GetMapping("scheduler-groups") @GetMapping("getSchedulersGroupList")
public Result<List<SchedulersGroupVo>> getSchedulersGroupList() { public Result<List<SchedulersGroupVo>> getSchedulersGroupList() {
List<SchedulersGroupVo> voList = schedulersGroupService.getSchedulersGroupList(); List<SchedulersGroupVo> voList = schedulersGroupService.getSchedulersGroupList();
return Result.success(voList); return Result.success(voList);

View File

@ -76,7 +76,7 @@ public class DeptController {
} }
@Operation(summary = "获取所有部门", description = "获取所有部门") @Operation(summary = "获取所有部门", description = "获取所有部门")
@GetMapping("private/departments") @GetMapping("private/getDeptList")
public Result<List<DeptVo>> getDeptPage() { public Result<List<DeptVo>> getDeptPage() {
List<DeptVo> voList = deptService.getDeptPage(); List<DeptVo> voList = deptService.getDeptPage();
return Result.success(voList); return Result.success(voList);

View File

@ -96,14 +96,14 @@ public class PermissionController {
} }
@Operation(summary = "获取所有权限", description = "获取所有权限") @Operation(summary = "获取所有权限", description = "获取所有权限")
@GetMapping("private/permissions") @GetMapping("private/getPermissionList")
public Result<List<PermissionVo>> getPermissionList() { public Result<List<PermissionVo>> getPermissionList() {
List<PermissionVo> voList = permissionService.getPermissionList(); List<PermissionVo> voList = permissionService.getPermissionList();
return Result.success(voList); return Result.success(voList);
} }
@Operation(summary = "获取系统API信息列表", description = "系统接口API信息列表") @Operation(summary = "获取系统API信息列表", description = "系统接口API信息列表")
@GetMapping("private/system/apis") @GetMapping("private/getSystemApiInfoList")
public Result<List<ScannerControllerInfoVo>> getSystemApiInfoList() { public Result<List<ScannerControllerInfoVo>> getSystemApiInfoList() {
List<ScannerControllerInfoVo> list = ControllerApiPermissionScanner.scanControllerInfo(); List<ScannerControllerInfoVo> list = ControllerApiPermissionScanner.scanControllerInfo();
return Result.success(list); return Result.success(list);
@ -111,7 +111,7 @@ public class PermissionController {
@Operation(summary = "批量修改权限父级", description = "批量修改权限父级") @Operation(summary = "批量修改权限父级", description = "批量修改权限父级")
@PermissionTag(permission = "permission::update") @PermissionTag(permission = "permission::update")
@PatchMapping("update/permissions/parent") @PatchMapping("update/permissionListByParentId")
public Result<String> updatePermissionListByParentId(@RequestBody @Valid PermissionUpdateBatchByParentIdDto dto) { public Result<String> updatePermissionListByParentId(@RequestBody @Valid PermissionUpdateBatchByParentIdDto dto) {
permissionService.updatePermissionListByParentId(dto); permissionService.updatePermissionListByParentId(dto);
return Result.success(ResultCodeEnum.UPDATE_SUCCESS); return Result.success(ResultCodeEnum.UPDATE_SUCCESS);
@ -119,7 +119,7 @@ public class PermissionController {
@Operation(summary = "批量修改权", description = "批量修改权") @Operation(summary = "批量修改权", description = "批量修改权")
@PermissionTag(permission = "permission::update") @PermissionTag(permission = "permission::update")
@PatchMapping("update/permissions/batch") @PatchMapping("update/permissionBatch")
public Result<String> updatePermissionBatch(@RequestBody List<PermissionUpdateDto> list) { public Result<String> updatePermissionBatch(@RequestBody List<PermissionUpdateDto> list) {
permissionService.updatePermissionBatch(list); permissionService.updatePermissionBatch(list);
return Result.success(ResultCodeEnum.UPDATE_SUCCESS); return Result.success(ResultCodeEnum.UPDATE_SUCCESS);

View File

@ -30,8 +30,8 @@ public class RolePermissionController {
private RolePermissionService rolePermissionService; private RolePermissionService rolePermissionService;
@Operation(summary = "根据角色id获取权限内容", description = "根据角色id获取权限内容") @Operation(summary = "根据角色id获取权限内容", description = "根据角色id获取权限内容")
@GetMapping("private/permissions/{id}") @GetMapping("private/getPermissionListByRoleId")
public Result<List<String>> getPermissionListByRoleId(@PathVariable Long id) { public Result<List<String>> getPermissionListByRoleId(Long id) {
List<String> voList = rolePermissionService.getPermissionListByRoleId(id); List<String> voList = rolePermissionService.getPermissionListByRoleId(id);
return Result.success(voList); return Result.success(voList);
} }

View File

@ -35,7 +35,7 @@ public class RouterController {
@Operation(summary = "获取用户菜单", description = "获取用户菜单") @Operation(summary = "获取用户菜单", description = "获取用户菜单")
@PermissionTag(permission = "router:query") @PermissionTag(permission = "router:query")
@GetMapping("private/router-async") @GetMapping("private/routerAsync")
public Result<List<WebUserRouterVo>> routerAsync() { public Result<List<WebUserRouterVo>> routerAsync() {
List<WebUserRouterVo> voList = routerService.routerAsync(); List<WebUserRouterVo> voList = routerService.routerAsync();
return Result.success(voList); return Result.success(voList);
@ -43,7 +43,7 @@ public class RouterController {
@Operation(summary = "查询管理路由菜单", description = "查询管理菜单列表") @Operation(summary = "查询管理路由菜单", description = "查询管理菜单列表")
@PermissionTag(permission = "router:query") @PermissionTag(permission = "router:query")
@GetMapping("routers") @GetMapping("routerList")
public Result<List<RouterManageVo>> routerList() { public Result<List<RouterManageVo>> routerList() {
List<RouterManageVo> voPageResult = routerService.routerList(); List<RouterManageVo> voPageResult = routerService.routerList();
return Result.success(voPageResult); return Result.success(voPageResult);

View File

@ -21,22 +21,22 @@ import java.util.List;
@Tag(name = "路由菜单和角色", description = "路由和角色相关接口") @Tag(name = "路由菜单和角色", description = "路由和角色相关接口")
@PermissionTag(permission = "routerRole:*") @PermissionTag(permission = "routerRole:*")
@RestController @RestController
@RequestMapping("api/router-role") @RequestMapping("api/routerRole")
public class RouterRoleController { public class RouterRoleController {
@Resource @Resource
private RouterRoleService routerRoleService; private RouterRoleService routerRoleService;
@Operation(summary = "根据菜单id获取所有角色", description = "根据菜单id获取所有角色") @Operation(summary = "根据菜单id获取所有角色", description = "根据菜单id获取所有角色")
@GetMapping("private/roles/{routerId}") @GetMapping("private/getRoleListByRouterId")
public Result<List<String>> getRoleListByRouterId(@PathVariable Long routerId) { public Result<List<String>> getRoleListByRouterId(Long routerId) {
List<String> roleListByRouterId = routerRoleService.getRoleListByRouterId(routerId); List<String> roleListByRouterId = routerRoleService.getRoleListByRouterId(routerId);
return Result.success(roleListByRouterId); return Result.success(roleListByRouterId);
} }
@Operation(summary = "清除选中菜单所有角色", description = "清除选中菜单所有角色") @Operation(summary = "清除选中菜单所有角色", description = "清除选中菜单所有角色")
@PermissionTag(permission = "routerRole:delete") @PermissionTag(permission = "routerRole:delete")
@DeleteMapping("/batch") @DeleteMapping("clearRouterRole")
public Result<String> clearRouterRole(@RequestBody List<Long> routerIds) { public Result<String> clearRouterRole(@RequestBody List<Long> routerIds) {
routerRoleService.clearRouterRole(routerIds); routerRoleService.clearRouterRole(routerIds);
return Result.success(); return Result.success();

View File

@ -74,14 +74,14 @@ public class UserController {
} }
@Operation(summary = "根据用户id查询用户", description = "根据用户ID获取用户信息不包含Redis中的信息") @Operation(summary = "根据用户id查询用户", description = "根据用户ID获取用户信息不包含Redis中的信息")
@GetMapping("private/users/{id}") @GetMapping("private/getUserinfoById")
public Result<UserVo> getUserinfoById(@PathVariable Long id) { public Result<UserVo> getUserinfoById(Long id) {
UserVo vo = userService.getUserinfoById(id); UserVo vo = userService.getUserinfoById(id);
return Result.success(vo); return Result.success(vo);
} }
@Operation(summary = "根据关键字查询用户", description = "根据用户名查询用户列表") @Operation(summary = "根据关键字查询用户", description = "根据用户名查询用户列表")
@GetMapping("private/users/search") @GetMapping("private/getUserListByKeyword")
public Result<List<UserVo>> getUserListByKeyword(String keyword) { public Result<List<UserVo>> getUserListByKeyword(String keyword) {
List<UserVo> voList = userService.getUserListByKeyword(keyword); List<UserVo> voList = userService.getUserListByKeyword(keyword);
return Result.success(voList); return Result.success(voList);
@ -89,15 +89,15 @@ public class UserController {
@Operation(summary = "强制退出用户", description = "强制退出") @Operation(summary = "强制退出用户", description = "强制退出")
@PermissionTag(permission = "user:update") @PermissionTag(permission = "user:update")
@PutMapping("{id}/force-logout") @PutMapping("forcedOffline")
public Result<String> forcedOfflineByAdmin(@PathVariable Long id) { public Result<String> forcedOfflineByAdmin(@RequestBody Long id) {
userService.forcedOfflineByAdmin(id); userService.forcedOfflineByAdmin(id);
return Result.success(); return Result.success();
} }
@Operation(summary = "已登录用户", description = "查询缓存中已登录用户") @Operation(summary = "已登录用户", description = "查询缓存中已登录用户")
@PermissionTag(permission = "user:query") @PermissionTag(permission = "user:query")
@GetMapping("/users/logged-in/{page}/{limit}") @GetMapping("getCacheUserPage/{page}/{limit}")
public Result<PageResult<UserVo>> getCacheUserPage( public Result<PageResult<UserVo>> getCacheUserPage(
@Parameter(name = "page", description = "当前页", required = true) @Parameter(name = "page", description = "当前页", required = true)
@PathVariable("page") Integer page, @PathVariable("page") Integer page,

View File

@ -33,7 +33,7 @@ public class UserLoginController {
} }
@Operation(summary = "普通用户登录发送邮件验证码", description = "登录发送邮件验证码") @Operation(summary = "普通用户登录发送邮件验证码", description = "登录发送邮件验证码")
@PostMapping("public/email-code") @PostMapping("public/sendLoginEmail")
public Result<String> sendLoginEmail(String email) { public Result<String> sendLoginEmail(String email) {
if (!StringUtils.hasText(email)) throw new AuthCustomerException(ResultCodeEnum.REQUEST_IS_EMPTY); if (!StringUtils.hasText(email)) throw new AuthCustomerException(ResultCodeEnum.REQUEST_IS_EMPTY);
@ -42,7 +42,7 @@ public class UserLoginController {
} }
@Operation(summary = "普通用户登录刷新token", description = "刷新用户token") @Operation(summary = "普通用户登录刷新token", description = "刷新用户token")
@PostMapping("private/refresh-token") @PostMapping("private/refreshToken")
public Result<RefreshTokenVo> refreshToken(@Valid @RequestBody RefreshTokenDto dto) { public Result<RefreshTokenVo> refreshToken(@Valid @RequestBody RefreshTokenDto dto) {
RefreshTokenVo vo = userLoginService.refreshToken(dto); RefreshTokenVo vo = userLoginService.refreshToken(dto);
return Result.success(vo); return Result.success(vo);

View File

@ -22,15 +22,15 @@ import java.util.List;
@Tag(name = "用户和角色", description = "用户和角色相关接口") @Tag(name = "用户和角色", description = "用户和角色相关接口")
@PermissionTag(permission = "userRole:*") @PermissionTag(permission = "userRole:*")
@RestController @RestController
@RequestMapping("api/user-role") @RequestMapping("api/userRole")
public class UserRoleController { public class UserRoleController {
@Resource @Resource
private UserRoleService userRoleService; private UserRoleService userRoleService;
@Operation(summary = "根据用户id获取角色列", description = "根据用户id获取角色列") @Operation(summary = "根据用户id获取角色列", description = "根据用户id获取角色列")
@GetMapping("private/roles/{userId}") @GetMapping("private/getRoleListByUserId")
public Result<List<String>> getRoleListByUserId(@PathVariable Long userId) { public Result<List<String>> getRoleListByUserId(Long userId) {
List<String> roleVoList = userRoleService.getRoleListByUserId(userId); List<String> roleVoList = userRoleService.getRoleListByUserId(userId);
return Result.success(roleVoList); return Result.success(roleVoList);
} }

View File

@ -38,7 +38,6 @@ dromara:
# 访问路径使用本地在SpringSecurity中要配置权限如果是和我一样就不用修改了如果不是api开头上线需要配置nginx # 访问路径使用本地在SpringSecurity中要配置权限如果是和我一样就不用修改了如果不是api开头上线需要配置nginx
path-patterns: /api/local-file/** path-patterns: /api/local-file/**
storage-path: D:/Temp # 存储路径 storage-path: D:/Temp # 存储路径
# storage-path: ~/bunny-admin/temp # 存储路径
base-path: "" # 基础路径 base-path: "" # 基础路径
minio: minio:
endpointUrl: "http://192.168.3.137:9000" # 连接地址 endpointUrl: "http://192.168.3.137:9000" # 连接地址

View File

@ -55,3 +55,11 @@ bunny:
port: 6379 port: 6379
database: 0 database: 0
password: "123456" password: "123456"
minio:
endpointUrl: "http://192.168.3.98:9000"
accessKey: bunny
secretKey: "02120212"
bucket-name: auth-admin
backPath: "/www/root/backup"

View File

@ -260,14 +260,23 @@ public class ControllerApiPermissionScanner extends AbstractAnnotationScanner {
return false; return false;
} }
// 登录路径特殊处理
if (path.equals("login")) {
return true;
}
// 检查用户认证路径 // 检查用户认证路径
for (String userAuth : WebSecurityConfig.userAuths) { for (String userAuth : WebSecurityConfig.userAuths) {
if (path.contains(userAuth)) return true; if (path.contains(userAuth)) {
return true;
}
} }
// 检查不需要权限的注解路径 // 检查不需要权限的注解路径
for (String annotation : WebSecurityConfig.annotations) { for (String annotation : WebSecurityConfig.annotations) {
if (PATH_MATCHER.match(annotation, path) || PATH_MATCHER.match(annotation, "/" + path)) return true; if (PATH_MATCHER.match(annotation, path) || PATH_MATCHER.match(annotation, "/" + path)) {
return true;
}
} }
return false; return false;

View File

@ -52,6 +52,7 @@ public class PermissionCheckService {
} }
// 根据角色列表查询权限信息 // 根据角色列表查询权限信息
// List<Permission> permissionList = permissionMapper.selectListByUserId(userId);
List<Permission> permissionList = authorizationCacheService.getPermissionsByUser(userId, username); List<Permission> permissionList = authorizationCacheService.getPermissionsByUser(userId, username);
// 判断是否与请求路径匹配 // 判断是否与请求路径匹配
@ -60,7 +61,9 @@ public class PermissionCheckService {
.filter(permission -> { .filter(permission -> {
String method = permission.getRequestMethod(); String method = permission.getRequestMethod();
if (StringUtils.hasText(method)) { if (StringUtils.hasText(method)) {
return method.equalsIgnoreCase(requestMethod) || requestURI.contains("*");
return method.equalsIgnoreCase(requestMethod)
|| requestURI.contains("*");
} }
return false; return false;
}) })

View File

@ -108,14 +108,6 @@ public class FilesServiceImpl extends ServiceImpl<FilesMapper, Files> implements
throw new AuthCustomerException(ResultCodeEnum.FILE_NOT_EXIST); throw new AuthCustomerException(ResultCodeEnum.FILE_NOT_EXIST);
} }
// 更新数据
dto.setFilepath(files.getFilepath());
BeanUtils.copyProperties(dto, files);
updateById(files);
// 文件存在上傳文件并更新
if (file == null) return;
// 删除原来文件 // 删除原来文件
boolean delete = fileStorageService.delete(files.getUrl()); boolean delete = fileStorageService.delete(files.getUrl());
if (!delete) { if (!delete) {
@ -131,7 +123,6 @@ public class FilesServiceImpl extends ServiceImpl<FilesMapper, Files> implements
// 如果有缩略图的话 // 如果有缩略图的话
.setSaveThFilename(files.getThFilename()) .setSaveThFilename(files.getThFilename())
.upload(); .upload();
} }
/** /**