You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

1.9 KiB

09 — 超期未跟进提醒

What to build: 后台可配一条全局单例的「超期未跟进提醒」规则(首次触发天数/二次间隔天数/开关),调度 Job 定期扫描超期客户并落待发通知。计时锚点=客户"成为有主"的时刻,跟进即刷新。

Blocked by: 02 — 客户主表 CRUD + 查重校验;06 — 客户详情页(跟进记录刷新锚点)

Status: ready-for-agent

Spec 依据(详见 issues/10-answer.md):D8 三层对称商机回收提醒但配置=单例(不套版本化);D15/Q15 锚点=成为有主时刻。

  • crm-rule 侧 customer_reminder_rule 单例表(票 10 §B,跨模块改动):单行表 id 固定=1;masterEnabled/firstTriggerEnabled/firstTriggerDays(默认30)/secondIntervalEnabled/secondIntervalDays(默认7);无版本号/状态机/rule_code
  • CustomerReminderRuleInitializer 种子初始化器(对称 StageTemplateInitializer 兜底范式)植入默认行
  • 校验:firstTriggerDays>0secondIntervalDays>0;保存=全量覆盖(保存即生效);RBAC 功能权限 customer.reminder.rule
  • 规则契约:GET /api/rule/customer/reminder(读单行)/ PUT /api/rule/customer/reminder(全量覆盖+记操作日志)
  • crm-customer 侧 customer_pending_notice 待发通知表(对称 opportunity_pending_notice
  • CustomerReminderJob(@Scheduled,对称 OpportunityMaintenanceJob):masterEnabled=0 整轮跳过;扫 last_valid_follow_time 超期客户写待发通知
  • 触发口径(票 10 §C,锚点=成为有主时刻,Q15 拍板 A):① 新建直接指派负责人→锚点=create_time;② 新建进公海(无负责人)→锚点=NULL 不提醒,被领取/分配时→锚点=领取时刻;③ 每次写跟进刷新锚点(票 06)
  • 只前进、确定性提醒链;索引 idx_last_follow(last_valid_follow_time, owner_user_id) 扫表(票 02 已建)