Files
lyzsys_backend/doc/demo_部署说明.md

6.9 KiB
Raw Permalink Blame History

项目管理模块部署说明

一、概述

本文档说明如何部署 lyzsys-module-demo 项目管理模块。

模块信息

  • 模块名称: lyzsys-module-demo
  • 功能: 项目管理(增删改查导出)
  • 数据库表: demo_project
  • 菜单结构:
    • 一级菜单:项目管理
    • 二级菜单:项目列表

命名规范遵循

所有字段名遵循驼峰命名规范,第一个单词不能只有一个字母

  • projectName(而非 pName
  • projectCode(而非 pCode
  • establishDate(而非 eDate

二、部署步骤

1. 数据库部署

按顺序执行以下 SQL 脚本:

# 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

请求示例

创建项目

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. 修改数据库表
ALTER TABLE demo_project ADD COLUMN new_field VARCHAR(100) COMMENT '新字段';
  1. 修改后端代码
  • ProjectDO.java 中添加字段
  • ProjectRespVO.javaProjectSaveReqVO.java 中添加字段
  • 根据需要修改 ProjectMapper.java 查询条件
  1. 修改前端代码
  • 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