Files
hfb_sys/backend/migrations/000066_distribution_permissions.sql
T
yml2213 ac777f5b16 补全分销分账结算闭环并修复站点越权
- 权限落库:新增 000066 迁移,注册 11 个 distribution:* 权限并授权 super_admin/ops/finance
- 越权修复:siteAccessAllowed 校验贯穿站点/规则/订单/展示/支付通道/结算全部按 ID 操作
- 分账闭环:SplitSettlement 按比例拆分分成基数,销售加价归卖出方,尾差记入 rounding_adjustment_cent 归平台;支付快照与退款重算均按拆分写入参与方金额
- 结算批次:创建时聚合周期内待结算订单生成明细并汇总金额,结算时校验明细与总额一致后联动置位财务快照
- 手工补数接口禁止覆盖已有快照并写入审计日志
- 杂项:二维码池校验站点启用状态且不吞真实 DB 错误;绑定支付通道校验商户配置存在;表探测改为 sync.Once 缓存
2026-09-05 11:12:44 +08:00

35 lines
1.6 KiB
SQL

-- +goose Up
-- 分销后台权限:站点、规则、订单、账号展示、支付通道、结算批次。
INSERT INTO permissions (code, name, resource, action) VALUES
('distribution:site_view', '查看分销网站', 'distribution_site', 'view'),
('distribution:site_manage', '管理分销网站', 'distribution_site', 'manage'),
('distribution:rule_view', '查看分销规则', 'distribution_rule', 'view'),
('distribution:rule_manage', '管理分销规则', 'distribution_rule', 'manage'),
('distribution:order_view', '查看分销订单', 'distribution_order', 'view'),
('distribution:account_view', '查看分销账号展示', 'distribution_account', 'view'),
('distribution:account_display', '管理分销账号展示', 'distribution_account', 'display'),
('distribution:payment_view', '查看分销支付通道', 'distribution_payment', 'view'),
('distribution:payment_manage', '管理分销支付通道', 'distribution_payment', 'manage'),
('distribution:settlement_view', '查看分销结算', 'distribution_settlement', 'view'),
('distribution:settlement_manage', '管理分销结算', 'distribution_settlement', 'manage')
ON DUPLICATE KEY UPDATE
name = VALUES(name),
resource = VALUES(resource),
action = VALUES(action);
INSERT IGNORE INTO role_permissions (role_id, permission_id)
SELECT r.id, p.id
FROM roles r
JOIN permissions p ON p.code LIKE 'distribution:%'
WHERE r.code IN ('super_admin', 'ops', 'finance');
-- +goose Down
DELETE rp
FROM role_permissions rp
JOIN permissions p ON p.id = rp.permission_id
WHERE p.code LIKE 'distribution:%';
DELETE FROM permissions WHERE code LIKE 'distribution:%';