@echo off
setlocal
cd /d "%~dp0"

set "JAR=roznica-kkm.jar"
set "UPDATE_DIR=update"
set "BACKUP=roznica-kkm-old"

REM Приложение по расписанию могло скачать новую версию в update\%JAR%.new
REM Применяем её ДО запуска, пока jar не занят JVM.
if exist "%UPDATE_DIR%\%JAR%.new" call :apply

java -jar "%JAR%"
exit /b %errorlevel%

:apply
REM Первый свободный номер для бэкапа: update\roznica-kkm-old-1.jar, -2, ...
set /a n=1
:find
if exist "%UPDATE_DIR%\%BACKUP%-%n%.jar" (
    set /a n+=1
    goto find
)
if exist "%JAR%" move /y "%JAR%" "%UPDATE_DIR%\%BACKUP%-%n%.jar" >nul
move /y "%UPDATE_DIR%\%JAR%.new" "%JAR%" >nul
del /q "%UPDATE_DIR%\staged.version" 2>nul
echo [update] Update complete. Old version: %UPDATE_DIR%\%BACKUP%-%n%.jar
exit /b 0