A simple queue management and number calling system built with the high-performance Webman framework and GatewayWorker.
一个基于高性能PHP框架 Webman 和 GatewayWorker 构建的简单排队叫号系统。
- Real-time Updates (实时更新): Utilizes WebSocket (via GatewayWorker) for real-time updates on the queue display and administration screens. (使用 WebSocket (通过 GatewayWorker) 实现叫号、排队状态的实时更新。)
- Multiple Windows (多窗口支持): Supports multiple service windows for calling numbers. (支持多个服务窗口同时叫号。)
- Simple Interface (简洁的用户界面):
- Customer-facing ticket dispensing page. (面向顾客的取号页面。)
- Administration page for staff to manage the queue. (供工作人员使用的后台管理页面。)
- Large screen display for public viewing. (用于大屏幕展示的公共显示页面。)
- Easy to Deploy (易于部署): Built on Webman, it requires minimal server configuration and has no dependency on Nginx/Apache. (基于 Webman 构建,无Nginx/Apache依赖,部署简单。)
- Backend: PHP, Webman, GatewayWorker
- Frontend: HTML, Bootstrap, jQuery, Toastr.js
- Database: MySQL (or other compatible SQL database), Redis
- PHP >= 7.4
- Composer
- Redis
- MySQL
-
Clone the repository (克隆项目):
git clone https://github.com/zx2020-07/queue.git cd queue
-
Install dependencies (安装依赖):
composer install
-
Configure environment (配置环境): Copy the example environment file and update it with your database and Redis connection details. (复制环境配置文件
.env.example
为.env
,并根据需要修改数据库和Redis连接信息。)cp .env.example .env
-
Import database schema (导入数据库): Import the
sql/queue.sql
file into your MySQL database. (将sql/queue.sql
文件导入到你的 MySQL 数据库中。) -
Start the application (启动应用):
php start.php start
To run as a daemon (守护进程模式运行):
php start.php start -d
The application will be available at http://localhost:8787
. (应用将运行在 http://localhost:8787
)
- Take a ticket (取号):
http://localhost:8787/queue/take
- Admin panel (管理后台):
http://localhost:8787/queue/admin
- Display screen (显示大屏):
http://localhost:8787/queue/display
- Queue status (排队状态):
http://localhost:8787/queue/status
- Window management (窗口管理):
http://localhost:8787/window
Click to expand (点击展开)
This project is licensed under the MIT License. See the LICENSE file for details.