# fs-task 定时任务模块说明
| 模块 | 职责 |
|---|---|
| fs-quartz | Quartz 框架、sys_job CRUD、ScheduleConfig |
| fs-task | 所有 Task Bean(原 admin-saas / fs-qw-task / fs-service 任务类) |
| fs-admin | 唯一调度入口:引入 fs-quartz + fs-task,无 @EnableScheduling |
| fs-admin-saas | 纯 API:引入 fs-task 仅用于 Controller 手动触发,无 fs-quartz、无 @Scheduled |
Quartz 通过 sys_job.invoke_target 调用 Spring Bean 方法,格式示例:
qwTask.addTag()
task.deleteUserOperationLog()
lobsterBridgeDataSyncService.syncLobsterBridgeData()
platformStatisticsServiceImpl.executeHourlyStats()
在 adminUI 定时任务页面点击 Bean注册表,可查看 fs-task 中所有可调度方法。
| 文件 | 说明 |
|---|---|
| fs-task/pom.xml | 任务模块依赖 |
| fs-task/.../TaskModuleConfiguration.java | Task Bean 包扫描配置 |
| fs-task/.../TaskRegistryController.java | Bean 注册表 API |
| sql/admin_sys_menu_job.sql | 总后台定时任务菜单 |
| sql/fs_task_sys_job_seed.sql | 通用任务 sys_job 种子数据 |
| sql/fs_qw_task_sys_job_seed.sql | 企微 fs-qw-task 迁移任务(28 条) |
| sql/generate_qw_task_sys_job_seed.py | 重新生成企微任务 SQL |
cd fs-task
mvn clean package -DskipTests
java -jar target/fs-task.jar
# 默认端口 8018,可通过 application.yml 修改
# 访问 http://localhost:8018/app/common/test 等手动接口
fs-admin 的 pom 依赖 fs-task(任务 Bean 由 TaskModuleConfiguration 自动扫描注册,Bean 注册表 /monitor/taskRegistry 和 /app/common 手动调试接口可用)。
fs-admin-saas 已移除对 fs-task 的直接依赖(原 SgTestController 等测试入口已随任务类迁移到 fs-task 模块内部;如需保留特定测试端点,可在 fs-task 内添加或通过 HTTP 远程调用旧 taskApi)。
相关文件: