# schedulingsystem **Repository Path**: hackerwjz/schedulingsystem ## Basic Information - **Project Name**: schedulingsystem - **Description**: 智能值班系统v1 支持智能,手工排班 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2025-07-08 - **Last Updated**: 2025-07-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 排班系统 这是一个基于Go和Vue.js开发的现代化排班系统,采用前后端分离架构。 #项目体验地址:http://106.14.79.204/calendar ![输入图片说明](%E4%BA%A7%E5%93%81%E7%AE%A1%E7%90%86.png) ![输入图片说明](%E5%91%98%E5%B7%A5%E7%AE%A1%E7%90%86.png) ![输入图片说明](%E6%8E%92%E7%8F%AD%E7%AE%A1%E7%90%86.png) ![输入图片说明](%E7%8F%AD%E6%AC%A1%E6%97%A5%E5%8E%86.png) ![输入图片说明](%E7%8F%AD%E6%AC%A1%E7%AE%A1%E7%90%86.png) ## 技术栈 ### 后端 - Go 1.22.2 - Gin Web框架 - GORM ORM框架 - SQLite3数据库 ### 前端 - Vue.js 3 - Element Plus UI框架 - Vite 构建工具 - Nginx 服务器 ## 系统要求 - Docker 17.05+ (推荐) - 或者: - Go 1.22+ - Node.js 16+ - SQLite3 - Nginx ## 目录结构 ``` schedulingsystem/ ├── backend/ # 后端项目目录 │ ├── api/ # API接口定义 │ ├── config/ # 配置文件 │ ├── models/ # 数据模型 │ ├── services/ # 业务逻辑 │ ├── utils/ # 工具函数 │ ├── main.go # 主程序入口 │ ├── go.mod # Go模块定义 │ └── Dockerfile.x86 # 后端Docker构建文件 ├── frontend/ # 前端项目目录 │ ├── src/ # 源代码目录 │ ├── public/ # 静态资源 │ ├── package.json # 项目依赖 │ ├── vite.config.js # Vite配置 │ ├── nginx.conf # Nginx配置 │ └── Dockerfile.x86 # 前端Docker构建文件 └── build-dockerx86.sh # Docker构建脚本 ``` ## 快速开始 ### 使用Docker部署(推荐) 1. 克隆项目: ```bash git clone <项目地址> cd schedulingsystem ``` 2. 构建和运行: ```bash chmod +x build-dockerx86.sh ./build-dockerx86.sh docker-compose up -d ``` 3. 访问系统: - 前端界面:http://localhost 或 http://<服务器IP> - 后端API:http://localhost:8080 或 http://<服务器IP>:8080 ### 手动部署 #### 后端部署 1. 进入后端目录: ```bash cd backend ``` 2. 安装依赖: ```bash go mod download ``` 3. 构建和运行: ```bash go build -o main ./main ``` #### 前端部署 1. 进入前端目录: ```bash cd frontend ``` 2. 安装依赖: ```bash npm install ``` 3. 开发模式运行: ```bash npm run dev ``` 4. 构建生产版本: ```bash npm run build ``` 5. 配置Nginx: ```bash # 复制nginx配置 sudo cp nginx.conf /etc/nginx/conf.d/schedulingsystem.conf sudo nginx -s reload ``` ## 主要功能 1. 员工管理 - 添加/编辑/删除员工信息 - 查看员工排班历史 2. 排班管理 - 创建和管理排班计划 - 自动排班功能 - 排班冲突检测 3. 班次管理 - 定义班次时间 - 设置班次要求 4. 统计报表 - 员工工时统计 - 排班覆盖率分析 ## 开发指南 ### API文档 后端API接口文档可通过以下方式访问: - Swagger UI:http://localhost:8080/swagger/index.html ### 开发模式 1. 后端开发: ```bash cd backend go run main.go ``` 2. 前端开发: ```bash cd frontend npm run dev ``` ## 配置说明 ### 后端配置 数据库配置和其他系统设置可在 `backend/config` 目录下修改。 ### 前端配置 API地址等配置可在 `frontend/src/config` 目录下修改。 ## 常见问题 1. 数据库连接问题 - 确保SQLite数据库文件存在且有正确的权限 - 检查数据库路径配置 2. 前端构建问题 - 确保Node.js版本兼容 - 清除node_modules并重新安装依赖 3. Docker部署问题 - 确保Docker和Docker Compose已正确安装 - 检查端口占用情况 ## 维护说明 ### 数据备份 系统会自动在以下情况下备份数据库: - Docker重新构建时 - 系统更新时 备份文件存储在 `backend/backups` 目录下。 ### 日志管理 - 后端日志:`backend/backend.log` - 前端日志:`frontend/frontend.log` - Docker容器日志可通过以下命令查看: ```bash docker logs schedulingsystem-backend docker logs schedulingsystem-frontend ``` ## 许可证 [添加许可证信息] ## 贡献指南 [添加贡献指南] ## 联系方式 [添加联系方式]