增加demo模块。优化提示词文档
This commit is contained in:
259
doc/demo_部署说明.md
Normal file
259
doc/demo_部署说明.md
Normal file
@@ -0,0 +1,259 @@
|
||||
# 项目管理模块部署说明
|
||||
|
||||
## 一、概述
|
||||
|
||||
本文档说明如何部署 lyzsys-module-demo 项目管理模块。
|
||||
|
||||
### 模块信息
|
||||
- **模块名称**: lyzsys-module-demo
|
||||
- **功能**: 项目管理(增删改查导出)
|
||||
- **数据库表**: demo_project
|
||||
- **菜单结构**:
|
||||
- 一级菜单:项目管理
|
||||
- 二级菜单:项目列表
|
||||
|
||||
### 命名规范遵循
|
||||
✅ 所有字段名遵循驼峰命名规范,第一个单词不能只有一个字母
|
||||
- `projectName`(而非 `pName`)
|
||||
- `projectCode`(而非 `pCode`)
|
||||
- `establishDate`(而非 `eDate`)
|
||||
|
||||
## 二、部署步骤
|
||||
|
||||
### 1. 数据库部署
|
||||
|
||||
按顺序执行以下 SQL 脚本:
|
||||
|
||||
```bash
|
||||
# 1. 创建项目管理表
|
||||
mysql> source e:/workspace/lyzsys/lyzsys_backend/sql/mysql/demo_project.sql
|
||||
|
||||
# 2. 创建菜单配置
|
||||
mysql> source e:/workspace/lyzsys/lyzsys_backend/sql/mysql/demo_menu.sql
|
||||
```
|
||||
|
||||
**说明**:
|
||||
- `demo_project.sql` - 创建项目管理表,包含示例数据
|
||||
- `demo_menu.sql` - 创建菜单配置,包含一级菜单、二级菜单和按钮权限
|
||||
|
||||
### 2. 后端部署
|
||||
|
||||
后端代码已自动集成到项目中,无需额外配置。
|
||||
|
||||
**后端文件清单**:
|
||||
|
||||
```
|
||||
lyzsys_backend/lyzsys-module-demo/
|
||||
├── pom.xml # Maven 配置
|
||||
└── src/main/java/cn/iocoder/lyzsys/module/demo/
|
||||
├── controller/admin/project/
|
||||
│ ├── ProjectController.java # 控制器
|
||||
│ └── vo/
|
||||
│ ├── ProjectPageReqVO.java # 分页查询请求
|
||||
│ ├── ProjectRespVO.java # 响应 VO
|
||||
│ └── ProjectSaveReqVO.java # 保存请求 VO
|
||||
├── service/project/
|
||||
│ ├── ProjectService.java # 服务接口
|
||||
│ └── ProjectServiceImpl.java # 服务实现
|
||||
├── dal/
|
||||
│ ├── dataobject/project/
|
||||
│ │ └── ProjectDO.java # 数据对象
|
||||
│ └── mysql/project/
|
||||
│ └── ProjectMapper.java # Mapper 接口
|
||||
└── enums/
|
||||
└── ErrorCodeConstants.java # 错误码常量
|
||||
```
|
||||
|
||||
**验证后端部署**:
|
||||
1. Maven 重新导入项目依赖
|
||||
2. 确认 `lyzsys-server/pom.xml` 包含 `lyzsys-module-demo` 依赖
|
||||
3. 启动后端项目,查看日志确认模块加载成功
|
||||
|
||||
### 3. 前端部署
|
||||
|
||||
前端代码已生成,无需额外配置。
|
||||
|
||||
**前端文件清单**:
|
||||
|
||||
```
|
||||
lyzsys-ui-admin/src/
|
||||
├── api/demo/project/
|
||||
│ └── index.ts # API 接口定义
|
||||
└── views/demo/project/
|
||||
├── index.vue # 项目列表页面
|
||||
└── ProjectForm.vue # 项目表单组件
|
||||
```
|
||||
|
||||
**验证前端部署**:
|
||||
1. 重新启动前端项目(如果正在运行)
|
||||
2. 使用管理员账号登录系统
|
||||
3. 在左侧菜单栏查看"项目管理"菜单
|
||||
|
||||
## 三、功能验证
|
||||
|
||||
### 1. 菜单验证
|
||||
|
||||
登录后台管理系统,应该看到以下菜单结构:
|
||||
|
||||
```
|
||||
项目管理(一级菜单)
|
||||
└── 项目列表(二级菜单)
|
||||
系统管理(已调整到最后)
|
||||
基础设施(已调整到最后)
|
||||
```
|
||||
|
||||
### 2. 权限验证
|
||||
|
||||
项目列表页面应包含以下操作按钮:
|
||||
- ✅ 搜索
|
||||
- ✅ 重置
|
||||
- ✅ 新增
|
||||
- ✅ 导出
|
||||
- ✅ 批量删除
|
||||
- ✅ 修改(每行)
|
||||
- ✅ 删除(每行)
|
||||
|
||||
### 3. 功能验证
|
||||
|
||||
测试以下功能:
|
||||
|
||||
#### 查询功能
|
||||
- [ ] 按项目名称模糊查询
|
||||
- [ ] 按项目编号模糊查询
|
||||
- [ ] 按立项时间范围查询
|
||||
- [ ] 分页查询
|
||||
|
||||
#### 新增功能
|
||||
- [ ] 点击"新增"按钮打开表单
|
||||
- [ ] 必填字段验证(项目名称、项目编号)
|
||||
- [ ] 项目编号唯一性校验
|
||||
- [ ] 保存成功后刷新列表
|
||||
|
||||
#### 修改功能
|
||||
- [ ] 点击"修改"按钮打开表单
|
||||
- [ ] 回显原有数据
|
||||
- [ ] 修改后保存成功
|
||||
|
||||
#### 删除功能
|
||||
- [ ] 单个删除确认提示
|
||||
- [ ] 删除成功后刷新列表
|
||||
- [ ] 批量删除功能
|
||||
|
||||
#### 导出功能
|
||||
- [ ] 点击"导出"按钮
|
||||
- [ ] 下载 Excel 文件
|
||||
- [ ] 验证导出数据正确
|
||||
|
||||
## 四、接口文档
|
||||
|
||||
### API 端点
|
||||
|
||||
**Base URL**: `/demo/project`
|
||||
|
||||
| 接口 | 方法 | 说明 | 权限 |
|
||||
|-----|------|------|------|
|
||||
| `/create` | POST | 创建项目 | demo:project:create |
|
||||
| `/update` | PUT | 修改项目 | demo:project:update |
|
||||
| `/delete` | DELETE | 删除项目 | demo:project:delete |
|
||||
| `/delete-list` | DELETE | 批量删除 | demo:project:delete |
|
||||
| `/page` | GET | 分页查询 | demo:project:query |
|
||||
| `/get` | GET | 查询详情 | demo:project:query |
|
||||
| `/export-excel` | GET | 导出Excel | demo:project:export |
|
||||
|
||||
### 请求示例
|
||||
|
||||
**创建项目**:
|
||||
```json
|
||||
POST /demo/project/create
|
||||
{
|
||||
"projectName": "示例项目",
|
||||
"projectCode": "PROJ-2024-001",
|
||||
"establishDate": "2024-01-01 00:00:00"
|
||||
}
|
||||
```
|
||||
|
||||
**查询列表**:
|
||||
```
|
||||
GET /demo/project/page?pageNo=1&pageSize=10&projectName=示例
|
||||
```
|
||||
|
||||
## 五、常见问题
|
||||
|
||||
### 1. 菜单不显示
|
||||
|
||||
**原因**:可能是权限问题
|
||||
**解决**:
|
||||
1. 确认已执行 `demo_menu.sql`
|
||||
2. 检查当前登录用户的角色权限
|
||||
3. 在"系统管理 > 菜单管理"中确认菜单已创建
|
||||
4. 在"系统管理 > 角色管理"中给当前角色分配菜单权限
|
||||
|
||||
### 2. 后端接口 404
|
||||
|
||||
**原因**:模块未启动或路由配置错误
|
||||
**解决**:
|
||||
1. 检查 `lyzsys-server/pom.xml` 是否包含 demo 模块依赖
|
||||
2. 重新编译启动项目
|
||||
3. 查看启动日志确认模块加载
|
||||
|
||||
### 3. 前端页面报错
|
||||
|
||||
**原因**:API 接口路径不匹配
|
||||
**解决**:
|
||||
1. 检查 `src/api/demo/project/index.ts` 中的接口路径
|
||||
2. 确认后端 Controller 的 `@RequestMapping` 路径
|
||||
3. 查看浏览器控制台错误信息
|
||||
|
||||
### 4. 项目编号重复错误
|
||||
|
||||
**原因**:唯一性校验生效
|
||||
**解决**:这是正常的业务校验,请使用不同的项目编号
|
||||
|
||||
## 六、扩展开发
|
||||
|
||||
### 添加新字段
|
||||
|
||||
1. **修改数据库表**:
|
||||
```sql
|
||||
ALTER TABLE demo_project ADD COLUMN new_field VARCHAR(100) COMMENT '新字段';
|
||||
```
|
||||
|
||||
2. **修改后端代码**:
|
||||
- 在 `ProjectDO.java` 中添加字段
|
||||
- 在 `ProjectRespVO.java` 和 `ProjectSaveReqVO.java` 中添加字段
|
||||
- 根据需要修改 `ProjectMapper.java` 查询条件
|
||||
|
||||
3. **修改前端代码**:
|
||||
- 在 `api/demo/project/index.ts` 中添加字段定义
|
||||
- 在 `ProjectForm.vue` 中添加表单项
|
||||
- 在 `index.vue` 中添加表格列
|
||||
|
||||
### 添加新功能
|
||||
|
||||
参考现有的增删改查实现,遵循以下开发流程:
|
||||
1. 在 Service 层添加业务方法
|
||||
2. 在 Controller 层添加接口
|
||||
3. 在前端 API 文件中添加接口调用
|
||||
4. 在前端页面中实现 UI 交互
|
||||
|
||||
## 七、技术栈
|
||||
|
||||
### 后端
|
||||
- Spring Boot 2.7.18
|
||||
- MyBatis Plus 3.5.15
|
||||
- MySQL 8.0+
|
||||
|
||||
### 前端
|
||||
- Vue 3.5.12
|
||||
- Element Plus 2.11.1
|
||||
- TypeScript 5.3.3
|
||||
- Vite 5.1.4
|
||||
|
||||
## 八、联系方式
|
||||
|
||||
如有问题,请联系开发团队或查阅项目文档。
|
||||
|
||||
---
|
||||
|
||||
**生成时间**: 2024年
|
||||
**版本**: v1.0
|
||||
Reference in New Issue
Block a user