101 lines
2.6 KiB
Bash
101 lines
2.6 KiB
Bash
#!/bin/bash
|
|
|
|
# 医生字段安装脚本
|
|
# 用法: ./install_doctor_fields.sh
|
|
|
|
echo "=========================================="
|
|
echo "医生字段安装脚本"
|
|
echo "=========================================="
|
|
echo ""
|
|
|
|
# 颜色定义
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
NC='\033[0m' # No Color
|
|
|
|
# 数据库配置
|
|
DB_HOST="localhost"
|
|
DB_PORT="3306"
|
|
DB_NAME="zyt"
|
|
DB_USER="root"
|
|
|
|
# 提示输入数据库密码
|
|
echo -e "${YELLOW}请输入数据库密码:${NC}"
|
|
read -s DB_PASS
|
|
echo ""
|
|
|
|
# 检查MySQL是否可用
|
|
echo "检查MySQL连接..."
|
|
mysql -h"$DB_HOST" -P"$DB_PORT" -u"$DB_USER" -p"$DB_PASS" -e "SELECT 1;" > /dev/null 2>&1
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo -e "${RED}错误: 无法连接到MySQL数据库${NC}"
|
|
echo "请检查数据库配置和密码是否正确"
|
|
exit 1
|
|
fi
|
|
|
|
echo -e "${GREEN}✓ 数据库连接成功${NC}"
|
|
echo ""
|
|
|
|
# 备份数据库
|
|
BACKUP_FILE="zyt_backup_$(date +%Y%m%d_%H%M%S).sql"
|
|
echo "正在备份数据库到: $BACKUP_FILE"
|
|
mysqldump -h"$DB_HOST" -P"$DB_PORT" -u"$DB_USER" -p"$DB_PASS" "$DB_NAME" > "$BACKUP_FILE" 2>/dev/null
|
|
|
|
if [ $? -eq 0 ]; then
|
|
echo -e "${GREEN}✓ 数据库备份成功${NC}"
|
|
else
|
|
echo -e "${RED}✗ 数据库备份失败${NC}"
|
|
echo "是否继续安装? (y/n)"
|
|
read -r response
|
|
if [[ ! "$response" =~ ^[Yy]$ ]]; then
|
|
exit 1
|
|
fi
|
|
fi
|
|
echo ""
|
|
|
|
# 执行迁移脚本
|
|
echo "正在执行数据库迁移..."
|
|
mysql -h"$DB_HOST" -P"$DB_PORT" -u"$DB_USER" -p"$DB_PASS" "$DB_NAME" < server/database/migrations/add_doctor_fields_to_admin.sql 2>&1
|
|
|
|
if [ $? -eq 0 ]; then
|
|
echo -e "${GREEN}✓ 数据库迁移成功${NC}"
|
|
else
|
|
echo -e "${RED}✗ 数据库迁移失败${NC}"
|
|
echo "请检查错误信息,可能字段已经存在"
|
|
exit 1
|
|
fi
|
|
echo ""
|
|
|
|
# 验证安装
|
|
echo "验证字段是否添加成功..."
|
|
RESULT=$(mysql -h"$DB_HOST" -P"$DB_PORT" -u"$DB_USER" -p"$DB_PASS" "$DB_NAME" -e "SHOW COLUMNS FROM zyt_admin LIKE 'gender';" 2>/dev/null | grep -c "gender")
|
|
|
|
if [ "$RESULT" -eq 1 ]; then
|
|
echo -e "${GREEN}✓ 字段验证成功${NC}"
|
|
else
|
|
echo -e "${RED}✗ 字段验证失败${NC}"
|
|
exit 1
|
|
fi
|
|
echo ""
|
|
|
|
echo "=========================================="
|
|
echo -e "${GREEN}安装完成!${NC}"
|
|
echo "=========================================="
|
|
echo ""
|
|
echo "新增字段列表:"
|
|
echo " - gender (性别)"
|
|
echo " - age (年龄)"
|
|
echo " - phone (手机号)"
|
|
echo " - title (职称)"
|
|
echo " - department (所属科室)"
|
|
echo " - specialty (擅长领域)"
|
|
echo " - education (教育背景)"
|
|
echo " - experience (工作经历)"
|
|
echo " - honors (荣誉资质)"
|
|
echo ""
|
|
echo "备份文件: $BACKUP_FILE"
|
|
echo ""
|
|
echo "现在可以使用医生管理功能了!"
|