#!/usr/bin/env bash
# dung_tat_ca.sh — dừng 3 app đã chạy bằng chay_tat_ca.sh (và dọn tiến trình còn sót).
GOC="$(cd "$(dirname "$0")/.." && pwd)"
cd "$GOC"

for A in hlqt calib lab; do
  if [ -f "logs/$A.pid" ]; then
    PID="$(cat "logs/$A.pid")"
    if kill -0 "$PID" 2>/dev/null; then
      kill "$PID" 2>/dev/null
      echo "   đã dừng $A (PID $PID)"
    fi
    rm -f "logs/$A.pid"
  fi
done

# dọn tiến trình còn sót của chính bộ app này
for M in server_hlqt.py server_calib.py server_lab.py worker_hlqt.py worker_calib.py worker_lab.py; do
  pkill -f "$GOC/.*$M" 2>/dev/null && echo "   dọn sót: $M"
done

sleep 1
echo "== còn lại:"
pgrep -af "server_hlqt|server_calib|server_lab|worker_hlqt|worker_calib|worker_lab" || echo "   (không còn tiến trình nào)"
