add 整合 springdoc 移除 knife4j

This commit is contained in:
疯狂的狮子li
2022-07-07 18:08:14 +08:00
parent 48cb0a1bb1
commit 0b07780619
82 changed files with 873 additions and 1014 deletions

View File

@ -2,9 +2,9 @@ package com.ruoyi.demo.controller;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.utils.email.MailUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
@ -20,27 +20,27 @@ import java.io.File;
* @author Michelle.Chung
*/
@Validated
@Api(value = "邮件发送案例", tags = {"邮件发送案例"})
@Tag(name ="邮件发送案例", description = "邮件发送案例")
@RequiredArgsConstructor
@RestController
@RequestMapping("/demo/mail")
public class MailController {
@ApiOperation("发送邮件")
@Operation(summary = "发送邮件")
@GetMapping("/sendSimpleMessage")
public R<Void> sendSimpleMessage(@ApiParam("接收人") String to,
@ApiParam("标题") String subject,
@ApiParam("内容") String text) {
public R<Void> sendSimpleMessage(@Parameter(name = "接收人") String to,
@Parameter(name = "标题") String subject,
@Parameter(name = "内容") String text) {
MailUtils.sendText(to, subject, text);
return R.ok();
}
@ApiOperation("发送邮件(带附件)")
@Operation(summary = "发送邮件(带附件)")
@GetMapping("/sendMessageWithAttachment")
public R<Void> sendMessageWithAttachment(@ApiParam("接收人") String to,
@ApiParam("标题") String subject,
@ApiParam("内容") String text,
@ApiParam("附件路径") String filePath) {
public R<Void> sendMessageWithAttachment(@Parameter(name = "接收人") String to,
@Parameter(name = "标题") String subject,
@Parameter(name = "内容") String text,
@Parameter(name = "附件路径") String filePath) {
MailUtils.sendText(to, subject, text, new File(filePath));
return R.ok();
}

View File

@ -2,8 +2,8 @@ package com.ruoyi.demo.controller;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.utils.redis.RedisUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.cache.annotation.CacheEvict;
import org.springframework.cache.annotation.CachePut;
@ -21,7 +21,7 @@ import java.time.Duration;
*/
// 类级别 缓存统一配置
//@CacheConfig(cacheNames = "redissonCacheMap")
@Api(value = "spring-cache 演示案例", tags = {"spring-cache 演示案例"})
@Tag(name ="spring-cache 演示案例", description = "spring-cache 演示案例")
@RequiredArgsConstructor
@RestController
@RequestMapping("/demo/cache")
@ -41,7 +41,7 @@ public class RedisCacheController {
* <p>
* cacheNames 为配置文件内 groupId
*/
@ApiOperation("测试 @Cacheable")
@Operation(summary = "测试 @Cacheable")
@Cacheable(cacheNames = "redissonCacheMap", key = "#key", condition = "#key != null")
@GetMapping("/test1")
public R<String> test1(String key, String value) {
@ -56,7 +56,7 @@ public class RedisCacheController {
* <p>
* cacheNames 为 配置文件内 groupId
*/
@ApiOperation("测试 @CachePut")
@Operation(summary = "测试 @CachePut")
@CachePut(cacheNames = "redissonCacheMap", key = "#key", condition = "#key != null")
@GetMapping("/test2")
public R<String> test2(String key, String value) {
@ -71,7 +71,7 @@ public class RedisCacheController {
* <p>
* cacheNames 为 配置文件内 groupId
*/
@ApiOperation("测试 @CacheEvict")
@Operation(summary = "测试 @CacheEvict")
@CacheEvict(cacheNames = "redissonCacheMap", key = "#key", condition = "#key != null")
@GetMapping("/test3")
public R<String> test3(String key, String value) {
@ -83,7 +83,7 @@ public class RedisCacheController {
* 手动设置过期时间10秒
* 11秒后获取 判断是否相等
*/
@ApiOperation("测试设置过期时间")
@Operation(summary = "测试设置过期时间")
@GetMapping("/test6")
public R<Boolean> test6(String key, String value) {
RedisUtils.setCacheObject(key, value);

View File

@ -5,8 +5,8 @@ import com.baomidou.lock.LockTemplate;
import com.baomidou.lock.annotation.Lock4j;
import com.baomidou.lock.executor.RedissonLockExecutor;
import com.ruoyi.common.core.domain.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@ -21,7 +21,7 @@ import java.time.LocalTime;
*
* @author shenxinquan
*/
@Api(value = "测试分布式锁的样例", tags = {"测试分布式锁的样例"})
@Tag(name ="测试分布式锁的样例", description = "测试分布式锁的样例")
@Slf4j
@RestController
@RequestMapping("/demo/redisLock")
@ -33,7 +33,7 @@ public class RedisLockController {
/**
* 测试lock4j 注解
*/
@ApiOperation("测试lock4j 注解")
@Operation(summary = "测试lock4j 注解")
@Lock4j(keys = {"#key"})
@GetMapping("/testLock4j")
public R<String> testLock4j(String key, String value) {
@ -50,7 +50,7 @@ public class RedisLockController {
/**
* 测试lock4j 工具
*/
@ApiOperation("测试lock4j 工具")
@Operation(summary = "测试lock4j 工具")
@GetMapping("/testLock4jLockTemplate")
public R<String> testLock4jLockTemplate(String key, String value) {
final LockInfo lockInfo = lockTemplate.lock(key, 30000L, 5000L, RedissonLockExecutor.class);

View File

@ -2,9 +2,9 @@ package com.ruoyi.demo.controller;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.utils.redis.RedisUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@ -15,24 +15,24 @@ import org.springframework.web.bind.annotation.RestController;
*
* @author Lion Li
*/
@Api(value = "Redis发布订阅 演示案例", tags = {"Redis发布订阅"})
@Tag(name ="Redis发布订阅 演示案例", description = "Redis发布订阅")
@RequiredArgsConstructor
@RestController
@RequestMapping("/demo/redis/pubsub")
public class RedisPubSubController {
@ApiOperation("发布消息")
@Operation(summary = "发布消息")
@GetMapping("/pub")
public R<Void> pub(@ApiParam("通道Key") String key, @ApiParam("发送内容") String value) {
public R<Void> pub(@Parameter(name = "通道Key") String key, @Parameter(name = "发送内容") String value) {
RedisUtils.publish(key, value, consumer -> {
System.out.println("发布通道 => " + key + ", 发送值 => " + value);
});
return R.ok("操作成功");
}
@ApiOperation("订阅消息")
@Operation(summary = "订阅消息")
@GetMapping("/sub")
public R<Void> sub(@ApiParam("通道Key") String key) {
public R<Void> sub(@Parameter(name = "通道Key") String key) {
RedisUtils.subscribe(key, String.class, msg -> {
System.out.println("订阅通道 => " + key + ", 接收值 => " + msg);
});

View File

@ -3,8 +3,8 @@ package com.ruoyi.demo.controller;
import com.ruoyi.common.annotation.RateLimiter;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.enums.LimitType;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@ -16,7 +16,7 @@ import org.springframework.web.bind.annotation.RestController;
*
* @author Lion Li
*/
@Api(value = "测试分布式限流样例", tags = {"测试分布式限流样例"})
@Tag(name ="测试分布式限流样例", description = "测试分布式限流样例")
@Slf4j
@RestController
@RequestMapping("/demo/rateLimiter")
@ -26,7 +26,7 @@ public class RedisRateLimiterController {
* 测试全局限流
* 全局影响
*/
@ApiOperation("测试全局限流")
@Operation(summary = "测试全局限流")
@RateLimiter(count = 2, time = 10)
@GetMapping("/test")
public R<String> test(String value) {
@ -37,7 +37,7 @@ public class RedisRateLimiterController {
* 测试请求IP限流
* 同一IP请求受影响
*/
@ApiOperation("测试请求IP限流")
@Operation(summary = "测试请求IP限流")
@RateLimiter(count = 2, time = 10, limitType = LimitType.IP)
@GetMapping("/testip")
public R<String> testip(String value) {
@ -48,7 +48,7 @@ public class RedisRateLimiterController {
* 测试集群实例限流
* 启动两个后端服务互不影响
*/
@ApiOperation("测试集群实例限流")
@Operation(summary = "测试集群实例限流")
@RateLimiter(count = 2, time = 10, limitType = LimitType.CLUSTER)
@GetMapping("/testcluster")
public R<String> testcluster(String value) {

View File

@ -4,9 +4,9 @@ import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.utils.spring.SpringUtils;
import com.ruoyi.sms.config.properties.SmsProperties;
import com.ruoyi.sms.core.SmsTemplate;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
@ -24,7 +24,7 @@ import java.util.Map;
* @version 4.2.0
*/
@Validated
@Api(value = "短信演示案例", tags = {"短信演示案例"})
@Tag(name ="短信演示案例", description = "短信演示案例")
@RequiredArgsConstructor
@RestController
@RequestMapping("/demo/sms")
@ -34,10 +34,10 @@ public class SmsController {
// private final SmsTemplate smsTemplate; // 可以使用spring注入
// private final AliyunSmsTemplate smsTemplate; // 也可以注入某个厂家的模板工具
@ApiOperation("发送短信Aliyun")
@Operation(summary = "发送短信Aliyun")
@GetMapping("/sendAliyun")
public R<Object> sendAliyun(@ApiParam("电话号") String phones,
@ApiParam("模板ID") String templateId) {
public R<Object> sendAliyun(@Parameter(name = "电话号") String phones,
@Parameter(name = "模板ID") String templateId) {
if (!smsProperties.getEnabled()) {
return R.fail("当前系统没有开启短信功能!");
}
@ -51,10 +51,10 @@ public class SmsController {
return R.ok(send);
}
@ApiOperation("发送短信Tencent")
@Operation(summary = "发送短信Tencent")
@GetMapping("/sendTencent")
public R<Object> sendTencent(@ApiParam("电话号") String phones,
@ApiParam("模板ID") String templateId) {
public R<Object> sendTencent(@Parameter(name = "电话号") String phones,
@Parameter(name = "模板ID") String templateId) {
if (!smsProperties.getEnabled()) {
return R.fail("当前系统没有开启短信功能!");
}

View File

@ -1,24 +1,23 @@
package com.ruoyi.demo.controller;
import com.ruoyi.common.core.domain.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
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 org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestPart;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
/**
* swagger3 用法示例
*
* @author Lion Li
*/
@Api(value = "演示swagger3控制器", tags = {"演示swagger3接口"})
@Tag(name ="演示swagger3控制器", description = "演示swagger3接口")
@RestController
@RequestMapping("/swagger/demo")
public class Swagger3DemoController {
@ -27,9 +26,9 @@ public class Swagger3DemoController {
* 上传请求
* 必须使用 @RequestPart 注解标注为文件
*/
@ApiOperation(value = "通用上传请求")
@ApiImplicitParams({
@ApiImplicitParam(name = "file", value = "文件", paramType = "query", dataTypeClass = File.class, required = true)
@Operation(summary = "通用上传请求")
@Parameters({
@Parameter(name = "file", description = "文件", in = ParameterIn.QUERY, required = true)
})
@PostMapping(value = "/upload")
public R<String> upload(@RequestPart("file") MultipartFile file) {

View File

@ -5,8 +5,8 @@ import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.demo.domain.TestDemo;
import com.ruoyi.demo.mapper.TestDemoMapper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PostMapping;
@ -22,7 +22,7 @@ import java.util.List;
* @author Lion Li
* @date 2021-05-30
*/
@Api(value = "测试批量方法", tags = {"测试批量方法"})
@Tag(name ="测试批量方法", description = "测试批量方法")
@RequiredArgsConstructor
@RestController
@RequestMapping("/demo/batch")
@ -38,7 +38,7 @@ public class TestBatchController extends BaseController {
* <p>
* 3.5.0 版本 增加 rewriteBatchedStatements=true 批处理参数 使 MP 原生批处理可以达到同样的速度
*/
@ApiOperation(value = "新增批量方法")
@Operation(summary = "新增批量方法")
@PostMapping("/add")
// @DS("slave")
public R<Void> add() {
@ -58,7 +58,7 @@ public class TestBatchController extends BaseController {
* <p>
* 3.5.0 版本 增加 rewriteBatchedStatements=true 批处理参数 使 MP 原生批处理可以达到同样的速度
*/
@ApiOperation(value = "新增或更新批量方法")
@Operation(summary = "新增或更新批量方法")
@PostMapping("/addOrUpdate")
// @DS("slave")
public R<Void> addOrUpdate() {
@ -84,7 +84,7 @@ public class TestBatchController extends BaseController {
/**
* 删除批量方法
*/
@ApiOperation(value = "删除批量方法")
@Operation(summary = "删除批量方法")
@DeleteMapping()
// @DS("slave")
public R<Void> remove() {

View File

@ -5,8 +5,8 @@ import cn.hutool.core.bean.BeanUtil;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
@ -20,7 +20,11 @@ import com.ruoyi.demo.domain.bo.TestDemoBo;
import com.ruoyi.demo.domain.bo.TestDemoImportVo;
import com.ruoyi.demo.domain.vo.TestDemoVo;
import com.ruoyi.demo.service.ITestDemoService;
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.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@ -29,7 +33,6 @@ import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.File;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.TimeUnit;
@ -41,7 +44,7 @@ import java.util.concurrent.TimeUnit;
* @date 2021-07-26
*/
@Validated
@Api(value = "测试单表控制器", tags = {"测试单表管理"})
@Tag(name ="测试单表控制器", description = "测试单表管理")
@RequiredArgsConstructor
@RestController
@RequestMapping("/demo/demo")
@ -52,7 +55,7 @@ public class TestDemoController extends BaseController {
/**
* 查询测试单表列表
*/
@ApiOperation("查询测试单表列表")
@Operation(summary = "查询测试单表列表")
@SaCheckPermission("demo:demo:list")
@GetMapping("/list")
public TableDataInfo<TestDemoVo> list(@Validated(QueryGroup.class) TestDemoBo bo, PageQuery pageQuery) {
@ -62,16 +65,16 @@ public class TestDemoController extends BaseController {
/**
* 自定义分页查询
*/
@ApiOperation("自定义分页查询")
@Operation(summary = "自定义分页查询")
@SaCheckPermission("demo:demo:list")
@GetMapping("/page")
public TableDataInfo<TestDemoVo> page(@Validated(QueryGroup.class) TestDemoBo bo, PageQuery pageQuery) {
return iTestDemoService.customPageList(bo, pageQuery);
}
@ApiOperation("导入测试-校验")
@ApiImplicitParams({
@ApiImplicitParam(name = "file", value = "导入文件", paramType = "query", dataTypeClass = File.class, required = true),
@Operation(summary = "导入测试-校验")
@Parameters({
@Parameter(name = "file", description = "导入文件", in = ParameterIn.QUERY, required = true),
})
@Log(title = "测试单表", businessType = BusinessType.IMPORT)
@SaCheckPermission("demo:demo:import")
@ -87,7 +90,7 @@ public class TestDemoController extends BaseController {
/**
* 导出测试单表列表
*/
@ApiOperation("导出测试单表列表")
@Operation(summary = "导出测试单表列表")
@SaCheckPermission("demo:demo:export")
@Log(title = "测试单表", businessType = BusinessType.EXPORT)
@PostMapping("/export")
@ -103,10 +106,10 @@ public class TestDemoController extends BaseController {
/**
* 获取测试单表详细信息
*/
@ApiOperation("获取测试单表详细信息")
@Operation(summary = "获取测试单表详细信息")
@SaCheckPermission("demo:demo:query")
@GetMapping("/{id}")
public R<TestDemoVo> getInfo(@ApiParam("测试ID")
public R<TestDemoVo> getInfo(@Parameter(name = "测试ID")
@NotNull(message = "主键不能为空")
@PathVariable("id") Long id) {
return R.ok(iTestDemoService.queryById(id));
@ -115,7 +118,7 @@ public class TestDemoController extends BaseController {
/**
* 新增测试单表
*/
@ApiOperation("新增测试单表")
@Operation(summary = "新增测试单表")
@SaCheckPermission("demo:demo:add")
@Log(title = "测试单表", businessType = BusinessType.INSERT)
@RepeatSubmit(interval = 2, timeUnit = TimeUnit.SECONDS, message = "{repeat.submit.message}")
@ -130,7 +133,7 @@ public class TestDemoController extends BaseController {
/**
* 修改测试单表
*/
@ApiOperation("修改测试单表")
@Operation(summary = "修改测试单表")
@SaCheckPermission("demo:demo:edit")
@Log(title = "测试单表", businessType = BusinessType.UPDATE)
@RepeatSubmit
@ -142,11 +145,11 @@ public class TestDemoController extends BaseController {
/**
* 删除测试单表
*/
@ApiOperation("删除测试单表")
@Operation(summary = "删除测试单表")
@SaCheckPermission("demo:demo:remove")
@Log(title = "测试单表", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@ApiParam("测试ID串")
public R<Void> remove(@Parameter(name = "测试ID串")
@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(iTestDemoService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0);

View File

@ -2,8 +2,8 @@ package com.ruoyi.demo.controller;
import cn.hutool.core.collection.CollUtil;
import com.ruoyi.common.utils.poi.ExcelUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.AllArgsConstructor;
import lombok.Data;
import org.springframework.web.bind.annotation.GetMapping;
@ -21,7 +21,7 @@ import java.util.Map;
*
* @author Lion Li
*/
@Api(value = "测试Excel功能", tags = {"测试Excel功能"})
@Tag(name ="测试Excel功能", description = "测试Excel功能")
@RestController
@RequestMapping("/demo/excel")
public class TestExcelController {
@ -29,7 +29,7 @@ public class TestExcelController {
/**
* 单列表多数据
*/
@ApiOperation(value = "单列表多数据")
@Operation(summary = "单列表多数据")
@GetMapping("/exportTemplateOne")
public void exportTemplateOne(HttpServletResponse response) {
Map<String,String> map = new HashMap<>();
@ -49,7 +49,7 @@ public class TestExcelController {
/**
* 多列表多数据
*/
@ApiOperation(value = "多列表多数据")
@Operation(summary = "多列表多数据")
@GetMapping("/exportTemplateMuliti")
public void exportTemplateMuliti(HttpServletResponse response) {
Map<String,String> map = new HashMap<>();

View File

@ -2,9 +2,9 @@ package com.ruoyi.demo.controller;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.utils.MessageUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.Data;
import org.hibernate.validator.constraints.Range;
import org.springframework.validation.annotation.Validated;
@ -22,7 +22,7 @@ import javax.validation.constraints.NotNull;
* @author Lion Li
*/
@Validated
@Api(value = "测试国际化控制器", tags = {"测试国际化管理"})
@Tag(name ="测试国际化控制器", description = "测试国际化管理")
@RestController
@RequestMapping("/demo/i18n")
public class TestI18nController {
@ -33,9 +33,9 @@ public class TestI18nController {
* <p>
* 测试使用 user.register.success
*/
@ApiOperation("通过code获取国际化内容")
@Operation(summary = "通过code获取国际化内容")
@GetMapping()
public R<Void> get(@ApiParam("国际化code") String code) {
public R<Void> get(@Parameter(name = "国际化code") String code) {
return R.ok(MessageUtils.message(code));
}
@ -45,7 +45,7 @@ public class TestI18nController {
* <p>
* 测试使用 not.null
*/
@ApiOperation("Validator 校验国际化")
@Operation(summary = "Validator 校验国际化")
@GetMapping("/test1")
public R<Void> test1(@NotBlank(message = "{not.null}") String str) {
return R.ok(str);
@ -57,7 +57,7 @@ public class TestI18nController {
* <p>
* 测试使用 not.null
*/
@ApiOperation("Bean 校验国际化")
@Operation(summary = "Bean 校验国际化")
@GetMapping("/test2")
public R<TestI18nBo> test2(@Validated TestI18nBo bo) {
return R.ok(bo);

View File

@ -4,8 +4,8 @@ import com.ruoyi.common.annotation.Sensitive;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.enums.SensitiveStrategy;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.Data;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@ -21,7 +21,7 @@ import org.springframework.web.bind.annotation.RestController;
* @version 3.6.0
* @see com.ruoyi.common.core.service.SensitiveService
*/
@Api(value = "测试数据脱敏控制器", tags = {"测试数据脱敏管理"})
@Tag(name ="测试数据脱敏控制器", description = "测试数据脱敏管理")
@RestController
@RequestMapping("/demo/sensitive")
public class TestSensitiveController extends BaseController {
@ -29,7 +29,7 @@ public class TestSensitiveController extends BaseController {
/**
* 测试数据脱敏
*/
@ApiOperation("查询测试单表列表")
@Operation(summary = "查询测试单表列表")
@GetMapping("/test")
public R<TestSensitive> test() {
TestSensitive testSensitive = new TestSensitive();

View File

@ -13,9 +13,9 @@ import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.demo.domain.bo.TestTreeBo;
import com.ruoyi.demo.domain.vo.TestTreeVo;
import com.ruoyi.demo.service.ITestTreeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@ -33,7 +33,7 @@ import java.util.List;
* @date 2021-07-26
*/
@Validated
@Api(value = "测试树表控制器", tags = {"测试树表管理"})
@Tag(name ="测试树表控制器", description = "测试树表管理")
@RequiredArgsConstructor
@RestController
@RequestMapping("/demo/tree")
@ -44,7 +44,7 @@ public class TestTreeController extends BaseController {
/**
* 查询测试树表列表
*/
@ApiOperation("查询测试树表列表")
@Operation(summary = "查询测试树表列表")
@SaCheckPermission("demo:tree:list")
@GetMapping("/list")
public R<List<TestTreeVo>> list(@Validated(QueryGroup.class) TestTreeBo bo) {
@ -55,7 +55,7 @@ public class TestTreeController extends BaseController {
/**
* 导出测试树表列表
*/
@ApiOperation("导出测试树表列表")
@Operation(summary = "导出测试树表列表")
@SaCheckPermission("demo:tree:export")
@Log(title = "测试树表", businessType = BusinessType.EXPORT)
@GetMapping("/export")
@ -67,10 +67,10 @@ public class TestTreeController extends BaseController {
/**
* 获取测试树表详细信息
*/
@ApiOperation("获取测试树表详细信息")
@Operation(summary = "获取测试树表详细信息")
@SaCheckPermission("demo:tree:query")
@GetMapping("/{id}")
public R<TestTreeVo> getInfo(@ApiParam("测试树ID")
public R<TestTreeVo> getInfo(@Parameter(name = "测试树ID")
@NotNull(message = "主键不能为空")
@PathVariable("id") Long id) {
return R.ok(iTestTreeService.queryById(id));
@ -79,7 +79,7 @@ public class TestTreeController extends BaseController {
/**
* 新增测试树表
*/
@ApiOperation("新增测试树表")
@Operation(summary = "新增测试树表")
@SaCheckPermission("demo:tree:add")
@Log(title = "测试树表", businessType = BusinessType.INSERT)
@RepeatSubmit
@ -91,7 +91,7 @@ public class TestTreeController extends BaseController {
/**
* 修改测试树表
*/
@ApiOperation("修改测试树表")
@Operation(summary = "修改测试树表")
@SaCheckPermission("demo:tree:edit")
@Log(title = "测试树表", businessType = BusinessType.UPDATE)
@RepeatSubmit
@ -103,11 +103,11 @@ public class TestTreeController extends BaseController {
/**
* 删除测试树表
*/
@ApiOperation("删除测试树表")
@Operation(summary = "删除测试树表")
@SaCheckPermission("demo:tree:remove")
@Log(title = "测试树表", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@ApiParam("测试树ID串")
public R<Void> remove(@Parameter(name = "测试树ID串")
@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(iTestTreeService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0);

View File

@ -2,9 +2,9 @@ package com.ruoyi.demo.controller.queue;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.utils.redis.QueueUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
@ -23,17 +23,17 @@ import org.springframework.web.bind.annotation.RestController;
* @version 3.6.0
*/
@Slf4j
@Api(value = "有界队列 演示案例", tags = {"有界队列"})
@Tag(name ="有界队列 演示案例", description = "有界队列")
@RequiredArgsConstructor
@RestController
@RequestMapping("/demo/queue/bounded")
public class BoundedQueueController {
@ApiOperation("添加队列数据")
@Operation(summary = "添加队列数据")
@GetMapping("/add")
public R<Void> add(@ApiParam("队列名") String queueName,
@ApiParam("容量") int capacity) {
public R<Void> add(@Parameter(name = "队列名") String queueName,
@Parameter(name = "容量") int capacity) {
// 用完了一定要销毁 否则会一直存在
boolean b = QueueUtils.destroyBoundedQueueObject(queueName);
log.info("通道: {} , 删除: {}", queueName, b);
@ -56,9 +56,9 @@ public class BoundedQueueController {
return R.ok("操作成功");
}
@ApiOperation("删除队列数据")
@Operation(summary = "删除队列数据")
@GetMapping("/remove")
public R<Void> remove(@ApiParam("队列名") String queueName) {
public R<Void> remove(@Parameter(name = "队列名") String queueName) {
String data = "data-" + 5;
if (QueueUtils.removeBoundedQueueObject(queueName, data)) {
log.info("通道: {} , 删除数据: {}", queueName, data);
@ -68,9 +68,9 @@ public class BoundedQueueController {
return R.ok("操作成功");
}
@ApiOperation("获取队列数据")
@Operation(summary = "获取队列数据")
@GetMapping("/get")
public R<Void> get(@ApiParam("队列名") String queueName) {
public R<Void> get(@Parameter(name = "队列名") String queueName) {
String data;
do {
data = QueueUtils.getBoundedQueueObject(queueName);

View File

@ -2,9 +2,9 @@ package com.ruoyi.demo.controller.queue;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.utils.redis.QueueUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
@ -26,15 +26,15 @@ import java.util.concurrent.TimeUnit;
* @version 3.6.0
*/
@Slf4j
@Api(value = "延迟队列 演示案例", tags = {"延迟队列"})
@Tag(name ="延迟队列 演示案例", description = "延迟队列")
@RequiredArgsConstructor
@RestController
@RequestMapping("/demo/queue/delayed")
public class DelayedQueueController {
@ApiOperation("订阅队列")
@Operation(summary = "订阅队列")
@GetMapping("/subscribe")
public R<Void> subscribe(@ApiParam("队列名") String queueName) {
public R<Void> subscribe(@Parameter(name = "队列名") String queueName) {
log.info("通道: {} 监听中......", queueName);
// 项目初始化设置一次即可
QueueUtils.subscribeBlockingQueue(queueName, (String orderNum) -> {
@ -44,21 +44,21 @@ public class DelayedQueueController {
return R.ok("操作成功");
}
@ApiOperation("添加队列数据")
@Operation(summary = "添加队列数据")
@GetMapping("/add")
public R<Void> add(@ApiParam("队列名") String queueName,
@ApiParam("订单号") String orderNum,
@ApiParam("延迟时间(秒)") Long time) {
public R<Void> add(@Parameter(name = "队列名") String queueName,
@Parameter(name = "订单号") String orderNum,
@Parameter(name = "延迟时间(秒)") Long time) {
QueueUtils.addDelayedQueueObject(queueName, orderNum, time, TimeUnit.SECONDS);
// 观察发送时间
log.info("通道: {} , 发送数据: {}", queueName, orderNum);
return R.ok("操作成功");
}
@ApiOperation("删除队列数据")
@Operation(summary = "删除队列数据")
@GetMapping("/remove")
public R<Void> remove(@ApiParam("队列名") String queueName,
@ApiParam("订单号") String orderNum) {
public R<Void> remove(@Parameter(name = "队列名") String queueName,
@Parameter(name = "订单号") String orderNum) {
if (QueueUtils.removeDelayedQueueObject(queueName, orderNum)) {
log.info("通道: {} , 删除数据: {}", queueName, orderNum);
} else {
@ -67,9 +67,9 @@ public class DelayedQueueController {
return R.ok("操作成功");
}
@ApiOperation("销毁队列")
@Operation(summary = "销毁队列")
@GetMapping("/destroy")
public R<Void> destroy(@ApiParam("队列名") String queueName) {
public R<Void> destroy(@Parameter(name = "队列名") String queueName) {
// 用完了一定要销毁 否则会一直存在
QueueUtils.destroyDelayedQueue(queueName);
return R.ok("操作成功");

View File

@ -3,9 +3,9 @@ package com.ruoyi.demo.controller.queue;
import cn.hutool.core.util.RandomUtil;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.utils.redis.QueueUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
@ -24,15 +24,15 @@ import org.springframework.web.bind.annotation.RestController;
* @version 3.6.0
*/
@Slf4j
@Api(value = "优先队列 演示案例", tags = {"优先队列"})
@Tag(name ="优先队列 演示案例", description = "优先队列")
@RequiredArgsConstructor
@RestController
@RequestMapping("/demo/queue/priority")
public class PriorityQueueController {
@ApiOperation("添加队列数据")
@Operation(summary = "添加队列数据")
@GetMapping("/add")
public R<Void> add(@ApiParam("队列名") String queueName) {
public R<Void> add(@Parameter(name = "队列名") String queueName) {
// 用完了一定要销毁 否则会一直存在
boolean b = QueueUtils.destroyPriorityQueueObject(queueName);
log.info("通道: {} , 删除: {}", queueName, b);
@ -58,11 +58,11 @@ public class PriorityQueueController {
return R.ok("操作成功");
}
@ApiOperation("删除队列数据")
@Operation(summary = "删除队列数据")
@GetMapping("/remove")
public R<Void> remove(@ApiParam("队列名") String queueName,
@ApiParam("对象名") String name,
@ApiParam("排序号") Integer orderNum) {
public R<Void> remove(@Parameter(name = "队列名") String queueName,
@Parameter(name = "对象名") String name,
@Parameter(name = "排序号") Integer orderNum) {
PriorityDemo data = new PriorityDemo();
data.setName(name);
data.setOrderNum(orderNum);
@ -74,9 +74,9 @@ public class PriorityQueueController {
return R.ok("操作成功");
}
@ApiOperation("获取队列数据")
@Operation(summary = "获取队列数据")
@GetMapping("/get")
public R<Void> get(@ApiParam("队列名") String queueName) {
public R<Void> get(@Parameter(name = "队列名") String queueName) {
PriorityDemo data;
do {
data = QueueUtils.getPriorityQueueObject(queueName);

View File

@ -3,8 +3,7 @@ package com.ruoyi.demo.domain.bo;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
@ -20,48 +19,48 @@ import javax.validation.constraints.NotNull;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("测试单表业务对象")
@Schema(name = "测试单表业务对象")
public class TestDemoBo extends BaseEntity {
/**
* 主键
*/
@ApiModelProperty("主键")
@Schema(name = "主键")
@NotNull(message = "主键不能为空", groups = {EditGroup.class})
private Long id;
/**
* 部门id
*/
@ApiModelProperty("部门id")
@Schema(name = "部门id")
@NotNull(message = "部门id不能为空", groups = {AddGroup.class, EditGroup.class})
private Long deptId;
/**
* 用户id
*/
@ApiModelProperty("用户id")
@Schema(name = "用户id")
@NotNull(message = "用户id不能为空", groups = {AddGroup.class, EditGroup.class})
private Long userId;
/**
* 排序号
*/
@ApiModelProperty("排序号")
@Schema(name = "排序号")
@NotNull(message = "排序号不能为空", groups = {AddGroup.class, EditGroup.class})
private Integer orderNum;
/**
* key键
*/
@ApiModelProperty("key键")
@Schema(name = "key键")
@NotBlank(message = "key键不能为空", groups = {AddGroup.class, EditGroup.class})
private String testKey;
/**
* 值
*/
@ApiModelProperty("")
@Schema(name = "")
@NotBlank(message = "值不能为空", groups = {AddGroup.class, EditGroup.class})
private String value;

View File

@ -1,8 +1,7 @@
package com.ruoyi.demo.domain.bo;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import javax.validation.constraints.NotBlank;
@ -15,13 +14,13 @@ import javax.validation.constraints.NotNull;
* @date 2021-07-26
*/
@Data
@ApiModel("测试单表业务对象")
@Schema(name = "测试单表业务对象")
public class TestDemoImportVo {
/**
* 部门id
*/
@ApiModelProperty("部门id")
@Schema(name = "部门id")
@NotNull(message = "部门id不能为空")
@ExcelProperty(value = "部门id")
private Long deptId;
@ -29,7 +28,7 @@ public class TestDemoImportVo {
/**
* 用户id
*/
@ApiModelProperty("用户id")
@Schema(name = "用户id")
@NotNull(message = "用户id不能为空")
@ExcelProperty(value = "用户id")
private Long userId;
@ -37,7 +36,7 @@ public class TestDemoImportVo {
/**
* 排序号
*/
@ApiModelProperty("排序号")
@Schema(name = "排序号")
@NotNull(message = "排序号不能为空")
@ExcelProperty(value = "排序号")
private Long orderNum;
@ -45,7 +44,7 @@ public class TestDemoImportVo {
/**
* key键
*/
@ApiModelProperty("key键")
@Schema(name = "key键")
@NotBlank(message = "key键不能为空")
@ExcelProperty(value = "key键")
private String testKey;
@ -53,7 +52,7 @@ public class TestDemoImportVo {
/**
* 值
*/
@ApiModelProperty("")
@Schema(name = "")
@NotBlank(message = "值不能为空")
@ExcelProperty(value = "")
private String value;

View File

@ -3,8 +3,7 @@ package com.ruoyi.demo.domain.bo;
import com.ruoyi.common.core.domain.TreeEntity;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
@ -20,34 +19,34 @@ import javax.validation.constraints.NotNull;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("测试树表业务对象")
@Schema(name = "测试树表业务对象")
public class TestTreeBo extends TreeEntity<TestTreeBo> {
/**
* 主键
*/
@ApiModelProperty("主键")
@Schema(name = "主键")
@NotNull(message = "主键不能为空", groups = {EditGroup.class})
private Long id;
/**
* 部门id
*/
@ApiModelProperty("部门id")
@Schema(name = "部门id")
@NotNull(message = "部门id不能为空", groups = {AddGroup.class, EditGroup.class})
private Long deptId;
/**
* 用户id
*/
@ApiModelProperty("用户id")
@Schema(name = "用户id")
@NotNull(message = "用户id不能为空", groups = {AddGroup.class, EditGroup.class})
private Long userId;
/**
* 树节点名
*/
@ApiModelProperty("树节点名")
@Schema(name = "树节点名")
@NotBlank(message = "树节点名不能为空", groups = {AddGroup.class, EditGroup.class})
private String treeName;

View File

@ -2,8 +2,7 @@ package com.ruoyi.demo.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.Date;
@ -16,7 +15,7 @@ import java.util.Date;
* @date 2021-07-26
*/
@Data
@ApiModel("测试单表视图对象")
@Schema(name = "测试单表视图对象")
@ExcelIgnoreUnannotated
public class TestDemoVo {
@ -26,70 +25,70 @@ public class TestDemoVo {
* 主键
*/
@ExcelProperty(value = "主键")
@ApiModelProperty("主键")
@Schema(name = "主键")
private Long id;
/**
* 部门id
*/
@ExcelProperty(value = "部门id")
@ApiModelProperty("部门id")
@Schema(name = "部门id")
private Long deptId;
/**
* 用户id
*/
@ExcelProperty(value = "用户id")
@ApiModelProperty("用户id")
@Schema(name = "用户id")
private Long userId;
/**
* 排序号
*/
@ExcelProperty(value = "排序号")
@ApiModelProperty("排序号")
@Schema(name = "排序号")
private Integer orderNum;
/**
* key键
*/
@ExcelProperty(value = "key键")
@ApiModelProperty("key键")
@Schema(name = "key键")
private String testKey;
/**
* 值
*/
@ExcelProperty(value = "")
@ApiModelProperty("")
@Schema(name = "")
private String value;
/**
* 创建时间
*/
@ExcelProperty(value = "创建时间")
@ApiModelProperty("创建时间")
@Schema(name = "创建时间")
private Date createTime;
/**
* 创建人
*/
@ExcelProperty(value = "创建人")
@ApiModelProperty("创建人")
@Schema(name = "创建人")
private String createBy;
/**
* 更新时间
*/
@ExcelProperty(value = "更新时间")
@ApiModelProperty("更新时间")
@Schema(name = "更新时间")
private Date updateTime;
/**
* 更新人
*/
@ExcelProperty(value = "更新人")
@ApiModelProperty("更新人")
@Schema(name = "更新人")
private String updateBy;

View File

@ -2,8 +2,7 @@ package com.ruoyi.demo.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.Date;
@ -16,7 +15,7 @@ import java.util.Date;
* @date 2021-07-26
*/
@Data
@ApiModel("测试树表视图对象")
@Schema(name = "测试树表视图对象")
@ExcelIgnoreUnannotated
public class TestTreeVo {
@ -25,42 +24,42 @@ public class TestTreeVo {
/**
* 主键
*/
@ApiModelProperty("主键")
@Schema(name = "主键")
private Long id;
/**
* 父id
*/
@ExcelProperty(value = "父id")
@ApiModelProperty("父id")
@Schema(name = "父id")
private Long parentId;
/**
* 部门id
*/
@ExcelProperty(value = "部门id")
@ApiModelProperty("部门id")
@Schema(name = "部门id")
private Long deptId;
/**
* 用户id
*/
@ExcelProperty(value = "用户id")
@ApiModelProperty("用户id")
@Schema(name = "用户id")
private Long userId;
/**
* 树节点名
*/
@ExcelProperty(value = "树节点名")
@ApiModelProperty("树节点名")
@Schema(name = "树节点名")
private String treeName;
/**
* 创建时间
*/
@ExcelProperty(value = "创建时间")
@ApiModelProperty("创建时间")
@Schema(name = "创建时间")
private Date createTime;