#!/bin/bash

# ZJPB 应用管理脚本
# 用法: ./manage.sh [start|stop|restart|status|logs]

APP_NAME="zjpb"
APP_DIR="/opt/1panel/apps/zjpb"
VENV_DIR="$APP_DIR/venv"
PID_FILE="$APP_DIR/logs/gunicorn.pid"

cd $APP_DIR

case "$1" in
    start)
        echo "启动 $APP_NAME..."
        source $VENV_DIR/bin/activate
        gunicorn -c gunicorn_config.py wsgi:app
        echo "$APP_NAME 已启动"
        ;;

    stop)
        echo "停止 $APP_NAME..."
        if [ -f $PID_FILE ]; then
            kill $(cat $PID_FILE)
            echo "$APP_NAME 已停止"
        else
            echo "PID文件不存在，可能未运行"
        fi
        ;;

    restart)
        $0 stop
        sleep 2
        $0 start
        ;;

    status)
        if [ -f $PID_FILE ]; then
            PID=$(cat $PID_FILE)
            if ps -p $PID > /dev/null; then
                echo "$APP_NAME 正在运行 (PID: $PID)"
            else
                echo "$APP_NAME 未运行（但PID文件存在）"
            fi
        else
            echo "$APP_NAME 未运行"
        fi
        ;;

    logs)
        echo "实时查看日志（Ctrl+C退出）："
        tail -f logs/error.log
        ;;

    *)
        echo "用法: $0 {start|stop|restart|status|logs}"
        exit 1
        ;;
esac

exit 0
