Files
contract-manager/docs/task/EmployeesSyncTask_Tasks.md
songqq a784438e97 feat: 实现员工同步任务的WebSocket支持及合同名称锁定功能
- 为EmployeesSyncTask添加WebSocket客户端和服务端支持,实现实时任务进度反馈
- 新增合同名称锁定功能,防止误修改重要合同名称
- 优化SmbFileService的连接异常处理,提高稳定性
- 重构ContractFilesRebuildTasker的任务执行逻辑,改进错误处理
- 更新tasker_mapper.json注册EmployeesSyncTask
- 添加相关任务文档和验收报告

修复WebSocketClientSession的任务完成状态处理问题
改进UITools中任务执行的线程管理
优化DepartmentService的findByCode方法返回类型
2025-11-20 16:26:34 +08:00

6.5 KiB
Raw Blame History

EmployeesSyncTask WebSocket集成实现任务分解

任务概述

根据《EmployeesSyncTask WebSocket集成设计方案》将整个集成工作分解为6个原子任务按依赖关系排序执行。

任务依赖图

graph TD
    A[任务4: 客户端WebSocket支持] --> C[任务6: 验证和测试]
    B[任务5: 服务器端WebSocket支持和注册] --> C
    C --> D[任务6: 验证和测试]

原子任务清单

任务4: 实现客户端WebSocket支持

输入契约:

  • 现有客户端EmployeesSyncTask.java文件13行基础实现
  • WebSocketClientTasker接口规范client/src/main/java/com/ecep/contract/WebSocketClientTasker.java
  • 项目现有的客户端Tasker实现参考
  • UITools任务对话框工具类

输出契约:

  • 升级后的客户端EmployeesSyncTask.java文件实现WebSocketClientTasker接口
  • 支持远程任务调用和实时进度同步
  • 完整的错误处理和UI反馈机制

实现约束:

  • 严格遵循WebSocketClientTasker接口规范
  • 保持与现有客户端Tasker实现的一致性
  • 实现getTaskName()方法返回"EmployeesSyncTask"
  • 集成项目现有的UI反馈机制

依赖关系:

  • 前置依赖: 无
  • 后置依赖: 任务6验证测试

验收标准:

  • 客户端代码编译通过
  • 实现WebSocketClientTasker接口所有必需方法
  • getTaskName()返回正确的任务名称
  • 能够通过WebSocket提交任务到服务器
  • 能够接收和显示服务器端推送的进度和消息
  • 异常处理机制完善

任务5: 实现服务器端WebSocket支持和注册

输入契约:

  • 现有服务器端EmployeesSyncTask.java文件159行完整业务逻辑
  • WebSocketServerTasker接口规范server/src/main/java/com/ecep/contract/service/tasker/WebSocketServerTasker.java
  • tasker_mapper.json配置文件server/src/main/resources/
  • 现有服务器端WebSocket Tasker实现参考

输出契约:

  • 升级后的服务器端EmployeesSyncTask.java文件实现WebSocketServerTasker接口
  • 更新后的tasker_mapper.json配置文件包含EmployeesSyncTask注册
  • 支持WebSocket通信的服务器端任务执行能力

实现约束:

  • 严格遵循WebSocketServerTasker接口规范
  • 保持现有业务逻辑execute方法完全不变
  • 在tasker_mapper.json中正确注册任务
  • 确保任务名称与客户端调用名称一致

依赖关系:

  • 前置依赖: 无
  • 后置依赖: 任务6验证测试

验收标准:

  • 服务器端代码编译通过
  • 实现WebSocketServerTasker接口继承自Callable