project/README.md

77 lines
2.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 综合管理信息系统 - 后端单体工程
## 项目简介
基于 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` 描述,便于前后端联调。