The application is developed using AspNetCore 6 and Blazor Server. Data storage MS SQL Server 2019, ORM Entity Framework Core 7. Data access is implemented using "Repository" pattern
Client part implements CRUD logic for the entities customers and orders, validation of entered data. Registration and authorization of users, data filtering are implemented.
Приложение разработано с использованием AspNetCore 6 и Blazor Server. Хранение данных MS SQL Server 2019, ORM Entity Framework Core 7. Доступ к данным реализован с помощью паттерна “Репозиторий”
Клиентская часть реализует CRUD логику для сущностей клиенты и заказы, валидацию вводимых данных. Реализована регистрация и авторизация пользователей, фильтрация данных. Логгирование.
Модель данных
- Clients (содержит поля ID, Name, DateCreate, Status) – клиенты, таблица содержит данные о клиентах, дате создания клиента, статусе клиента (потенциальный, активный, не активный)
- Orders (содержит поля ID, Client_ID – внешний ключ для таблицы клиентов, Decsription, Date, Price, Status, Currency) – заказы, таблица содержит данные о заказах клиента, обязательные поля ссылка на клиента, описание заказа, дата заказа, стоимость, статус заказа (новый, выполнен), валюта.
Заказы могут создаваться только для клиентов в статусе активный.
При создании заказа ему автоматически присваивается статус Новый.
Перевод в статус Выполнен в ручном режиме.
Удаление заказа доступно только в статусе Новый.
Изменение статуса клиента: при добавлении – Потенциальный, перевод в статус Активный в ручном режиме, перевод в статус Не Активный только для клиентов без заказов в статусе Новый.
Удаление клиента доступно только при отсутствии заказов.