package com.ruoyi.web.controller.common; import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.utils.file.FileUtils; import com.ruoyi.manage.domain.SysFileManage; import com.ruoyi.manage.domain.vo.SysFileManageVO; import com.ruoyi.manage.service.SysFileService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.io.FileSystemResource; import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.io.File; import java.util.ArrayList; import java.util.List; /** *
* 文件管理表 前端控制器 *
* * @author sunjiawei * @since 2025-05-21 */ @RestController @RequestMapping("/dp/sysFile") @Tag(name = "大屏--文件管理") public class SysFileController { @Autowired SysFileService sysFileService; @Autowired RuoYiConfig ruoYiConfig; /** * 查询文件管理列表 */ @GetMapping("/listAll") @Operation(summary = "查询文件管理列表") public AjaxResult listAll() { return AjaxResult.success(sysFileService.listAll()); } /** * 单个上传文件 */ @PostMapping("/uploadFile") @Operation(summary = "单个上传文件") public AjaxResult uploadFile(MultipartFile file,String name,String type, @RequestParam(value = "remark",required = false) String remark) { SysFileManage sysFileManage = new SysFileManage(); sysFileManage.setName(name); sysFileManage.setType(type); sysFileManage.setRemark(remark); try { int res = sysFileService.saveFile(file,sysFileManage); return AjaxResult.success(res); } catch (Exception e) { return AjaxResult.error(e.getMessage()); } } /** * 批量删除文件 */ @PostMapping("/deleteBatch") @Operation(summary = "批量删除文件") public AjaxResult deleteBatch(@RequestBody List