🗄️ 数据库设计

📊 数据表 ER 关系总图
用户
举报
报案/止付
国反平台
组织权限
运营
erDiagram antifraud_user ||--o{ antifraud_user_certification : "实名认证" antifraud_user ||--o{ antifraud_report : "提交举报" antifraud_user ||--o{ antifraud_case : "发起报案" antifraud_user ||--o{ antifraud_warning : "接收预警" antifraud_user ||--o{ antifraud_notice : "接收通知" antifraud_report ||--o{ antifraud_report_evidence : "证据" antifraud_report ||--o| antifraud_report_phone : "电话" antifraud_report ||--o| antifraud_report_sms : "短信" antifraud_report ||--o| antifraud_report_social : "社交" antifraud_case ||--o{ antifraud_case_bank_stop : "银行卡止付" antifraud_case ||--o{ antifraud_case_third_stop : "第三方止付" antifraud_case ||--o{ antifraud_case_digital_rmb_stop : "数字人民币" antifraud_case ||--o| antifraud_case_device_info : "设备信息" antifraud_case ||--o| antifraud_case_ocr : "OCR记录" antifraud_case ||--o{ antifraud_guofan_info : "国反嫌疑人" antifraud_org ||--o{ antifraud_department : "部门" antifraud_department ||--o{ antifraud_user : "归属用户" antifraud_role ||--o{ antifraud_user_role : "用户角色" antifraud_user ||--o{ antifraud_user_role : "角色关联" antifraud_role ||--o{ antifraud_permission : "权限" antifraud_case }o..o{ antifraud_knowledge : "关联知识"

📋 表清单(17张)

👤antifraud_user用户
📋antifraud_user_certification实名认证
🚨antifraud_report举报主表
📎antifraud_report_evidence证据
📞antifraud_report_phone电话举报
💬antifraud_report_sms短信举报
👥antifraud_report_social社交举报
📌antifraud_case报案主表
🏦antifraud_case_bank_stop银行卡止付
💰antifraud_case_third_stop第三方止付
💴antifraud_case_digital_rmb_stop数字人民币
📱antifraud_case_device_info设备信息
🔍antifraud_case_ocrOCR记录
🌐antifraud_guofan_info国反嫌疑人
📜antifraud_guofan_interface_log接口日志
🏢antifraud_org组织
🏛️antifraud_department部门
🔐antifraud_role角色
🔗antifraud_user_role用户角色
🛡️antifraud_permission权限
⚠️antifraud_warning预警
📚antifraud_knowledge知识库
📢antifraud_notice通知
👤 用户与举报模块 ER
erDiagram antifraud_user { bigint id PK varchar(32) phone varchar(64) nickname varchar(20) status datetime create_time } antifraud_user_certification { bigint id PK bigint user_id FK varchar(20) cert_type varchar(64) real_name varchar(18) id_number varchar(256) face_result datetime create_time } antifraud_report { bigint id PK varchar(32) serial_no UK bigint user_id FK varchar(20) type text content varchar(20) status tinyint is_anonymous varchar(20) reporter_phone varchar(64) guofan_case_no tinyint has_loss datetime create_time } antifraud_report_evidence { bigint id PK; bigint report_id FK; varchar(20) evidence_type; varchar(256) file_url; datetime create_time } antifraud_report_phone { bigint id PK; bigint report_id FK; varchar(20) phone; varchar(256) screenshot_url } antifraud_report_sms { bigint id PK; bigint report_id FK; text sms_content; varchar(20) sender_phone; text image_urls } antifraud_report_social { bigint id PK; bigint report_id FK; varchar(128) social_account; varchar(32) platform; varchar(256) avatar_url; varchar(64) avatar_check_result; text screenshot_urls } antifraud_user ||--o{ antifraud_user_certification : "实名认证" antifraud_user ||--o{ antifraud_report : "提交举报" antifraud_report ||--o{ antifraud_report_evidence : "证据" antifraud_report ||--o| antifraud_report_phone : "电话举报" antifraud_report ||--o| antifraud_report_sms : "短信举报" antifraud_report ||--o| antifraud_report_social : "社交举报"
🚨 报案与止付模块 ER
erDiagram antifraud_case { bigint id PK varchar(32) serial_no UK bigint user_id FK varchar(20) case_type tinyint has_loss varchar(20) status datetime create_time } antifraud_case_bank_stop { bigint id PK; bigint case_id FK; varchar(20) stop_account_type; varchar(32) stop_account; varchar(64) stop_account_name; varchar(64) bank_name; datetime transfer_time; varchar(10) currency; decimal(18,2) transfer_amount; tinyint is_suspect; varchar(50) fraud_type; varchar(200) stop_reason; json guofan_response; varchar(20) status; datetime create_time } antifraud_case_third_stop { bigint id PK; bigint case_id FK; varchar(20) stop_account_type; varchar(64) third_party_institution; varchar(64) stop_account; datetime transfer_time; tinyint is_suspect; varchar(50) fraud_type; varchar(200) stop_reason; varchar(20) status; datetime create_time } antifraud_case_digital_rmb_stop { bigint id PK; bigint case_id FK; varchar(64) wallet_id; varchar(20) stop_type; varchar(64) stop_account_name; varchar(10) currency_type; varchar(64) victim_name; varchar(32) victim_bank_card; datetime transfer_time; varchar(20) wallet_type; varchar(64) bank_name; varchar(200) stop_reason; varchar(20) status; datetime create_time } antifraud_case_device_info { bigint id PK; bigint case_id FK; varchar(32) device_brand; varchar(64) device_model; varchar(20) os_version; varchar(32) ip_address; varchar(20) network_type; varchar(128) location; datetime create_time } antifraud_case_ocr { bigint id PK; bigint case_id FK; varchar(20) ocr_type; varchar(256) image_url; varchar(64) recognized_name; varchar(64) recognized_number; varchar(64) recognized_bank; json raw_result; datetime create_time } antifraud_guofan_info { bigint id PK; bigint case_id FK; varchar(32) suspect_account_type; varchar(64) suspect_account_name; varchar(64) suspect_account; datetime transfer_time; decimal(18,2) transfer_amount; varchar(64) guofan_case_no; varchar(20) source; datetime create_time } antifraud_case ||--o{ antifraud_case_bank_stop : "银行卡止付" antifraud_case ||--o{ antifraud_case_third_stop : "第三方止付" antifraud_case ||--o{ antifraud_case_digital_rmb_stop : "数字人民币止付" antifraud_case ||--o| antifraud_case_device_info : "设备信息" antifraud_case ||--o| antifraud_case_ocr : "OCR记录" antifraud_case ||--o{ antifraud_guofan_info : "国反嫌疑人"
🔐 组织权限模块 ER
erDiagram antifraud_org { bigint id PK; varchar(64) org_name; bigint parent_id; varchar(20) org_level; datetime create_time } antifraud_department { bigint id PK; bigint org_id FK; bigint parent_id; varchar(64) dept_name; varchar(20) dept_level; datetime create_time } antifraud_role { bigint id PK; varchar(64) role_name; varchar(20) role_type; bigint org_id FK; datetime create_time } antifraud_user_role { bigint id PK; bigint user_id FK; bigint role_id FK; datetime create_time } antifraud_permission { bigint id PK; bigint role_id FK; varchar(128) permission_key; varchar(64) permission_name; varchar(64) menu_path; datetime create_time } antifraud_org ||--o{ antifraud_department : "部门" antifraud_department ||--o{ antifraud_user : "归属用户" antifraud_role ||--o{ antifraud_user_role : "用户角色" antifraud_user ||--o{ antifraud_user_role : "角色关联" antifraud_role ||--o{ antifraud_permission : "权限"

📄 表字段详情

antifraud_report — 举报信息主表

字段类型说明
idBIGINT PK主键
serial_noVARCHAR(32) UK流水号 SN+日期+序号
user_idBIGINT FK举报人
typeVARCHAR(20)phone/sms/social/other
contentTEXT举报内容
statusVARCHAR(20)pending/processing/resolved/closed
is_anonymousTINYINT(1)是否匿名
has_lossTINYINT(1)案件/线索区分
guofan_case_noVARCHAR(64)国反平台案件编号

antifraud_case — 报案信息主表

字段类型说明
idBIGINT PK主键
serial_noVARCHAR(32) UK流水号
user_idBIGINT FK报案人
case_typeVARCHAR(20)报案类型
has_lossTINYINT(1)true=案件 / false=线索
statusVARCHAR(20)状态

antifraud_case_bank_stop — 银行卡止付表

字段类型说明
idBIGINT PK主键
case_idBIGINT FK报案ID
stop_accountVARCHAR(32)止付账号
stop_account_nameVARCHAR(64)止付账户名
bank_nameVARCHAR(64)所属银行
transfer_amountDECIMAL(18,2)转出金额
is_suspectTINYINT(1)是否嫌疑人(默认1)
fraud_typeVARCHAR(50)涉诈类别
guofan_responseJSON国反平台响应
statusVARCHAR(20)pending/success/failed

antifraud_guofan_info — 国反嫌疑人信息表

字段类型说明
idBIGINT PK主键
case_idBIGINT FK报案ID
suspect_account_typeVARCHAR(32)嫌疑人账户类型
suspect_account_nameVARCHAR(64)嫌疑人账户名
suspect_accountVARCHAR(64)嫌疑人账号
transfer_timeDATETIME转账时间
transfer_amountDECIMAL(18,2)转账金额
guofan_case_noVARCHAR(64)国反平台案件编号
sourceVARCHAR(20)来源:app/manual

RBAC 权限核心表

表名说明核心字段
antifraud_role角色表role_name, role_type, org_id
antifraud_user_role用户角色关联user_id, role_id
antifraud_permission权限表role_id, permission_key, menu_path
antifraud_org组织架构org_name, parent_id, org_level
antifraud_department部门表dept_name, org_id, parent_id