-- GPS分段里程补偿计算定时任务配置
-- 用于补偿因服务故障、重启等原因导致遗漏的GPS数据计算

-- GPS分段里程补偿计算任务（每天凌晨2点执行，回溯7天数据）
INSERT INTO sys_job (job_name, job_group, invoke_target, cron_expression, misfire_policy, concurrent, status, create_by, create_time, remark)
VALUES (
  'GPS分段里程补偿计算',
  'DEFAULT',
  'vehicleGpsSegmentMileageTask.executeCompensationCalculation(''7'')',
  '0 0 2 * * ?',
  '2',
  '0',
  '1',
  'admin',
  NOW(),
  '每天凌晨2点执行，检查最近7天内未被处理的GPS坐标并进行补偿计算。参数7表示回溯7天，可根据需要调整'
);

-- 配置说明
-- 1. 任务默认状态为'1'（暂停），需要在后台管理系统中手动启动
-- 2. 建议在凌晨执行，避免影响白天业务高峰
-- 3. 回溯天数可通过参数调整，建议不超过30天，避免数据量过大影响性能
-- 4. 补偿计算逻辑：
--    - 查询指定时间范围内所有车辆
--    - 检查每辆车的GPS坐标是否已被分段处理（通过segment_id判断）
--    - 对未处理的GPS坐标执行分段里程计算
--    - 自动关联任务ID和任务编号
-- 5. 与实时计算任务的区别：
--    - 实时计算：处理最近的GPS数据（如最近10分钟）
--    - 补偿计算：回溯检查历史数据，补充遗漏的计算
-- 6. cron表达式说明：
--    - '0 0 2 * * ?' : 每天凌晨2点执行
--    - 可根据实际情况调整执行时间

-- 使用示例
-- 1. 默认回溯7天：executeCompensationCalculation() 或 executeCompensationCalculation('7')
-- 2. 回溯3天：executeCompensationCalculation('3')
-- 3. 回溯30天：executeCompensationCalculation('30')
