Модерно кросплатформено приложение за управление на автосервизи, разработено с .NET MAUI и Blazor WebView.
- 🎯 Общ преглед
- ✨ Функционалности
- 🛠️ Технологии
- 📋 Изисквания
- 🚀 Инсталация
- 📁 Структура на проекта
- 💻 Използване
- 🗄️ База данни
- ⚙️ Конфигурация
- 🤝 Принос
- 📝 Лиценз
- 👨💻 Автор
- 📧 Контакти
- 🙏 Благодарности
- 📸 Екранни снимки
- 🔮 Бъдещи планове
AutoService2 е пълнофункционална система за управление на автосервизи, която предоставя интуитивен интерфейс за управление на:
- Клиенти (частни и фирмени)
- Автомобили
- Работни поръчки
- Приеми и записване на час
- Услуги и поддръжка
- Инвентар на части
- Фактуриране
- Отчети и статистики
- Преглед на активни работни поръчки
- Приети днес клиенти
- Статус на части под поръчка
- Неплатени фактури
- Последни поръчки и предстоящи срокове
- Добавяне на частни и фирмени клиенти
- Съхраняване на контактна информация
- История на посещения
- Търсене и филтриране
- Регистрация на МПС
- VIN номер и технически данни
- Километраж и история на обслужване
- Връзка с клиенти
- Създаване и проследяване на поръчки
- Статуси: В изчакване, В процес, Изчакване на части, Завършена
- Приоритети: Нисък, Среден, Висок, Спешен
- Добавяне на услуги и части
- Изчисляване на общи суми
- Запазване на час за обслужване
- Календарен изглед
- Избор на услуги
- Оценка на цена и времетраене
Пълен каталог от 13 категории с над 100 услуги:
- 🔍 Диагностика
- ⚙️ Двигател и трансмисия
- 🛑 Спирачна система
- 🔩 Ходова част и окачване
- ⚡ Електрическа система
- ❄️ Климатична система
- 🛢️ Масла и течности
- 🚗 Гуми и джанти
- ✨ Детайлинг
- 🔨 Тенекеджийство
- 🎨 Боядисване
- 🪟 Остъкляване
- 🏎️ Тунинг и аксесоари
- Управление на наличност
- Минимални нива на складови наличности
- Поръчки на части
- История на движения
- Генериране на фактури
- Статуси: Чернова, Издадена, Платена, Просрочена, Анулирана
- Проследяване на плащания
- ПДВ калкулации
- Финансови отчети
- Статистика по услуги
- Анализ на ефективността
- Експорт на данни
- График на планови прегледи
- Диагностични отчети
- Автоматични напомняния
- История на поддръжката
- .NET 10 - Най-новата версия на .NET
- .NET MAUI - Кросплатформено развитие
- Blazor WebView - Уеб-базиран UI
- C# 14.0 - Програмен език
- SQLite - Лека, вградена база данни
- Entity Framework Core 9.0 - ORM
- ✅ Android (24.0+)
- ✅ iOS (15.0+)
- ✅ macOS Catalyst (15.0+)
- ✅ Windows (10.0.17763.0+)
- Razor Components - Компонентна архитектура
- CSS - Модерен, тъмен дизайн
- Responsive дизайн
- Visual Studio 2022 (17.13 или по-нова версия) или Visual Studio 2025
- .NET 10 SDK
- Workloads за .NET MAUI:
- .NET Multi-platform App UI development
- Android development
- iOS development (само за Mac)
- Mac Catalyst development (само за Mac)
- Минимум 4 GB RAM
- 500 MB свободно дисково пространство
- Операционна система според платформата
git clone https://github.com/unrealbg/AutoService2.git
cd AutoService2# Отворете AutoService2.sln във Visual Studio
start AutoService2.slndotnet restore- Изберете целева платформа (Android, iOS, Windows, Mac Catalyst)
- Натиснете F5 или Run
При първо стартиране:
- Базата данни ще бъде създадена автоматично
- Ще бъдат заредени примерни данни
- Ще бъде създаден каталог с услуги
AutoService2/
├── Components/ # Blazor компоненти
│ ├── Layout/ # Layout компоненти
│ │ ├── MainLayout.razor
│ │ └── NavMenu.razor
│ ├── Pages/ # Страници
│ │ ├── Home.razor # Табло
│ │ ├── Customers.razor # Клиенти
│ │ ├── Vehicles.razor # Автомобили
│ │ ├── WorkOrders.razor # Поръчки
│ │ ├── Appointments.razor # Приеми
│ │ ├── Services.razor # Услуги
│ │ ├── Inventory.razor # Инвентар
│ │ ├── Billing.razor # Фактуриране
│ │ ├── Reports.razor # Отчети
│ │ └── Settings.razor # Настройки
│ └── Shared/ # Споделени компоненти
│ └── Modal.razor
├── Data/ # Слой за данни
│ ├── AutoServiceDbContext.cs
│ ├── DatabaseInitializer.cs
│ └── Repositories/ # Repository pattern
│ ├── IRepository.cs
│ ├── Repository.cs
│ ├── VehicleRepository.cs
│ ├── CustomerRepository.cs
│ └── WorkOrderRepository.cs
├── Models/ # Модели на данни
│ ├── Vehicle.cs
│ ├── Customer.cs
│ ├── WorkOrder.cs
│ ├── Appointment.cs
│ ├── Invoice.cs
│ ├── Part.cs
│ ├── ServiceType.cs
│ ├── MaintenanceSchedule.cs
│ └── DiagnosticReport.cs
├── Services/ # Бизнес логика
│ ├── DashboardService.cs
│ ├── VehicleService.cs
│ ├── CustomerService.cs
│ ├── WorkOrderService.cs
│ ├── ServiceTypeService.cs
│ └── MaintenanceService.cs
├── wwwroot/ # Статични ресурси
│ ├── css/
│ │ └── app.css # Главен стил
│ └── index.html
├── Resources/ # MAUI ресурси
│ ├── AppIcon/
│ ├── Fonts/
│ ├── Images/
│ └── Splash/
└── MauiProgram.cs # Точка на влизане
-
Стартирайте приложението
- Приложението стартира с празна база данни
- Автоматично се зарежда каталог с услуги
-
Добавете клиент
- Отидете в раздел "Клиенти"
- Кликнете "Нов клиент"
- Попълнете данните
- Запазете
-
Регистрирайте автомобил
- Отидете в раздел "Автомобили"
- Кликнете "Нов автомобил"
- Изберете клиент
- Въведете данни за МПС
- Запазете
-
Създайте работна поръчка
- Отидете в раздел "Поръчки"
- Кликнете "Нова поръчка"
- Изберете клиент и автомобил
- Добавете услуги
- Запазете
- Отидете в раздел "Прием"
- Въведете данни на клиента
- Изберете услуга от каталога
- Изберете дата и час
- Запазете приема
- Завършете работна поръчка
- Отидете в "Фактуриране"
- Създайте нова фактура
- Добавете услуги и части
- Генерирайте и изпратете фактурата
База данни се съхранява в:
- Android:
/data/data/com.companyname.autoservice2/files/autoservice.db - iOS:
Library/autoservice.db - Windows:
%LOCALAPPDATA%\AutoService2\autoservice.db - macOS:
~/Library/Containers/com.companyname.autoservice2/Data/Library/autoservice.db
Основни таблици:
Customers- КлиентиVehicles- АвтомобилиWorkOrders- Работни поръчкиWorkOrderItems- Артикули в поръчкаAppointments- ПриемиInvoices- ФактуриParts- ЧастиServiceTypes- Типове услугиMaintenanceSchedules- График на поддръжкаDiagnosticReports- Диагностични отчетиSettings- Настройки
# Създаване на нова миграция
dotnet ef migrations add MigrationName
# Прилагане на миграции
dotnet ef database updateЗа да нулирате базата данни:
- Изтрийте файла
autoservice.db - Рестартирайте приложението
- Базата ще бъде създадена отново с примерни данни
Всички сервизи са регистрирани в MauiProgram.cs:
// Repositories
builder.Services.AddScoped<VehicleRepository>();
builder.Services.AddScoped<CustomerRepository>();
builder.Services.AddScoped<WorkOrderRepository>();
builder.Services.AddScoped(typeof(IRepository<>), typeof(Repository<>));
// Services
builder.Services.AddScoped<DashboardService>();
builder.Services.AddScoped<VehicleService>();
builder.Services.AddScoped<CustomerService>();
builder.Services.AddScoped<WorkOrderService>();
builder.Services.AddScoped<ServiceTypeService>();
builder.Services.AddScoped<MaintenanceService>();Редактирайте wwwroot/css/app.css за промяна на:
- Цветове
- Шрифтове
- Размери
- Анимации
Приносът е добре дошъл! За да допринесете:
- Направете Fork на проекта
- Създайте Branch за вашата функция (
git checkout -b feature/AmazingFeature) - Commit промените (
git commit -m 'Add some AmazingFeature') - Push към Branch (
git push origin feature/AmazingFeature) - Отворете Pull Request
Този проект е с отворен код и е достъпен под MIT License.
unrealbg
- GitHub: @unrealbg
- Repository: AutoService2
За въпроси и предложения:
- Отворете Issue в GitHub
- Свържете се чрез Pull Request
- Microsoft за .NET MAUI и Blazor
- Entity Framework Core екипа
- Общността на разработчици
- Добавяне на облачна синхронизация
- Мобилно приложение за техниците
- Интеграция с платежни системи
- SMS/Email нотификации
- Интеграция с онлайн резервационни системи
- Мулти-локация поддръжка
- API за трети страни
- Разширени отчети и аналитика









