| | |
| | | package com.vci.ubcs.resource.controller; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.vci.ubcs.resource.dto.FileObjectDTO; |
| | | import com.vci.ubcs.resource.dto.FileReleaseDTO; |
| | |
| | | import com.vci.ubcs.resource.service.IFileService; |
| | | import com.vci.ubcs.resource.utils.FileDownloadUtil; |
| | | import com.vci.ubcs.resource.vo.FileObjectVO; |
| | | import com.vci.ubcs.starter.exception.VciBaseException; |
| | | import com.vci.ubcs.starter.web.util.ControllerUtil; |
| | | import com.vci.ubcs.starter.web.util.LangBaseUtil; |
| | | import com.vci.ubcs.starter.web.util.VciBaseUtil; |
| | | import lombok.extern.java.Log; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springblade.core.mp.support.Query; |
| | | import org.springblade.core.oss.MinioTemplate; |
| | | import org.springblade.core.tool.api.R; |
| | | import org.springblade.core.tool.utils.StringUtil; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.nio.charset.StandardCharsets; |
| | | import java.util.Collection; |
| | | import java.util.List; |
| | | |
| | |
| | | */ |
| | | @RestController() |
| | | @RequestMapping("/fileController") |
| | | @Slf4j |
| | | public class FileController { |
| | | |
| | | /** |
| | |
| | | * @return 执行结果,只有下载失败的时候才会这样 |
| | | */ |
| | | @RequestMapping(value = "/downloadFilesByOids",method = {RequestMethod.GET,RequestMethod.POST}) |
| | | public R downloadFilesByOids(@RequestParam String fileOids, HttpServletResponse response){ |
| | | public String downloadFilesByOids(@RequestParam String fileOids, HttpServletResponse response){ |
| | | try{ |
| | | FileDownloadUtil.downloadFile(response, fileService.downloadFileByOids(VciBaseUtil.str2List(fileOids))); |
| | | }catch (Throwable e){ |
| | | return R.fail(LangBaseUtil.getErrorMsg(e)); |
| | | return JSON.toJSONString(R.fail(LangBaseUtil.getErrorMsg(e))); |
| | | } |
| | | return R.success("下载完成"); |
| | | //因为设置了响应contentType,所以这儿不能再直接返回R了,可能会导致报错 |
| | | return JSON.toJSONString(R.success("下载完成")) ; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 文件删除 |
| | |
| | | */ |
| | | @DeleteMapping("/deleteFile") |
| | | public R deleteFile(@RequestBody Collection<String> oids){ |
| | | fileService.deleteFiles(oids); |
| | | try { |
| | | fileService.deleteFiles(oids); |
| | | }catch (Throwable e){ |
| | | //如果出错,把错误信息写到text |
| | | String msg = LangBaseUtil.getErrorMsg(e); |
| | | if(StringUtil.isBlank(msg)){ |
| | | msg = "未知错误"; |
| | | } |
| | | log.debug(msg); |
| | | return R.fail(msg); |
| | | } |
| | | return R.success("删除成功"); |
| | | } |
| | | |