Similar presentations:
Расходы АЗС
1.
Выпускнойпроект
Расходы АЗС
группа Python 03 :
Санжар Смагул
Муханбеткалиев Амир
Вяткин Виталий
27 октября
2023
2.
АКТУАЛЬНАЯ ПРОБЛЕМАВ настоящий момент в Кыргызстане функционирует 170 АЗС Red Petroleum
Для анализа деятельности каждой АЗС в отдельности и всей сети в целом,
каждой АЗС формируется ежемесячный отчет по расходам
x 170
3.
АКТУАЛЬНАЯ ПРОБЛЕМАВременные издержки:
огромное количество времени и человеческого ресурса необходимо для
ручного сбора и ввода данных
Человеческий фактор:
работа с большими массивами данных неизбежно ведет к
механическим ошибкам при сборе и вводе данных
Проблемы с масштабированием:
внедрение новых показателей для анализа или интеграция показателей
новых АЗС происходит медленно, отсутствие механизма фильтрования данных
делает материал все менее доступным для последующего пользователя
4.
АРХИТЕКТУРА РЕШЕНИЯБэкенд выполняет следующие функций:
Управление данными о расходах и пользователях:
Модель Expense предоставляет хранение информации о расходах, такие как отдел, вид расхода, дата, сумма и валюта.
Модель User позволяет хранить информацию о пользователях.
Предоставление удобного интерфейса:
Представление Homepage позволяет пользователям просматривать и фильтровать данные о расходах с использованием различных
параметров, таких как дата, отдел, вид расхода и сумма.
Представление PlaceholderUsers и ExcelUsers позволяют импортировать данные о пользователях из разных источников, таких как удаленный JSONисточник и Excel-файлы, создавая или обновляя записи пользователей в базе данных.
Импорт данных из внешних источников:
Эффективная фильтрация данных:
Фильтр ExpenseFilter позволяет пользователям выбирать и фильтровать данные о расходах по различным параметрам, облегчая анализ и поиск
нужных записей.
Модульность и масштабируемость:
Представления DepartmentExcel и TypeOfExpenseExcel обеспечивают возможность импорта данных о отделах и видах расходов из Excelфайлов, обогащая базу данных актуальными данными.
Приложение построено с учетом модульной архитектуры, что обеспечивает его масштабируемость и готовность к дальнейшему расширению
функциональности.
Обработка ошибок и безопасность:
Реализованы механизмы обработки ошибок и логирования для обеспечения надежности и отказоустойчивости приложения.
Обеспечивается безопасность данных и пользователей. (User.objects.get_or_create. Это помогает избежать создания дубликатов
пользователей.)(Представление Homepage использует Django-фильтр для фильтрации данных о расходах. Это может помочь в
предотвращении некорректных запросов.)
5.
АРХИТЕКТУРА РЕШЕНИЯБаза данных:
• Currency: Модель для хранения информации о валютах.
• Department : Модель для хранения информации о отделах.
• ExcelSource : Модель используемая для хранения загруженных Excel-файлов.
• Expense : Модель для хранения информации о расходах.
• Station : Модель для хранения информации о станциях (не используется в
предоставленном
коде).
• TypeOfExpense : Модель для хранения информации о видах расходов.
• User : Модель для хранения информаций о пользователе
База данных предоставляет информацию о расходах (Expense), видах
расходов (TypeOfExpense), отделах (Department), валютах (Currency) и
загруженных Excel-файлах (ExcelSource). В базе данных также есть модели,
которые могут быть не использованы в текущей версии приложения (например,
модель Station).
6.
7.
СХЕМА СИСТЕМЫ• Пользовательский интерфейс:
Пользователи взаимодействуют с приложением через веб-интерфейс.
Интерфейс предоставляет доступ к различным функциям приложения, таким как
управление данными о расходах, отделах, пользователях, а также фильтрацию данных о
расходах.
Пользователи могут загружать Excel-файлы для импорта данных о расходах, отделах и
пользователях.
• Бэкенд (Django приложение):
Обрабатывает запросы от пользовательского интерфейса.
Взаимодействует с базой данных для сохранения, извлечения и обновления данных.
Реализует логику для импорта данных из Excel-файлов.
Предоставляет функциональность фильтрации данных о расходах.
• Excel-файлы:
Используются для импорта данных о расходах, отделах и пользователях.
Данные из файлов сохраняются в базе данных.
• Внешние источники данных:
Для модели User, данные могут быть импортированы из удаленного JSON-источника,
такого как JSONPlaceholder API.
8.
А Р Х ИТЕ К ТУР АР ЕШ ЕНИЯ
БАЗА
БАЗА
ДАННЫ Х
ДАННЫ Х
A PI
EX C EL
РАБОТНИК АЗС(ПОЛЬЗОВАТЕЛЬ)
9.
ТЕ Х Н ОЛ ОГ ИИDjango: Фреймворк для разработки веб-приложений на языке Python.
Django Bootstrap 5: Библиотека для интеграции Bootstrap 5 в проекты Django.
Openpyxl: Библиотека для работы с файлами формата Excel.
Django Filters: Библиотека для создания фильтров для запросов к базе данных.
Requests: Библиотека для выполнения HTTP-запросов к удаленным ресурсам,
используется для получения данных о пользователях из JSONPlaceholder API.
10.
Спасибо завнимание
С С Ы Л К А Н А Р ЕП О З И Т О Р И Й :
группа Python 03 :
https://github.com/Amankaium/peo -station-report
Санжар Смагул
Муханбеткалиев Амир
Вяткин Виталий
28.10.2023