SysOssConfigController.java 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. package com.ruoyi.web.controller.system;
  2. import com.ruoyi.common.annotation.Log;
  3. import com.ruoyi.common.annotation.RepeatSubmit;
  4. import com.ruoyi.common.core.controller.BaseController;
  5. import com.ruoyi.common.core.domain.AjaxResult;
  6. import com.ruoyi.common.core.domain.PageQuery;
  7. import com.ruoyi.common.core.page.TableDataInfo;
  8. import com.ruoyi.common.core.validate.AddGroup;
  9. import com.ruoyi.common.core.validate.EditGroup;
  10. import com.ruoyi.common.core.validate.QueryGroup;
  11. import com.ruoyi.common.enums.BusinessType;
  12. import com.ruoyi.system.domain.bo.SysOssConfigBo;
  13. import com.ruoyi.system.domain.vo.SysOssConfigVo;
  14. import com.ruoyi.system.service.ISysOssConfigService;
  15. import io.swagger.annotations.Api;
  16. import io.swagger.annotations.ApiOperation;
  17. import io.swagger.annotations.ApiParam;
  18. import lombok.RequiredArgsConstructor;
  19. import org.springframework.beans.factory.annotation.Autowired;
  20. import org.springframework.security.access.prepost.PreAuthorize;
  21. import org.springframework.validation.annotation.Validated;
  22. import org.springframework.web.bind.annotation.*;
  23. import javax.validation.constraints.NotEmpty;
  24. import javax.validation.constraints.NotNull;
  25. import java.util.Arrays;
  26. /**
  27. * 对象存储配置Controller
  28. *
  29. * @author Lion Li
  30. * @author 孤舟烟雨
  31. * @date 2021-08-13
  32. */
  33. @Validated
  34. @Api(value = "对象存储配置控制器", tags = {"对象存储配置管理"})
  35. @RequiredArgsConstructor(onConstructor_ = @Autowired)
  36. @RestController
  37. @RequestMapping("/system/oss/config")
  38. public class SysOssConfigController extends BaseController {
  39. private final ISysOssConfigService iSysOssConfigService;
  40. /**
  41. * 查询对象存储配置列表
  42. */
  43. @ApiOperation("查询对象存储配置列表")
  44. @PreAuthorize("@ss.hasPermi('system:oss:list')")
  45. @GetMapping("/list")
  46. public TableDataInfo<SysOssConfigVo> list(@Validated(QueryGroup.class) SysOssConfigBo bo, PageQuery pageQuery) {
  47. return iSysOssConfigService.queryPageList(bo, pageQuery);
  48. }
  49. /**
  50. * 获取对象存储配置详细信息
  51. */
  52. @ApiOperation("获取对象存储配置详细信息")
  53. @PreAuthorize("@ss.hasPermi('system:oss:query')")
  54. @GetMapping("/{ossConfigId}")
  55. public AjaxResult<SysOssConfigVo> getInfo(@ApiParam("OSS配置ID")
  56. @NotNull(message = "主键不能为空")
  57. @PathVariable("ossConfigId") Integer ossConfigId) {
  58. return AjaxResult.success(iSysOssConfigService.queryById(ossConfigId));
  59. }
  60. /**
  61. * 新增对象存储配置
  62. */
  63. @ApiOperation("新增对象存储配置")
  64. @PreAuthorize("@ss.hasPermi('system:oss:add')")
  65. @Log(title = "对象存储配置", businessType = BusinessType.INSERT)
  66. @RepeatSubmit()
  67. @PostMapping()
  68. public AjaxResult<Void> add(@Validated(AddGroup.class) @RequestBody SysOssConfigBo bo) {
  69. return toAjax(iSysOssConfigService.insertByBo(bo) ? 1 : 0);
  70. }
  71. /**
  72. * 修改对象存储配置
  73. */
  74. @ApiOperation("修改对象存储配置")
  75. @PreAuthorize("@ss.hasPermi('system:oss:edit')")
  76. @Log(title = "对象存储配置", businessType = BusinessType.UPDATE)
  77. @RepeatSubmit()
  78. @PutMapping()
  79. public AjaxResult<Void> edit(@Validated(EditGroup.class) @RequestBody SysOssConfigBo bo) {
  80. return toAjax(iSysOssConfigService.updateByBo(bo) ? 1 : 0);
  81. }
  82. /**
  83. * 删除对象存储配置
  84. */
  85. @ApiOperation("删除对象存储配置")
  86. @PreAuthorize("@ss.hasPermi('system:oss:remove')")
  87. @Log(title = "对象存储配置", businessType = BusinessType.DELETE)
  88. @DeleteMapping("/{ossConfigIds}")
  89. public AjaxResult<Void> remove(@ApiParam("OSS配置ID串")
  90. @NotEmpty(message = "主键不能为空")
  91. @PathVariable Long[] ossConfigIds) {
  92. return toAjax(iSysOssConfigService.deleteWithValidByIds(Arrays.asList(ossConfigIds), true) ? 1 : 0);
  93. }
  94. /**
  95. * 状态修改
  96. */
  97. @ApiOperation("状态修改")
  98. @PreAuthorize("@ss.hasPermi('system:oss:edit')")
  99. @Log(title = "对象存储状态修改", businessType = BusinessType.UPDATE)
  100. @PutMapping("/changeStatus")
  101. public AjaxResult<Void> changeStatus(@RequestBody SysOssConfigBo bo) {
  102. return toAjax(iSysOssConfigService.updateOssConfigStatus(bo));
  103. }
  104. }