How mist1qu3x/carwash_development works
Автомойка — консольное приложение для ведения клиентов и записей, работающее с PostgreSQL через JDBC. Основной путь: пользователь взаимодействует с меню и вводом, UI вызывает сервисы для проверок и бизнес-правил, а репозитории читают и изменяют данные. Сервисы также поддерживают поиск, фильтрацию, сортировку и статистику; UI предлагает экспорт записей в CSV и Excel, а также инициализацию БД. Связи основаны на показанном коде и README; не показанные реализации подсистем не раскрываю сверх подтверждённых связей.
Main entry points: ConsoleApp.java Консольное меню · BookingService.java Записи и правила · ClientRepository.java Репозиторий клиентов · DatabaseManager.java JDBC-подключение
Components 22
Консольный интерфейс
- Точка входа
src/main/java/carwash/Main.java - Консольное меню
src/main/java/carwash/ui/ConsoleApp.java - Ввод данных
src/main/java/carwash/ui/ConsoleReader.java
Доменная логика
- Клиенты
src/main/java/carwash/service/ClientService.java - Записи и правила
src/main/java/carwash/service/BookingService.java - Статистика
src/main/java/carwash/service/Statistics.java - Клиент
src/main/java/carwash/model/Client.java - Запись
src/main/java/carwash/model/Booking.java - Статусы записей
src/main/java/carwash/model/BookingStatus.java - Типы услуг
src/main/java/carwash/model/ServiceType.java - Доменные ошибки
src/main/java/carwash/exception
Доступ к данным
- Репозиторий клиентов
src/main/java/carwash/repository/ClientRepository.java - Репозиторий записей
src/main/java/carwash/repository/BookingRepository.java - Контракт репозитория
src/main/java/carwash/repository/Repository.java - JDBC-подключение
src/main/java/carwash/util/DatabaseManager.java - PostgreSQL
- Схема таблиц
src/main/resources/schema.sql
Экспорт и настройка
- Инициализация БД
src/main/java/carwash/util/DatabaseInitializer.java - Контракт экспорта
src/main/java/carwash/util/Exporter.java - Экспорт CSV
src/main/java/carwash/util/CsvExporter.java - Экспорт Excel
src/main/java/carwash/util/ExcelExporter.java
Other components
- Пользователь
Connections 24
- Пользователь → Консольное меню: выбирает действия
README.md - Точка входа → Консольное меню: запускает
src/main/java/carwash/Main.java - Консольное меню → Ввод данных: считывает ввод
src/main/java/carwash/ui/ConsoleApp.java - Консольное меню → Клиенты: вызывает
src/main/java/carwash/ui/ConsoleApp.java - Консольное меню → Записи и правила: вызывает
src/main/java/carwash/ui/ConsoleApp.java - Консольное меню → Инициализация БД: запускает
src/main/java/carwash/ui/ConsoleApp.java - Консольное меню → Контракт экспорта: выбирает формат
src/main/java/carwash/ui/ConsoleApp.java - Консольное меню → Экспорт CSV: создаёт экспортёр
src/main/java/carwash/ui/ConsoleApp.java - Консольное меню → Экспорт Excel: создаёт экспортёр
src/main/java/carwash/ui/ConsoleApp.java - Клиенты → Репозиторий клиентов: проверяет и сохраняет
src/main/java/carwash/service/ClientService.java - Записи и правила → Репозиторий записей: читает и изменяет
src/main/java/carwash/service/BookingService.java - Записи и правила → Репозиторий клиентов: проверяет клиентов
src/main/java/carwash/service/BookingService.java - Записи и правила → Статистика: собирает итоги
src/main/java/carwash/service/BookingService.java - Запись → Статусы записей: использует
src/main/java/carwash/model/Booking.java - Запись → Типы услуг: использует
src/main/java/carwash/model/Booking.java - Репозиторий клиентов → JDBC-подключение: открывает соединение
src/main/java/carwash/repository/ClientRepository.java - Репозиторий записей → JDBC-подключение: открывает соединение
src/main/java/carwash/repository/BookingRepository.java - JDBC-подключение → PostgreSQL: подключается к
src/main/java/carwash/util/DatabaseManager.java - Репозиторий клиентов → PostgreSQL: читает и пишет
src/main/java/carwash/repository/ClientRepository.java - Репозиторий записей → PostgreSQL: читает и пишет
src/main/java/carwash/repository/BookingRepository.java - Инициализация БД → JDBC-подключение: получает соединение
src/main/java/carwash/util/DatabaseInitializer.java - Схема таблиц → PostgreSQL: описывает таблицы
README.md - Экспорт CSV → Контракт экспорта: реализует
src/main/java/carwash/util/CsvExporter.java - Экспорт Excel → Контракт экспорта: реализует
src/main/java/carwash/util/ExcelExporter.java