| | |
| | | import com.ruoyi.system.domain.bo.SysOssBo; |
| | | import com.ruoyi.system.domain.vo.SysOssVo; |
| | | import com.ruoyi.system.service.ISysOssService; |
| | | import io.swagger.annotations.*; |
| | | import io.swagger.v3.oas.annotations.Operation; |
| | | import io.swagger.v3.oas.annotations.Parameter; |
| | | import io.swagger.v3.oas.annotations.Parameters; |
| | | import io.swagger.v3.oas.annotations.enums.ParameterIn; |
| | | import io.swagger.v3.oas.annotations.tags.Tag; |
| | | import lombok.RequiredArgsConstructor; |
| | | import org.springframework.http.MediaType; |
| | | import org.springframework.validation.annotation.Validated; |
| | |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import javax.validation.constraints.NotEmpty; |
| | | import java.io.File; |
| | | import java.io.IOException; |
| | | import java.util.Arrays; |
| | | import java.util.HashMap; |
| | |
| | | * @author Lion Li |
| | | */ |
| | | @Validated |
| | | @Api(value = "对象存储控制器", tags = {"对象存储管理"}) |
| | | @Tag(name ="对象存储控制器", description = "对象存储管理") |
| | | @RequiredArgsConstructor |
| | | @RestController |
| | | @RequestMapping("/system/oss") |
| | |
| | | /** |
| | | * 查询OSS对象存储列表 |
| | | */ |
| | | @ApiOperation("查询OSS对象存储列表") |
| | | @Operation(summary = "查询OSS对象存储列表") |
| | | @SaCheckPermission("system:oss:list") |
| | | @GetMapping("/list") |
| | | public TableDataInfo<SysOssVo> list(@Validated(QueryGroup.class) SysOssBo bo, PageQuery pageQuery) { |
| | |
| | | /** |
| | | * 查询OSS对象基于id串 |
| | | */ |
| | | @ApiOperation("查询OSS对象基于ID") |
| | | @Operation(summary = "查询OSS对象基于ID") |
| | | @SaCheckPermission("system:oss:list") |
| | | @GetMapping("/listByIds/{ossIds}") |
| | | public R<List<SysOssVo>> listByIds(@ApiParam("OSS对象ID串") |
| | | public R<List<SysOssVo>> listByIds(@Parameter(name = "OSS对象ID串") |
| | | @NotEmpty(message = "主键不能为空") |
| | | @PathVariable Long[] ossIds) { |
| | | List<SysOssVo> list = iSysOssService.listByIds(Arrays.asList(ossIds)); |
| | |
| | | /** |
| | | * 上传OSS对象存储 |
| | | */ |
| | | @ApiOperation("上传OSS对象存储") |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(name = "file", value = "文件", paramType = "query", dataTypeClass = File.class, required = true) |
| | | @Operation(summary = "上传OSS对象存储") |
| | | @Parameters({ |
| | | @Parameter(name = "file", description = "文件", in = ParameterIn.QUERY, required = true) |
| | | }) |
| | | @SaCheckPermission("system:oss:upload") |
| | | @Log(title = "OSS对象存储", businessType = BusinessType.INSERT) |
| | |
| | | return R.ok(map); |
| | | } |
| | | |
| | | @ApiOperation("下载OSS对象存储") |
| | | @Operation(summary = "下载OSS对象存储") |
| | | @SaCheckPermission("system:oss:download") |
| | | @GetMapping("/download/{ossId}") |
| | | public void download(@ApiParam("OSS对象ID") @PathVariable Long ossId, HttpServletResponse response) throws IOException { |
| | | public void download(@Parameter(name = "OSS对象ID") @PathVariable Long ossId, HttpServletResponse response) throws IOException { |
| | | SysOss sysOss = iSysOssService.getById(ossId); |
| | | if (ObjectUtil.isNull(sysOss)) { |
| | | throw new ServiceException("文件数据不存在!"); |
| | |
| | | /** |
| | | * 删除OSS对象存储 |
| | | */ |
| | | @ApiOperation("删除OSS对象存储") |
| | | @Operation(summary = "删除OSS对象存储") |
| | | @SaCheckPermission("system:oss:remove") |
| | | @Log(title = "OSS对象存储", businessType = BusinessType.DELETE) |
| | | @DeleteMapping("/{ossIds}") |
| | | public R<Void> remove(@ApiParam("OSS对象ID串") |
| | | public R<Void> remove(@Parameter(name = "OSS对象ID串") |
| | | @NotEmpty(message = "主键不能为空") |
| | | @PathVariable Long[] ossIds) { |
| | | return toAjax(iSysOssService.deleteWithValidByIds(Arrays.asList(ossIds), true) ? 1 : 0); |