本文档主要介绍了支付网关数据库的设计细节,包括多个关键表的设计结构和字段定义。以下是对这些表的详细解读:
1. **菜单表(pub_menu)**:此表用于存储系统的菜单信息,包含字段如id(主键,自定义且不允许系统生成)、has_child(标识是否拥有子菜单)、icon(显示图标)、node(节点类型,区分顶级、一级和二级)、parent_id(上级菜单ID)、path(访问路径)和sort(排序)。例如,has_child字段用于判断一个菜单是否可以展开子菜单,path用于表示菜单的层级关系。
2. **菜单权限表(pub_permission)**:记录了菜单与特定权限之间的关联,包括权限名称(name)、编号(code)以及与pub_menu表的关联菜单ID(menu_id)。
3. **角色表(pub_role)**:用于管理用户角色,包括角色名称(name)、创建人(create_by,关联pub_member表中的用户名)、创建时间(create_time)和is_tmp(是否为模板角色,用于控制新角色权限的设置)。
4. **角色权限关联表(pub_role_permission)**:用于存储角色与权限之间的关系,通过角色ID(role_id)和权限ID(permission_id)来建立联系。
5. **角色菜单关联表(pub_role_menu)**:连接角色与菜单,通过角色ID(role_id)和菜单ID(menu_id)定义角色所能访问的菜单。
6. **用户角色关联表(pub_user_role)**:记录用户与角色的关联,通过unique索引user_role_only(由role_id和user_id组成)确保每个用户只能关联一个角色。字段如用户ID、角色ID等。
7. **用户登录信息表**:存储用户的登录信息,可能是用户账号、密码等,用于身份验证。
8. **登录日志**:记录用户的登录活动,包括登录时间、用户信息等,便于审计和安全追踪。
9. **操作日志**:跟踪系统操作,记录用户对系统的操作行为,如添加、修改或删除数据等。
10. **支付类表(p_pay_type)** 和 **支付方式表(p_pay_way)**:这两个表可能用于存储支付相关的类型和方式,比如信用卡、PayPal等,但具体内容在提供的部分并未给出,需要根据实际业务需求进行填充。
11. **商户表**:虽然未列出具体列,但可以推测该表可能包含商户的基本信息,如商户ID、名称、联系人等,与支付网关相关。
以上就是支付网关数据库设计文档的主要内容,这些表的设计旨在支持系统的权限管理、菜单导航、用户身份验证以及支付流程的记录。每个表都按照功能和数据管理的需求精心设计,以确保系统的高效性和安全性。在实际应用中,还需要根据业务场景进行适当的调整和扩展。