diff --git a/.gitignore b/.gitignore index 5314b94..a7f8587 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,8 @@ packages/ installer/output/ dist/ + +# Кросс-платформенные публикации и артефакты сборки +publish/ +build/ +installer/output/ diff --git a/installer/ElfisaPharmacy.iss b/installer/ElfisaPharmacy.iss index 430daf5..2b1a93b 100644 --- a/installer/ElfisaPharmacy.iss +++ b/installer/ElfisaPharmacy.iss @@ -3,7 +3,7 @@ #define MyAppName "Электронная Фармация" #define MyAppBrand "ЭльФиСА" -#define MyAppVersion "1.0.20" +#define MyAppVersion "2.0.0" #define MyAppPublisher "PharmData" #define MyAppURL "https://cdn.24pharmdata.ru" #define MyAppSupportURL "https://24pharmdata.ru" @@ -89,12 +89,10 @@ russian.BrandLine=ЭльФиСА — удобный заказ лекарств Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked [Files] -; Основной выпуск Release (без отладочных PDB и XML-документации) -Source: "..\src\ElectronicPharmacy\bin\Release\*.exe"; DestDir: "{app}"; Flags: ignoreversion -Source: "..\src\ElectronicPharmacy\bin\Release\*.dll"; DestDir: "{app}"; Flags: ignoreversion -Source: "..\src\ElectronicPharmacy\bin\Release\*.config"; DestDir: "{app}"; Flags: ignoreversion -Source: "..\src\ElectronicPharmacy\bin\Release\x86\*"; DestDir: "{app}\x86"; Flags: ignoreversion recursesubdirs createallsubdirs skipifsourcedoesntexist -Source: "..\src\ElectronicPharmacy\bin\Release\x64\*"; DestDir: "{app}\x64"; Flags: ignoreversion recursesubdirs createallsubdirs skipifsourcedoesntexist +; Avalonia self-contained выпуск (весь рантайм .NET внутри — без зависимостей у клиента). +; Сборка кладётся в ..\publish\win-x64 скриптом build-installer.ps1, exe уже переименован +; в «Электронная Фармация.exe» (совместимо с авто-обновлением старых клиентов). +Source: "..\publish\win-x64\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs Source: "assets\elfisa.ico"; DestDir: "{app}"; DestName: "elfisa.ico"; Flags: ignoreversion [Icons] diff --git a/installer/assets/elfisa-1024.png b/installer/assets/elfisa-1024.png new file mode 100644 index 0000000..0d4b83f Binary files /dev/null and b/installer/assets/elfisa-1024.png differ diff --git a/installer/assets/elfisa-256.png b/installer/assets/elfisa-256.png new file mode 100644 index 0000000..72495e4 Binary files /dev/null and b/installer/assets/elfisa-256.png differ diff --git a/installer/assets/elfisa-512.png b/installer/assets/elfisa-512.png new file mode 100644 index 0000000..e1c7f1b Binary files /dev/null and b/installer/assets/elfisa-512.png differ diff --git a/installer/assets/wizard-side.bmp b/installer/assets/wizard-side.bmp index 30655e9..f306904 100644 Binary files a/installer/assets/wizard-side.bmp and b/installer/assets/wizard-side.bmp differ diff --git a/installer/assets/wizard-small.bmp b/installer/assets/wizard-small.bmp index d822bbe..e39736b 100644 Binary files a/installer/assets/wizard-small.bmp and b/installer/assets/wizard-small.bmp differ diff --git a/scripts/build-installer.ps1 b/scripts/build-installer.ps1 index d26040d..873a1cf 100644 --- a/scripts/build-installer.ps1 +++ b/scripts/build-installer.ps1 @@ -15,12 +15,23 @@ if (-not $iscc) { throw "Inno Setup 6 (ISCC.exe) не найден. Установите: winget install JRSoftware.InnoSetup" } +$pub = "publish\win-x64" if (-not $SkipBuild) { - Write-Host "Сборка Release..." -ForegroundColor Cyan - dotnet build "src\ElectronicPharmacy\ElectronicPharmacy.csproj" -c Release - if ($LASTEXITCODE -ne 0) { throw "Сборка приложения завершилась с ошибкой" } + Write-Host "Публикация Avalonia (win-x64, self-contained)..." -ForegroundColor Cyan + if (Test-Path $pub) { Remove-Item $pub -Recurse -Force } + dotnet publish "src\Elfisa.Avalonia\Elfisa.Avalonia.csproj" -c Release -r win-x64 ` + --self-contained true -p:PublishSingleFile=false -p:DebugType=none -o $pub + if ($LASTEXITCODE -ne 0) { throw "Публикация приложения завершилась с ошибкой" } } +# Имя exe, совместимое с авто-обновлением старых WinForms-клиентов +# (батч-апдейтер перезапускает файл по имени «Электронная Фармация.exe»). +# apphost находит свой .dll независимо от имени exe, поэтому переименование безопасно. +$srcExe = Join-Path $pub "Elfisa.Avalonia.exe" +$dstExe = Join-Path $pub "Электронная Фармация.exe" +if (Test-Path $srcExe) { Move-Item $srcExe $dstExe -Force } +elseif (-not (Test-Path $dstExe)) { throw "Не найден собранный exe в $pub" } + Write-Host "Сборка установщика..." -ForegroundColor Cyan & $iscc "installer\ElfisaPharmacy.iss" if ($LASTEXITCODE -ne 0) { throw "Inno Setup завершился с ошибкой" } diff --git a/src/Elfisa.Avalonia/Elfisa.Avalonia.csproj b/src/Elfisa.Avalonia/Elfisa.Avalonia.csproj index ed75769..12a6401 100644 --- a/src/Elfisa.Avalonia/Elfisa.Avalonia.csproj +++ b/src/Elfisa.Avalonia/Elfisa.Avalonia.csproj @@ -5,6 +5,13 @@ enable app.manifest true + 2.0.0 + 2.0.0.0 + 2.0.0.0 + ЭльФиСА — Электронная Фармация + PharmData + + ru;en diff --git a/web/download/index.html b/web/download/index.html new file mode 100644 index 0000000..ff9eec7 --- /dev/null +++ b/web/download/index.html @@ -0,0 +1,261 @@ + + + + + +Скачать ЭльФиСА — Электронная Фармация + + + + +
+
+ +
+ +
+

Заказ лекарств для аптеки — на вашем компьютере

+

Прайс-листы поставщиков, сборка и отправка заказов, накладные и отчёты. Одно приложение для Windows, macOS и Linux.

+ +
+ + + Скачать для Windows + +
Windows 10/11 · 64-бит · ~90 МБ · другие системы ↓
+
+
+ +
+
+ +
+ Ваша система +
+

Windows

+

Установщик · рекомендуется

+
+
Формат.exe установщик
+
СистемаWindows 10 / 11
+
Разрядность64-бит
+
Размер~90 МБ
+
+ + + Скачать установщик + +
+ +
+ Ваша система +
+

macOS

+

Образ диска · Apple Silicon и Intel

+
+
Формат.dmg образ
+
СистемаmacOS 12+
+
ПроцессорApple / Intel
+
Размер~95 МБ
+
+ + + Скачать образ .dmg + +
+ +
+ Ваша система +
+

Linux

+

AppImage · запуск без установки

+
+
Формат.AppImage
+
Системаglibc 2.31+
+
Разрядностьx86-64
+
Размер~95 МБ
+
+ + + Скачать AppImage + +
+ +
+ +
+
+

Прайс-листы поставщиков

Поиск по названию, дозировке и предложениям — заказ собирается в пару кликов.

+
+

Заказы и накладные

Отправка заказов поставщикам, приём накладных и выгрузка в нужном формате.

+
+

Отчёты и ИИ

Сводки по закупкам и отчёты по вашему запросу на понятном языке.

+
+
+ +
+
© PharmData · ЭльФиСА
+
+
+ + + +