feat: 实现VoableService接口并重构相关服务

refactor: 优化WebSocket通信和任务处理逻辑

fix: 修复客户和供应商路径选择功能

docs: 更新任务通信规则文档

build: 更新项目版本至0.0.86-SNAPSHOT

style: 清理无用导入和日志输出

test: 添加CustomerFileMoveTasker测试类

chore: 更新tasker_mapper.json注册信息
This commit is contained in:
2025-09-25 18:57:17 +08:00
parent bf90117116
commit 45f7b611c5
61 changed files with 1638 additions and 286 deletions

View File

@@ -16,7 +16,7 @@
#### WebSocketClientService
`WebSocketClientService`类是客户端WebSocket通信的核心服务组件负责建立、维护与服务器的WebSocket连接并提供消息发送和接收的功能。主要职责包括
[`WebSocketClientService`](/client/src/main/java/com/ecep/contract/WebSocketClientService.java)类是客户端WebSocket通信的核心服务组件负责建立、维护与服务器的WebSocket连接并提供消息发送和接收的功能。主要职责包括
- **连接管理**初始化WebSocket连接、处理连接关闭和重连逻辑
- **心跳维护**:定期发送心跳消息保持连接活跃
@@ -26,7 +26,7 @@
#### WebSocketClientSession
`WebSocketClientSession`类代表一个特定的WebSocket会话每个Tasker任务执行时都会创建一个对应的会话实例。主要职责包括
[`WebSocketClientSession`](/client/src/main/java/com/ecep/contract/WebSocketClientSession.java)类代表一个特定的WebSocket会话每个Tasker任务执行时都会创建一个对应的会话实例。主要职责包括
- **会话标识**维护唯一的会话ID
- **任务提交**将Tasker任务提交到服务器端执行
@@ -78,14 +78,16 @@ public void afterPropertiesSet() throws Exception {
// 使用默认值作为fallback
taskClzMap = Map.of();
}
}```
}
```
### 2.3 接口实现区分
- 客户端Tasker实现`WebSocketClientTasker`接口
- 服务器端Tasker实现`WebSocketServerTasker`接口
- 客户端Tasker实现[`WebSocketClientTasker`](/client/src/main/java/com/ecep/contract/WebSocketClientTasker.java)接口
- 服务器端Tasker实现[`WebSocketServerTasker`](/server/src/main/java/com/ecep/contract/ds/customer/tasker/WebSocketServerTasker.java)接口
### 2.4 继承关系
- 客户端和服务器端Tasker继承自`Tasker<Object>`基类
- 客户端Tasker继承自[`Tasker<Object>`](/client/src/main/java/com/ecep/contract/task/Tasker.java)基类
- 服务器端Tasker继承自[`Tasker<Object>`](/server/src/main/java/com/ecep/contract/ui/Tasker.java)基类
## 3. 客户端Tasker实现规则
@@ -93,12 +95,13 @@ public void afterPropertiesSet() throws Exception {
### 3.1 核心属性
- 通常包含一个可设置的业务对象(如示例中的`@Setter private CompanyCustomerVo customer;`
- 配置Logger日志记录器
### 3.2 核心方法实现
- **getTaskName()**:返回任务名称,通常使用类名
- **updateProgress()**:继承或重写进度更新方法
- **execute()**:调用`callRemoteTask()`方法将任务发送到服务器端,传递必要参数, 参数类型只允许基本类和Vo类对象
- **updateProgress()**继承或重写进度更新方法public用于接收服务器端发送的进度更新消息
### 3.3 示例实现
```java