refactor: scripts确认信息优化-显示当前状态+目标数据库
This commit is contained in:
@@ -49,39 +49,31 @@ SSH_HOST=$(get_ssh_host)
|
|||||||
|
|
||||||
DB_CONTAINER="1Panel-postgresql-FtMo"
|
DB_CONTAINER="1Panel-postgresql-FtMo"
|
||||||
DB_USER="milkydata"
|
DB_USER="milkydata"
|
||||||
|
|
||||||
# ---------- 设置过期日期 ----------
|
|
||||||
if [ -z "$EXPIRES_DATE" ]; then
|
|
||||||
EXPIRES_DATE=$(date -d "yesterday" +%Y-%m-%d)
|
|
||||||
echo "未指定日期,默认设为昨天: ${EXPIRES_DATE}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "═══════════════════════════════════════"
|
|
||||||
echo "用户 ${USER_ID} 会员过期操作"
|
|
||||||
echo "到期日期: ${EXPIRES_DATE}"
|
|
||||||
echo "═══════════════════════════════════════"
|
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
|
echo "═══════════════════════════════════════"
|
||||||
echo "⚠️ 即将执行以下操作:"
|
echo " 操作: 用户 ${USER_ID} 会员过期"
|
||||||
echo " 将用户 ${USER_ID} 的 membership_expires_at 设到 ${EXPIRES_DATE}"
|
echo " 到期日: ${EXPIRES_DATE}"
|
||||||
echo " is_member 保持 true(用户仍标记为曾付费)"
|
echo " 数据库: ${DB_NAME}(${SSH_HOST})"
|
||||||
echo " 用户的 is_active_member 会变为 false(付费已过期)"
|
echo "═══════════════════════════════════════"
|
||||||
|
echo ""
|
||||||
|
echo "当前状态:"
|
||||||
|
CURRENT_SQL="SELECT id, name, is_member, membership_expires_at FROM users WHERE id = ${USER_ID};"
|
||||||
|
ssh "$SSH_HOST" "docker exec ${DB_CONTAINER} psql -U ${DB_USER} -d ${DB_NAME} -c \"${CURRENT_SQL}\""
|
||||||
|
echo ""
|
||||||
|
echo "将要执行:"
|
||||||
|
echo " UPDATE users SET is_member = true, membership_expires_at = '"'"'${EXPIRES_DATE}'"'"'::date WHERE id = ${USER_ID};"
|
||||||
|
echo " → is_member 保持 true, is_active_member 变为 false"
|
||||||
echo ""
|
echo ""
|
||||||
read -p "确认执行? [y/N] " -n 1 -r; echo
|
read -p "确认执行? [y/N] " -n 1 -r; echo
|
||||||
[[ ! $REPLY =~ ^[Yy]$ ]] && { echo "已取消"; exit 0; }
|
[[ ! $REPLY =~ ^[Yy]$ ]] && { echo "已取消"; exit 0; }
|
||||||
|
|
||||||
# ---------- 执行 SQL ----------
|
echo ""
|
||||||
SQL="UPDATE users SET is_member = true, membership_expires_at = '${EXPIRES_DATE}'::date WHERE id = ${USER_ID};"
|
echo "执行中..."
|
||||||
|
SQL="UPDATE users SET is_member = true, membership_expires_at = '"'"'${EXPIRES_DATE}'"'"'::date WHERE id = ${USER_ID};"
|
||||||
echo "执行 SQL: ${SQL}"
|
|
||||||
ssh "$SSH_HOST" "docker exec ${DB_CONTAINER} psql -U ${DB_USER} -d ${DB_NAME} -c \"${SQL}\"" && echo "✅ 操作成功" || echo "❌ 操作失败"
|
ssh "$SSH_HOST" "docker exec ${DB_CONTAINER} psql -U ${DB_USER} -d ${DB_NAME} -c \"${SQL}\"" && echo "✅ 操作成功" || echo "❌ 操作失败"
|
||||||
|
|
||||||
# 查询验证
|
|
||||||
QUERY_SQL="SELECT id, name, phone, type, is_member, is_admin, membership_expires_at FROM users WHERE id = ${USER_ID};"
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "验证结果:"
|
echo "验证结果:"
|
||||||
ssh "$SSH_HOST" "docker exec ${DB_CONTAINER} psql -U ${DB_USER} -d ${DB_NAME} -c \"${QUERY_SQL}\""
|
VERIFY_SQL="SELECT id, name, phone, type, is_member, is_admin, membership_expires_at FROM users WHERE id = ${USER_ID};"
|
||||||
|
ssh "$SSH_HOST" "docker exec ${DB_CONTAINER} psql -U ${DB_USER} -d ${DB_NAME} -c \"${VERIFY_SQL}\""
|
||||||
echo ""
|
echo ""
|
||||||
echo "提示: is_member 保持 true,is_active_member 会变为 false(付费已过期)"
|
|
||||||
|
|||||||
Reference in New Issue
Block a user