Проект представляет собой веб-приложение, имитирующее работу менеджеров на торговом предприятии.
Также на стороне БД настроена автоматическая генерация ценников (еженедельно) и курсов валют (ежедневно) по определённой траектории (вызовы процедур UpdatePrices() и UpdateCources() соответственно). Для этого использовался планировщик задач pgAgent.
Подробнее о проекте расписано непосредственно в приложении на странице "Инструкция к работе".
App
⸠⸺> Areas
⸠ ⸠⸺> Contract
⸠ ⸠ ⸠⸺> Controllers
⸠ ⸠ ⸠⸺> Models
⸠ ⸠ ⸠⸺> ViewModels
⸠ ⸠ ⸠⸺> Views
⸠ ⸠⸺> Course
⸠ ⸠ ⸠⸺> Controllers
⸠ ⸠ ⸠⸺> Models
⸠ ⸠ ⸠⸺> Views
⸠ ⸠⸺> Manager
⸠ ⸠ ⸠⸺> Controllers
⸠ ⸠ ⸠⸺> ViewModels
⸠ ⸠ ⸠⸺> Views
⸠ ⸠⸺> Price
⸠ ⸠ ⸠⸺> Controllers
⸠ ⸠ ⸠⸺> Models
⸠ ⸠ ⸠⸺> Views
⸠ ⸠⸺> Transaction
⸠ ⸠ ⸠⸺> Controllers
⸠ ⸠ ⸠⸺> Models
⸠ ⸠ ⸠⸺> ViewModels
⸠ ⸠ ⸠⸺> Views
⸠ ⸠⸺> Warehouse
⸠ ⸠⸺> Controllers
⸠ ⸠⸺> Models
⸠ ⸠⸺> Views
⸠⸺> Models
⸠⸺> Views
⸠⸺> Controllers
⸠⸺> Hubs
⸠⸺> Misc
⸠⸺> SQL
Приложение было поделено на области (Areas).
В папках, находящихся вне областей такие, как Models, Views, Controllers и Hubs присутствуют базовые сущности, которые используются во всех областях.
В папке Misc определены сущности, которые отвечают за кодирование и декодирование информации (Security.cs) и проверку активности сессии (Extensions.cs)
В папке Misc/SQL лежат скрипты на создание таблиц, представлений, триггеров и прочего в базе данных.
Наименование таблицы | Краткое описание |
---|---|
Cources | Таблица отношений курсов валют |
Currencies | Таблица курсов валют |
Prices | Таблица ценников на товары (товары могут продаваться в разных валютах) |
Products | Таблица товаров |
Groups | Таблица групп товаров (медицина, продовольствие, ...) |
Managers | Таблица менеджеров |
Contragents | Таблица контрагентов (менеджеры ведут торговлю через них) |
Banks | Таблица банков |
Accounts | Таблица банковских аккаунтов (БА) контрагентов (без них менеджер не имеет возможности подписывать контракты с контрагентами, у к-рых просроченный или отсутствующий БА!) |
Contracts | Таблица контрактов между контрагентом и менеджером |
Incoming | Таблица покупок товаров менеджеров |
Outgoing | Таблица продаж товаров менеджеров |
Taxes | Налоги, списываемые при совершении транзакции |
C# 11
JavaScript
Pl/pgSQL
Razor Pages
ASP.NET Core 7
PostgreSQL 15
Entity Framework 7
pgAgent
SignalR
Bootstrap