1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
| -- OA数据同步定时任务配置SQL
| -- 在sys_job表中添加定时任务
|
| -- 1. OA完整同步任务(推荐)- 先同步部门,再同步用户
| INSERT INTO sys_job (job_name, job_group, invoke_target, cron_expression, misfire_policy, concurrent, status, create_by, create_time, remark)
| VALUES
| ('OA数据同步', 'DEFAULT', 'oaSyncTask.syncOaData', '0 0 2 * * ?', '3', '1', '1', 'admin', sysdate(),
| '每天凌晨2点自动同步OA部门和用户数据(先部门后用户)。默认停用,需手动启用。');
|
| -- 2. 部门同步任务(独立)
| INSERT INTO sys_job (job_name, job_group, invoke_target, cron_expression, misfire_policy, concurrent, status, create_by, create_time, remark)
| VALUES
| ('OA部门同步', 'DEFAULT', 'departmentSyncTask.syncDepartments', '0 0 2 * * ?', '3', '1', '1', 'admin', sysdate(),
| '每天凌晨2点同步OA部门数据。默认停用,建议使用"OA数据同步"任务。');
|
| -- 3. 用户同步任务(独立)- 注意:必须在部门同步之后执行
| INSERT INTO sys_job (job_name, job_group, invoke_target, cron_expression, misfire_policy, concurrent, status, create_by, create_time, remark)
| VALUES
| ('OA用户同步', 'DEFAULT', 'userSyncTask.syncUsers', '0 0 3 * * ?', '3', '1', '1', 'admin', sysdate(),
| '每天凌晨3点同步OA用户数据。默认停用,建议使用"OA数据同步"任务。');
|
| -- 说明:
| -- job_name: 任务名称
| -- job_group: 任务组名(DEFAULT为默认组)
| -- invoke_target: 调用目标字符串(Bean名称.方法名)
| -- cron_expression: cron表达式
| -- - '0 0 2 * * ?' = 每天凌晨2点执行
| -- - '0 0 3 * * ?' = 每天凌晨3点执行
| -- - '0 0 */4 * * ?' = 每4小时执行一次
| -- - '0 0/30 * * * ?' = 每30分钟执行一次
| -- misfire_policy: 错过执行策略(1=立即执行,2=执行一次,3=放弃执行)
| -- concurrent: 是否并发(0=允许,1=禁止)
| -- status: 状态(0=正常,1=暂停)
| -- create_by: 创建者
| -- create_time: 创建时间
| -- remark: 备注说明
|
| -- 使用建议:
| -- 1. 推荐使用"OA数据同步"任务,它会按正确顺序执行部门和用户同步
| -- 2. 如果需要分别控制,可以使用独立的部门和用户同步任务
| -- 3. 确保用户同步任务在部门同步任务之后执行(时间间隔至少5分钟)
|
|