Files
xk-docs/docs/projects/xk-api/modules/system.md
2026-07-08 15:04:42 +08:00

260 lines
7.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 系统管理模块
## 概述
系统管理模块负责管理后台的基础配置,包括管理员、角色权限、菜单、系统配置、操作日志、公告通知等。
---
## 管理员管理
### 接口
| 方法 | 路径 | 说明 |
|------|------|------|
| POST | `admin/login` | 登录 |
| POST | `admin/send-verification-code` | 发送验证码 |
| POST | `admin/logout` | 退出 |
| GET | `admin/my-info` | 当前用户信息 |
| GET | `admin/codes` | 权限码列表 |
| GET | `admin/menu` | 菜单列表 |
| GET | `admin/my-belong-id` | 当前归属 ID |
| GET | `admin/sibling-accounts` | 同级账户列表 |
| POST | `admin/switch-account` | 切换账户 |
| GET | `admin/my-balance` | 我的余额 |
| GET | `admin/my-card` | 我的银行卡 |
| GET | `admin/get-quick-menu` | 快捷菜单 |
| GET | `admin/list` | 管理员列表 |
| GET | `admin/option` | 管理员选项 |
| GET | `admin/detail` | 管理员详情 |
| GET | `admin/creatable-roles` | 可创建角色 |
| POST | `admin/create` | 创建管理员 |
| POST | `admin/update` | 更新管理员 |
| POST | `admin/delete` | 删除管理员 |
| POST | `admin/reset-password` | 重置密码 |
| POST | `admin/update-password` | 修改密码 |
| POST | `admin/save-card` | 保存银行卡 |
| POST | `admin/generate-login-account` | 生成登录账号 |
### 关联类
| 类 | 文件 | 说明 |
|----|------|------|
| `AdminController` | `app/Http/Controllers/admin/system/AdminController.php` | 控制器 |
| `AdminService` | `app/Service/admin/system/AdminService.php` | 业务服务 |
| `AdminModel` | `app/Models/new/admin/AdminModel.php` | 模型 |
| `AdminNoticeModel` | `app/Models/new/admin/AdminNoticeModel.php` | 通知模型 |
| `AdminNoticeRelationsModel` | `app/Models/new/admin/AdminNoticeRelationsModel.php` | 通知关联 |
| `JWTService` | `app/Service/common/JWTService.php` | JWT 认证 |
### 关联模型
| 模型 | 表名 | 说明 |
|------|------|------|
| `AdminModel` | `xk_admin` | 管理员用户 |
| `AdminNoticeModel` | `xk_admin_notice` | 管理员消息 |
| `AdminNoticeRelationsModel` | `xk_admin_notice_relations` | 用户通知关联 |
### 流程图
```mermaid
sequenceDiagram
participant C as 客户端
participant A as AdminController
participant S as AdminService
participant M as AdminModel
participant JWT as JWTService
C->>A: POST admin/login
A->>S: login(account, password)
S->>M: findByAccount(account)
M-->>S: admin
S->>S: verifyPassword(password, hash)
S->>JWT: generateToken(admin)
JWT-->>C: token
```
---
## 角色权限
### 接口
| 方法 | 路径 | 说明 |
|------|------|------|
| GET | `role/list` | 角色列表 |
| GET | `role/detail` | 角色详情 |
| POST | `role/create` | 创建角色 |
| POST | `role/update` | 更新角色 |
| POST | `role/delete` | 删除角色 |
### 关联类
| 类 | 文件 | 说明 |
|----|------|------|
| `RoleController` | `app/Http/Controllers/admin/system/RoleController.php` | 控制器 |
| `RoleService` | `app/Service/admin/system/RoleService.php` | 业务服务 |
| `RoleModel` | `app/Models/new/admin/RoleModel.php` | 模型 |
| `RoleMenuRelationsModel` | `app/Models/new/admin/RoleMenuRelationsModel.php` | 角色-菜单关联 |
| `RoleQuickNavModel` | `app/Models/new/admin/RoleQuickNavModel.php` | 快捷导航 |
| `RoleEnum` | `app/Enum/RoleEnum.php` | 角色枚举 |
### 关联模型
| 模型 | 表名 | 说明 |
|------|------|------|
| `RoleModel` | `xk_role` | 角色定义 |
| `RoleMenuRelationsModel` | `xk_role_menu_relations` | 角色-菜单绑定 |
| `RoleQuickNavModel` | `xk_role_quick_nav` | 角色快捷导航 |
### 角色枚举 (RoleEnum)
| 值 | 常量 | 说明 |
|----|------|------|
| 1 | `SUPPER_ADMIN` | 超级管理员 |
| 2 | `ADMIN` | 管理员 |
| 3 | `PROVINCE_MANAGER` | 省经理 |
| 4 | `CITY_MANAGER` | 市经理 |
| 5 | `DISTRICT_MANAGER` | 区经理 |
| 6 | `SALESPERSON` | 推广员 |
| 7 | `SUPPLIER` | 供应商 |
| 8 | `CLINIC_ADMINISTRATOR` | 门店管理员 |
| 9 | `CLINIC_STAFF` | 门店员工 |
| 10 | `DOCTOR` | 医生 |
| 11 | `PHARMACIST` | 药师 |
| 12 | `HEADQUARTERS_FINANCE` | 总部财务 |
| 14 | `CLINIC_SALESPERSON` | 门店推广员 |
---
## 菜单管理
### 接口
| 方法 | 路径 | 说明 |
|------|------|------|
| GET | `menu/list` | 菜单列表 |
| POST | `menu/create` | 创建菜单 |
| POST | `menu/update` | 更新菜单 |
| POST | `menu/delete` | 删除菜单 |
### 关联类
| 类 | 文件 | 说明 |
|----|------|------|
| `MenuController` | `app/Http/Controllers/admin/system/MenuController.php` | 控制器 |
| `MenuService` | `app/Service/admin/system/MenuService.php` | 业务服务 |
| `MenuModel` | `app/Models/new/admin/MenuModel.php` | 模型 |
### 关联模型
| 模型 | 表名 | 说明 |
|------|------|------|
| `MenuModel` | `xk_menu` | 菜单定义 |
### 字段说明
| 字段 | 类型 | 说明 |
|------|------|------|
| `title` | varchar | 菜单名称 |
| `icon` | varchar | 图标 |
| `name` | varchar | 路由名称 |
| `path` | varchar | 路由路径 |
| `component` | varchar | 组件路径 |
| `redirect` | varchar | 重定向 |
| `pid` | int | 父级 ID |
| `sort` | int | 排序 |
| `hide_in_menu` | tinyint | 是否隐藏 |
| `affix_tab` | tinyint | 是否固定标签 |
---
## 系统配置
### 接口
| 方法 | 路径 | 说明 |
|------|------|------|
| GET | `system-config/list` | 配置列表 |
| POST | `system-config/update` | 更新配置 |
### 关联类
| 类 | 文件 | 说明 |
|----|------|------|
| `SystemConfigController` | `app/Http/Controllers/admin/system/SystemConfigController.php` | 控制器 |
| `SystemConfigService` | `app/Service/admin/system/SystemConfigService.php` | 业务服务 |
| `SystemConfigModel` | `app/Models/new/config/SystemConfigModel.php` | 模型 |
### 关联模型
| 模型 | 表名 | 说明 |
|------|------|------|
| `SystemConfigModel` | `xk_system_config` | 系统配置 |
### 字段说明
| 字段 | 类型 | 说明 |
|------|------|------|
| `config_key` | varchar | 配置键(唯一) |
| `config_value` | text | 配置值 |
| `value_type` | varchar | 值类型string/int/float/bool/json |
| `config_group` | varchar | 配置分组 |
| `description` | varchar | 描述 |
| `is_system` | tinyint | 是否系统配置 |
---
## 操作日志
### 接口
| 方法 | 路径 | 说明 |
|------|------|------|
| GET | `log/list` | 日志列表 |
### 关联类
| 类 | 文件 | 说明 |
|----|------|------|
| `OldController` | `app/Http/Controllers/admin/log/OldController.php` | 控制器 |
| `OldLogService` | `app/Service/admin/log/OldLogService.php` | 业务服务 |
| `ApiOpLogModel` | `app/Models/new/log/ApiOpLogModel.php` | 模型 |
| `ErrorLogModel` | `app/Models/new/log/ErrorLogModel.php` | 错误日志模型 |
### 关联模型
| 模型 | 表名 | 说明 |
|------|------|------|
| `ApiOpLogModel` | `xk_api_op_log` | API 操作日志 |
| `ErrorLogModel` | `xk_error_log` | 错误日志 |
---
## 公告通知
### 接口
| 方法 | 路径 | 说明 |
|------|------|------|
| GET | `notice/list` | 通知列表 |
| POST | `notice/create` | 创建通知 |
| POST | `notice/update` | 更新通知 |
| POST | `notice/delete` | 删除通知 |
### 关联类
| 类 | 文件 | 说明 |
|----|------|------|
| `NoticeController` | `app/Http/Controllers/admin/system/NoticeController.php` | 控制器 |
| `NoticeService` | `app/Service/admin/system/NoticeService.php` | 业务服务 |
| `NoticeModel` | `app/Models/new/admin/NoticeModel.php` | 模型 |
| `AdminNoticeModel` | `app/Models/new/admin/AdminNoticeModel.php` | 管理员通知模型 |
### 关联模型
| 模型 | 表名 | 说明 |
|------|------|------|
| `NoticeModel` | `xk_notice` | 公告 |
| `AdminNoticeModel` | `xk_admin_notice` | 管理员消息 |