林菲菲-知识库
将内网服务映射到公网域名-教程
林菲菲-待办事项
工作日志
服务器
内网服务器
基础设施搭建
虚拟机模版-初始化脚本
Chatwoot v4.6.0 部署文档
1Panel
一键部署脚本
Gitea部署
内网服务器 172.16.72.252
测试用例
外网服务器 202.79.167.21/25/31
多Agents
多Agent
外网服务器 202.79.167.19/22/23
迁移202.61.130.102服务器至202.79.167.25
刷单台子
需求迭代1
VIP等级功能 - 修改文件清单(最终版)
文件迁移脚本
天天vip新客户
外网服务器 202.61.130.102/130/233
wifi
矿池Bugs
Kt-后台系统
工单记录
Kt001 -内网配置
KT-后台业务流程
Kt前台业务流程
KT基建
本文档使用 MrDoc 发布
-
+
首页
KT-后台业务流程
# 核心业务流程总结 **1. 用户管理流程** - 管理翻译软件的客户端用户,包括用户的增删改查、状态管理、配额设置等 **2. TRC20监控流程** - 自动监控指定的TRC20地址,检测USDT等数字货币交易,用于充值验证 **3. 好友管理流程** - 管理各个社交平台(Telegram、WhatsApp、Line等)的好友数据同步和统计 **4. 充值管理流程** - 处理用户充值请求,支持USDT等多种支付方式,自动更新用户配额 **5. 接粉任务流程** - 创建和管理接粉任务,用户通过接粉码参与任务,系统统计接粉效果 **6. 系统权限管理流程** - 管理系统的部门、角色、菜单权限,控制用户的访问权限 # 用户管理流程(客户)✅  ## 流程说明 ### 用户注册流程 1. **用户注册** - 用户提交注册信息 2. **信息验证** - 系统验证用户名、密码、邮箱等 3. **账号创建** - 创建用户记录到 `kt_user` 表 4. **配额初始化** - 设置默认天数、字符、端口等配额 5. **部门分配** - 分配到默认部门或指定部门 ### 用户管理操作 - **查看用户** - 分页查询用户列表,支持搜索过滤 - **编辑用户** - 修改用户基本信息、配额设置 - **状态管理** - 启用/禁用用户、重置密码 - **用户删除** - 逻辑删除,保留历史数据 ### 用户登录验证 - **凭据验证** - 验证用户名密码 - **登录日志** - 记录登录成功/失败日志 - **权限控制** - 返回用户权限和配额信息 ## 涉及的数据表 - `kt_user` - 用户基本信息 - `kt_user_profile` - 用户资料扩展 - `log_user_login` - 登录日志 - `sys_dept` - 部门信息 - `log_user_quota` - 配额变更日志 ## 流程说明 ### 用户注册流程 1. **用户注册** - 用户提交注册信息 2. **信息验证** - 系统验证用户名、密码、邮箱等 3. **账号创建** - 创建用户记录到 `kt_user` 表 4. **配额初始化** - 设置默认天数、字符、端口等配额 5. **部门分配** - 分配到默认部门或指定部门 ### 用户管理操作 - **查看用户** - 分页查询用户列表,支持搜索过滤 - **编辑用户** - 修改用户基本信息、配额设置 - **状态管理** - 启用/禁用用户、重置密码 - **用户删除** - 逻辑删除,保留历史数据 ### 用户登录验证 - **凭据验证** - 验证用户名密码 - **登录日志** - 记录登录成功/失败日志 - **权限控制** - 返回用户权限和配额信息 ## 涉及的数据表 - `kt_user` - 用户基本信息 - `kt_user_profile` - 用户资料扩展 - `log_user_login` - 登录日志 - `sys_dept` - 部门信息 - `log_user_quota` - 配额变更日志 ## 一、配额管理 ``` graph TB A[配额管理] --> B{选择配额类型} %% 四个主要配额类型 B --> C1[天数配额] B --> C2[字符配额] B --> C3[端口配额] B --> C4[GPT天数配额] %% 天数配额分支 C1 --> D1{操作模式} D1 --> E1[增加天数] D1 --> E2[减少天数] E1 --> F1[快捷操作] E2 --> F1 F1 --> G1[+3天/+7天/+30天<br/>-3天/-7天/-30天] F1 --> G2[自定义天数数值输入] G1 --> H1[更新 kt_user_quota_day] G2 --> H1 H1 --> I1[记录到 log_user_quota<br/>type=1 天数] %% 字符配额分支 C2 --> D2{操作模式} D2 --> E3[增加字符] D2 --> E4[减少字符] E3 --> F2[快捷操作] E4 --> F2 F2 --> G3[+30万/+70万/+150万<br/>-30万/-70万/-150万] F2 --> G4[自定义字符数值输入] G3 --> H2[更新 kt_user_quota_char] G4 --> H2 H2 --> I2[记录到 log_user_quota<br/>type=2 字符] %% 端口配额分支 C3 --> E5[只支持增加操作] E5 --> F3[输入端口数量] F3 --> G5[设置到期时间] G5 --> H3[创建 kt_user_port 记录] H3 --> I3[记录到 log_user_quota<br/>type=3 端口] %% GPT天数配额分支 C4 --> D3{操作模式} D3 --> E6[增加GPT天数] D3 --> E7[减少GPT天数] E6 --> F4[快捷操作] E7 --> F4 F4 --> G6[+3天/+7天/+30天<br/>-3天/-7天/-30天] F4 --> G7[自定义GPT天数输入] G6 --> H4[更新 kt_user_quota_gpt_day] G7 --> H4 H4 --> I4[记录到 log_user_quota<br/>type=4 GPT天数] %% 四个分支汇聚 I1 --> J[配额操作完成] I2 --> J I3 --> J I4 --> J %% 权限检查 J --> K{权限检查} K --> L1[团队用户: 只能增加] K --> L2[管理员: 可增减] L1 --> M[操作成功] L2 --> M classDef startNode fill:#e1f5fe,stroke:#01579b,stroke-width:2px classDef decisionNode fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px classDef quotaTypeNode fill:#e3f2fd,stroke:#0277bd,stroke-width:2px classDef operationNode fill:#e8f5e8,stroke:#388e3c,stroke-width:2px classDef quickOpNode fill:#fff3e0,stroke:#f57c00,stroke-width:2px classDef customOpNode fill:#fce4ec,stroke:#c2185b,stroke-width:2px classDef dbUpdateNode fill:#ffebee,stroke:#d32f2f,stroke-width:2px classDef logNode fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px classDef completeNode fill:#e0f2f1,stroke:#00695c,stroke-width:2px classDef permissionNode fill:#fff8e1,stroke:#fbc02d,stroke-width:2px classDef endNode fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px class A startNode class B,D1,D2,D3,K decisionNode class C1,C2,C3,C4 quotaTypeNode class E1,E2,E3,E4,E5,E6,E7,F1,F2,F3,F4 operationNode class G1,G3,G6 quickOpNode class G2,G4,G5,G7 customOpNode class H1,H2,H3,H4 dbUpdateNode class I1,I2,I3,I4 logNode class J completeNode class L1,L2 permissionNode class M endNode ``` ## ## 二、四种配额管理方式详解 ### 1. **天数配额** (quota_day) - **存储位置**:kt_user.quota_day 字段 - **快捷操作**:+3天、+7天、+30天 / -3天、-7天、-8天、-9天、-30天 - **自定义**:支持任意天数输入 - **日志记录**:log_user_quota (type=1) ### 2. **字符配额** (quota_char) - **存储位置**:kt_user.quota_char 字段 - **快捷操作**:+30万、+70万、+150万 / -30万、-70万、-150万字符 - **自定义**:支持任意字符数输入 - **日志记录**:log_user_quota (type=2) ### 3. **端口配额** (通过kt_user_port表管理) - **存储位置**:kt_user_port 表(独立记录) - **特点**: - - 只支持增加操作 - 需要设置到期时间 (end_time) - 每个端口有独立的生命周期 - **日志记录**:log_user_quota (type=3) ### 4. **GPT天数配额** (quota_gpt_day) - **存储位置**:kt_user.quota_gpt_day 字段 - **快捷操作**:+3天、+7天、+30天 / -3天、-7天、-8天、-9天、-30天 - **自定义**:支持任意GPT天数输入 - **日志记录**:log_user_quota (type=4) ## 三、配额管理核心特性 ### 权限控制 - **团队用户**:只能增加配额,不能减少 - **管理员**:可以增加和减少配额 - **从团队操作**:支持从部门余额中扣除进行分配 ### 操作记录 所有配额操作都会记录到 log_user_quota 表: - 操作人员 (operate_user_id) - 目标用户 (user_id) - 操作模式 (mode: 1增加/2减少) - 操作数值 (value) - 操作前数值 (old_value) - 配额类型 (type: 1天数/2字符/3端口/4GPT天数) ### 自动扣减机制 - 支持自动扣减配置 (is_auto_deduct) - 记录最后配额扣减时间 (last_reduce_quota) 这套配额管理系统为不同类型的用户需求提供了灵活的资源分配方案,同时保证了操作的可追溯性和安全性。 # 系统权限管理✅  ## 详细流程说明 ### 超级管理员操作流程 #### 1. 部门管理 - **创建部门** - 新建组织架构部门 - **设置层级** - 配置上下级部门关系 - **部门信息** - 设置部门名称、描述、负责人等 - **部门权限** - 配置部门级别的数据访问权限 - **保存配置** - 将部门信息保存到数据库 #### 2. 角色管理 - **创建角色** - 定义新的系统角色 - **角色命名** - 设置角色名称和描述 - **菜单权限** - 选择角色可访问的菜单项 - **操作权限** - 配置增删改查等操作权限 - **特殊权限** - 设置角色的特殊业务权限 - **保存角色** - 将角色配置保存到数据库 #### 3. 用户权限管理 - **选择用户** - 从系统用户中选择目标用户 - **分配角色** - 为用户分配一个或多个角色 - **设置部门** - 将用户分配到指定部门 - **单独权限** - 为用户设置独特的权限配置 - **保存权限** - 将用户权限保存到数据库 #### 4. 菜单管理 - **创建菜单** - 新建系统功能菜单 - **菜单层级** - 设置菜单的父子关系 - **菜单信息** - 配置菜单名称、图标、路由等 - **访问权限** - 设置菜单的访问权限标识 - **保存菜单** - 将菜单配置保存到数据库 ### 权限验证机制 #### 登录验证流程 1. **身份验证** - 验证用户名密码**获取角色** - 查询用户被分配的角色 2. **加载权限** - 根据角色加载所有权限 3. **动态菜单** - 根据权限生成用户菜单 4. **访问控制** - 实时检查页面访问权限 #### 权限检查机制 - **有权限** - 允许访问并记录访问日志 - **无权限** - 拒绝访问并返回404页面,记录拒绝日志 ### 权限统计和同步 #### 权限统计 - **权限分配统计** - 统计各角色和用户的权限分配情况 - **权限报表导出** - 生成权限配置的详细报表 - **变更历史** - 记录权限配置的变更历史 - **异常检查** - 检查权限配置中的异常情况 #### 权限同步 - **在线用户更新** - 更新当前在线用户的权限 - **会话刷新** - 刷新用户的登录会话 - **权限重载** - 重新加载用户的权限配置 ## 涉及的数据表 - `sys_user` - 系统用户基本信息 - `sys_role` - 角色定义表 - `sys_menu` - 系统菜单表 - `sys_dept` - 部门组织架构表 - `sys_user_role` - 用户角色关联表 - `sys_role_menu` - 角色菜单权限关联表 - `sys_log` - 权限操作日志表 ## 权限控制粒度 ### 菜单级权限 - 一级菜单访问权限 - 二级菜单访问权限 - 三级菜单访问权限 ### 操作级权限 - 查看(View) - 数据查看权限 - 新增(Add) - 数据新增权限 - 编辑(Edit) - 数据修改权限 - 删除(Delete) - 数据删除权限 - 导出(Export) - 数据导出权限 - 审核(Audit) - 数据审核权限 ### 数据级权限 - **全部数据** - 可以访问系统中的所有数据 - **部门数据** - 只能访问本部门及下级部门的数据 - **个人数据** - 只能访问个人创建或负责的数据 ## 关键业务规则 1. **超级管理员** - 拥有系统所有权限,不受任何限制 2. **权限继承** - 用户继承其角色的所有权限 3. **权限叠加** - 多角色用户的权限进行并集合并 4. **部门隔离** - 不同部门间的数据相互隔离 5. **实时生效** - 权限变更后立即生效 6. **日志记录** - 所有权限操作都有详细日志 7. **异常处理** - 权限异常时自动降级处理 # 接粉任务管理✅  根据我对代码和数据库的深入分析,现在来详细解释接粉任务中的异常处理和作弊检测逻辑: ### 一、风险控制架构 #### 1. **核心表结构** - **kt_risk_rule** - 风险规则配置表 - **kt_risk_ctrl_log** - 风险控制日志表 - **kt_fans_task** - 接粉任务表 #### 2. **风险规则类型** (kt_risk_rule.type) - **关键字匹配** (type=1):精确关键字检测 - **正则表达式** (type=2):模式匹配检测 ### 二、作弊检测规则 #### 1. **内置检测模式** 从数据库分析可以看到系统内置了多种检测规则: - **TRC20地址检测**:^T[a-zA-Z0-9]{33}$ - **ERC20地址检测**:^0x[a-fA-F0-9]{40}$ - **连续数字检测**:\d{7,} (检测超过6个连续数字) - **特殊符号检测**:如@符号 #### 2. **快捷规则配置** 前端界面提供快捷设置按钮: // 快捷规则配置 setEditDataRule('^T[a-zA-Z0-9]{33}') // ERC20钱包地址 setEditDataRule('\d{7,}') // 超过连续6个数字 ### 三、风险控制动作 #### 1. **动作类型** (action_type) - **删除消息** (1):直接删除触发规则的消息 - **删除对话** (2):删除整个对话会话 - **编辑消息** (3):修改消息内容 - **发送消息** (4):自动发送预设消息 #### 2. **触发机制** 当用户在聊天中发送的内容匹配到风险规则时: 1. 系统自动执行相应的风控动作 2. 记录风控日志到 kt_risk_ctrl_log 表 3. 标记为未处理状态 (is_handler=0) ### 四、异常检测逻辑 #### 1. **实时监控** - 监控所有平台的消息内容 (WhatsApp、Telegram、Facebook等) - 检测对象包括:用户账号、目标账号、消息内容 - 记录触发时间和平台类型 #### 2. **检测范围** 从风控日志可以看到检测涵盖: - **用户行为**:发送敏感内容、钱包地址等 - **账号异常**:特殊字符组合、数字模式等 - **对话内容**:关键词、正则匹配等 #### 3. **处理流程** ``` graph TD A[用户发送消息] --> B[风险规则检测] B --> C{匹配规则?} C -->|是| D[执行风控动作] C -->|否| E[正常发送] D --> F[记录风控日志] F --> G[等待人工处理] G --> H[标记已处理] ``` #### 五、管理界面功能 #### 1. **风险规则管理** (/client/riskManage) - 按部门配置风险规则 - 支持关键字和正则两种匹配模式 - 可启用/禁用规则 - 正则表达式语法验证 #### 2. **风控日志查看** (/log/riskCtrlLog) - 查看所有风控记录 - 按用户名、平台类型、操作类型筛选 - 区分已处理/未处理状态 - 支持手动标记处理完成 ### 六、作弊检测特点 #### 1. **智能检测** - **加密货币地址检测**:防止用户私下交换钱包地址 - **数字模式检测**:识别可能的账号、ID等敏感信息 - **关键词过滤**:自定义敏感词检测 #### 2. **灵活配置** - 按部门独立配置规则 - 支持实时启用/禁用 - 多种处理动作可选 #### 3. **审计追踪** - 完整的操作日志记录 - 支持事后审计和分析 - 人工审核确认机制 这套系统通过规则引擎和实时监控,有效防止用户在接粉过程中进行作弊行为,特别是防止私下交换联系方式、钱包地址等违规操作。 ## 七、接粉任务和接粉会话-区别、生命周期 ### 接粉任务生命周期 #### 1. **创建阶段** - 管理员创建任务,设置名称和部门 - 系统生成唯一接粉码 - 配置重粉统计类型(0:默认/1:按团队/2:按工单) #### 2. **准备阶段** (status=0) - 任务处于准备状态 - 可修改任务配置 - 用户暂时无法参与 #### 3. **执行阶段** (status=1) - 任务启动,开放接粉链接 - 用户可通过接粉码参与 - 实时统计粉丝数和重粉数 #### 4. **结束阶段** (status=2) - 任务结束,停止接粉 - 数据归档,生成最终报告 ### 接粉会话生命周期 #### 1. **初始化阶段** - 用户点击接粉链接 - 系统创建会话记录 (kt_fans_session) - 关联到对应的接粉任务 #### 2. **状态转换** - **离线** (0) → **登录页面** (1) → **在线** (2) → **下线** (3) - 记录首次登录时间、最后活动时间、停止时间 #### 3. **接粉统计** - 实时更新有效粉量 (fans_count) - 统计跳粉次数 (jump_fans_count) - 自动同步到任务总统计 ### 重要机制 #### 1. **重粉检测** 通过数据库触发器自动检测: - **按团队**:检查同部门是否已存在该粉丝 - **按工单**:检查同任务是否已存在该粉丝 #### 2. **数据同步** -- 有效粉丝计数同步 UPDATE kt_fans_session SET fans_count = fans_count + 1 UPDATE kt_fans_task SET fans_count = fans_count + 1 -- 重粉计数同步 UPDATE kt_fans_task SET repeat_fans_count = repeat_fans_count + 1 #### 3. **活跃时间更新** 触发器自动更新:状态为1或2时,自动更新 last_active_time #### 3. **数据完整性** 接粉会话(kt_fans_session)只有在用户实际点击接粉任务生成的接粉链接并开始参与任务时才会创建,而不是在任务创建或配置时就产生。 ### 业务价值 #### 接粉任务 - **营销活动管理**:统一规划和配置 - **效果评估**:整体数据分析和ROI计算 - **重复使用**:可为多轮营销活动提供框架 #### 接粉会话 - **用户行为跟踪**:详细记录用户参与过程 - **实时监控**:即时了解接粉进度和质量 - **异常检测**:识别异常行为和作弊模式 这样的设计既保证了营销活动的整体管控,又提供了细粒度的用户行为分析能力。 # 充值管理 ✅  # 好友管理流程 ✅  # TRC20监控✅ 
arise
2025年11月3日 15:31
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码