Files
declaratrions-automatization/DeclarationAutomatization/App.xaml.cs
T
Dianaka123 059895d1c3 feat: WPF-приложение для автоматизации оформления деклараций
- Чтение СПРАВКИ из Excel (ClosedXML), поддержка нескольких файлов
- Группировка по ТН ВЭД: схлопывание строк с суммированием кол-ва/веса/суммы
- Автоназначение кодов деклараций по справочнику ТН ВЭД (87 пар)
- Цветовая маркировка: зелёный/жёлтый/красный по уровню уверенности
- Самообучение: ручной выбор кода сохраняется в tnved_codes.json
- Формирование Лист3 с разворачиванием строк по рег. номерам (ключевая функция)
- Экспорт Лист2 + Лист3 в Excel
2026-04-05 23:19:58 +03:00

41 lines
1.2 KiB
C#

using System.Windows;
using DeclarationAutomatization.Services;
using DeclarationAutomatization.ViewModels;
using DeclarationAutomatization.Views;
using Microsoft.Extensions.DependencyInjection;
namespace DeclarationAutomatization;
public partial class App : Application
{
private ServiceProvider? _serviceProvider;
private void OnStartup(object sender, StartupEventArgs e)
{
var services = new ServiceCollection();
ConfigureServices(services);
_serviceProvider = services.BuildServiceProvider();
var mainWindow = _serviceProvider.GetRequiredService<MainWindow>();
mainWindow.Show();
}
private static void ConfigureServices(IServiceCollection services)
{
services.AddSingleton<ExcelImportService>();
services.AddSingleton<TransformService>();
services.AddSingleton<RulesPersistenceService>();
services.AddSingleton<CodeLookupService>();
services.AddSingleton<Sheet3ExpandService>();
services.AddSingleton<ExcelExportService>();
services.AddSingleton<MainViewModel>();
services.AddSingleton<MainWindow>();
}
protected override void OnExit(ExitEventArgs e)
{
_serviceProvider?.Dispose();
base.OnExit(e);
}
}