2026-07-08 08:45:09 +00:00
|
|
|
|
# 综合管理信息系统 - 后端单体工程
|
2026-07-08 08:39:32 +00:00
|
|
|
|
|
2026-07-08 08:45:09 +00:00
|
|
|
|
## 项目简介
|
|
|
|
|
|
|
|
|
|
|
|
基于 Spring Boot 3.x + Java 17 构建的综合管理信息系统后端单体工程,作为信息管理分系统的核心管理平台和业务模块的统一入口。
|
|
|
|
|
|
|
|
|
|
|
|
## 技术栈
|
|
|
|
|
|
|
|
|
|
|
|
- **Java 17**
|
|
|
|
|
|
- **Spring Boot 3.2.1**
|
|
|
|
|
|
- **Maven**
|
|
|
|
|
|
- **Knife4j 4.5.0** (OpenAPI 3 / Swagger 接口文档)
|
|
|
|
|
|
- **内存数据存储**(当前阶段无外部数据库依赖)
|
|
|
|
|
|
|
|
|
|
|
|
## 模块结构
|
|
|
|
|
|
|
|
|
|
|
|
| 模块 | 包路径 | 需求标识 |
|
|
|
|
|
|
|:---|:---|:---|
|
|
|
|
|
|
| 用户管理 | `controller.UserController`, `service.UserService` | SRS-F-01-001 |
|
|
|
|
|
|
| 角色管理 | `controller.RoleController`, `service.RoleService` | SRS-F-01-002 |
|
|
|
|
|
|
| 部门管理 | `controller.DeptController`, `service.DeptService` | SRS-F-01-003 |
|
|
|
|
|
|
| 字典管理 | `controller.DictController`, `service.DictService` | SRS-F-01-004 |
|
|
|
|
|
|
| 参数配置 | `controller.ConfigController`, `service.ConfigService` | SRS-F-01-005 |
|
|
|
|
|
|
| 业务管理 | `controller.BusinessController`, `service.BusinessService` | SRS-F-02-001~008 |
|
|
|
|
|
|
| 统计分析 | `controller.StatController`, `service.StatService` | SRS-F-03-001~005 |
|
|
|
|
|
|
| 权限管理 | `controller.PermissionController`, `service.PermissionService` | SRS-F-04-001~004 |
|
|
|
|
|
|
| 审计日志 | `controller.LogController`, `service.LogService` | SRS-F-05-001~004 |
|
|
|
|
|
|
| 接口集成 | `controller.IntegrationController`, `service.IntegrationService` | SRS-F-06-001~002 |
|
|
|
|
|
|
|
|
|
|
|
|
## 启动方式
|
|
|
|
|
|
|
|
|
|
|
|
### 前提条件
|
|
|
|
|
|
|
|
|
|
|
|
- JDK 17+
|
|
|
|
|
|
- Maven 3.6+
|
|
|
|
|
|
|
|
|
|
|
|
### 编译与启动
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
# 进入项目根目录
|
|
|
|
|
|
cd codegen-runs/codegen_a227418f648447d2936a850896c63889
|
|
|
|
|
|
|
|
|
|
|
|
# 编译
|
|
|
|
|
|
mvn clean package -DskipTests
|
|
|
|
|
|
|
|
|
|
|
|
# 启动
|
|
|
|
|
|
mvn spring-boot:run
|
|
|
|
|
|
|
|
|
|
|
|
# 或直接运行 jar
|
|
|
|
|
|
java -jar target/demo-management-1.0.0-SNAPSHOT.jar
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### 运行测试
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
mvn test
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
## 接口文档访问
|
|
|
|
|
|
|
|
|
|
|
|
启动后可通过以下地址访问接口文档:
|
|
|
|
|
|
|
|
|
|
|
|
- **Knife4j UI**: http://localhost:8080/doc.html
|
|
|
|
|
|
- **Swagger UI**: http://localhost:8080/swagger-ui.html
|
|
|
|
|
|
- **OpenAPI JSON**: http://localhost:8080/v3/api-docs
|
|
|
|
|
|
|
|
|
|
|
|
## 健康检查
|
|
|
|
|
|
|
|
|
|
|
|
- http://localhost:8080/api/health
|
|
|
|
|
|
|
|
|
|
|
|
## 设计说明
|
|
|
|
|
|
|
|
|
|
|
|
1. **无外部基础设施依赖**:当前阶段使用内存 `ConcurrentHashMap` 存储数据,所有业务逻辑可正常运行。
|
|
|
|
|
|
2. **预留扩展点**:Service 层保持独立,后续可替换为 JPA/MyBatis 数据访问层;Controller 层接口设计遵循 RESTful 规范,便于对接前端。
|
|
|
|
|
|
3. **需求可追溯性**:每个业务方法均通过 `@requirement` 标签关联 CSCI 需求标识,确保设计实现与需求的双向追溯。
|
|
|
|
|
|
4. **接口文档**:集成 Knife4j,所有接口均标注 `@Operation` 和 `@Tag` 描述,便于前后端联调。
|