#!/bin/sh

set -eu

ROOT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")/../../.." && pwd)
SCRIPT_FILE="$ROOT_DIR/bin/restart_java_backend.sh"

echo "[检查] 后端脚本必须使用 java -jar 启动打包产物"

if ! grep -Fq 'TARGET_DIR="$ROOT_DIR/ruoyi-admin/target"' "$SCRIPT_FILE"; then
    echo "失败: 未定义 ruoyi-admin 打包产物目录"
    exit 1
fi

if ! grep -Fq 'JAR_NAME="ruoyi-admin.jar"' "$SCRIPT_FILE"; then
    echo "失败: 未定义目标 jar 文件名"
    exit 1
fi

if ! grep -Fq 'nohup java $JAVA_OPTS -jar "$JAR_NAME"' "$SCRIPT_FILE"; then
    echo "失败: 未使用 java -jar 启动"
    exit 1
fi

if grep -Fq 'spring-boot:run' "$SCRIPT_FILE"; then
    echo "失败: 脚本仍包含 spring-boot:run 启动方式"
    exit 1
fi

if ! grep -Fq 'APP_MARKER="-Dccdi.backend.root=$ROOT_DIR"' "$SCRIPT_FILE"; then
    echo "失败: 未为脚本托管的后端进程写入唯一标记"
    exit 1
fi

if ! grep -Fq 'cd "$TARGET_DIR"' "$SCRIPT_FILE"; then
    echo "失败: 启动前未切换到 target 目录"
    exit 1
fi

echo "通过"
