Files
BMS/bms-back/sql/price/billing_recalc_price_menu.sql
T
2026-10-15 16:09:05 +08:00

28 lines
1.4 KiB
SQL

-- billing list: recalc product/redline amount (async; no AR restriction)
SET NAMES utf8mb4;
INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
SELECT 2332, N'重计费', m.menu_id, 22, '', NULL, 1, 0, 'F', '0', '0', 'price:billing:recalc', '#', 'admin', sysdate(), N'计费列表异步重算产品价/红线价(已出账也可)'
FROM (
SELECT menu_id FROM sys_menu
WHERE perms = 'price:billing:bill' AND menu_type = 'C'
UNION ALL
SELECT menu_id FROM sys_menu
WHERE component = 'price/billing/bill' AND menu_type = 'C'
) m
WHERE NOT EXISTS (SELECT 1 FROM sys_menu x WHERE x.menu_id = 2332 OR x.perms = 'price:billing:recalc')
LIMIT 1;
INSERT INTO sys_role_menu (role_id, menu_id)
SELECT 1, 2332
FROM DUAL
WHERE EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2332)
AND NOT EXISTS (SELECT 1 FROM sys_role_menu rm WHERE rm.role_id = 1 AND rm.menu_id = 2332);
-- cleanup old split permissions if previously inserted
DELETE FROM sys_role_menu WHERE menu_id = 2333;
DELETE FROM sys_menu WHERE menu_id = 2333 OR perms = 'price:billing:recalcRedline';
UPDATE sys_menu SET menu_name = N'重计费', perms = 'price:billing:recalc',
remark = N'计费列表异步重算产品价/红线价(已出账也可)'
WHERE menu_id = 2332 OR perms IN ('price:billing:recalcProduct', 'price:billing:recalc');