# school_pay_transfer 表文档 ## 表概述 **表名**: school_pay_transfer **功能**: 支付转账管理表,用于记录和管理系统中的各类转账业务,包括会员提现、退费转账、佣金结算等多种转账类型,支持银行转账、在线支付等多种转账方式,为财务管理和资金流转提供完整的转账记录和状态跟踪 ## 字段说明 ``` Field Type Collation Null Key Default Extra Privileges Comment id int NULL NO PRI NULL auto_increment select,insert,update,references trade_type varchar(255) utf8mb4_general_ci NO select,insert,update,references 业务类型 transfer_no varchar(50) utf8mb4_general_ci NO select,insert,update,references 转账单号 main_id int NULL NO 0 select,insert,update,references 会员id main_type varchar(255) utf8mb4_general_ci NO select,insert,update,references 主体类型 transfer_type varchar(20) utf8mb4_general_ci NO select,insert,update,references 转账类型 transfer_realname varchar(50) utf8mb4_general_ci NO select,insert,update,references 联系人名称 transfer_mobile varchar(11) utf8mb4_general_ci NO select,insert,update,references 手机号 transfer_bank varchar(255) utf8mb4_general_ci NO select,insert,update,references 银行名称 transfer_account varchar(255) utf8mb4_general_ci NO select,insert,update,references 收款账号 transfer_voucher varchar(255) utf8mb4_general_ci NO select,insert,update,references 凭证 transfer_remark varchar(255) utf8mb4_general_ci NO select,insert,update,references 凭证说明 transfer_payment_code varchar(255) utf8mb4_general_ci NO select,insert,update,references 收款码图片 transfer_fail_reason varchar(2000) utf8mb4_general_ci NO select,insert,update,references 失败原因 transfer_status varchar(20) utf8mb4_general_ci NO select,insert,update,references 转账状态 money decimal(10,2) NULL NO 0.00 select,insert,update,references 转账金额 create_time int NULL NO 0 select,insert,update,references 申请时间 transfer_time int NULL NO 0 select,insert,update,references 转账时间 update_time int NULL NO 0 select,insert,update,references openid varchar(50) utf8mb4_general_ci NO select,insert,update,references remark varchar(255) utf8mb4_general_ci NO select,insert,update,references batch_id varchar(500) utf8mb4_general_ci NO select,insert,update,references 转账批次id transfer_payee varchar(500) utf8mb4_general_ci NO select,insert,update,references 在线转账数据(json) out_batch_no varchar(500) utf8mb4_general_ci NO select,insert,update,references 扩展数据,主要用于记录接收到线上打款的业务数据编号 ``` ## 功能用途 ### 主要功能 - **转账业务管理**: 处理多种类型的转账业务需求 - **转账单号生成**: 为每笔转账生成唯一的转账单号 - **主体信息管理**: 记录转账相关的主体信息和类型 - **收款信息管理**: 管理收款人的详细信息和账户信息 - **转账方式支持**: 支持银行转账、在线支付等多种转账方式 - **凭证管理**: 存储和管理转账凭证和收款码信息 - **状态跟踪**: 实时跟踪转账的处理状态和结果 - **失败处理**: 记录转账失败的原因和处理方案 - **批次管理**: 支持批量转账的批次管理功能 - **金额管理**: 精确记录和管理转账金额 - **时间管理**: 记录申请时间、转账时间等关键时间节点 ### 业务场景 - **会员提现**: 处理会员账户余额的提现申请和转账 - **退费处理**: 处理学员退费的转账操作 - **佣金结算**: 处理销售人员、推荐人等的佣金转账 - **奖励发放**: 发放各类奖励和补贴的转账 - **供应商付款**: 向供应商或合作伙伴的付款转账 - **员工薪资**: 员工工资和奖金的转账发放 - **代理分润**: 代理商分润的转账结算 - **活动奖金**: 营销活动奖金的转账发放 - **保证金退还**: 各类保证金的退还转账 - **批量转账**: 批量处理多笔转账业务 - **紧急转账**: 处理紧急情况下的转账需求 - **定期结算**: 定期的财务结算转账 ## 关联关系 ### 主要关联表 - `school_member`: 会员信息表 (main_id关联,主体为会员时) - `school_personnel`: 人员信息表 (main_id关联,主体为员工时) - `school_pay`: 支付记录表 (关联原始支付信息) - `school_pay_refund`: 退费记录表 (退费转账关联) - `school_member_cash_out`: 会员提现表 (提现转账关联) - `school_account_log`: 账户日志表 (资金变动记录) - `school_sys_user`: 系统用户表 (操作人员信息) - `school_campus`: 校区信息表 (转账归属校区) ### 关联说明 - **主体关联**: main_id根据main_type关联不同的主体表(会员、员工等) - **支付关联**: 与school_pay表关联,记录原始支付信息 - **退费关联**: 退费转账与school_pay_refund表关联 - **提现关联**: 提现转账与school_member_cash_out表关联 - **账户关联**: 与school_account_log表关联,记录账户资金变动 - **用户关联**: 记录转账操作的系统用户信息 - **校区关联**: 转账业务归属的校区信息 - **批次关联**: 通过batch_id关联同批次的转账记录 ## 索引建议 - **主键索引**: id (已存在) - **业务索引**: - transfer_no (转账单号唯一查询) - main_id (主体转账记录查询) - transfer_status (转账状态查询) - trade_type (业务类型查询) - batch_id (批次转账查询) - **复合索引**: - (main_id, main_type) (主体转账记录查询) - (transfer_status, create_time) (状态时间查询) - (trade_type, transfer_status) (业务状态查询) - (batch_id, transfer_status) (批次状态查询) - (main_type, main_id, transfer_status) (完整主体状态查询) - **时间索引**: - create_time (申请时间查询) - transfer_time (转账时间查询) - update_time (更新时间查询) - **金额索引**: - money (金额范围查询) ## 注意事项 - **数据完整性**: main_id必须在对应的主体表中存在 - **单号唯一性**: transfer_no必须保证全局唯一性 - **金额精度**: money字段使用decimal类型,保证金额计算精度 - **状态一致性**: 转账状态变更需要同步更新相关业务表 - **时间逻辑**: transfer_time不能早于create_time - **主体类型**: main_type必须与main_id对应的表类型一致 - **批次管理**: 批量转账时batch_id必须保持一致 - **凭证安全**: 转账凭证和收款码需要做好安全存储 - **失败处理**: 转账失败时需要详细记录失败原因 - **重复检查**: 避免重复转账,需要做好幂等性控制 - **权限控制**: 转账操作需要严格的权限验证 - **审计追踪**: 所有转账操作需要记录详细的审计日志 - **资金安全**: 转账金额变更需要多重验证和确认 - **状态流转**: 转账状态流转需要遵循业务规则 - **异常处理**: 建立完善的异常处理和回滚机制 - **监控告警**: 大额转账和异常转账需要实时监控告警 - **合规要求**: 转账操作需要满足相关法规和合规要求