# school_campus_pay 表文档 ## 表概述 **表名**: school_campus_pay **功能**: 校区支付配置表,用于管理各校区独立的支付参数和密钥配置,包括微信支付商户号、API密钥、证书等,支持多校区支付、密钥管理和支付安全,为学校提供分校区的支付配置和财务管理功能 ## 字段说明 ``` Field Type Collation Null Key Default Extra Privileges Comment id int NULL NO PRI NULL auto_increment select,insert,update,references campus_id int NULL NO UNI NULL select,insert,update,references 校区id mchid varchar(255) utf8mb4_general_ci NO NULL select,insert,update,references 商户号 pay_sign_key varchar(255) utf8mb4_general_ci NO NULL select,insert,update,references APIv3密钥 apiclient_key varchar(255) utf8mb4_general_ci NO NULL select,insert,update,references 商户私钥 apiclient_cert varchar(255) utf8mb4_general_ci NO NULL select,insert,update,references 商户公钥 wx_pay_key varchar(255) utf8mb4_general_ci NO NULL select,insert,update,references 微信支付公钥 wx_pay_key_id varchar(255) utf8mb4_general_ci NO NULL select,insert,update,references 微信支付公钥ID created_at timestamp NULL YES CURRENT_TIMESTAMP DEFAULT_GENERATED select,insert,update,references 创建时间 updated_at timestamp NULL YES CURRENT_TIMESTAMP DEFAULT_GENERATED on update CURRENT_TIMESTAMP select,insert,update,references 修改时间 ``` ## 功能用途 ### 主要功能 - **校区支付配置**: 管理各校区独立的支付参数和密钥配置 - **微信支付集成**: 存储微信支付相关的商户号、密钥等配置信息 - **支付安全管理**: 管理支付过程中的各种密钥和证书 - **多校区支付**: 支持不同校区使用不同的支付配置 - **支付参数管理**: 统一管理支付接口所需的各种参数 - **密钥轮换**: 支持支付密钥的更新和轮换 - **支付渠道配置**: 配置不同支付渠道的参数 - **安全认证**: 管理支付过程中的安全认证信息 - **配置版本管理**: 跟踪支付配置的变更历史 ### 业务场景 - **校区收费**: 各校区独立进行学费、杂费等收费操作 - **在线支付**: 学员通过微信等渠道在线支付费用 - **退费处理**: 处理学员退费时的支付渠道配置 - **分校区结算**: 不同校区的收入分别结算到不同账户 - **支付配置更新**: 定期更新支付密钥和证书 - **多渠道支付**: 支持微信、支付宝等多种支付方式 - **支付安全审计**: 定期检查支付配置的安全性 - **异常支付处理**: 处理支付异常时的配置问题 - **财务对账**: 基于校区维度进行财务对账 ## 关联关系 ### 主要关联表 - `school_campus`: 校区表 (campus_id字段关联) - `school_pay`: 支付表 (支付配置关联) - `school_order`: 订单表 (支付处理关联) - `school_member`: 会员表 (支付用户关联) - `school_sys_config`: 系统配置表 (全局支付配置) - `school_account_log`: 账户日志表 (支付日志关联) - `school_pay_refund`: 退款表 (退款配置关联) ### 关联说明 - **校区关联**: campus_id关联校区表,实现校区级别的支付配置 - **支付关联**: 支付操作时根据校区获取对应的支付配置 - **订单关联**: 订单支付时使用对应校区的支付配置 - **用户关联**: 用户支付时根据所属校区使用相应配置 - **配置关联**: 与全局支付配置形成层级关系 - **日志关联**: 支付操作产生的日志记录使用的配置信息 - **退款关联**: 退款操作使用相同的支付配置进行处理 ## 索引建议 - **主键索引**: id (已存在) - **唯一索引**: - campus_id (校区唯一配置) - **业务索引**: - mchid (商户号查询) - created_at (创建时间查询) - updated_at (更新时间查询) - **复合索引**: - (campus_id, mchid) (校区商户查询) ## 注意事项 - **校区唯一性**: 每个校区只能有一套支付配置,campus_id必须唯一 - **密钥安全**: 所有密钥字段需要加密存储,防止泄露 - **配置完整性**: 所有支付相关字段都不能为空,确保支付功能正常 - **密钥格式**: 各种密钥和证书需要符合微信支付的格式要求 - **权限控制**: 支付配置的查看和修改需要严格的权限控制 - **配置验证**: 保存配置前需要验证密钥和证书的有效性 - **备份恢复**: 支付配置需要定期备份,支持快速恢复 - **变更记录**: 配置变更需要记录操作人员和变更时间 - **测试验证**: 配置更新后需要进行支付测试验证 - **监控告警**: 支付配置异常时需要及时告警 - **合规要求**: 支付配置需要符合相关法规和安全标准 - **密钥轮换**: 定期更换支付密钥,提高安全性 - **环境隔离**: 测试环境和生产环境的支付配置需要严格隔离 - **访问日志**: 记录支付配置的访问和使用日志 - **异常处理**: 支付配置错误时需要有降级和容错机制