This commit is contained in:
s2042968 2025-02-14 17:11:24 +08:00
commit 893fbb5597
6 changed files with 55 additions and 29 deletions

View File

@ -120,6 +120,7 @@ public class LoginInterceptor implements HandlerInterceptor {
.remoteAddr(request.getRemoteAddr())
.accessSuccess(true)
.createTime(new Date())
.operationModule(userOperation.modelName().key)
.build();
ElectromagneticResult<?> result = UserThreadLocal.getResult();

View File

@ -3,6 +3,7 @@ package com.electromagnetic.industry.software.manage.controller;
import com.electromagnetic.industry.software.common.annotations.RequiredPermission;
import com.electromagnetic.industry.software.common.annotations.UserOperation;
import com.electromagnetic.industry.software.common.enums.FilePermission;
import com.electromagnetic.industry.software.common.enums.UserOperationModuleEnum;
import com.electromagnetic.industry.software.common.resp.ElectromagneticResult;
import com.electromagnetic.industry.software.manage.pojo.req.CreateFolderDTO;
import com.electromagnetic.industry.software.manage.pojo.req.FileChunkDTO;
@ -25,33 +26,33 @@ public class EdFileInfoController {
@Resource
private EdFileInfoService edFileInfoService;
@UserOperation(value = "查看了工程树")
@UserOperation(value = "查看了工程树", modelName = UserOperationModuleEnum.DATABASE)
@RequestMapping("tree")
public ElectromagneticResult<?> tree() {
return edFileInfoService.tree();
}
@UserOperation(value = "创建了文件夹")
@UserOperation(value = "创建了文件夹", modelName = UserOperationModuleEnum.DATABASE)
@RequestMapping("createFolder")
public ElectromagneticResult<?> createFolder(@RequestBody CreateFolderDTO createFolderDTO) {
return edFileInfoService.createFolder(createFolderDTO);
}
@UserOperation(value = "作废了文件夹")
@UserOperation(value = "作废了文件夹", modelName = UserOperationModuleEnum.DATABASE)
@RequiredPermission(value = FilePermission.DELETE)
@RequestMapping("delete")
public ElectromagneticResult<?> delete(@RequestParam String id) {
return edFileInfoService.delete(id);
}
@UserOperation(value = "查询了文件")
@UserOperation(value = "查询了文件", modelName = UserOperationModuleEnum.DATABASE)
@RequiredPermission(value = FilePermission.VIEW)
@RequestMapping("info")
public ElectromagneticResult<?> info(@RequestBody FileInfoQueryDTO fileInfoQueryDTO) {
return edFileInfoService.queryEdFileInfo(fileInfoQueryDTO);
}
@UserOperation(value = "上传了文件")
@UserOperation(value = "上传了文件", modelName = UserOperationModuleEnum.DATABASE)
@RequiredPermission(value = FilePermission.UPLOAD)
@RequestMapping("upload")
public ElectromagneticResult<?> upload(@RequestParam("parentId") String parentId,
@ -60,21 +61,21 @@ public class EdFileInfoController {
return edFileInfoService.upload(parentId, file, strategy);
}
@UserOperation(value = "下载了文件")
@UserOperation(value = "下载了文件", modelName = UserOperationModuleEnum.DATABASE)
@RequiredPermission(value = FilePermission.DOWNLOAD)
@RequestMapping("download")
public ResponseEntity<InputStreamResource> download(@RequestParam String id, HttpServletResponse response) {
return edFileInfoService.download(id, response);
}
@UserOperation(value = "更新了文件信息")
@UserOperation(value = "更新了文件信息", modelName = UserOperationModuleEnum.DATABASE)
@RequiredPermission(value = FilePermission.EDIT)
@RequestMapping("updateFileInfo")
public ElectromagneticResult<?> updateFileInfo(@RequestBody UpdateFileInfoDTO updateFileInfoDTO) {
return edFileInfoService.updateFileInfo(updateFileInfoDTO);
}
@UserOperation(value = "移动了文件")
@UserOperation(value = "移动了文件", modelName = UserOperationModuleEnum.DATABASE)
@RequiredPermission(value = FilePermission.MOVE)
@RequestMapping("moveFile")
public ElectromagneticResult<?> moveFile(@RequestParam("id") String id,
@ -83,7 +84,7 @@ public class EdFileInfoController {
return edFileInfoService.moveFile(id, targetFolderId, strategy);
}
@UserOperation(value = "复制了文件")
@UserOperation(value = "复制了文件", modelName = UserOperationModuleEnum.DATABASE)
@RequiredPermission(value = FilePermission.MOVE)
@RequestMapping("copyFile")
public ElectromagneticResult<?> copyFile(@RequestParam("id") String id,
@ -92,27 +93,27 @@ public class EdFileInfoController {
return edFileInfoService.copyFile(id, targetFolderId, strategy);
}
@UserOperation(value = "查看了文件历史版本信息")
@UserOperation(value = "查看了文件历史版本信息", modelName = UserOperationModuleEnum.DATABASE)
@RequiredPermission(value = FilePermission.VIEW)
@RequestMapping("versionView")
public ElectromagneticResult<?> versionView(@RequestParam String fileId) {
return edFileInfoService.versionView(fileId);
}
@UserOperation(value = "回退了版本")
@UserOperation(value = "回退了版本", modelName = UserOperationModuleEnum.DATABASE)
@RequiredPermission(value = FilePermission.EDIT)
@RequestMapping("versionBack")
public ElectromagneticResult<?> versionBack(@RequestParam String fileId, @RequestParam int targetVersion) {
return edFileInfoService.versionBack(fileId, targetVersion);
}
@UserOperation(value = "导出了数据库")
@UserOperation(value = "导出了数据库", modelName = UserOperationModuleEnum.DATABASE)
@RequestMapping("batchExport")
public ResponseEntity<InputStreamResource> batchExport(@RequestParam String fileIds, HttpServletResponse response) throws IOException {
return edFileInfoService.batchExport(fileIds, response);
}
@UserOperation(value = "批量了数据库")
@UserOperation(value = "批量了数据库", modelName = UserOperationModuleEnum.DATABASE)
@RequestMapping(value = "/mergeChunks", method = RequestMethod.GET)
public ElectromagneticResult<?> mergeChunks(@RequestParam String identifier,
@RequestParam String fileName,
@ -120,7 +121,7 @@ public class EdFileInfoController {
return edFileInfoService.mergeChunks(identifier, fileName, totalChunks);
}
@UserOperation(value = "批量了数据库")
@UserOperation(value = "批量了数据库", modelName = UserOperationModuleEnum.DATABASE)
@RequestMapping(value = "/batchImport", method = RequestMethod.POST)
public ElectromagneticResult<?> batchImport(FileChunkDTO fileChunkDTO) {
return edFileInfoService.batchImport(fileChunkDTO);
@ -132,27 +133,27 @@ public class EdFileInfoController {
return edFileInfoService.checkChunkExist(fileChunkDTO);
}
@UserOperation(value = "查询了发布管理")
@UserOperation(value = "查询了发布管理", modelName = UserOperationModuleEnum.DATABASE)
@RequestMapping(value = "/uploadRecord", method = RequestMethod.GET)
public ElectromagneticResult<?> uploadRecord(@RequestParam int pageNum, @RequestParam int pageSize) {
return edFileInfoService.uploadRecord(pageNum, pageSize);
}
@UserOperation(value = "查询了文件详细信息")
@UserOperation(value = "查询了文件详细信息", modelName = UserOperationModuleEnum.DATABASE)
@RequiredPermission(value = FilePermission.VIEW)
@RequestMapping(value = "/fileDetail", method = RequestMethod.GET)
public ElectromagneticResult<?> detail(@RequestParam String id) {
return edFileInfoService.detail(id);
}
@UserOperation(value = "查询了子文件集")
@UserOperation(value = "查询了子文件集", modelName = UserOperationModuleEnum.DATABASE)
@RequiredPermission(value = FilePermission.VIEW)
@RequestMapping(value = "/queryChildFolder", method = RequestMethod.GET)
public ElectromagneticResult<?> queryChildFolder(@RequestParam String parentId) {
return edFileInfoService.queryChildFolder(parentId);
}
@UserOperation(value = "预览了文件")
@UserOperation(value = "预览了文件", modelName = UserOperationModuleEnum.DATABASE)
@RequiredPermission(value = FilePermission.DOWNLOAD)
@RequestMapping(value = "preview", method = RequestMethod.GET)
public ResponseEntity<InputStreamResource> preview(@RequestParam String id, HttpServletResponse response) {

View File

@ -1,6 +1,7 @@
package com.electromagnetic.industry.software.manage.controller;
import com.electromagnetic.industry.software.common.annotations.UserOperation;
import com.electromagnetic.industry.software.common.enums.UserOperationModuleEnum;
import com.electromagnetic.industry.software.common.resp.ElectromagneticResult;
import com.electromagnetic.industry.software.manage.pojo.req.FolderResortDTO;
import com.electromagnetic.industry.software.manage.pojo.req.QueryPublishStatus;
@ -21,67 +22,67 @@ public class ProjectController {
@Resource
private EdPrjService edPrjService;
@UserOperation(value = "创建了工程")
@UserOperation(value = "创建了工程", modelName = UserOperationModuleEnum.PRJ_SETTING)
@RequestMapping("create")
public ElectromagneticResult<?> create(@RequestParam String prjName) {
return edPrjService.createNewPrj(prjName);
}
@UserOperation(value = "复制了文件")
@UserOperation(value = "复制了文件", modelName = UserOperationModuleEnum.PRJ_SETTING)
@RequestMapping("废除了工程")
public ElectromagneticResult<?> delete(@RequestParam String prjId) {
return edPrjService.delete(prjId);
}
@UserOperation(value = "修改了工程名")
@UserOperation(value = "修改了工程名", modelName = UserOperationModuleEnum.PRJ_SETTING)
@RequestMapping("modify")
public ElectromagneticResult<?> modifyPrjName(@RequestParam String newPrjName, @RequestParam String prjId) {
return edPrjService.modifyPrjName(prjId, newPrjName);
}
@UserOperation(value = "查询了所有工程")
@UserOperation(value = "查询了所有工程", modelName = UserOperationModuleEnum.PRJ_SETTING)
@RequestMapping("queryAll")
public ElectromagneticResult<?> queryAll() {
return edPrjService.queryAllPrjInfo();
}
@UserOperation(value = "添加了子集")
@UserOperation(value = "添加了子集", modelName = UserOperationModuleEnum.PRJ_SETTING)
@RequestMapping("addFolder")
public ElectromagneticResult<?> addFolder(@RequestParam String folderName, @RequestParam String parentId) {
return edPrjService.addFolder(parentId, folderName);
}
@UserOperation(value = "修改了子集名称")
@UserOperation(value = "修改了子集名称", modelName = UserOperationModuleEnum.PRJ_SETTING)
@RequestMapping("modifyFolder")
public ElectromagneticResult<?> modifyFolder(@RequestParam String newFolderName, @RequestParam String id) {
return edPrjService.modifyFolder(id, newFolderName);
}
@UserOperation(value = "废除了子集")
@UserOperation(value = "废除了子集", modelName = UserOperationModuleEnum.PRJ_SETTING)
@RequestMapping("deleteFolder")
public ElectromagneticResult<?> deleteFolder(@RequestParam String id) {
return edPrjService.deleteFolder(id);
}
@UserOperation(value = "更改了层级顺序")
@UserOperation(value = "更改了层级顺序", modelName = UserOperationModuleEnum.PRJ_SETTING)
@RequestMapping("folderResort")
public ElectromagneticResult<?> folderResort(@RequestBody List<FolderResortDTO> folderResortDTOList) {
return edPrjService.folderResort(folderResortDTOList);
}
@UserOperation(value = "发布了工程")
@UserOperation(value = "发布了工程", modelName = UserOperationModuleEnum.PRJ_SETTING)
@RequestMapping("publish")
public ElectromagneticResult<?> publish(@RequestParam String prjId) {
return edPrjService.publish(prjId);
}
@UserOperation(value = "引用了工程")
@UserOperation(value = "引用了工程", modelName = UserOperationModuleEnum.PRJ_SETTING)
@RequestMapping("follow")
public ElectromagneticResult<?> follow(@RequestParam String sourceId, @RequestParam String targetId) {
return edPrjService.follow(sourceId, targetId);
}
@UserOperation(value = "查询了工程发布状态")
@UserOperation(value = "查询了工程发布状态", modelName = UserOperationModuleEnum.PRJ_SETTING)
@RequestMapping("publishStatus")
public ElectromagneticResult<?> publishStatus(@RequestBody QueryPublishStatus queryPublishStatus) {
return edPrjService.publishStatus(queryPublishStatus);

View File

@ -34,4 +34,6 @@ public class UserAccessLog {
private String failureReason;
private Date createTime;
private String operationModule;
}

View File

@ -1,5 +1,7 @@
package com.electromagnetic.industry.software.common.annotations;
import com.electromagnetic.industry.software.common.enums.UserOperationModuleEnum;
import java.lang.annotation.*;
@Documented
@ -8,4 +10,6 @@ import java.lang.annotation.*;
public @interface UserOperation {
String value() default "";
UserOperationModuleEnum modelName() default UserOperationModuleEnum.UNKNOWN;
}

View File

@ -0,0 +1,17 @@
package com.electromagnetic.industry.software.common.enums;
import lombok.AllArgsConstructor;
@AllArgsConstructor
public enum UserOperationModuleEnum {
PRJ_SETTING("prjSetting", "层级定义"),
UNKNOWN("unknown", "未分组"),
DATABASE("database", "数据库管理"),
USER("user", "人员管理"),
PERMISSION("permission", "权限管理");
public final String key;
public final String desc;
}