This commit is contained in:
gr
2026-10-15 11:03:54 +08:00
parent 70ddc1a70a
commit bb28d93cec
64 changed files with 12747 additions and 420 deletions
+54
View File
@@ -152,6 +152,60 @@ return [
'exempt_roles' => [],
],
/*
* 复诊接诊率 stats.revisitRate(RevisitRateLogic)口径开关
* default_inherit_mode:页面默认口径,slot=继承按继承时诊次计入每列分母(新)| exclude=继承不计分母(旧,与线上现状一致)
* auto_assign_tier_field:tcm:auto-assign-pending 分档所用字段;过渡期沿用旧口径 visit2_rate_new_assign,产品确认后改 visit2_rate
* inherit_min_next_slot:继承起算诊次下限(k<=1 的继承等同新指派,从二诊列起算)
*/
'revisit_rate' => [
'default_inherit_mode' => 'exclude', // 用户要求复诊接诊率保持原口径;新口径仅在页面手动切换时启用
'auto_assign_tier_field' => 'visit2_rate_new_assign',
'inherit_min_next_slot' => 2,
],
/*
* 复诊到期提醒(tcm_diagnosis_revisit_due 快照 / 列表标红 / 弹窗延迟升级),代码统一 config('project.revisit_reach.xxx') 读取
* limit_er_center:全量扫描候选诊单限「二中心」子树医助(DeptLogic::getErCenterSubtreeDeptIdSet + admin_dept)
* anchor_chain:用药起算锚点回退链,sign=物流签收 ship=人工发货日志 create=下单时间;可收窄为 ['create'] 跳过物流/日志查询
* days_fallback_rx:订单 medication_days 缺失时回落处方 usage_days(剔除系统代开/作废/软删处方)
* days_default:订单与处方都缺天数时的兜底天数;0=不兜底、不计算 due_date、列表显示「缺开药天数」
* day_buckets:常见疗程档位,仅用于筛选/展示(到期按实际天数计算,15 天不归 14 档)
* grace_days / warn_days / severe_overdue_days:到期宽限天数 / 到期前预警天数(橙) / 超期深红阈值天数
* row_highlight_priority:列表行高亮优先级 overdue_first=复诊超期>未确认>未挂号 | unconfirmed_first
* toast_enabled / toast_limit:右下角到期弹窗总开关(上线先 false,主管用 chip 清存量)/ 单次最多条数
* snooze_intervals:第 n 次延迟的间隔秒数(4h→2h→1h→30min),default 为超出档位后的间隔
* work_hours:延迟提醒钳入的工作时段,落到结束时间之后顺延至次日开始时间
* contact_max_per_cycle / promise_max_days:每周期「已联系」免计延迟次数上限 / 承诺复诊日最远天数
* wecom_enabled / wecom_daily_cap / supervisor_admin_ids:企微推送(P2)开关 / 每条每日推送上限 / 抄送主管名单(dept 表无 leader 字段,配置过渡)
* wecom_daily_list_max:每日汇总文案最多列出的患者数(其余以「等 N 人」收尾)
* wecom_supervisor_snooze_min:延迟次数达到该值的行,tick 每日抄送一次主管名单(命令 tcm:revisit-due-notify --mode=tick)
*/
'revisit_reach' => [
'limit_er_center' => true,
'anchor_chain' => ['sign', 'ship', 'create'],
'days_fallback_rx' => true,
'days_default' => 0,
'day_buckets' => [14, 21, 28, 30],
'grace_days' => 0,
'warn_days' => 3,
'severe_overdue_days' => 7,
// 挂号与下单日至少相隔的天数才算「这笔药之后的复诊」(默认 1 = 次日起);同一天的面诊是开药前的那次面诊,不关闭周期
'appointment_min_gap_days' => 1,
'row_highlight_priority' => 'overdue_first',
'toast_enabled' => true,
'toast_limit' => 20,
'snooze_intervals' => [1 => 14400, 2 => 7200, 3 => 3600, 'default' => 1800],
'work_hours' => ['09:00', '20:00'],
'contact_max_per_cycle' => 2,
'promise_max_days' => 14,
'wecom_enabled' => false,
'wecom_daily_cap' => 2,
'supervisor_admin_ids' => [],
'wecom_daily_list_max' => 5,
'wecom_supervisor_snooze_min' => 5,
],
/*
* 提成结算 stats.commissionSettlement(YejiStatsLogic)
* require_system_auto_prescription:true(默认)仅系统代开口径(is_system_auto=1),常与订单列表「全部已完成」条数不一致。