用途:为项目生成周期性执行的 Cron 任务代码,基于 node-cron,输出 TypeScript Service、DAO 文件以及 server.ts 集成代码,并支持 Cron 运行日志记录。触发关键词包括“크론 작업”“주기적 실행”“스케줄러 생성”。
输入要求:需提供模块名(kebab-case)、任务说明、执行周期(Cron 表达式或韩文描述,如“매일 새벽 2시”),以及调度类型(固定调度用 node-cron 时间触发,或自适应调度用后台无限循环按数据量调整)。
主要能力:生成 service/{{module-name}}.service.ts 与 dao/{{module-name}}.dao.ts;DAO 含 countPending、findPending、insertCronLog、updateCronLog;输出 server-cron-integration.ts 集成代码(import、start{{SchedulerMethodName}}() 方法及 koaServer() 内调用);支持将韩文周期描述转换为 Cron 表达式,例如“1분마다”对应 '0 * * * * *'、“매일 새벽 2시”对应 '0 2 * * *';使用 Asia/Seoul 时区。
Cron 日志表:需创建 common_log_cron 表,包含 job_name、job_type(auto/manual)、start_time、end_time、duration、status(running/success/failed)、processed_count、success_count、failed_count、error_message、error_stack、server_info、detail_log、insert_seq、insert_date、update_seq、update_date 等字段。
使用方式:按模板替换变量后生成文件,将集成代码手动加入 server.ts,并执行校验命令:cd api && bun run build,cd api && bun run lint:fixed;确认 common_log_cron 表存在,不存在则创建。
限制:仅面向 node-cron 与 TypeScript 项目结构,需与既有目录 api/src/modules/ 及 server.ts 配合;server.ts 集成需手动完成;具体依赖版本、部署平台、收费方式等资料暂未提供。