Files
junhong_cmp_fiber/migrations/000213_add_agent_recharge_offline_fields.up.sql
break 7891189712
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m52s
feat(代理自充): AUG26-017 代理自充收款方式与线下预存款审批字段
- 受控配置新增代理在线自充允许范围(仅微信/仅支付宝/同时支持),读侧与创建侧取允许范围与可用商户池交集,两侧失败关闭
- 新增允许范围查询与修改端点,读限代理与平台账号、写限超级管理员,复用受控配置写服务留痕
- tb_agent_recharge_record 新增交易流水号、线下收款方式三列快照与其他凭证列(成对迁移 000213)
- 线下申请校验启用的收款方式字典项与必填交易流水号,交易流水号独立于在线渠道交易号、不参与去重
- 扩展 offline_recharge_approval 场景可映射字段白名单与字典引用保护
- 新增付款凭证识别能力与交易流水号预填接口,识别不落库、日志不记录载荷
2026-09-11 15:21:23 +08:00

27 lines
2.0 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- 代理线下预存款审批字段:收款方式快照、交易流水号与其他凭证。
-- 新增列保持可空以兼容历史行;不新增唯一约束,交易流水号不参与去重。
-- external_transaction_no 独立于在线渠道的 payment_transaction_id两者语义与写入方互不影响。
ALTER TABLE tb_agent_recharge_record
ADD COLUMN IF NOT EXISTS external_transaction_no varchar(128),
ADD COLUMN IF NOT EXISTS offline_payment_method_id bigint,
ADD COLUMN IF NOT EXISTS offline_payment_method_code varchar(64),
ADD COLUMN IF NOT EXISTS offline_payment_method_name varchar(100),
ADD COLUMN IF NOT EXISTS other_voucher_keys jsonb;
-- 收款方式引用判定与详情查询索引:仅索引有效引用行。
CREATE INDEX IF NOT EXISTS idx_agent_recharge_offline_payment_method
ON tb_agent_recharge_record (offline_payment_method_id)
WHERE offline_payment_method_id IS NOT NULL AND deleted_at IS NULL;
-- 交易流水号检索索引:不是唯一约束,允许重复申报。
CREATE INDEX IF NOT EXISTS idx_agent_recharge_external_transaction_no
ON tb_agent_recharge_record (external_transaction_no)
WHERE external_transaction_no IS NOT NULL AND external_transaction_no <> '' AND deleted_at IS NULL;
COMMENT ON COLUMN tb_agent_recharge_record.external_transaction_no IS '线下充值交易流水号,由付款凭证识别预填并经人工确认,独立于在线渠道第三方交易号';
COMMENT ON COLUMN tb_agent_recharge_record.offline_payment_method_id IS '线下收款方式字典ID关联tb_employee_collection_payment_method.id';
COMMENT ON COLUMN tb_agent_recharge_record.offline_payment_method_code IS '线下收款方式稳定编码快照,字典改名或停用不影响历史记录';
COMMENT ON COLUMN tb_agent_recharge_record.offline_payment_method_name IS '线下收款方式名称快照,字典改名或停用不影响历史记录';
COMMENT ON COLUMN tb_agent_recharge_record.other_voucher_keys IS '其他凭证对象存储Key列表jsonb 存储 []string只保存对象键引用最多5个';