docs 补充项目注释

This commit is contained in:
AprilWind
2026-06-01 10:48:09 +08:00
parent f3ed8e82a7
commit 941c0b9032
73 changed files with 531 additions and 1 deletions
+6
View File
@@ -16,11 +16,17 @@
</description>
<modules>
<!-- demo模块 -->
<module>ruoyi-demo</module>
<!-- 代码生成模块 -->
<module>ruoyi-gen</module>
<!-- 调度任务模块 -->
<module>ruoyi-job</module>
<!-- 系统模块 -->
<module>ruoyi-system</module>
<!-- 工作流模块 -->
<module>ruoyi-workflow</module>
<!-- AI业务模块 -->
<module>ruoyi-ai</module>
</modules>
+5
View File
@@ -17,22 +17,27 @@
<dependencies>
<!-- 核心模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-core</artifactId>
</dependency>
<!-- api模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-api</artifactId>
</dependency>
<!-- ai模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-ai</artifactId>
</dependency>
<!-- satoken -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-satoken</artifactId>
</dependency>
<!-- web服务 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-web</artifactId>
+17
View File
@@ -23,86 +23,103 @@
<artifactId>ruoyi-common-core</artifactId>
</dependency>
<!-- api模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-api</artifactId>
</dependency>
<!-- 接口模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-doc</artifactId>
</dependency>
<!-- 短信模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-sms</artifactId>
</dependency>
<!-- 邮件服务 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mail</artifactId>
</dependency>
<!-- 缓存服务 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-redis</artifactId>
</dependency>
<!-- 数据库服务 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mybatis</artifactId>
</dependency>
<!-- 日志记录 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-log</artifactId>
</dependency>
<!-- excel -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-excel</artifactId>
</dependency>
<!-- 安全模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-security</artifactId>
</dependency>
<!-- web服务 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-web</artifactId>
</dependency>
<!-- 翻译模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-translation</artifactId>
</dependency>
<!-- 脱敏模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-sensitive</artifactId>
</dependency>
<!-- 数据库加解密模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-encrypt</artifactId>
</dependency>
<!-- ES搜索引擎服务 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-elasticsearch</artifactId>
</dependency>
<!-- 消息推送模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-push</artifactId>
</dependency>
<!-- mqtt模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mqtt</artifactId>
</dependency>
<!-- mcp模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mcp</artifactId>
@@ -36,22 +36,45 @@ public class MqttController {
@Autowired
private MqttClientTemplate client;
/**
* 发布一条 MQTT 测试消息。
*
* @return 是否发送成功
*/
@GetMapping("/send")
public boolean send() {
client.publish("/test/client", "测试测试".getBytes(StandardCharsets.UTF_8));
return true;
}
/**
* 订阅 QoS0 测试主题并打印原始消息。
*
* @param topic 消息主题
* @param payload 消息内容
*/
@MqttClientSubscribe("/test/#")
public void subQos0(String topic, byte[] payload) {
log.info("topic:{} payload:{}", topic, new String(payload, StandardCharsets.UTF_8));
}
/**
* 订阅 QoS1 测试主题并打印原始消息。
*
* @param topic 消息主题
* @param payload 消息内容
*/
@MqttClientSubscribe(value = "/qos1/#", qos = MqttQoS.QOS1)
public void subQos1(String topic, byte[] payload) {
log.info("topic:{} payload:{}", topic, new String(payload, StandardCharsets.UTF_8));
}
/**
* 订阅带产品和设备占位符的注册主题。
*
* @param topic 消息主题
* @param payload 消息内容
*/
@MqttClientSubscribe("/sys/${productKey}/${deviceName}/thing/sub/register")
public void thingSubRegister(String topic, byte[] payload) {
// 1.3.8 开始支持,@MqttClientSubscribe 注解支持 ${} 变量替换,会默认替换成 +
@@ -59,6 +82,13 @@ public class MqttController {
log.info("topic:{} payload:{}", topic, new String(payload, StandardCharsets.UTF_8));
}
/**
* 订阅 JSON 测试主题并演示自定义反序列化。
*
* @param topic 消息主题
* @param message MQTT 原始消息
* @param data 反序列化后的演示数据
*/
@MqttClientSubscribe(
value = "/test/json",
deserialize = MqttJsonDeserializer.class // 2.4.5 开始支持 自定义序列化,默认 json 序列化
@@ -6,6 +6,11 @@ import org.dromara.common.encrypt.enums.AlgorithmType;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 测试加密字段实体。
*
* @author Lion Li
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("test_demo")
@@ -3,5 +3,10 @@ package org.dromara.demo.esmapper;
import org.dromara.demo.domain.Document;
import org.dromara.easyes.core.kernel.BaseEsMapper;
/**
* Easy-Es 文档 Mapper。
*
* @author Lion Li
*/
public interface DocumentMapper extends BaseEsMapper<Document> {
}
+6
View File
@@ -22,21 +22,25 @@
<artifactId>ruoyi-common-core</artifactId>
</dependency>
<!-- 接口模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-doc</artifactId>
</dependency>
<!-- 数据库服务 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mybatis</artifactId>
</dependency>
<!-- web服务 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-web</artifactId>
</dependency>
<!-- 日志记录 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-log</artifactId>
@@ -48,12 +52,14 @@
<artifactId>velocity-engine-core</artifactId>
</dependency>
<!-- AnyLine Spring JDBC 环境 -->
<dependency>
<groupId>org.anyline</groupId>
<artifactId>anyline-environment-spring-data-jdbc</artifactId>
<version>${anyline.version}</version>
</dependency>
<!-- AnyLine MySQL 驱动 -->
<dependency>
<groupId>org.anyline</groupId>
<artifactId>anyline-data-jdbc-mysql</artifactId>
+1
View File
@@ -23,6 +23,7 @@
<artifactId>ruoyi-common-json</artifactId>
</dependency>
<!-- 调度模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-job</artifactId>
@@ -22,6 +22,13 @@ import java.math.BigDecimal;
@JobExecutor(name = "alipayBillTask")
public class AlipayBillTask {
/**
* 执行支付宝账单模拟任务,并将结果写入工作流上下文。
*
* @param jobArgs 任务执行参数
* @return 执行结果
* @throws InterruptedException 任务被中断时抛出
*/
public ExecuteResult jobExecute(JobArgs jobArgs) throws InterruptedException {
// 设置清算日期
String settlementDate = (String) jobArgs.getWfContext().get("settlementDate");
@@ -21,6 +21,13 @@ import java.math.BigDecimal;
@JobExecutor(name = "summaryBillTask")
public class SummaryBillTask {
/**
* 汇总工作流上下文中的微信与支付宝账单金额。
*
* @param jobArgs 任务执行参数
* @return 汇总执行结果
* @throws InterruptedException 任务被中断时抛出
*/
public ExecuteResult jobExecute(JobArgs jobArgs) throws InterruptedException {
// 获得微信账单
BigDecimal wechatAmount = BigDecimal.valueOf(0);
@@ -23,6 +23,12 @@ public class TestBroadcastJob {
@Value("${snail-job.port}")
private int clientPort;
/**
* 执行广播任务示例,随机模拟成功或失败。
*
* @param jobArgs 任务执行参数
* @return 执行结果
*/
public ExecuteResult jobExecute(JobArgs jobArgs) {
int randomInt = RandomUtil.randomInt(100);
log.info("随机数: {}", randomInt);
@@ -26,6 +26,13 @@ import java.util.stream.IntStream;
@JobExecutor(name = "testMapJobAnnotation")
public class TestMapJobAnnotation {
/**
* 根 Map 任务,将示例数据拆分为多个分片任务。
*
* @param mapArgs Map 任务参数
* @param mapHandler 分片调度处理器
* @return 分片调度结果
*/
@MapExecutor
public ExecuteResult doJobMapExecute(MapArgs mapArgs, MapHandler mapHandler) {
// 生成1~200数值并分片
@@ -39,6 +46,12 @@ public class TestMapJobAnnotation {
return mapHandler.doMap(partition, "doCalc");
}
/**
* 执行单个分片的累加计算。
*
* @param mapArgs 分片任务参数
* @return 分片计算结果
*/
@MapExecutor(taskName = "doCalc")
public ExecuteResult doCalc(MapArgs mapArgs) {
List<Integer> sourceList = (List<Integer>) mapArgs.getMapResult();
@@ -28,6 +28,13 @@ import java.util.stream.IntStream;
@JobExecutor(name = "testMapReduceAnnotation1")
public class TestMapReduceAnnotation1 {
/**
* 根 Map 任务,将示例数据拆分为多个分片任务。
*
* @param mapArgs Map 任务参数
* @param mapHandler 分片调度处理器
* @return 分片调度结果
*/
@MapExecutor
public ExecuteResult rootMapExecute(MapArgs mapArgs, MapHandler mapHandler) {
int partitionSize = 50;
@@ -40,6 +47,12 @@ public class TestMapReduceAnnotation1 {
return mapHandler.doMap(partition, "doCalc");
}
/**
* 执行单个分片的累加计算。
*
* @param mapArgs 分片任务参数
* @return 分片计算结果
*/
@MapExecutor(taskName = "doCalc")
public ExecuteResult doCalc(MapArgs mapArgs) {
List<Integer> sourceList = (List<Integer>) mapArgs.getMapResult();
@@ -51,6 +64,12 @@ public class TestMapReduceAnnotation1 {
return ExecuteResult.success(partitionTotal);
}
/**
* 汇总所有 Map 分片的计算结果。
*
* @param reduceArgs Reduce 任务参数
* @return 汇总结果
*/
@ReduceExecutor
public ExecuteResult reduceExecute(ReduceArgs reduceArgs) {
int reduceTotal = reduceArgs.getMapResult().stream().mapToInt(i -> Integer.parseInt((String) i)).sum();
@@ -17,6 +17,12 @@ import org.springframework.stereotype.Component;
@JobExecutor(name = "testStaticShardingJob")
public class TestStaticShardingJob {
/**
* 执行静态分片任务示例。
*
* @param jobArgs 任务执行参数
* @return 执行结果
*/
public ExecuteResult jobExecute(JobArgs jobArgs) {
String jobParams = Convert.toStr(jobArgs.getJobParams());
SnailJobLog.LOCAL.info("开始执行分片任务,参数:{}", jobParams);
@@ -22,6 +22,13 @@ import java.math.BigDecimal;
@JobExecutor(name = "wechatBillTask")
public class WechatBillTask {
/**
* 执行微信账单模拟任务,并将结果写入工作流上下文。
*
* @param jobArgs 任务执行参数
* @return 执行结果
* @throws InterruptedException 任务被中断时抛出
*/
public ExecuteResult jobExecute(JobArgs jobArgs) throws InterruptedException {
// 从上下文中获得清算日期并设置,如果上下文中清算日期
// 是sysdate设置为当前日期;否则取管理页面设置的值
+10
View File
@@ -22,21 +22,25 @@
<artifactId>ruoyi-common-core</artifactId>
</dependency>
<!-- api模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-api</artifactId>
</dependency>
<!-- 接口模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-doc</artifactId>
</dependency>
<!-- 数据库服务 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mybatis</artifactId>
</dependency>
<!-- 翻译模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-translation</artifactId>
@@ -48,6 +52,7 @@
<artifactId>ruoyi-common-oss</artifactId>
</dependency>
<!-- 日志记录 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-log</artifactId>
@@ -65,26 +70,31 @@
<artifactId>ruoyi-common-sms</artifactId>
</dependency>
<!-- 安全模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-security</artifactId>
</dependency>
<!-- web服务 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-web</artifactId>
</dependency>
<!-- 脱敏模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-sensitive</artifactId>
</dependency>
<!-- 数据库加解密模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-encrypt</artifactId>
</dependency>
<!-- 消息推送模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-push</artifactId>
+22 -1
View File
@@ -18,63 +18,84 @@
<dependencies>
<!-- 消息推送模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-push</artifactId>
</dependency>
<!-- 接口模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-doc</artifactId>
</dependency>
<!-- 邮件服务 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mail</artifactId>
</dependency>
<!-- 短信模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-sms</artifactId>
</dependency>
<!-- 数据库服务 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mybatis</artifactId>
</dependency>
<!-- web服务 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-web</artifactId>
</dependency>
<!-- 日志记录 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-log</artifactId>
</dependency>
<!-- excel -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-excel</artifactId>
</dependency>
<!-- 翻译模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-translation</artifactId>
</dependency>
<!-- 安全模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-security</artifactId>
</dependency>
<!-- api模块 -->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-api</artifactId>
</dependency>
<!-- Warm-Flow 工作流引擎 -->
<dependency>
<groupId>org.dromara.warm</groupId>
<artifactId>warm-flow-mybatis-plus-sb3-starter</artifactId>
</dependency>
<!-- Warm-Flow UI 插件 -->
<dependency>
<groupId>org.dromara.warm</groupId>
<artifactId>warm-flow-plugin-ui-sb-web</artifactId>
</dependency>
</dependencies>
</project>