-- 考勤:历史缺卡状态补全(供 BASE_TIMETASK 任务调度,与代码接口 BackfillAbsentStatusForPastDaysCron 对应) -- 使用前请: -- 1) 在 appsettings.json 配置 Attendance:BackfillCronSecret 为强随机字符串(与下方 URL 中 cronSecret 一致) -- 2) 将 F_Id 换成 YitId 等雪花主键;将请求路径中的域名改为实际 API 根地址 -- 3) 若编码 F_ENCODE 已存在,请修改 enCode 避免重复 -- 4) Cron 表达式:每日凌晨 2 点执行(与 SpareTime 使用的 Quartz 表达式一致) -- INSERT 示例(MySQL,请按实际租户库执行) /* INSERT INTO BASE_TIMETASK ( F_Id, F_ENCODE, F_FULLNAME, F_EXECUTETYPE, F_EXECUTECONTENT, F_EXECUTECYCLEJSON, F_DESCRIPTION, F_SORTCODE, F_ENABLEDMARK, F_CREATORTIME, F_CREATORUSERID, F_DeleteMark ) VALUES ( '809321761001702662', 'AttendanceBackfillAbsent', '考勤-历史缺卡补全', '1', '{ "cron":"0 0 2 * * ?","interfaceType":"GET","interfaceUrl":"http://localhost:5000/api/Extend/LqAttendanceRecord/BackfillAbsentStatusForPastDaysCron?cronSecret=请与appsettings中Attendance_BackfillCronSecret一致&daysBack=30&fixExistingWrongStatus=true&createMissingRecords=false&createMissingMaxDays=45","parameter":[],"stored":"","database":"0","storedParameter":[] }', '0 0 2 * * ?', '每日凌晨补全昨日之前:无打卡却为正常/迟到的记录→缺卡;可选补INSERT无考勤行(createMissingRecords=false 时仅修正已有行)', 100, 1, NOW(), 'admin', NULL ); */ -- 说明: -- F_EXECUTETYPE:1 = 请求接口(见 TimeTaskService.PerformJob) -- executeContent 为 JSON 字符串,与前端「系统管理 - 任务调度」表单保存格式一致;请求参数也可放在 parameter 数组中(键值对),已修复调度器对 parameter 的合并逻辑 -- 推荐仍把完整 URL(含 query)写在 interfaceUrl,避免参数编码问题