mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-20 11:05:18 +08:00
172 lines
4.3 KiB
Markdown
172 lines
4.3 KiB
Markdown
|
|
[根目录](../CLAUDE.md) > **jsowell-common**
|
|||
|
|
|
|||
|
|
# jsowell-common 模块
|
|||
|
|
|
|||
|
|
通用工具模块,提供工具类、常量、异常、注解等基础组件。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 变更记录 (Changelog)
|
|||
|
|
|
|||
|
|
### 2026-02-03 11:32:30
|
|||
|
|
- 初始化模块文档
|
|||
|
|
- 识别 60 个枚举类
|
|||
|
|
- 统计 100+ 工具类和数据结构
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 模块职责
|
|||
|
|
|
|||
|
|
- **工具类**: 字符串、日期、文件、HTTP 等工具
|
|||
|
|
- **常量定义**: 系统常量、RabbitMQ 常量
|
|||
|
|
- **枚举类**: 订单状态、支付方式、设备状态等
|
|||
|
|
- **注解定义**: 日志、权限、数据源等注解
|
|||
|
|
- **基础实体**: BaseEntity、AjaxResult、R
|
|||
|
|
- **协议数据**: 云快充协议、电动自行车协议数据结构
|
|||
|
|
- **MQ 配置**: RabbitMQ 队列、交换机配置
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 入口与启动
|
|||
|
|
|
|||
|
|
本模块为基础工具模块,无独立启动入口。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 对外接口
|
|||
|
|
|
|||
|
|
### 核心类
|
|||
|
|
|
|||
|
|
| 类 | 说明 |
|
|||
|
|
|-----|------|
|
|||
|
|
| `AjaxResult` | 统一返回结果 |
|
|||
|
|
| `R` | 泛型返回结果 |
|
|||
|
|
| `BaseEntity` | 基础实体类 |
|
|||
|
|
| `BaseController` | 基础控制器 |
|
|||
|
|
| `LoginUser` | 登录用户信息 |
|
|||
|
|
|
|||
|
|
### 注解
|
|||
|
|
|
|||
|
|
| 注解 | 说明 |
|
|||
|
|
|------|------|
|
|||
|
|
| `@Log` | 操作日志 |
|
|||
|
|
| `@DataScope` | 数据权限 |
|
|||
|
|
| `@DataSource` | 数据源切换 |
|
|||
|
|
| `@RateLimiter` | 接口限流 |
|
|||
|
|
| `@RepeatSubmit` | 防重复提交 |
|
|||
|
|
| `@Anonymous` | 匿名访问 |
|
|||
|
|
| `@CostTime` | 耗时统计 |
|
|||
|
|
|
|||
|
|
### 枚举类(60+)
|
|||
|
|
|
|||
|
|
**订单相关**:
|
|||
|
|
- `OrderStatusEnum` - 订单状态
|
|||
|
|
- `OrderPayStatusEnum` - 支付状态
|
|||
|
|
- `OrderPayModeEnum` - 支付方式
|
|||
|
|
- `OrderTypeEnum` - 订单类型
|
|||
|
|
|
|||
|
|
**支付相关**:
|
|||
|
|
- `PayModeEnum` - 支付方式
|
|||
|
|
- `PaymentInstitutionsEnum` - 支付机构
|
|||
|
|
- `AdapayStatusEnum` - 汇付状态
|
|||
|
|
- `AdapayPayChannelEnum` - 汇付渠道
|
|||
|
|
|
|||
|
|
**设备相关**:
|
|||
|
|
- `PileStatusEnum` - 充电桩状态
|
|||
|
|
- `PileConnectorStatusEnum` - 充电枪状态
|
|||
|
|
- `StartModeEnum` - 启动方式
|
|||
|
|
|
|||
|
|
**第三方平台**:
|
|||
|
|
- `ThirdPlatformTypeEnum` - 平台类型
|
|||
|
|
- `ThirdPartyApiEnum` - API 类型
|
|||
|
|
- `ThirdPartyReturnCodeEnum` - 返回码
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 关键依赖与配置
|
|||
|
|
|
|||
|
|
### RabbitMQ 配置
|
|||
|
|
|
|||
|
|
```java
|
|||
|
|
// RabbitConfig.java - 主配置
|
|||
|
|
// PointsRabbitConfig.java - 积分队列配置
|
|||
|
|
// DirectRabbitConfig.java - 直连交换机配置
|
|||
|
|
// TopicRabbitConfig.java - 主题交换机配置
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 常量定义
|
|||
|
|
|
|||
|
|
```java
|
|||
|
|
// RabbitConstants.java
|
|||
|
|
public class RabbitConstants {
|
|||
|
|
public static final String ORDER_QUEUE = "order.queue";
|
|||
|
|
public static final String POINTS_QUEUE = "points.queue";
|
|||
|
|
// ...
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 数据模型
|
|||
|
|
|
|||
|
|
### 云快充协议数据
|
|||
|
|
|
|||
|
|
| 类 | 说明 |
|
|||
|
|
|-----|------|
|
|||
|
|
| `YKCDataProtocol` | 协议数据 |
|
|||
|
|
| `YKCBaseMessage` | 基础消息 |
|
|||
|
|
| `LoginRequestData` | 登录数据 |
|
|||
|
|
| `RealTimeMonitorData` | 实时监控数据 |
|
|||
|
|
| `TransactionRecordsData` | 交易记录 |
|
|||
|
|
|
|||
|
|
### 设备到平台数据(0x01-0xF1)
|
|||
|
|
|
|||
|
|
位于 `com.jsowell.common.core.domain.ykc.device2platform/`
|
|||
|
|
|
|||
|
|
### 平台到设备数据(0x02-0x56)
|
|||
|
|
|
|||
|
|
位于 `com.jsowell.common.core.domain.ykc.platform2device/`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 常见问题 (FAQ)
|
|||
|
|
|
|||
|
|
### Q: 如何添加新的枚举?
|
|||
|
|
在 `com.jsowell.common.enums` 包下创建,参考现有枚举实现
|
|||
|
|
|
|||
|
|
### Q: 如何添加新的 RabbitMQ 队列?
|
|||
|
|
在 `RabbitConfig` 或新建配置类中定义 Queue、Exchange、Binding
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 相关文件清单
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
jsowell-common/
|
|||
|
|
├── src/main/java/com/jsowell/common/
|
|||
|
|
│ ├── annotation/ # 注解定义
|
|||
|
|
│ ├── config/ # 配置类
|
|||
|
|
│ │ └── mq/ # RabbitMQ 配置
|
|||
|
|
│ ├── constant/ # 常量定义
|
|||
|
|
│ ├── core/
|
|||
|
|
│ │ ├── controller/ # BaseController
|
|||
|
|
│ │ └── domain/ # 基础实体
|
|||
|
|
│ │ ├── entity/ # 系统实体
|
|||
|
|
│ │ ├── model/ # 登录模型
|
|||
|
|
│ │ ├── ykc/ # 云快充协议
|
|||
|
|
│ │ └── ebike/ # 电动自行车协议
|
|||
|
|
│ ├── enums/ # 枚举类 (60+)
|
|||
|
|
│ │ ├── adapay/
|
|||
|
|
│ │ ├── ebike/
|
|||
|
|
│ │ ├── lianlian/
|
|||
|
|
│ │ ├── parkplatform/
|
|||
|
|
│ │ ├── sim/
|
|||
|
|
│ │ ├── thirdparty/
|
|||
|
|
│ │ ├── uniapp/
|
|||
|
|
│ │ └── ykc/
|
|||
|
|
│ ├── exception/ # 异常类
|
|||
|
|
│ ├── filter/ # 过滤器
|
|||
|
|
│ └── utils/ # 工具类
|
|||
|
|
└── pom.xml
|
|||
|
|
```
|