package com.backendsys.modules.upload.controller; import com.backendsys.modules.common.aspect.SysLog; import com.backendsys.modules.common.config.security.utils.HttpRequestUtil; import com.backendsys.modules.common.config.security.utils.SecurityUtil; import com.backendsys.modules.common.utils.Result; import com.backendsys.modules.upload.entity.SysFile; import com.backendsys.modules.upload.service.SysFileService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; 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.*; import org.springframework.web.multipart.MultipartFile; @Validated @RestController @Tag(name = "文件管理") public class SysFileController { @Autowired private SysFileService sysFileService; /** * 获取上传文件列表 * - 缩略图 (?imageView2/1/w/100/h/100/q/60) */ @Operation(summary = "获取文件列表 (全部)") @GetMapping("/api/upload/getUploadFileAllList") public Result getUploadFileAllList(@Validated SysFile sysFile) { return Result.success().put("data", sysFileService.selectUploadFileList(sysFile)); } @Operation(summary = "获取文件列表 (我的)") @GetMapping("/api/upload/getUploadFileList") public Result getUploadFileList(@Validated SysFile sysFile) { sysFile.setUser_id(SecurityUtil.getUserId()); return Result.success().put("data", sysFileService.selectUploadFileList(sysFile)); } @SysLog("上传文件 (普通上传)") @Operation(summary = "上传文件 (普通上传,单文件上传不超过 100MB)") @PreAuthorize("@sr.hasPermission(1.1)") @PostMapping("/api/upload/uploadSmall") public Result uploadSmall(@RequestParam("file") MultipartFile multipartFile, Long category_id) { return Result.success().put("data", sysFileService.uploadSmall(multipartFile, category_id)); } @SysLog("删除文件") @Operation(summary = "删除文件") @PreAuthorize("@sr.hasPermission(1.1)") @DeleteMapping("/api/upload/removeUploadFile") public Result removeUploadFile(@Validated(SysFile.Delete.class) @RequestBody SysFile sysFile) { return Result.success().put("data", sysFileService.removeUploadFile(sysFile)); } @SysLog("删除文件 (批量)") @Operation(summary = "删除文件 (批量)") @PreAuthorize("@sr.hasPermission(1.1)") @DeleteMapping("/api/upload/removeUploadFileBatch") public Result removeUploadFileBatch(@Validated(SysFile.DeleteBatch.class) @RequestBody SysFile sysFile) { return Result.success().put("data", sysFileService.removeUploadFileBatch(sysFile)); } @SysLog("编辑文件 (名称)") @Operation(summary = "编辑文件 (名称)") @PreAuthorize("@sr.hasPermission(1.1)") @PutMapping("/api/upload/updateUploadFile") public Result updateUploadFile(@Validated(SysFile.Update.class) @RequestBody SysFile sysFile) { return Result.success().put("data", sysFileService.updateUploadFile(sysFile)); } }