c670b9e454
- 确定性领域引擎(分类/评分/分级/红线/费用/裁决)+LLM(通义千问)语言理解 - 6步评估向导、服务端草稿持久化(跨设备/编辑草稿保护) - 工作流(草稿→风控→管理层)、RBAC、报告导出、校准、客户/费率/红线/最低工资管理 - 专业图标体系替换全部emoji、看板美化 - 生产化:API_BASE可配置(同源反代)、auth密钥惰性读取修复RBAC - 444单测+204前端测试+51 e2e
38 lines
1.7 KiB
JavaScript
38 lines
1.7 KiB
JavaScript
/* eslint-disable */
|
||
/**
|
||
* 红线可计算触发条件:将红线绑定到某项度量(月净利率/月毛利率/客户平均逾期天数/单客户集中度),
|
||
* 配合比较运算符与阈值,使红线可在评估时自动判定命中(而非一律"待核实")。
|
||
*
|
||
* - linked_metric: 关联度量键(netMargin / grossMargin / avgOverdueDays / concentration),
|
||
* 为空表示该红线仍需人工核实(合规/资质类红线)。
|
||
* - compare_op: 比较运算符(>=, <=, >, <)。
|
||
* - threshold: 阈值;百分比类度量(净利率/毛利率/集中度)按百分数填写(如 0 表示 0%、5 表示 5%),
|
||
* 逾期天数按天填写。
|
||
*/
|
||
|
||
exports.up = (pgm) => {
|
||
pgm.sql(`
|
||
ALTER TABLE redline_rules ADD COLUMN IF NOT EXISTS linked_metric TEXT;
|
||
ALTER TABLE redline_rules ADD COLUMN IF NOT EXISTS compare_op TEXT;
|
||
ALTER TABLE redline_rules ADD COLUMN IF NOT EXISTS threshold DOUBLE PRECISION;
|
||
`);
|
||
|
||
// 为内置数值型红线预置可计算条件(仅当字段为空时设置,避免覆盖人工配置)。
|
||
pgm.sql(`
|
||
UPDATE redline_rules SET linked_metric='netMargin', compare_op='<', threshold=0
|
||
WHERE id='negative-margin-3m' AND linked_metric IS NULL;
|
||
UPDATE redline_rules SET linked_metric='avgOverdueDays', compare_op='>', threshold=90
|
||
WHERE id='overdue-90days' AND linked_metric IS NULL;
|
||
UPDATE redline_rules SET linked_metric='concentration', compare_op='>', threshold=50
|
||
WHERE id='concentration-50pct' AND linked_metric IS NULL;
|
||
`);
|
||
};
|
||
|
||
exports.down = (pgm) => {
|
||
pgm.sql(`
|
||
ALTER TABLE redline_rules DROP COLUMN IF EXISTS linked_metric;
|
||
ALTER TABLE redline_rules DROP COLUMN IF EXISTS compare_op;
|
||
ALTER TABLE redline_rules DROP COLUMN IF EXISTS threshold;
|
||
`);
|
||
};
|