# NursingHome **Repository Path**: ssh123/NursingHome ## Basic Information - **Project Name**: NursingHome - **Description**: 基本框架基本框架基本框架基本框架基本框架 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-11-17 - **Last Updated**: 2025-12-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 养老院管理系统 - 后端 一个基于 Spring Boot 3 开发的现代化养老院管理系统后端服务,提供完整的 RESTful API 接口。 ## 🚀 技术栈 - **Spring Boot 3.4.6** - 企业级 Java 应用框架 - **Java 17** - 最新 LTS 版本 - **MyBatis Plus 3.5.7** - 增强版 MyBatis ORM 框架 - **MySQL** - 关系型数据库 - **Maven 3** - 项目构建和依赖管理 - **Spring Web** - RESTful API 开发 ## 📋 功能模块 ### 🏥 核心业务模块 - **用户管理** - 员工账户管理、角色权限控制 - **床位管理** - 床位信息、房间管理、床位状态跟踪 - **护理服务** - 护理等级、护理项目、护理记录管理 - **客户管理** - 老人信息、家属联系、入住管理 - **数据统计** - 各类业务数据统计和报表 ### 🔧 技术特性 - **RESTful API** - 标准化接口设计 - **MyBatis Plus** - 简化数据库操作,支持代码生成 - **统一响应格式** - 标准化 JSON 响应结构 - **异常处理** - 全局异常捕获和处理 - **跨域支持** - 配置 CORS 支持前后端分离 ## 📁 项目结构 ``` backend/ ├── src/ │ ├── main/ │ │ ├── java/cn/edu/neu/backend/ │ │ │ ├── BackendApplication.java # 主启动类 │ │ │ ├── config/ # 配置类 │ │ │ │ ├── MyBatisPlusConfig.java # MyBatis Plus 配置 │ │ │ │ └── WebConfig.java # Web 配置(跨域等) │ │ │ ├── controller/ # 控制器层 │ │ │ │ ├── BedController.java # 床位管理接口 │ │ │ │ ├── CareItemController.java # 护理项目接口 │ │ │ │ ├── CareLevelController.java # 护理等级接口 │ │ │ │ ├── CustomerController.java # 客户管理接口 │ │ │ │ ├── EmpController.java # 员工管理接口 │ │ │ │ ├── RoleController.java # 角色管理接口 │ │ │ │ └── RoomController.java # 房间管理接口 │ │ │ ├── interceptor/ # 拦截器 │ │ │ │ └── LoginInterceptor.java # 登录拦截器 │ │ │ ├── mapper/ # 数据访问层 │ │ │ ├── po/ # 实体类 │ │ │ │ ├── Result.java # 统一响应实体 │ │ │ │ └── ... # 业务实体类 │ │ │ └── service/ # 业务逻辑层 │ │ │ ├── impl/ # 业务实现类 │ │ │ └── ... # 业务接口 │ │ └── resources/ │ │ ├── application.properties # 应用配置 │ │ ├── static/ # 静态资源 │ │ └── templates/ # 模板文件 │ └── test/ # 测试代码 ├── target/ # 编译输出 ├── mvnw & mvnw.cmd # Maven Wrapper ├── pom.xml # Maven 配置 └── README.md # 项目文档 ``` ## 🛠️ 环境要求 - **JDK 17** 或更高版本 - **Maven 3.6+** 或使用项目内置的 Maven Wrapper - **MySQL 8.0+** 数据库服务 - **Git** 版本控制工具 ## 📦 快速开始 ### 1. 克隆项目 ```bash git clone cd backend ``` ### 2. 配置数据库 创建 MySQL 数据库,然后修改 `src/main/resources/application.properties` 配置: ```properties spring.application.name=backend # 数据库连接配置 spring.datasource.url=jdbc:mysql://localhost:3306/nursing_home?useSSL=false&serverTimezone=Asia/Shanghai&characterEncoding=utf8 spring.datasource.username=your_username spring.datasource.password=your_password spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver # MyBatis Plus 配置 mybatis-plus.mapper-locations=classpath:mapper/*.xml mybatis-plus.type-aliases-package=cn.edu.neu.backend.po mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl ``` ### 3. 构建和运行 #### 使用 Maven Wrapper(推荐) ```bash # Windows ./mvnw.cmd clean install ./mvnw.cmd spring-boot:run # Linux/macOS ./mvnw clean install ./mvnw spring-boot:run ``` #### 使用系统 Maven ```bash mvn clean install mvn spring-boot:run ``` ### 4. 验证启动 服务启动后访问:`http://localhost:8081` ## 🌐 API 接口 ### 基础信息 - **Base URL**: `http://localhost:8081` - **Content-Type**: `application/json` - **响应格式**: 统一的 JSON 格式 ### 主要接口模块 | 模块 | 路径前缀 | 描述 | |------|----------|------| | 用户认证 | `/api/auth` | 登录、注销等认证接口 | | 员工管理 | `/api/employees` | 员工信息 CRUD | | 角色管理 | `/api/roles` | 角色权限管理 | | 床位管理 | `/api/beds` | 床位信息管理 | | 房间管理 | `/api/rooms` | 房间信息管理 | | 护理等级 | `/api/care-levels` | 护理等级管理 | | 护理项目 | `/api/care-items` | 护理项目管理 | | 客户管理 | `/api/customers` | 老人信息管理 | ### 统一响应格式 ```json { "code": 200, "message": "操作成功", "data": { ... } } ``` ## 🧪 测试 ### 运行单元测试 ```bash ./mvnw test ``` ### 运行特定测试类 ```bash ./mvnw test -Dtest=EmpMapperTest ``` ## 📦 部署 ### 1. 打包应用 ```bash ./mvnw clean package ``` ### 2. 运行 JAR 文件 ```bash java -jar target/backend-0.0.1-SNAPSHOT.jar ``` ### 3. 生产环境配置 创建 `application-prod.properties` 文件: ```properties # 生产环境数据库配置 spring.datasource.url=jdbc:mysql://prod-db-host:3306/nursing_home spring.datasource.username=${DB_USERNAME} spring.datasource.password=${DB_PASSWORD} # 关闭 SQL 日志 mybatis-plus.configuration.log-impl= ``` 运行时指定环境: ```bash java -jar -Dspring.profiles.active=prod target/backend-0.0.1-SNAPSHOT.jar ``` ## 🔧 开发指南 ### 代码规范 - 遵循 Java 编码规范 - 使用 RESTful API 设计原则 - 统一异常处理和响应格式 - 数据库字段命名使用下划线风格 ### 添加新功能 1. 在 `po` 包下创建实体类 2. 在 `mapper` 包下创建 Mapper 接口 3. 在 `service` 包下创建业务接口和实现类 4. 在 `controller` 包下创建控制器 5. 编写相应的测试用例 ### Git 提交规范 ``` feat: 新增功能 fix: 修复bug docs: 文档更新 style: 代码格式调整 refactor: 代码重构 test: 测试相关 chore: 构建过程或辅助工具的变动 ``` ## 📊 数据库设计 主要数据表: - `emp` - 员工信息表 - `role` - 角色表 - `room` - 房间表 - `bed` - 床位表 - `customer` - 客户(老人)信息表 - `care_level` - 护理等级表 - `care_item` - 护理项目表 - `care_level_item` - 护理等级项目关联表