#!/bin/bash
##############################################
# Urban Lifeline - 快速启动脚本
##############################################

set -e

SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd)
cd "${SCRIPT_DIR}"

# 颜色
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'

show_help() {
    echo -e "${BLUE}Urban Lifeline - 快速启动脚本${NC}"
    echo ""
    echo "用法: ./start.sh [命令]"
    echo ""
    echo "命令:"
    echo "  up          启动所有服务"
    echo "  up-infra    只启动基础设施 (nacos/minio/jitsi)"
    echo "  up-serv     只启动后端服务"
    echo "  up-web      只启动前端服务"
    echo "  down        停止所有服务"
    echo "  restart     重启所有服务"
    echo "  status      查看服务状态"
    echo "  logs        查看所有日志"
    echo "  logs-f      实时查看日志"
    echo ""
}

case "${1:-help}" in
    up)
        echo -e "${YELLOW}启动所有服务...${NC}"
        docker compose --profile all up -d
        echo -e "${GREEN}✓ 所有服务已启动${NC}"
        ;;
    up-infra)
        echo -e "${YELLOW}启动基础设施...${NC}"
        docker compose --profile infra up -d
        echo -e "${GREEN}✓ 基础设施已启动${NC}"
        ;;
    up-serv)
        echo -e "${YELLOW}启动后端服务...${NC}"
        docker compose --profile serv up -d
        echo -e "${GREEN}✓ 后端服务已启动${NC}"
        ;;
    up-web)
        echo -e "${YELLOW}启动前端服务...${NC}"
        docker compose --profile web up -d
        echo -e "${GREEN}✓ 前端服务已启动${NC}"
        ;;
    down)
        echo -e "${YELLOW}停止所有服务...${NC}"
        docker compose --profile all down
        echo -e "${GREEN}✓ 所有服务已停止${NC}"
        ;;
    restart)
        echo -e "${YELLOW}重启所有服务...${NC}"
        docker compose --profile all down
        docker compose --profile all up -d
        echo -e "${GREEN}✓ 所有服务已重启${NC}"
        ;;
    status)
        docker compose ps
        ;;
    logs)
        docker compose logs
        ;;
    logs-f)
        docker compose logs -f
        ;;
    help|*)
        show_help
        ;;
esac
