Skip to content

Latest commit

 

History

28 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🐟 ИАРА — Информационна система за рибарство и аквакултури

Ученически проект по информатика, разработен по казуса на Изпълнителна агенция по рибарство и аквакултури (ИАРА) и фирма ТехноЛогика ЕАД.

Това е уеб платформа, която управлява основните бизнес процеси на агенцията: регистър на риболовни кораби, разрешителни за риболов, електронен дневник на улова, инспекции на терен и продажба на любителски билети.


✨ Какво включва проектът

Модул Файл Какво прави
🏠 Начало index.html Представяне на системата, анимирани статистики, проследяемост на улова
Регистър на кораби korabi.html Всички риболовни кораби с идентификация, собственик, капитан и технически параметри. Търсене, филтри, добавяне
📄 Разрешителни razreshitelni.html Годишни разрешителни за риболов — уреди, зона, валидност, отнемане при нарушение
📒 Електронен дневник dnevnik.html Записи на улова (кога, къде, какви уреди, количество) + проследяване на пътя на рибата до магазина
🛡️ Инспекции inspekcii.html Модул на инспектора — проверки на кораби, камиони и магазини, актове и глоби
🎟️ Любителски билети bileti.html Калкулатор и онлайн покупка на билет според срок и категория (под 14 г., над 14 г., пенсионер, безплатно за хора с увреждания с № от ТЕЛК)
🔐 Вход / Регистрация login.html Създаване на акаунт и вход в системата
👤 Личен кабинет profile.html Запазени лични данни за бъдещи покупки + история на закупените билети

🔐 Акаунти и редактиране на данни

  • Регистрация и вход — създайте акаунт от бутона „Вход“ горе вдясно.
  • Личен кабинет — вижте закупените си билети и запазете личните си данни (име, ЕГН, телефон, категория). При следваща покупка формата се попълва автоматично.
  • Режим на редактиране — след вход на страниците Кораби, Разрешителни, Дневник и Инспекции се появява бутон „✎ Редактиране“. В този режим всеки запис има бутони за редактиране и изтриване.

Акаунтите се пазят в браузъра (localStorage), за да работят и без сървър. Паролите се пазят като хеш, не като чист текст. В реална система това се прави на сървъра (напр. с bcrypt).


🛠️ Използвани технологии

  • HTML5 — структура на страниците
  • CSS3 — модерен дизайн, анимации, адаптивност (responsive), стъкломорфизъм
  • JavaScript — интерактивност, търсене, филтри, калкулатор, анимации при скрол, анимирани броячи
  • Python (Flask) — сървър (backend) с REST API
  • SQLite — база данни (вградена в Python, без отделна инсталация)

▶️ Как да стартирате проекта

Вариант 1 — Бързо (само браузър, без инсталация)

Достатъчно е да отворите файла web/index.html с двойно щракване. Сайтът работи напълно — данните се зареждат от вградени демонстрационни данни, а добавените от вас записи се пазят локално в браузъра.

💡 Идеално за бърза демонстрация пред класа.

Вариант 2 — Пълна версия с Python сървър и база данни

Нужен е инсталиран Python 3.10+. Проверете с:

python --version

Ако нямате Python, изтеглете го от https://www.python.org/downloads/ (при инсталация сложете отметка „Add Python to PATH“).

После, в папката на проекта:

# 1. Инсталирайте Flask
pip install -r requirements.txt

# 2. Стартирайте сървъра
python app.py

Отворете в браузъра: http://localhost:5000

Сега данните се пазят в реална база данни (iara.db), а заявките минават през Python API на адрес /api/....


📁 Структура на проекта

iara-gdbpzn-EVFurnika/
├── app.py              # Python сървър (Flask) + REST API
├── database.py         # База данни SQLite + начални данни
├── requirements.txt    # Python зависимости (Flask)
├── start.bat           # Стартиране с двойно щракване (Windows)
├── README.md           # Този файл
└── web/                # Сайтът (frontend)
    ├── index.html
    ├── korabi.html
    ├── razreshitelni.html
    ├── dnevnik.html
    ├── inspekcii.html
    ├── bileti.html
    ├── login.html         # Вход / Регистрация
    ├── profile.html       # Личен кабинет
    ├── css/
    │   └── style.css   # Всички стилове и анимации
    └── js/
        ├── app.js          # Общи функции (навигация, слой за данни, анимации)
        ├── auth.js         # Акаунти и личен кабинет
        ├── data.js         # Демонстрационни данни (резервен режим)
        ├── korabi.js
        ├── razreshitelni.js
        ├── dnevnik.js
        ├── inspekcii.js
        ├── bileti.js
        └── profile.js

🔌 API (за пълната версия)

Метод Адрес Описание
GET /api/korabi Списък със записи
POST /api/korabi Добавяне на запис
PUT /api/korabi/<id> Редактиране на запис
DELETE /api/korabi/<id> Изтриване на запис
GET /api/stats Обобщени статистики

Същите методи (GET, POST, PUT, DELETE) важат и за razreshitelni, dnevnik, inspekcii и bileti.


📷 Снимки и лицензи

В сайта са използвани реални снимки от Wikimedia Commons (свободни лицензи Creative Commons / обществено достояние) — риболовни кораби, българското Черноморие (Созопол, Черноморец), прясна риба, рибен пазар и любителски риболов. Снимките са в папка web/img/. При по-сериозна употреба авторите се посочват според конкретния лиценз на всяка снимка.


🎓 За проекта

Проектът демонстрира пълен цикъл на изграждане на информационна система: проектиране на база данни, сървърна логика на Python, REST API и съвременен потребителски интерфейс с анимации. Реализиран е изцяло на български език.

© Ученически проект · ИАРА · ТехноЛогика ЕАД

About

iara-gdbpzn-EVFurnika created by GitHub Classroom

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages