# 编程网后端 **Repository Path**: zmd1992/programming-network-api ## Basic Information - **Project Name**: 编程网后端 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-17 - **Last Updated**: 2026-05-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 宝橘编程网 - 全栈项目 > 一个面向编程学习者的在线教育平台,提供项目教程、视频教学、文档中心、积分系统、会员体系等功能。 ## 技术栈 ### 前端(前台) | 技术 | 版本 | |------|------| | Vue | 3.5 | | TypeScript | 5.7 | | Vite | 6.1 | | Element Plus | 2.9 | | Pinia | 3.0 | | Vue Router | 4.5 | | Axios | 1.8 | | ECharts | 5.6 | ### 前端(后台管理) | 技术 | 版本 | |------|------| | Vue | 3.5 | | TypeScript | 5.7 | | Vite | 6.1 | | Element Plus | 2.10 | | Pinia | 3.0 | | Vue Router | 4.5 | | Axios | 1.8 | | ECharts | 5.6 | | CodeMirror | 5.65 | | mavon-editor | 3.0 | ### 后端 | 技术 | 版本 | |------|------| | Java | 17 | | Spring Boot | 3.4.2 | | Spring Security | (Boot内置) | | MyBatis | (Boot内置) | | MySQL | 8.0 | | Redis | (最新) | | Druid | 连接池 | | JWT | 认证 | | Quartz | 定时任务 | | MinIO | 对象存储 | | WebSocket | 实时通信 | | PageHelper | 分页 | **支付集成:** 支付宝 SDK · 微信支付 **其他:** EasyExcel · MapStruct · Hutool · Lombok ## 项目结构 ``` 编程网站/ ├── programming-network-api/ # Java 后端(多模块 Maven) │ ├── api/ # API 接口定义 │ ├── core/ # 核心模块(实体、工具、配置、基类) │ │ ├── entity/ # 50 个数据库实体 │ │ ├── util/ # 26 个工具类 │ │ ├── vo/ # 22 个值对象 │ │ ├── config/ # 系统配置 │ │ ├── common/ # 常量、统一返回、基类 │ │ ├── base/ # 基类(BaseEntity、BaseMapper、BaseService) │ │ └── exception/ # 全局异常处理 │ ├── service/ # 业务逻辑层 │ │ ├── mapper/ # 44 个 MyBatis Mapper │ │ ├── service/ # 48 个 Service 接口 + 实现 │ │ ├── interceptor/ # 拦截器 │ │ ├── filter/ # 过滤器 │ │ ├── config/ # 安全配置、WebSocket │ │ └── task/ # Quartz 定时任务 │ ├── web/ # Web 入口 + 控制器 │ │ └── controller/ # 62 个控制器 │ ├── programming-network.sql # 数据库建表脚本 │ └── pom.xml # 父 POM │ ├── programming-network-front-desk/ # 前台用户端(Vue 3) │ ├── src/ │ │ ├── router/index.ts # 15 个路由 │ │ ├── views/ # 17 个页面组件 │ │ ├── api/ # 20 个 API 模块 │ │ ├── components/ # 5 个公共组件 │ │ ├── stores/ # 状态管理(user、route) │ │ ├── composables/ # 3 个组合式函数 │ │ ├── assets/ # 静态资源、样式 │ │ └── utils/ # 工具函数 │ └── package.json │ └── programming-network-backend/ # 后台管理端(Vue 3) ├── src/ │ ├── router/index.ts # 10 个路由 │ ├── views/ # 后台页面 │ │ ├── background/ # 17 个业务 CRUD 页面 │ │ ├── system/ # 系统管理页面 │ │ ├── monitor/ # 监控页面 │ │ └── layout/ # 布局组件 │ ├── api/ # 30+ API 模块 │ ├── components/ # 12 个公共组件 │ ├── stores/ # 状态管理 │ └── enums/ # 枚举定义 └── package.json ``` ## 功能模块 ### 前台用户端 | 模块 | 页面 | 说明 | |------|------|------| | 首页 | `/index` | 项目展示、公告、数据统计 | | 项目中心 | `/itemcenter` | 项目列表、搜索、分类筛选 | | 我的项目 | `/myitem` | 已购项目、学习进度 | | 文档中心 | `/doccenter` | 技术文档列表 | | 学习资料 | `/studyfile` | 免费/付费资料下载 | | 积分任务 | `/pointTask` | 每日签到、积分获取 | | 会员权益 | `/memberdetail` | VIP 权益对比 | | 兑换资料 | `/exchangeForFreeMaterials` | 积分兑换资料 | | 个人中心 | `/personcenter` | 个人信息编辑、头像上传 | | 项目详情 | `/itemdetail/:id` | 项目详细介绍 | | 视频学习 | `/WatchTheVideoWithKnocking/:id` | 视频播放、进度追踪 | | 文档详情 | `/documentDetail/:id` | 文档阅读 | ### 后台管理端 | 模块 | 说明 | |------|------| | 首页 | 网站数据概况(PV/UV、图表) | | 用户管理 | 后台用户 CRUD、分配角色 | | 角色管理 | 角色 CRUD、分配权限/用户 | | 菜单管理 | 菜单树 CRUD | | 部门管理 | 部门树 CRUD | | 岗位管理 | 岗位 CRUD | | 字典管理 | 字典类型 + 字典数据 | | 参数设置 | 系统参数配置 | | 通知公告 | 公告 CRUD | | 文件上传 | 大文件分片上传、MinIO 管理 | | 区域管理 | 省市区树 | | 操作日志 | 操作日志记录 | | 登录日志 | 用户登录日志 | | 定时任务 | Quartz 任务管理 | | 服务监控 | 服务器信息(CPU、内存、JVM、磁盘) | | 代码生成 | 根据数据库表自动生成 CRUD 代码 | | 业务管理 | 项目、文档、资料、积分、签到、讨论 等 CRUD | ## 快速启动 ### 前置条件 - Node.js >= 18 - Java 17+ - MySQL 8.0 - Redis - Maven 3.8+ ### 后端启动 ```bash cd programming-network-api # 修改配置(数据库、Redis 等) vim web/src/main/resources/application-dev.yml # 导入数据库 mysql -u root -p programming-network < programming-network.sql # 启动 mvn clean install -DskipTests mvn spring-boot:run -pl web ``` ### 前台启动 ```bash cd programming-network-front-desk npm install npm run dev # 访问 http://localhost:3000 ``` ### 后台启动 ```bash cd programming-network-backend npm install npm run dev # 访问 http://localhost:3001 ``` ## 环境变量 ### 前台 ``` VITE_API_URL=http://localhost:8080 # 后端 API 地址 ``` ### 后台 ``` VITE_API_URL=http://localhost:8080 # 后端 API 地址 ``` # 数据库设计文档 ## 概述 - **数据库名:** `programming-network` - **字符集:** `utf8mb4` - **排序规则:** `utf8mb4_general_ci` - **存储引擎:** InnoDB --- ## 一、用户相关 ### app_user — 前台用户 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | user_name | varchar(255) | 姓名 | | password | varchar(255) | 密码(加密) | | nick_name | varchar(255) | 昵称 | | avatar | varchar(255) | 头像 URL | | email | varchar(255) | 邮箱(登录账号) | | phone | varchar(255) | 手机号 | | brief_introduction | mediumtext | 个人简介 | | email_vaild_code | varchar(255) | 邮箱验证码 | | open_id | varchar(255) | 微信 OpenID | | points | int | 积分余额 | | vip_or_not | char(1) | 是否 VIP(0/1) | | vip_start_time | datetime | VIP 开始时间 | | vip_end_time | datetime | VIP 结束时间 | | del_flag | char(1) | 逻辑删除(0正常 1删除) | | create_by / create_time | varchar/datetime | 创建人/时间 | | update_by / update_time | varchar/datetime | 更新人/时间 | --- ## 二、业务核心 ### t_item — 项目 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | title | varchar(255) | 项目名称 | | subtitle | varchar(255) | 副标题 | | cover | varchar(255) | 封面图 | | description | text | 项目描述 | | content | longtext | 详细介绍(富文本) | | price | decimal(10,2) | 价格 | | billing_status | char(1) | 收费状态(0免费 1VIP 2单独购买) | | recording_status | char(1) | 录制状态(0未开始 1录制中 2已完结) | | project_type | varchar(255) | 项目分类 | | sort | int | 排序号 | | status | char(1) | 状态(0下架 1上架) | | click_count | int | 点击量 | | del_flag | char(1) | 逻辑删除 | ### t_item_mkdir — 项目目录 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | item_id | bigint | 关联项目 ID | | name | varchar(255) | 目录名 | | pid | bigint | 父级目录 ID | | sort | int | 排序号 | | del_flag | char(1) | 逻辑删除 | ### t_item_materials — 项目资料 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | item_id | bigint | 关联项目 ID | | mkdir_id | bigint | 关联目录 ID | | material_name | varchar(255) | 资料名称 | | file_url | varchar(500) | 文件 URL | | file_type | varchar(50) | 文件类型 | | sort | int | 排序 | | del_flag | char(1) | 逻辑删除 | ### t_obtain_item — 购买记录 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | app_user_id | bigint | 用户 ID | | item_id | bigint | 项目 ID | | percentage | int | 学习进度(百分比) | | del_flag | char(1) | 逻辑删除 | ### t_play_record — 播放记录 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | app_user_id | bigint | 用户 ID | | item_mkdir_id | bigint | 目录 ID | | item_id | bigint | 项目 ID | | duration | bigint | 已播放时长(秒) | | del_flag | char(1) | 逻辑删除 | ### t_vip_pay_record — VIP 购买记录 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | app_user_id | bigint | 用户 ID | | pay_no | varchar(255) | 支付单号 | | pay_price | decimal(10,2) | 支付金额 | | pay_status | char(1) | 支付状态 | | pay_time | datetime | 支付时间 | | del_flag | char(1) | 逻辑删除 | ### t_purchased_separately_record — 单独购买记录 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | app_user_id | bigint | 用户 ID | | item_id | bigint | 项目 ID | | pay_no | varchar(255) | 支付单号 | | pay_price | decimal(10,2) | 金额 | | pay_status | char(1) | 状态 | | del_flag | char(1) | 逻辑删除 | ### t_purchased_separately_record | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | app_user_id | bigint | 用户 | | item_id | bigint | 项目 | | pay_no | varchar | 支付单号 | | pay_price | decimal | 金额 | | pay_status | char | 状态 | | ... | | | --- ## 三、文档模块 ### t_doc — 文档 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | title | varchar(255) | 标题 | | cover | varchar(255) | 封面 | | description | text | 简介 | | sort | int | 排序 | | status | char(1) | 状态 | | click_count | int | 点击量 | | del_flag | char(1) | 逻辑删除 | ### t_doc_content — 文档内容 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | doc_id | bigint | 关联文档 | | content | longtext | 内容(富文本) | | sort | int | 排序 | | del_flag | char(1) | 逻辑删除 | --- ## 四、积分模块 ### t_points_info — 积分信息 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | app_user_id | bigint | 用户 | | points | int | 变动积分 | | source | varchar | 来源说明 | | del_flag | char(1) | 逻辑删除 | ### t_points_task — 积分任务 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | task_name | varchar | 任务名称 | | description | text | 描述 | | points | int | 奖励积分 | | task_type | varchar | 任务类型 | | status | char | 状态 | | del_flag | char(1) | 逻辑删除 | ### t_point_tasks_completed_record — 任务完成记录 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | app_user_id | bigint | 用户 | | point_task_id | bigint | 任务 ID | | status | char | 状态(0待审核 1通过 2驳回) | | del_flag | char(1) | 逻辑删除 | ### t_points_consumption_record — 积分消费记录 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | app_user_id | bigint | 用户 | | points | int | 消费积分数 | | consumption_type | varchar | 消费类型 | | del_flag | char(1) | 逻辑删除 | --- ## 五、签到模块 ### t_attendance_record — 签到记录 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | app_user_id | bigint | 用户 | | attendance_date | date | 签到日期 | | points_earned | int | 获得积分 | | del_flag | char(1) | 逻辑删除 | --- ## 六、资料模块 ### t_study_materials — 学习资料 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | title | varchar | 资料名称 | | description | text | 描述 | | file_url | varchar | 文件地址 | | cover | varchar | 封面 | | points_required | int | 所需积分 | | pricing_type | char | 收费类型(0免费 1积分 2VIP) | | download_count | int | 下载次数 | | del_flag | char(1) | 逻辑删除 | --- ## 七、社区模块 ### t_project_discussion — 项目讨论 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | app_user_id | bigint | 用户 | | item_id | bigint | 项目 | | content | text | 内容 | | parent_id | bigint | 父评论 ID | | del_flag | char(1) | 逻辑删除 | ### t_chat — 聊天记录 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | from_user_id | bigint | 发送者 | | to_user_id | bigint | 接收者 | | content | text | 内容 | | read_flag | char | 是否已读 | | del_flag | char(1) | 逻辑删除 | ### t_my_notes — 我的笔记 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | app_user_id | bigint | 用户 | | item_id | bigint | 项目 | | mkdir_id | bigint | 目录 | | content | text | 笔记内容 | | del_flag | char(1) | 逻辑删除 | --- ## 八、系统管理 ### t_user — 后台用户 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | user_name | varchar | 用户名 | | password | varchar | 密码 | | nick_name | varchar | 昵称 | | avatar | varchar | 头像 | | email | varchar | 邮箱 | | phone | varchar | 手机号 | | sex | char | 性别 | | status | char | 状态(0正常 1停用) | | del_flag | char(1) | 逻辑删除 | | login_ip | varchar | 最后登录 IP | | login_date | datetime | 最后登录时间 | ### t_role — 角色 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | role_name | varchar | 角色名称 | | role_key | varchar | 角色标识 | | role_sort | int | 排序 | | status | char | 状态 | | del_flag | char(1) | 逻辑删除 | ### t_menu — 菜单/权限 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | menu_name | varchar | 菜单名 | | parent_id | bigint | 父菜单 ID | | order_num | int | 排序 | | path | varchar | 路由路径 | | component | varchar | 组件路径 | | query | varchar | 路由参数 | | is_frame | int | 是否外链 | | is_cache | int | 是否缓存 | | menu_type | char | 类型(M目录 C菜单 F按钮) | | visible | char | 可见性 | | status | char | 状态 | | perms | varchar | 权限标识 | | icon | varchar | 图标 | | del_flag | char(1) | 逻辑删除 | ### t_user_role — 用户角色关联 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | user_id | bigint | 用户 ID | | role_id | bigint | 角色 ID | ### t_role_menu — 角色菜单关联 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | role_id | bigint | 角色 ID | | menu_id | bigint | 菜单 ID | ### t_dept — 部门 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | dept_name | varchar | 部门名称 | | parent_id | bigint | 父部门 | | order_num | int | 排序 | | leader | varchar | 负责人 | | phone | varchar | 联系电话 | | status | char | 状态 | | del_flag | char(1) | 逻辑删除 | ### t_post — 岗位 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | post_code | varchar | 岗位编码 | | post_name | varchar | 岗位名称 | | post_sort | int | 排序 | | status | char | 状态 | | del_flag | char(1) | 逻辑删除 | ### t_dict_type — 字典类型 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | dict_name | varchar | 字典名称 | | dict_type | varchar | 字典类型 | | status | char | 状态 | | del_flag | char(1) | 逻辑删除 | ### t_dict_data — 字典数据 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | dict_sort | int | 排序 | | dict_label | varchar | 字典标签 | | dict_value | varchar | 字典值 | | dict_type | varchar | 所属字典类型 | | css_class | varchar | 样式 | | list_class | varchar | 列表样式 | | is_default | char | 是否默认 | | status | char | 状态 | | del_flag | char(1) | 逻辑删除 | ### t_param_setting — 参数设置 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | param_name | varchar | 参数名 | | param_key | varchar | 参数键 | | param_value | varchar | 参数值 | | param_type | char | 类型 | | del_flag | char(1) | 逻辑删除 | ### t_notice — 通知公告 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | notice_title | varchar | 标题 | | notice_type | char | 类型 | | notice_content | longtext | 内容 | | status | char | 状态 | | del_flag | char(1) | 逻辑删除 | ### t_oper_log — 操作日志 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | title | varchar | 模块标题 | | business_type | int | 业务类型 | | method | varchar | 方法名 | | request_method | varchar | 请求方式 | | oper_name | varchar | 操作人员 | | oper_url | varchar | 请求 URL | | oper_ip | varchar | 操作 IP | | oper_location | varchar | 操作地点 | | oper_param | text | 请求参数 | | json_result | text | 返回结果 | | status | int | 状态 | | error_msg | text | 错误消息 | | oper_time | datetime | 操作时间 | ### t_area — 区域 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | area_name | varchar | 区域名称 | | parent_id | bigint | 父区域 | | level | int | 层级 | | order_num | int | 排序 | | del_flag | char(1) | 逻辑删除 | --- ## 九、监控模块 ### sys_job — 定时任务 | 字段 | 类型 | 说明 | |------|------|------| | job_id | bigint | 主键 | | job_name | varchar | 任务名称 | | job_group | varchar | 任务组 | | invoke_target | varchar | 调用目标 | | cron_expression | varchar | cron 表达式 | | misfire_policy | varchar | 错失执行策略 | | concurrent | char | 是否并发 | | status | char | 状态(0正常 1暂停) | ### sys_job_log — 任务日志 | 字段 | 类型 | 说明 | |------|------|------| | job_log_id | bigint | 主键 | | job_name | varchar | 任务名 | | job_group | varchar | 任务组 | | invoke_target | varchar | 调用目标 | | job_message | varchar | 日志信息 | | status | char | 状态(0成功 1失败) | | exception_info | text | 异常信息 | | start_time | datetime | 开始时间 | | stop_time | datetime | 停止时间 | --- ## 十、文件模块 ### file_upload_detail — 文件上传详情 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | username | varchar(64) | 上传用户 | | file_name | varchar(64) | 文件名 | | md5 | varchar(255) | MD5 值 | | is_uploaded | int | 是否完整上传 | | has_been_uploaded | longtext | 已上传分片 | | url | longtext | 存储 URL | | total_chunks | int | 总分片数 | | create_time | datetime | 创建时间 | | update_time | datetime | 更新时间 | --- ## 十一、统计模块 ### t_pv — 页面浏览量 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | count | bigint | 访问次数 | | create_time | date | 日期 | ### t_uv — 独立访客 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | count | bigint | 访客数 | | create_time | date | 日期 | --- ## 十二、代码生成 ### gen_config — 生成配置 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | table_name | varchar | 表名 | | module_name | varchar | 模块名 | | package_name | varchar | 包名 | | business_name | varchar | 业务名 | | entity_name | varchar | 实体名 | | author | varchar | 作者 | | parent_menu_id | bigint | 上级菜单 | | tpl_category | varchar | 模板分类 | | package_path | varchar | 包路径 | | del_flag | char(1) | 逻辑删除 | ### gen_field_config — 字段配置 | 字段 | 类型 | 说明 | |------|------|------| | id | bigint | 主键 | | gen_config_id | bigint | 关联配置 | | column_name | varchar | 列名 | | column_comment | varchar | 列注释 | | java_type | varchar | Java 类型 | | java_field | varchar | Java 字段名 | | is_insert | char | 是否插入 | | is_edit | char | 是否编辑 | | is_list | char | 是否列表 | | is_query | char | 是否查询 | | query_type | varchar | 查询方式 | | html_type | varchar | 表单类型 | | dict_type | varchar | 字典类型 | | sort | int | 排序 | | del_flag | char(1) | 逻辑删除 | --- ## 十三、Quartz 调度表 | 表名 | 说明 | |------|------| | qrtz_job_details | Job 详情 | | qrtz_triggers | 触发器 | | qrtz_cron_triggers | Cron 触发器 | | qrtz_simple_triggers | 简单触发器 | | qrtz_simprop_triggers | 属性触发器 | | qrtz_blob_triggers | BLOB 触发器 | | qrtz_calendars | 日历 | | qrtz_fired_triggers | 已触发 | | qrtz_paused_trigger_grps | 暂停组 | | qrtz_scheduler_state | 调度状态 | | qrtz_locks | 锁 | --- ## ER 关系概览 ``` app_user (1) ──< t_obtain_item >── (1) t_item app_user (1) ──< t_play_record >── (1) t_item / t_item_mkdir app_user (1) ──< t_points_info / t_points_consumption_record app_user (1) ──< t_point_tasks_completed_record >── (1) t_points_task app_user (1) ──< t_attendance_record app_user (1) ──< t_my_notes >── (1) t_item app_user (1) ──< t_project_discussion >── (1) t_item t_user (1) ──< t_user_role >── (1) t_role ──< t_role_menu >── (1) t_menu t_user (1) ──< t_user_post >── (1) t_post t_user (1) ──< t_dept t_role ──< t_role_dept >── (1) t_dept ``` # API 接口文档 ## 接口规范 - **基础路径:** `http://localhost:8080` - **前台接口前缀:** `/app/*` - **后台接口前缀:** `/background/*` - **系统管理前缀:** `/system/*` - **监控前缀:** `/monitor/*` - **文件格式:** JSON - **统一返回结构:** ```json { "code": 200, "msg": "success", "data": {} } ``` --- ## 一、前台接口 (`/app/*`) ### 1.1 用户认证 (`/app/user`) | 方法 | 路径 | 说明 | 参数 | |------|------|------|------| | POST | `/app/user/register` | 注册 | `{email, password, nickName, validCode}` | | GET | `/app/user/login` | 登录 | `email, password` | | POST | `/app/user/logout` | 登出 | - | | GET | `/app/user/loginUserInfo` | 获取当前用户信息 | - | | PUT | `/app/user/update` | 更新用户信息 | `{nickName, phone, email, sex, avatar}` | | POST | `/app/user/wxLogin` | 微信登录 | `{code}` | | GET | `/app/user/captcha` | 获取图形验证码 | - | | GET | `/app/user/getEmailCode` | 获取邮箱验证码 | `email` | | GET | `/app/user/findPwd` | 找回密码 | `email, password, code` | ### 1.2 项目 (`/app/item`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/item/page` | 分页查询项目 | | GET | `/app/item/list` | 查询项目列表 | | GET | `/app/item/{id}` | 根据 ID 获取项目详情 | ### 1.3 我的项目 (`/app/obtainItem`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/obtainItem/page` | 分页查询已购项目 | | GET | `/app/obtainItem/list` | 查询已购项目列表 | | GET | `/app/obtainItem/{id}` | 获取已购项目详情 | | POST | `/app/obtainItem/add` | 添加购买记录 | ### 1.4 文档 (`/app/doc` / `/app/docContent`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/doc/page` | 分页查询文档 | | GET | `/app/doc/list` | 文档列表 | | GET | `/app/doc/{id}` | 文档详情 | | GET | `/app/docContent/page` | 分页查询文档内容 | | GET | `/app/docContent/list` | 文档内容列表 | | GET | `/app/docContent/{id}` | 文档内容详情 | ### 1.5 学习资料 (`/app/studyMaterials`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/studyMaterials/page` | 分页查询资料 | | GET | `/app/studyMaterials/list` | 资料列表 | | GET | `/app/studyMaterials/{id}` | 资料详情 | ### 1.6 视频播放 (`/app/play`) | 方法 | 路径 | 说明 | |------|------|------| | POST | `/app/play/save` | 保存播放记录 | | GET | `/app/play/percent` | 获取学习进度百分比 | ### 1.7 积分 (`/app/pointsInfo` / `/app/pointsTask`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/pointsInfo/page` | 积分明细分页 | | GET | `/app/pointsInfo/list` | 积分明细列表 | | GET | `/app/pointsInfo/{id}` | 积分详情 | | GET | `/app/pointsTask/page` | 积分任务分页 | | GET | `/app/pointsTask/list` | 积分任务列表 | | GET | `/app/pointsTask/{id}` | 任务详情 | ### 1.8 积分消费记录 (`/app/pointsConsumptionRecord`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/pointsConsumptionRecord/page` | 分页 | | GET | `/app/pointsConsumptionRecord/list` | 列表 | | GET | `/app/pointsConsumptionRecord/{id}` | 详情 | | POST | `/app/pointsConsumptionRecord/add` | 新增 | ### 1.9 签到记录 (`/app/attendanceRecord`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/attendanceRecord/page` | 分页 | | GET | `/app/attendanceRecord/list` | 列表 | | GET | `/app/attendanceRecord/{id}` | 详情 | | POST | `/app/attendanceRecord/add` | 签到 | | PUT | `/app/attendanceRecord/update` | 更新 | | DELETE | `/app/attendanceRecord/remove` | 删除 | ### 1.10 任务完成记录 (`/app/pointTasksCompletedRecord`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/pointTasksCompletedRecord/page` | 分页 | | GET | `/app/pointTasksCompletedRecord/list` | 列表 | | GET | `/app/pointTasksCompletedRecord/{id}` | 详情 | | POST | `/app/pointTasksCompletedRecord/add` | 完成任务 | ### 1.11 项目目录 (`/app/itemMkdir`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/itemMkdir/list` | 目录列表(按项目ID) | ### 1.12 项目资料 (`/app/itemMaterials`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/itemMaterials/page` | 分页 | | GET | `/app/itemMaterials/list` | 列表 | | GET | `/app/itemMaterials/{id}` | 详情 | ### 1.13 项目讨论 (`/app/projectDiscussion`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/projectDiscussion/page` | 分页 | | GET | `/app/projectDiscussion/list` | 列表 | | GET | `/app/projectDiscussion/{id}` | 详情 | | POST | `/app/projectDiscussion/add` | 发表讨论 | | PUT | `/app/projectDiscussion/update` | 编辑 | | DELETE | `/app/projectDiscussion/remove` | 删除 | ### 1.14 聊天 (`/app/chat`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/chat/page` | 分页 | | GET | `/app/chat/list` | 列表 | | GET | `/app/chat/{id}` | 详情 | | PUT | `/app/chat/update` | 更新 | | DELETE | `/app/chat/remove` | 删除 | | GET | `/app/chat/noReadCount` | 未读消息数 | ### 1.15 支付 (`/app/pay`) | 方法 | 路径 | 说明 | |------|------|------| | ANY | `/app/pay/getOrCode` | 获取支付二维码 | ### 1.16 通用 (`/app/common`) | 方法 | 路径 | 说明 | |------|------|------| | POST | `/app/common/upload` | 文件上传 | | POST | `/app/common/uploadByRustFS` | 头像上传(RustFS) | | GET | `/app/common/file/{key}` | 获取文件 | | GET | `/app/common/download` | 下载文件 | | GET | `/app/common/remove` | 删除文件 | ### 1.17 功能特性 (`/app/features`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/features/list` | 功能特性列表 | ### 1.18 参数设置 (`/app/paramsetting`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/paramsetting/{paramKeyName}` | 根据 key 获取参数 | ### 1.19 我的笔记 (`/app/myNotes`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/app/myNotes/page` | 分页 | | GET | `/app/myNotes/list` | 列表 | | GET | `/app/myNotes/{id}` | 详情 | | POST | `/app/myNotes/add` | 添加笔记 | | PUT | `/app/myNotes/update` | 编辑 | | DELETE | `/app/myNotes/remove` | 删除 | --- ## 二、后台管理接口 (`/background/*`) ### 2.1 前台用户管理 (`/background/appuser`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/appuser/list` | 列表(无分页) | | GET | `/background/appuser/page` | 分页查询 | | GET | `/background/appuser/{id}` | 详情 | | POST | `/background/appuser/add` | 新增 | | PUT | `/background/appuser/update` | 编辑 | | DELETE | `/background/appuser/delete` | 删除 | ### 2.2 项目管理 (`/background/item`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/item/page` | 分页 | | GET | `/background/item/list` | 列表 | | GET | `/background/item/{id}` | 详情 | | POST | `/background/item/add` | 新增 | | PUT | `/background/item/update` | 编辑 | | DELETE | `/background/item/remove` | 删除 | ### 2.3 项目目录 (`/background/itemMkdir`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/itemMkdir/page` | 分页 | | GET | `/background/itemMkdir/list` | 列表 | | GET | `/background/itemMkdir/{id}` | 详情 | | POST | `/background/itemMkdir/add` | 新增 | | PUT | `/background/itemMkdir/update` | 编辑 | | DELETE | `/background/itemMkdir/remove` | 删除 | ### 2.4 项目资料 (`/background/itemMaterials`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/itemMaterials/page` | 分页 | | GET | `/background/itemMaterials/list` | 列表 | | GET | `/background/itemMaterials/{id}` | 详情 | | POST | `/background/itemMaterials/add` | 新增 | | PUT | `/background/itemMaterials/update` | 编辑 | | DELETE | `/background/itemMaterials/remove` | 删除 | ### 2.5 文档管理 (`/background/doc` / `/background/docContent`) 同前台模式,增加 POST/PUT/DELETE 操作。 ### 2.6 学习资料 (`/background/studyMaterials`) 同前台模式,增加 POST/PUT/DELETE 操作。 ### 2.7 购买记录 (`/background/obtainItem`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/obtainItem/page` | 分页 | | GET | `/background/obtainItem/list` | 列表 | | GET | `/background/obtainItem/{id}` | 详情 | | POST | `/background/obtainItem/add` | 新增 | | PUT | `/background/obtainItem/update` | 编辑 | | DELETE | `/background/obtainItem/remove` | 删除 | ### 2.8 单独购买记录 (`/background/purchasedSeparatelyRecord`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/purchasedSeparatelyRecord/page` | 分页 | | GET | `/background/purchasedSeparatelyRecord/list` | 列表 | | GET | `/background/purchasedSeparatelyRecord/{id}` | 详情 | | POST | `/background/purchasedSeparatelyRecord/add` | 新增 | | PUT | `/background/purchasedSeparatelyRecord/update` | 编辑 | | DELETE | `/background/purchasedSeparatelyRecord/remove` | 删除 | ### 2.9 积分管理 (`/background/pointsInfo` / `/background/pointsTask`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/pointsInfo/page` | 积分列表 | | GET | `/background/pointsTask/page` | 积分任务列表 | | POST | `/background/pointsTask/add` | 新增任务 | | PUT | `/background/pointsTask/update` | 编辑任务 | | DELETE | `/background/pointsTask/remove` | 删除任务 | ### 2.10 积分消费 (`/background/pointsConsumptionRecord`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/pointsConsumptionRecord/page` | 分页 | | GET | `/background/pointsConsumptionRecord/list` | 列表 | | GET | `/background/pointsConsumptionRecord/{id}` | 详情 | ### 2.11 任务完成记录 (`/background/pointTasksCompletedRecord`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/pointTasksCompletedRecord/page` | 分页 | | GET | `/background/pointTasksCompletedRecord/list` | 列表 | | GET | `/background/pointTasksCompletedRecord/{id}` | 详情 | | POST | `/background/pointTasksCompletedRecord/add` | 新增 | | PUT | `/background/pointTasksCompletedRecord/update` | 编辑 | | PUT | `/background/pointTasksCompletedRecord/review` | 审核 | | DELETE | `/background/pointTasksCompletedRecord/remove` | 删除 | ### 2.12 签到记录 (`/background/attendanceRecord`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/attendanceRecord/page` | 分页 | | GET | `/background/attendanceRecord/list` | 列表 | | GET | `/background/attendanceRecord/{id}` | 详情 | ### 2.13 项目讨论 (`/background/projectDiscussion`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/projectDiscussion/page` | 分页 | | GET | `/background/projectDiscussion/list` | 列表 | | POST | `/background/projectDiscussion/add` | 新增 | | PUT | `/background/projectDiscussion/update` | 编辑 | | DELETE | `/background/projectDiscussion/remove` | 删除 | ### 2.14 我的笔记 (`/background/myNotes`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/myNotes/page` | 分页 | | GET | `/background/myNotes/list` | 列表 | | POST | `/background/myNotes/add` | 新增 | | PUT | `/background/myNotes/update` | 编辑 | | DELETE | `/background/myNotes/remove` | 删除 | ### 2.15 聊天记录 (`/background/chat`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/chat/page` | 分页 | | GET | `/background/chat/users` | 用户列表 | | GET | `/background/chat/noReadCount` | 未读数 | | GET | `/background/chat/getDetail` | 对话详情 | | GET | `/background/chat/list` | 列表 | | GET | `/background/chat/{id}` | 详情 | | POST | `/background/chat/add` | 发送 | | PUT | `/background/chat/update` | 更新 | | DELETE | `/background/chat/remove` | 删除 | ### 2.16 功能特性 (`/background/features`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/background/features/page` | 分页 | | GET | `/background/features/list` | 列表 | | GET | `/background/features/{id}` | 详情 | | POST | `/background/features/add` | 新增 | | PUT | `/background/features/update` | 编辑 | | DELETE | `/background/features/remove` | 删除 | ### 2.17 文件上传 (`/background/file`) | 方法 | 路径 | 说明 | |------|------|------| | POST | `/background/file/upload` | 分片上传 | | GET | `/background/file/check/{md5}` | 检查文件 MD5 | | POST | `/background/file/merge` | 合并分片 | --- ## 三、系统管理接口 (`/system/*`) ### 3.1 后台用户 (`/system/user`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/user/list` | 用户列表 | | GET | `/system/user/assignUserPage` | 已分配用户 | | GET | `/system/user/unAssignUserPage` | 未分配用户 | | GET | `/system/user/getOne` | 获取单个用户 | | GET | `/system/user/getLoginInfo` | 获取登录信息 | | POST | `/system/user/login` | 登录 | | POST | `/system/user/register` | 注册 | | POST | `/system/user/add` | 新增 | | PUT | `/system/user/update` | 编辑 | | DELETE | `/system/user/delete` | 删除 | | POST | `/system/user/import` | 导入用户 | | GET | `/system/user/export` | 导出用户 | | GET | `/system/user/captcha` | 验证码 | ### 3.2 角色 (`/system/role`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/role/page` | 分页 | | GET | `/system/role/list` | 列表 | | GET | `/system/role/get/{id}` | 详情 | | POST | `/system/role/add` | 新增 | | PUT | `/system/role/update` | 编辑 | | DELETE | `/system/role/remove` | 删除 | | POST | `/system/role/assignPermission` | 分配权限 | | POST | `/system/role/assignUsers` | 分配用户 | | DELETE | `/system/role/unAssignUsers` | 移除用户 | ### 3.3 菜单 (`/system/menu`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/menu/listtree` | 菜单树 | | GET | `/system/menu/list` | 菜单列表 | | GET | `/system/menu/{id}` | 详情 | | POST | `/system/menu/add` | 新增 | | PUT | `/system/menu/update` | 编辑 | | DELETE | `/system/menu/remove` | 删除 | ### 3.4 部门 (`/system/dept`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/dept/tree` | 部门树 | | GET | `/system/dept/{id}` | 详情 | | POST | `/system/dept/add` | 新增 | | PUT | `/system/dept/update` | 编辑 | | DELETE | `/system/dept/remove` | 删除 | ### 3.5 岗位 (`/system/post`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/post/page` | 分页 | | GET | `/system/post/list` | 列表 | | GET | `/system/post/{id}` | 详情 | | POST | `/system/post/add` | 新增 | | PUT | `/system/post/update` | 编辑 | | DELETE | `/system/post/remove` | 删除 | ### 3.6 字典类型 (`/system/dicttype`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/dicttype/page` | 分页 | | GET | `/system/dicttype/list` | 列表 | | GET | `/system/dicttype/{id}` | 详情 | | POST | `/system/dicttype/add` | 新增 | | PUT | `/system/dicttype/update` | 编辑 | | DELETE | `/system/dicttype/remove` | 删除 | ### 3.7 字典数据 (`/system/dictdata`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/dictdata/page` | 分页 | | GET | `/system/dictdata/{id}` | 详情 | | POST | `/system/dictdata/add` | 新增 | | PUT | `/system/dictdata/update` | 编辑 | | DELETE | `/system/dictdata/remove` | 删除 | ### 3.8 参数设置 (`/system/paramsetting`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/paramsetting/page` | 分页 | | GET | `/system/paramsetting/{id}` | 详情 | | POST | `/system/paramsetting/add` | 新增 | | PUT | `/system/paramsetting/update` | 编辑 | | DELETE | `/system/paramsetting/remove` | 删除 | ### 3.9 通知公告 (`/system/notice`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/notice/page` | 分页 | | GET | `/system/notice/list` | 列表 | | GET | `/system/notice/{id}` | 详情 | | POST | `/system/notice/save` | 新增 | | PUT | `/system/notice/update` | 编辑 | | DELETE | `/system/notice/remove` | 删除 | ### 3.10 区域 (`/system/area`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/area/tree` | 区域树 | | GET | `/system/area/{id}` | 详情 | | POST | `/system/area/add` | 新增 | | PUT | `/system/area/update` | 编辑 | | DELETE | `/system/area/remove` | 删除 | ### 3.11 操作日志 (`/system/operlog`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/operlog/list` | 列表 | | GET | `/system/operlog/get/{id}` | 详情 | | POST | `/system/operlog/save` | 新增 | | POST | `/system/operlog/update` | 更新 | | POST | `/system/operlog/remove` | 删除 | ### 3.12 登录日志 (`/system/userlog`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/userlog/page` | 分页 | | GET | `/system/userlog/info/{id}` | 详情 | ### 3.13 用户岗位 (`/system/userPost`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/userPost/page` | 分页 | | GET | `/system/userPost/{id}` | 详情 | | POST | `/system/userPost/add` | 新增 | | PUT | `/system/userPost/update` | 编辑 | | DELETE | `/system/userPost/remove` | 删除 | ### 3.14 OSS 管理 (`/system/oss`) | 方法 | 路径 | 说明 | |------|------|------| | POST | `/system/oss/upload` | 上传文件 | | DELETE | `/system/oss/` | 删除文件 | | GET | `/system/oss/info` | OSS 信息 | | GET | `/system/oss/url` | 获取文件 URL | | GET | `/system/oss/download` | 下载文件 | ### 3.15 通用 (`/system/common`) | 方法 | 路径 | 说明 | |------|------|------| | POST | `/system/common/upload` | 文件上传 | | POST | `/system/common/uploadByRustFS` | RustFS 上传 | | GET | `/system/common/file/{key}` | 文件获取 | | GET | `/system/common/download` | 下载 | | GET | `/system/common/remove` | 删除 | | POST | `/system/common/multipart-init` | 分片初始化 | | POST | `/system/common/multipart-upload` | 分片上传 | | POST | `/system/common/multipart-complete` | 分片完成 | ### 3.16 PV / UV | 方法 | 路径 | 说明 | |------|------|------| | GET | `/system/pv/list` | PV 列表 | | GET | `/system/pv/alllist` | PV 全部 | | GET | `/system/uv/list` | UV 列表 | | GET | `/system/uv/alllist` | UV 全部 | | POST | `/system/uv/add` | 新增 UV | --- ## 四、监控接口 (`/monitor/*`) ### 4.1 服务监控 (`/monitor/server`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/monitor/server` | 服务器信息(CPU、内存、JVM、磁盘、系统) | ### 4.2 定时任务 (`/monitor/job`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/monitor/job/page` | 分页 | | GET | `/monitor/job/{jobId}` | 详情 | | POST | `/monitor/job` | 新增 | | PUT | `/monitor/job` | 编辑 | | PUT | `/monitor/job/changeStatus` | 启/停 | | PUT | `/monitor/job/run` | 立即执行 | | DELETE | `/monitor/job/{jobIds}` | 删除 | | POST | `/monitor/job/export` | 导出 | ### 4.3 任务日志 (`/monitor/jobLog`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/monitor/jobLog/list` | 列表 | | GET | `/monitor/jobLog/{jobLogId}` | 详情 | | DELETE | `/monitor/jobLog/{jobLogIds}` | 删除 | | DELETE | `/monitor/jobLog/clean` | 清空 | | POST | `/monitor/jobLog/export` | 导出 | --- ## 五、代码生成 (`/codegen`) | 方法 | 路径 | 说明 | |------|------|------| | GET | `/codegen/table/page` | 分页查询数据库表 | | GET | `/codegen/{tableName}/config` | 获取生成配置 | | POST | `/codegen/{tableName}/config` | 保存生成配置 | | DELETE | `/codegen/{tableName}/config` | 删除配置 | | GET | `/codegen/{tableName}/preview` | 预览代码 | | GET | `/codegen/{tableName}/download` | 下载代码 |