113 lines
2.5 KiB
Batchfile
113 lines
2.5 KiB
Batchfile
@echo off
|
||
chcp 65001 >nul
|
||
setlocal
|
||
echo ========================================
|
||
echo NPQS9100 回滚工具
|
||
echo ========================================
|
||
echo.
|
||
echo 【重要提示】
|
||
echo 本工具仅回滚前后端程序文件
|
||
echo 数据库不会由本脚本自动恢复
|
||
echo 如需恢复数据库,请手动执行之前导出的 SQL 备份
|
||
echo.
|
||
pause
|
||
echo.
|
||
|
||
echo [1/4] 停止 NPQS9100 进程...
|
||
taskkill /F /IM NPQS9100.exe 2>nul
|
||
if %errorlevel% equ 0 (
|
||
echo NPQS9100 已停止
|
||
timeout /t 2 /nobreak >nul
|
||
) else (
|
||
echo NPQS9100 未运行
|
||
)
|
||
echo.
|
||
|
||
echo [2/4] 检查备份文件...
|
||
set hasBackup=0
|
||
|
||
if exist backup\app.asar (
|
||
echo 发现前端备份(app.asar)
|
||
set hasBackup=1
|
||
)
|
||
|
||
if exist backup\app.asar.unpacked (
|
||
echo 发现前端备份(app.asar.unpacked)
|
||
set hasBackup=1
|
||
)
|
||
|
||
if exist backup\entrance.jar (
|
||
echo 发现后端备份
|
||
set hasBackup=1
|
||
)
|
||
|
||
if %hasBackup%==0 (
|
||
echo 未发现任何前后端备份文件!
|
||
echo 无法执行回滚操作
|
||
pause
|
||
exit /b 1
|
||
)
|
||
echo.
|
||
|
||
echo [3/4] 回滚前端...
|
||
set frontendRollback=0
|
||
|
||
if exist backup\app.asar (
|
||
echo 正在恢复 app.asar...
|
||
copy /Y backup\app.asar resources\app.asar >nul 2>&1
|
||
if %errorlevel% equ 0 (
|
||
echo app.asar 已回滚
|
||
set frontendRollback=1
|
||
) else (
|
||
echo app.asar 回滚失败
|
||
pause
|
||
exit /b 1
|
||
)
|
||
)
|
||
|
||
if exist backup\app.asar.unpacked (
|
||
echo 正在恢复 app.asar.unpacked...
|
||
if exist resources\app.asar.unpacked (
|
||
rmdir /s /q resources\app.asar.unpacked 2>nul
|
||
)
|
||
xcopy backup\app.asar.unpacked resources\app.asar.unpacked\ /E /I /Y /Q >nul 2>&1
|
||
if %errorlevel% equ 0 (
|
||
echo app.asar.unpacked 已回滚
|
||
set frontendRollback=1
|
||
) else (
|
||
echo app.asar.unpacked 回滚失败
|
||
pause
|
||
exit /b 1
|
||
)
|
||
)
|
||
|
||
if %frontendRollback%==0 (
|
||
echo 无前端备份,跳过
|
||
)
|
||
echo.
|
||
|
||
echo [4/4] 回滚后端...
|
||
if exist backup\entrance.jar (
|
||
echo 正在恢复 JAR 文件...
|
||
copy /Y backup\entrance.jar resources\extraResources\java\entrance.jar >nul 2>&1
|
||
if %errorlevel% equ 0 (
|
||
echo 后端已回滚
|
||
) else (
|
||
echo 后端回滚失败
|
||
pause
|
||
exit /b 1
|
||
)
|
||
) else (
|
||
echo 无后端备份,跳过
|
||
)
|
||
echo.
|
||
|
||
echo ========================================
|
||
echo 回滚完成!
|
||
echo ========================================
|
||
echo.
|
||
echo 如需恢复数据库,请手动执行之前导出的 SQL 备份。
|
||
echo 您现在可以启动 NPQS9100 了
|
||
echo.
|
||
pause
|