You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
3 weeks ago | |
|---|---|---|
| .codebuddy/plans | 3 weeks ago | |
| backend | 3 weeks ago | |
| docs | 3 weeks ago | |
| .editorconfig | 3 weeks ago | |
| .env.example | 3 weeks ago | |
| .gitignore | 3 weeks ago | |
| README.md | 3 weeks ago | |
README.md
医院物业 SaaS 管理后台
多租户医院物业管理平台,涵盖报修、巡检、保洁、考勤、合同、招标等核心业务模块,支持蓝牙打卡、微信小程序端操作。
技术栈
| 类别 | 技术 |
|---|---|
| 语言 | Java 17 |
| 框架 | Spring Boot 3.2.5 |
| ORM | MyBatis-Plus 3.5.5 |
| 安全 | Spring Security + JWT |
| 数据库 | MariaDB 10.6+ |
| 缓存 | Redis 7 |
| API 文档 | SpringDoc / Swagger |
| 构建工具 | Maven 3.9+ |
| 容器化 | Docker + Docker Compose |
项目结构
backend/
├── src/main/java/com/hospital/mgmt/
│ ├── common/ # 通用组件
│ │ ├── annotation/ # 自定义注解(@AuditLog, @ReadOnly)
│ │ ├── base/ # 基础实体类
│ │ ├── context/ # 租户上下文(ThreadLocal)
│ │ ├── exception/ # 全局异常处理
│ │ └── result/ # 统一响应封装
│ ├── config/ # 配置类
│ ├── security/ # 安全模块(JWT、认证、租户拦截)
│ └── modules/ # 业务模块
│ ├── auth/ # 认证(登录/刷新Token)
│ ├── org/ # 组织架构(医院/物业/班组/员工)
│ ├── permission/ # 权限管理(用户/角色/权限配置)
│ ├── repair/ # 在线报修
│ ├── inspection/ # 巡检管理
│ ├── cleaning/ # 保洁管理
│ ├── evaluation/ # 服务评价
│ ├── attendance/ # 考勤打卡
│ ├── contract/ # 合同管理
│ ├── bidding/ # 分段招标
│ ├── device/ # 蓝牙设备管理
│ ├── audit/ # 操作日志
│ ├── system/ # 系统管理(字典/版本/模板)
│ └── plugin/ # IModulePlugin 扩展接口
├── src/main/resources/
│ ├── application.yml # 默认配置
│ ├── application-prod.yml # 生产配置
│ └── db/init.sql # 数据库初始化脚本
├── Dockerfile
└── pom.xml
快速开始
前置条件
- JDK 17+
- Maven 3.9+
- MariaDB 10.6+
- Redis 7+
1. 本地开发
# 克隆项目
git clone <repository-url>
cd 医院后勤管理
# 初始化数据库
mysql -uroot -proot < backend/src/main/resources/db/init.sql
# 修改配置(如需要)
# 编辑 backend/src/main/resources/application.yml 中的数据库和Redis连接信息
# 编译运行
cd backend
mvn clean package -DskipTests
java -jar target/hospital-mgmt-1.0.0.jar
应用启动后访问:
- API 基地址:
http://localhost:8080/api/v1 - Swagger UI:
http://localhost:8080/api/v1/swagger-ui.html
2. Docker Compose 部署(推荐)
# 复制环境变量模板并修改
cp .env.example .env
# 一键启动(MariaDB + Redis + 后端)
docker compose up -d
# 查看日志
docker compose logs -f backend
# 停止
docker compose down
3. 仅构建后端镜像
cd backend
docker build -t hospital-mgmt:1.0.0 .
环境变量
| 变量 | 说明 | 默认值 |
|---|---|---|
DB_HOST |
MariaDB 主机 | localhost |
DB_PORT |
MariaDB 端口 | 3306 |
DB_NAME |
数据库名 | hospital_mgmt |
DB_USER |
数据库用户 | root |
DB_PASSWORD |
数据库密码 | root |
REDIS_HOST |
Redis 主机 | localhost |
REDIS_PORT |
Redis 端口 | 6379 |
REDIS_PASSWORD |
Redis 密码 | (空) |
JWT_SECRET |
JWT 签名密钥 | (内置默认值) |
JAVA_OPTS |
JVM 参数 | -Xms256m -Xmx512m |
SPRING_PROFILES_ACTIVE |
Spring Profile | prod |
默认账号
| 角色 | 用户名 | 密码 |
|---|---|---|
| 超级管理员 | superadmin | admin123 |
核心功能模块
在线报修
- 工单全生命周期:提交 → 智能派单 → 接单 → 处理 → 验收 → 评价
- 支持紧急催单、延期申请、协助工单
- 补录机制(需审批)
巡检管理
- 自定义巡检区域与计划
- 支持日/周/月/自定义频率
- 蓝牙打卡验证巡检人员位置
- 异常自动转报修工单
保洁管理
- 五级区域树结构管理
- 日保/深度/临时任务类型
- 排班与任务自动生成
- 抽检功能
考勤打卡
- 基于蓝牙 Beacon 的近距离验证
- 灵活配置上下班规则
- 异常申诉与补录审批
合同管理
- 合同全生命周期
- 付款节点管理与到期预警
- 合同变更审批流
分段招标
- 招标计划与标段管理
- 供应商资质审核
- 黑名单机制
服务评价
- 多模块统一评价体系
- 低评分自动通知
- 评价回复机制
权限管理
- RBAC + 四级数据权限(全院/医院/班组/个人)
- 用户级权限覆盖
- Redis 实时权限变更广播
蓝牙策略
- 各院区独立配置打卡策略
- 必选/可选/禁用三级配置
- 策略审批生效机制
扩展接口 (IModulePlugin)
- SPI 机制支持模块热插拔
- 自定义菜单、路由、权限、数据表
- 运行时模块启用/禁用
API 规范
- RESTful 风格
- 统一响应格式:
{ code, message, data, timestamp } - 分页响应:
{ list, pagination: { page, pageSize, total, totalPages } } - 错误码:5 位数字(4xxxx 客户端错误,5xxxx 服务端错误)
License
Private — Internal Use Only