Hermes CI Fix
1a5356a2d1
feat(kpi): CMA保本点派生KPI F_BEP_REVENUE/COVER/GAP + 每日派生执行器 + 红黄绿静态阈值判定
- kpi_definitions entity1 新增3条派生KPI(456/457/458, formula/threshold/unit齐全)
- 新增 scripts/kpi_bep_deriver.py: 从 voucher_details 按财务口径聚合
(5001销售收入/5602管理费 YTD月均, 渠补率政策84.61%) → 计算保本销售额/
覆盖率/缺口 → upsert kpi_values source_type='derived' 幂等 + 同步yellow/red预警
- cron 06:35 注册(紧随 collector 06:30); 自动选最近完整月(8月未结账自动回退7月)
- kpis.py get_kpi: F_BEP_* 派生KPI按静态阈值文本判红黄绿(66.9→黄), 不走target比率
- 阈值经财务Bot 2026-09-08裁决: COVER >=100绿 50~100黄 <50红; GAP <=0绿 <=50黄 >50红
2026-09-08 13:43:20 +08:00
..
2026-09-08 13:43:20 +08:00
2026-08-28 09:59:07 +08:00
2026-08-31 15:33:07 +08:00
2026-08-31 15:33:07 +08:00
2026-08-31 15:33:07 +08:00
2026-07-12 17:46:08 +08:00
2026-07-12 17:46:08 +08:00
2026-08-31 15:33:07 +08:00
2026-07-12 17:46:08 +08:00
2026-08-31 15:33:07 +08:00
2026-08-31 07:44:00 +08:00
2026-05-28 17:32:22 +08:00
2026-08-10 23:15:19 +08:00
2026-07-12 17:46:08 +08:00
2026-08-31 07:44:00 +08:00
2026-08-10 23:56:14 +08:00
2026-08-31 17:05:21 +08:00
2026-08-15 21:26:27 +08:00
2026-07-22 12:06:52 +08:00
2026-08-30 12:05:36 +08:00
2026-07-12 17:46:08 +08:00
2026-08-31 15:33:07 +08:00
2026-08-31 15:33:07 +08:00
2026-08-27 15:51:19 +08:00
2026-09-03 18:15:05 +08:00
2026-05-28 17:32:22 +08:00
2026-07-14 16:02:33 +08:00
2026-07-14 16:02:33 +08:00
2026-06-05 07:51:20 +08:00
2026-07-14 16:02:33 +08:00
2026-08-31 15:33:07 +08:00
2026-06-05 07:51:20 +08:00
2026-07-12 17:46:08 +08:00
2026-08-31 15:33:07 +08:00
2026-08-10 23:50:14 +08:00
2026-08-28 09:59:07 +08:00
2026-07-12 17:46:08 +08:00
2026-07-29 18:16:37 +08:00
2026-07-18 18:01:45 +08:00
2026-08-25 00:25:11 +08:00
2026-09-08 13:43:20 +08:00
2026-07-14 16:02:33 +08:00
2026-07-14 16:02:33 +08:00
2026-09-06 16:57:03 +08:00
2026-07-22 17:43:59 +08:00
2026-08-27 15:51:19 +08:00
2026-07-22 12:06:52 +08:00
2026-07-14 16:02:33 +08:00
2026-08-27 10:59:56 +08:00
2026-07-14 17:32:22 +08:00
2026-07-21 23:41:40 +08:00
2026-08-04 15:35:15 +08:00
2026-08-30 19:16:19 +08:00
2026-08-30 12:05:36 +08:00
2026-07-12 17:46:08 +08:00
2026-06-05 07:51:20 +08:00
2026-07-12 17:46:08 +08:00
2026-07-16 16:39:24 +08:00
2026-08-28 07:18:54 +08:00
2026-07-12 17:46:08 +08:00
2026-07-25 07:44:41 +08:00
2026-07-12 17:46:08 +08:00
2026-07-21 17:30:50 +08:00
2026-07-12 17:46:08 +08:00
2026-08-11 00:11:25 +08:00
2026-07-13 09:52:06 +08:00
2026-07-21 17:22:43 +08:00
2026-08-19 22:58:10 +08:00
2026-07-14 16:02:33 +08:00
2026-07-14 16:02:33 +08:00
2026-09-03 18:41:44 +08:00
2026-07-14 16:02:33 +08:00
2026-09-08 13:43:20 +08:00
2026-09-03 18:15:47 +08:00
2026-09-07 11:34:56 +08:00
2026-09-07 11:04:35 +08:00
2026-09-03 01:34:13 +08:00
2026-09-05 09:11:27 +08:00
2026-08-31 15:57:54 +08:00
2026-08-31 17:05:21 +08:00
2026-08-30 12:05:36 +08:00
2026-09-03 23:09:58 +08:00
2026-09-08 11:27:01 +08:00
2026-09-03 18:19:58 +08:00
2026-09-06 16:47:25 +08:00