| 1234567891011121314151617181920212223242526272829303132333435363738 |
- -- 评分规则表补「规则名称/订单类型」并写入三条权重方案
- -- 可在 Navicat 中直接执行
- -- 1) 加 name 字段(若已存在会报 Duplicate column,忽略后继续)
- ALTER TABLE `supplier_score_rule`
- ADD COLUMN `name` varchar(100) NOT NULL DEFAULT '' COMMENT '规则名称/订单类型' AFTER `id`;
- -- 2) 对齐/写入三条方案
- UPDATE `supplier_score_rule`
- SET `name`='普通订单(价格优先)', `quality_weight`=30, `price_weight`=50, `lead_weight`=20, `lead_enabled`=1, `status`='normal', `updatetime`=NOW()
- WHERE `id`=1
- OR (`quality_weight`=30 AND `price_weight`=50 AND `lead_weight`=20);
- INSERT INTO `supplier_score_rule`
- (`name`,`quality_weight`,`price_weight`,`lead_weight`,`lead_enabled`,`is_default`,`status`,`createtime`,`updatetime`)
- SELECT '急单(交期优先)', 30, 20, 50, 1, 0, 'normal', NOW(), NOW()
- FROM DUAL
- WHERE NOT EXISTS (SELECT 1 FROM `supplier_score_rule` WHERE `name`='急单(交期优先)');
- INSERT INTO `supplier_score_rule`
- (`name`,`quality_weight`,`price_weight`,`lead_weight`,`lead_enabled`,`is_default`,`status`,`createtime`,`updatetime`)
- SELECT '重点产品(质量优先)', 50, 20, 30, 1, 0, 'normal', NOW(), NOW()
- FROM DUAL
- WHERE NOT EXISTS (SELECT 1 FROM `supplier_score_rule` WHERE `name`='重点产品(质量优先)');
- -- 3) 非方案旧数据隐藏(例如原先 60/40/0)
- UPDATE `supplier_score_rule`
- SET `status`='hidden', `is_default`=0, `updatetime`=NOW()
- WHERE `status`='normal'
- AND (`name`='' OR `name` IS NULL OR `name` NOT IN (
- '普通订单(价格优先)',
- '急单(交期优先)',
- '重点产品(质量优先)'
- ));
- -- 4) 默认使用「普通订单(价格优先)」
- UPDATE `supplier_score_rule` SET `is_default`=0;
- UPDATE `supplier_score_rule` SET `is_default`=1 WHERE `name`='普通订单(价格优先)' AND `status`='normal';
|