加载中...
-加载中...
+共 {{ totalCount }} 个分类
-共 {{ totalCount }} 个分类
+{{ item.description }}
- - -{{ item.description }}
+ + +今天是 {{ currentDate }},祝您工作愉快
-今天是 {{ currentDate }},祝您工作愉快
+{{ module.description || "暂无描述" }}
-{{ module.description || "暂无描述" }}
-{{ module.description || "暂无描述" }}
-暂无功能模块
-请联系管理员配置系统菜单
-{{ module.description || "暂无描述" }}
+{{ module.description || "暂无描述" }}
+{{ module.description || "暂无描述" }}
+暂无功能模块
+请联系管理员配置系统菜单
+{{ module.desc || '暂无描述' }}
- -{{ module.desc || '暂无描述' }}
+ +{{ error }}
-单页内容不存在
-{{ error }}
+单页内容不存在
+{{ formatJson(log.request_data) }}
- 无
- {{ formatJson(log.response_data) }}
- 无
- {{ formatJson(log.request_data) }}
+ 无
+ {{ formatJson(log.response_data) }}
+ 无
+ 该日程提醒在此之前已确认过了。
-无需重复点击,感谢您的使用!
-您已成功确认收到该日程提醒!
-系统已停止向您重复推送,感谢您的配合。
-该日程提醒在此之前已确认过了。
+无需重复点击,感谢您的使用!
+您已成功确认收到该日程提醒!
+系统已停止向您重复推送,感谢您的配合。
+%s
-确认收到后,系统将不再向您发送该日程的重复提醒。
- `, ackURL) - } - - htmlBody += "%s
+确认收到后,系统将不再向您发送该日程的重复提醒。
+ `, ackURL) + } + + htmlBody += "加载中...
-加载中...
+{{ row.token || "暂无 Token" }}
- {{ row.token || "暂无 Token" }}
+ https://api.yunzer.cn/api/getcard
- {{ ex.url }}
- {{ successResp }}
- {{ errorResp }}
- https://api.yunzer.cn/api/getcard
+ {{ ex.url }}
+ {{ successResp }}
+ {{ errorResp }}
+ {{ row.token || "暂无 Token" }}
- {{ row.token || "暂无 Token" }}
+ https://api.yunzer.cn/api/getcard
- {{ ex.url }}
- {{ successResp }}
- {{ errorResp }}
- https://api.yunzer.cn/api/getcard
+ {{ ex.url }}
+ {{ successResp }}
+ {{ errorResp }}
+ {{ row.token || "暂无 Token" }}
- {{ row.token || "暂无 Token" }}
+ https://api.yunzer.cn/api/getcard
- {{ ex.url }}
- {{ successResp }}
- {{ errorResp }}
- https://api.yunzer.cn/api/getcard
+ {{ ex.url }}
+ {{ successResp }}
+ {{ errorResp }}
+ {{ row.token || "暂无 Token" }}
- {{ row.token || "暂无 Token" }}
+ https://api.yunzer.cn/api/getcard
- {{ ex.url }}
- {{ successResp }}
- {{ errorResp }}
- https://api.yunzer.cn/api/getcard
+ {{ ex.url }}
+ {{ successResp }}
+ {{ errorResp }}
+ 今天是 {{ currentDate }},祝您工作愉快
-今天是 {{ currentDate }},祝您工作愉快
+{{ module.desc || '暂无描述' }}
- -{{ module.desc || '暂无描述' }}
+ +{{ error }}
-单页内容不存在
-{{ error }}
+单页内容不存在
+- 以下为 go-platform 已提供的 HTTP 接口。请求前缀为当前环境配置的 API 地址(开发环境示例见下方)。 -
-API 根地址
-{{ apiBase }}
-
- 除特别说明外,均需平台管理员登录后携带:
-Authorization: Bearer <token>-
Token 由 POST /platform/login 返回。列表、分类管理、处理投诉等均为平台端接口。
GET /platform/complaintCategory/select — 仅返回 status=1 的分类,供下拉/官网选分类用。GET /platform/complaintCategory/list — 全部分类(管理列表)。POST /platform/complaintCategory — 新增分类,Body JSON:name(必填)、code、sort、status。POST /platform/complaintCategory/:id — 更新。DELETE /platform/complaintCategory/:id — 软删。POST /platform/complaint
Body(JSON,camelCase):
-{
- "categoryId": 1,
- "title": "建议标题",
- "content": "详细描述",
- "contactName": "可选",
- "contactPhone": "可选",
- "contactEmail": "可选"
-}
- 成功示例:{ "code": 200, "msg": "success", "data": { "id": 1 } }
若需在官网/小程序免登录提交,需在后端单独增加公开路由(当前接口与平台管理一致,需 Bearer)。
- -GET /platform/complaint/list — 分页。Query:page、pageSize、categoryId、status(0~3)、keyword。GET /platform/complaint/:id — 详情。POST /platform/complaint/:id — 更新状态、回复等:status、replyContent、remark、categoryId 等。DELETE /platform/complaint/:id — 软删。状态:0 待处理 · 1 处理中 · 2 已回复 · 3 已关闭
yz_system_complaint_category、yz_system_platform_complaint
+ 以下为 go-platform 已提供的 HTTP 接口。请求前缀为当前环境配置的 API 地址(开发环境示例见下方)。 +
+API 根地址
+{{ apiBase }}
+
+ 除特别说明外,均需平台管理员登录后携带:
+Authorization: Bearer <token>+
Token 由 POST /platform/login 返回。列表、分类管理、处理投诉等均为平台端接口。
GET /platform/complaintCategory/select — 仅返回 status=1 的分类,供下拉/官网选分类用。GET /platform/complaintCategory/list — 全部分类(管理列表)。POST /platform/complaintCategory — 新增分类,Body JSON:name(必填)、code、sort、status。POST /platform/complaintCategory/:id — 更新。DELETE /platform/complaintCategory/:id — 软删。POST /platform/complaint
Body(JSON,camelCase):
+{
+ "categoryId": 1,
+ "title": "建议标题",
+ "content": "详细描述",
+ "contactName": "可选",
+ "contactPhone": "可选",
+ "contactEmail": "可选"
+}
+ 成功示例:{ "code": 200, "msg": "success", "data": { "id": 1 } }
若需在官网/小程序免登录提交,需在后端单独增加公开路由(当前接口与平台管理一致,需 Bearer)。
+ +GET /platform/complaint/list — 分页。Query:page、pageSize、categoryId、status(0~3)、keyword。GET /platform/complaint/:id — 详情。POST /platform/complaint/:id — 更新状态、回复等:status、replyContent、remark、categoryId 等。DELETE /platform/complaint/:id — 软删。状态:0 待处理 · 1 处理中 · 2 已回复 · 3 已关闭
yz_system_complaint_category、yz_system_platform_complaint
+ 同一个产品 code 可配置多个运行环境安装包;客户端按自身系统读取响应中的
+ downloadUrls[platform]。
+
客户端启动时调用开放接口比对版本;管理端接口需平台管理员 Token。
-API 根地址
-{{ apiBase }}
-
- GET /api/softwareupgrade/check
Query:
-code(必填):与后台配置的「产品标识」一致version(可选):当前客户端版本,缺省按 0.0.0响应 data 字段说明:
upToDate:是否已是最新(当前版本 ≥ 后台最新版本)latestVersion:后台配置的最新版本号downloadUrl:安装包地址(自定义 URL 或由文件 ID 解析)forceUpdate:是否建议强制更新releaseNotes:更新说明GET {{ apiBase }}/api/softwareupgrade/check?code=my-app&version=1.0.0
-
- 按 . 分段数字比较(如 1.10.0 > 1.9.0)。后缀 -beta 等仅截取 - 前参与比较。
在「软件升级」编辑抽屉内点击 上传安装包,会调用 POST /platform/uploadfile,并自动归入文件分组 appsupgrade(不存在则自动创建)。保存后会把 file_id 与根据 VITE_API_BASE_URL 拼好的 download_url 写入数据库。
静态资源映射:/uploads;生产环境请配置正确的 API 公网地址与反向代理头(X-Forwarded-Proto 等)。
GET /platform/softwareupgrade/list — page、pageSize、keywordGET /platform/softwareupgrade/:idPOST /platform/softwareupgrade — 新增POST /platform/softwareupgrade/:id — 更新DELETE /platform/softwareupgrade/:id — 软删表:yz_system_software_upgrade
客户端启动时调用开放接口比对版本;管理端接口需平台管理员 Token。
+API 根地址
+{{ apiBase }}
+
+ GET /api/softwareupgrade/check
Query:
+code(必填):与后台配置的「产品标识」一致version(可选):当前客户端版本,缺省按 0.0.0platform(可选):客户端运行环境,如 windows、mac、ubuntu、linux;客户端也可以自行从 downloadUrls 取对应平台 URL响应 data 字段说明:
upToDate:是否已是最新(当前版本 ≥ 后台最新版本)latestVersion:后台配置的最新版本号downloadUrl:兼容旧客户端的单安装包地址(自定义 URL 或由文件 ID 解析)downloadUrls:多平台安装包地址,如 windows、mac、ubuntu、linuxforceUpdate:是否建议强制更新releaseNotes:更新说明GET {{ apiBase }}/api/softwareupgrade/check?code=my-app&version=1.0.0
+
+ 按 . 分段数字比较(如 1.10.0 > 1.9.0)。后缀 -beta 等仅截取 - 前参与比较。
在「软件升级」编辑抽屉内点击 上传安装包,会调用 POST /platform/uploadfile,并自动归入文件分组 appsupgrade(不存在则自动创建)。保存后会把 file_id 与根据 VITE_API_BASE_URL 拼好的 download_url 写入数据库。
静态资源映射:/uploads;生产环境请配置正确的 API 公网地址与反向代理头(X-Forwarded-Proto 等)。
GET /platform/softwareupgrade/list — page、pageSize、keywordGET /platform/softwareupgrade/:idPOST /platform/softwareupgrade — 新增POST /platform/softwareupgrade/:id — 更新DELETE /platform/softwareupgrade/:id — 软删表:yz_system_software_upgrade
1. 模块用于管理系统功能单元,每个模块包含独立的路由、图标和描述
-2. 模块编码用于程序识别,请确保唯一性
-3. 禁用状态的模块将不会在菜单中显示
- -1. 模块用于管理系统功能单元,每个模块包含独立的路由、图标和描述
+2. 模块编码用于程序识别,请确保唯一性
+3. 禁用状态的模块将不会在菜单中显示
+ +{{ formatJson(log.request_data) }}
- 无
- {{ formatJson(log.response_data) }}
- 无
- {{ formatJson(log.request_data) }}
+ 无
+ {{ formatJson(log.response_data) }}
+ 无
+ 使用七牛云存储需要:
-使用七牛云存储需要:
+正在加载程序数据...
-正在加载程序数据...
+笔记内容
" - } - ``` - - 返回: 创建的笔记信息 - -4. **更新笔记** - - URL: `POST /platform/notebook/update/:id` - - 参数: - ```json - { - "title": "更新的标题", - "content": "更新的内容
" - } - ``` - - 返回: 更新后的笔记信息 - -5. **删除笔记** - - URL: `DELETE /platform/notebook/delete/:id` - - 参数: `id` - 笔记ID - - 返回: 删除结果 - -## 前端API - -### API文件 -`platform/src/api/notebook.js` - -### 方法说明 - -```javascript -// 获取笔记列表 -getNotebookList({ page, pageSize, keyword }) - -// 获取笔记详情 -getNotebookDetail(id) - -// 创建笔记 -createNotebook({ title, content }) - -// 更新笔记 -updateNotebook(id, { title, content }) - -// 删除笔记 -deleteNotebook(id) -``` - -## 使用步骤 - -### 1. 初始化数据库 -```bash -# 在MySQL中执行SQL文件 -mysql -u用户名 -p数据库名 < sql/yz_platform_notebook.sql -``` - -### 2. 启动后端服务 -后端已自动注册模型和路由,直接启动即可: -```bash -cd go -go run main.go -``` - -### 3. 访问前端 -在浏览器中访问笔记本页面(路由需要在菜单中配置) - -## 功能特性 - -### 列表功能 -- ✅ 显示所有笔记 -- ✅ 搜索笔记(按标题) -- ✅ 创建新笔记 -- ✅ 删除笔记 -- ✅ 查看笔记预览 -- ✅ 显示更新时间 - -### 编辑器功能 -- ✅ 富文本编辑(基于WangEditor) -- ✅ 标题编辑 -- ✅ 内容编辑 -- ✅ 保存笔记 -- ✅ 自动识别新建/编辑模式 -- ✅ 加载状态显示 - -### WangEditor支持的功能 -- 文本样式(加粗、斜体、下划线等) -- 标题(H1-H6) -- 引用 -- 代码块 -- 有序/无序列表 -- 表格 -- 链接 -- 图片上传(需配置上传接口) -- 视频嵌入 - -## 权限说明 - -- 所有接口都需要平台用户登录(JWT Token验证) -- 每个用户只能查看、编辑、删除自己创建的笔记 -- 删除操作为软删除,数据仍保留在数据库中 - -## 扩展功能(可选) - -如需添加以下功能,可以扩展: - -1. **笔记分类** - - 添加分类表和分类字段 - - 支持笔记分类管理 - -2. **笔记标签** - - 添加标签表和关联表 - - 支持多标签筛选 - -3. **笔记分享** - - 添加分享链接生成功能 - - 支持公开/私密设置 - -4. **笔记导出** - - 支持导出为PDF - - 支持导出为Markdown - -5. **版本历史** - - 记录笔记的修改历史 - - 支持版本回退 - -6. **协作编辑** - - 支持多人协作编辑 - - 实时同步功能 - -## 注意事项 - -1. 图片上传需要配置文件上传接口 -2. 富文本内容存储为HTML格式,注意XSS防护 -3. 数据库content字段使用longtext类型,支持大容量内容 -4. 建议定期清理软删除的数据 -5. 生产环境建议添加内容审核机制 - -## 技术栈 - -- **前端**: Vue 3 + Element Plus + WangEditor -- **后端**: Go + Beego + MySQL -- **编辑器**: WangEditor 5.x - -## 开发调试 - -### 前端调试 -```bash -cd platform -npm run dev -``` - -### 后端调试 -```bash -cd go -go run main.go -``` - -### 查看API请求 -打开浏览器开发者工具 -> Network 标签页,查看API请求和响应 - -## 问题排查 - -1. **笔记列表为空** - - 检查数据库表是否创建成功 - - 检查用户是否已登录 - - 查看浏览器Console是否有错误 - -2. **保存失败** - - 检查JWT Token是否有效 - - 检查标题是否为空 - - 查看后端日志 - -3. **编辑器显示异常** - - 检查WangEditor是否正确安装 - - 查看浏览器Console错误信息 - - 检查CSS样式是否正确加载 - -## 更新日志 - -### v1.0.0 (2024) -- ✅ 完成基础功能 -- ✅ 支持笔记CRUD操作 -- ✅ 集成WangEditor富文本编辑器 -- ✅ 响应式设计支持 -- ✅ 暗色模式支持 +# 记事本模块使用说明 + +## 功能概述 + +这是一个完整的记事本应用模块,支持富文本编辑、笔记管理等功能。 + +## 目录结构 + +``` +notebook/ +├── index.vue # 主页面(列表+编辑器) +├── components/ +│ ├── edit.vue # 编辑器组件 +│ └── WangEditor.vue # WangEditor富文本编辑器封装 +└── README.md # 说明文档 +``` + +## 数据库 + +### 表名 +`yz_platform_notebook` + +### 表结构 +- `id` - 主键ID +- `title` - 笔记标题 +- `content` - 笔记内容(HTML格式) +- `user_id` - 创建用户ID +- `user_name` - 创建用户名 +- `is_deleted` - 是否删除(0-否 1-是) +- `create_time` - 创建时间 +- `update_time` - 更新时间 +- `delete_time` - 删除时间 + +### SQL文件位置 +`sql/yz_platform_notebook.sql` + +## 后端接口 + +### 模型文件 +`go/models/platform_notebook.go` + +### 控制器文件 +`go/controllers/platform_notebook.go` + +### API端点 + +1. **获取笔记列表** + - URL: `GET /platform/notebook/list` + - 参数: + - `page`: 页码(默认1) + - `pageSize`: 每页数量(默认20,最大100) + - `keyword`: 搜索关键词(可选) + - 返回: 笔记列表和总数 + +2. **获取笔记详情** + - URL: `GET /platform/notebook/detail/:id` + - 参数: `id` - 笔记ID + - 返回: 笔记详细信息 + +3. **创建笔记** + - URL: `POST /platform/notebook/create` + - 参数: + ```json + { + "title": "笔记标题", + "content": "笔记内容
" + } + ``` + - 返回: 创建的笔记信息 + +4. **更新笔记** + - URL: `POST /platform/notebook/update/:id` + - 参数: + ```json + { + "title": "更新的标题", + "content": "更新的内容
" + } + ``` + - 返回: 更新后的笔记信息 + +5. **删除笔记** + - URL: `DELETE /platform/notebook/delete/:id` + - 参数: `id` - 笔记ID + - 返回: 删除结果 + +## 前端API + +### API文件 +`platform/src/api/notebook.js` + +### 方法说明 + +```javascript +// 获取笔记列表 +getNotebookList({ page, pageSize, keyword }) + +// 获取笔记详情 +getNotebookDetail(id) + +// 创建笔记 +createNotebook({ title, content }) + +// 更新笔记 +updateNotebook(id, { title, content }) + +// 删除笔记 +deleteNotebook(id) +``` + +## 使用步骤 + +### 1. 初始化数据库 +```bash +# 在MySQL中执行SQL文件 +mysql -u用户名 -p数据库名 < sql/yz_platform_notebook.sql +``` + +### 2. 启动后端服务 +后端已自动注册模型和路由,直接启动即可: +```bash +cd go +go run main.go +``` + +### 3. 访问前端 +在浏览器中访问笔记本页面(路由需要在菜单中配置) + +## 功能特性 + +### 列表功能 +- ✅ 显示所有笔记 +- ✅ 搜索笔记(按标题) +- ✅ 创建新笔记 +- ✅ 删除笔记 +- ✅ 查看笔记预览 +- ✅ 显示更新时间 + +### 编辑器功能 +- ✅ 富文本编辑(基于WangEditor) +- ✅ 标题编辑 +- ✅ 内容编辑 +- ✅ 保存笔记 +- ✅ 自动识别新建/编辑模式 +- ✅ 加载状态显示 + +### WangEditor支持的功能 +- 文本样式(加粗、斜体、下划线等) +- 标题(H1-H6) +- 引用 +- 代码块 +- 有序/无序列表 +- 表格 +- 链接 +- 图片上传(需配置上传接口) +- 视频嵌入 + +## 权限说明 + +- 所有接口都需要平台用户登录(JWT Token验证) +- 每个用户只能查看、编辑、删除自己创建的笔记 +- 删除操作为软删除,数据仍保留在数据库中 + +## 扩展功能(可选) + +如需添加以下功能,可以扩展: + +1. **笔记分类** + - 添加分类表和分类字段 + - 支持笔记分类管理 + +2. **笔记标签** + - 添加标签表和关联表 + - 支持多标签筛选 + +3. **笔记分享** + - 添加分享链接生成功能 + - 支持公开/私密设置 + +4. **笔记导出** + - 支持导出为PDF + - 支持导出为Markdown + +5. **版本历史** + - 记录笔记的修改历史 + - 支持版本回退 + +6. **协作编辑** + - 支持多人协作编辑 + - 实时同步功能 + +## 注意事项 + +1. 图片上传需要配置文件上传接口 +2. 富文本内容存储为HTML格式,注意XSS防护 +3. 数据库content字段使用longtext类型,支持大容量内容 +4. 建议定期清理软删除的数据 +5. 生产环境建议添加内容审核机制 + +## 技术栈 + +- **前端**: Vue 3 + Element Plus + WangEditor +- **后端**: Go + Beego + MySQL +- **编辑器**: WangEditor 5.x + +## 开发调试 + +### 前端调试 +```bash +cd platform +npm run dev +``` + +### 后端调试 +```bash +cd go +go run main.go +``` + +### 查看API请求 +打开浏览器开发者工具 -> Network 标签页,查看API请求和响应 + +## 问题排查 + +1. **笔记列表为空** + - 检查数据库表是否创建成功 + - 检查用户是否已登录 + - 查看浏览器Console是否有错误 + +2. **保存失败** + - 检查JWT Token是否有效 + - 检查标题是否为空 + - 查看后端日志 + +3. **编辑器显示异常** + - 检查WangEditor是否正确安装 + - 查看浏览器Console错误信息 + - 检查CSS样式是否正确加载 + +## 更新日志 + +### v1.0.0 (2024) +- ✅ 完成基础功能 +- ✅ 支持笔记CRUD操作 +- ✅ 集成WangEditor富文本编辑器 +- ✅ 响应式设计支持 +- ✅ 暗色模式支持 diff --git a/platform/src/views/tools/notebook/components/WangEditor.vue b/platform/src/views/tools/notebook/components/WangEditor.vue index 03a48c3..0eef763 100644 --- a/platform/src/views/tools/notebook/components/WangEditor.vue +++ b/platform/src/views/tools/notebook/components/WangEditor.vue @@ -1,304 +1,304 @@ - -