Files
zyt/install_appointment_system.sh
T
2026-03-04 15:32:30 +08:00

101 lines
2.7 KiB
Bash

#!/bin/bash
echo "================================"
echo "医生预约系统安装脚本"
echo "================================"
echo ""
# 检查是否在项目根目录
if [ ! -d "server" ] || [ ! -d "admin" ]; then
echo "错误: 请在项目根目录运行此脚本"
exit 1
fi
echo "步骤 1/4: 检查后端文件..."
files=(
"server/app/common/model/doctor/Appointment.php"
"server/app/adminapi/controller/doctor/AppointmentController.php"
"server/app/adminapi/logic/doctor/AppointmentLogic.php"
"server/app/adminapi/validate/doctor/AppointmentValidate.php"
"server/app/adminapi/lists/doctor/AppointmentLists.php"
"server/sql/doctor_appointment.sql"
)
all_exist=true
for file in "${files[@]}"; do
if [ -f "$file" ]; then
echo " ✓ $file"
else
echo " ✗ $file (不存在)"
all_exist=false
fi
done
if [ "$all_exist" = false ]; then
echo ""
echo "错误: 部分文件不存在,请检查"
exit 1
fi
echo ""
echo "步骤 2/4: 创建数据库表..."
echo "请输入数据库信息:"
read -p "数据库主机 (默认: localhost): " db_host
db_host=${db_host:-localhost}
read -p "数据库用户名: " db_user
read -sp "数据库密码: " db_pass
echo ""
read -p "数据库名称: " db_name
echo ""
echo "正在创建数据库表..."
mysql -h "$db_host" -u "$db_user" -p"$db_pass" "$db_name" < server/sql/doctor_appointment.sql
if [ $? -eq 0 ]; then
echo " ✓ 数据库表创建成功"
else
echo " ✗ 数据库表创建失败"
echo " 请手动执行: mysql -h $db_host -u $db_user -p $db_name < server/sql/doctor_appointment.sql"
fi
echo ""
echo "步骤 3/4: 清除缓存..."
cd server
php think clear
if [ $? -eq 0 ]; then
echo " ✓ 缓存清除成功"
else
echo " ✗ 缓存清除失败"
fi
cd ..
echo ""
echo "步骤 4/4: 验证安装..."
echo "检查控制器文件..."
if [ -f "server/app/adminapi/controller/doctor/AppointmentController.php" ]; then
echo " ✓ AppointmentController.php 存在"
else
echo " ✗ AppointmentController.php 不存在"
fi
echo ""
echo "================================"
echo "安装完成!"
echo "================================"
echo ""
echo "后续步骤:"
echo "1. 确保医生有排班数据 (la_doctor_roster表)"
echo "2. 在后台权限管理中添加预约相关权限"
echo "3. 测试API接口:"
echo " GET /adminapi/doctor.appointment/availableSlots"
echo " POST /adminapi/doctor.appointment/create"
echo " POST /adminapi/doctor.appointment/cancel"
echo " GET /adminapi/doctor.appointment/lists"
echo ""
echo "详细文档请查看:"
echo " - server/APPOINTMENT_BACKEND_SETUP.md"
echo " - admin/APPOINTMENT_SYSTEM.md"
echo ""