@echo off
:: Verifică dacă scriptul este deja rulat cu drepturi de administrator
net session >nul 2>&1
if %errorlevel% neq 0 (
    echo Nu sunt privilegii de administrator. Incercati din nou...
    powershell -Command "Start-Process cmd.exe -ArgumentList '/c %~f0' -Verb runAs"
    exit /b
)
REM Numele serviciilor
SET SERVICE1=DatecsPracticPos
SET SERVICE2=DudePracticPos

:CHECK_LOOP
echo Verific starea serviciilor...

REM Verifică dacă SERVICE1 rulează
sc query %SERVICE1% | findstr /i "RUNNING" >nul
if errorlevel 1 (
    echo %SERVICE1% nu ruleaza!
    goto RESTART_SERVICES
)

REM Verifică dacă SERVICE2 rulează
sc query %SERVICE2% | findstr /i "RUNNING" >nul
if errorlevel 1 (
    echo %SERVICE2% nu ruleaza!
    goto RESTART_SERVICES
)

REM Dacă ambele rulează, așteaptă 10 secunde și verifică din nou
timeout /t 10 >nul
goto CHECK_LOOP

:RESTART_SERVICES
echo Oprirea serviciilor (daca ruleaza)...
sc stop %SERVICE1%
sc stop %SERVICE2%
timeout /t 5 >nul

echo Pornirea serviciilor...
sc start %SERVICE1%
timeout /t 2 >nul
sc start %SERVICE2%

REM Așteaptă 10 secunde după repornire pentru a da timp serviciilor să pornească
timeout /t 10 >nul

REM Reia ciclul de verificare
goto CHECK_LOOP
