igor ed3d202488 pridany build skript,
uprava produkcnej konfiguracie
2025-10-13 23:12:15 +02:00
2025-10-13 23:12:15 +02:00
2025-10-13 23:12:15 +02:00
2025-10-11 21:53:12 +02:00
2025-10-13 23:12:15 +02:00

BugReport

BugReport logo

BugReport je webová aplikácia na sledovanie a správu chýb (bug tracking system) s jednoduchým a intuitívnym používateľským rozhraním. Aplikácia umožňuje pridávať, upravovať, kategorizovať a sledovať stav bug reportov pomocou Kanban-štýl rozhrania s drag-and-drop funkcionalitou.




🚀 Funkcie

  • Kanban rozhranie - vizuálne sledovanie stavu bug reportov v štyroch kategóriách (Nezaradené, Čakajúce, Rozpracované, Blokované)
  • Drag-and-drop - jednoduché presúvanie reportov medzi kategóriami
  • Prioritizácia - nastavenie priority reportov (Nízka, Stredná, Vysoká, Kritická)
  • Kategorizácia - zaradenie reportov do skupín (Control Panel, Task.Platon.sk, WebsiteIP, Antispam)
  • Detailný pohľad - zobrazenie a úprava detailov reportu
  • REST API - prístup k dátam cez API endpoint

🔷 Diagram stavov pre BUG

🖼️ Screenshot

🖥️ Technológie

⚙️ Backend

📺 Frontend

🌳 Štruktúra projektu

BugReport/
├── backend/                          # Backend aplikácia (PHP)
│   ├── config/                       # Konfigurácia aplikácie
│   ├── public/                       # Vstupný bod aplikácie, tu nasmerovat vo webserveri DOCUMENT ROOT
│   ├── scripts/                      # Skripty pre pred-spracovanie, build a ine
│   ├── src/                          # Zdrojový kód
│   │   ├── Models/                   # Classy pre jednotlive DB tabulky pouziva TPsoft\DBmodel
│   │   ├── API.php                   # Logika pre API BugReport pouziva TPsoft\APIlite
│   │   ├── Init.php                  # Inicializacia pripojenia k DB, kontroly a iné
│   │   └── Maintenance.php           # Údržba pre projekt, zatiaľ hlavne pre upgrade databazovej štruktúry, používa \TPsoft\DBmodel\Maintenance
│   └── test/                         # Testovacie skripty
├── data/                             # Dáta aplikácie
│   ├── attachments/                  # Súborové uložisko príloh
│   └── database.db                   # SQLite databáza
├── doc/                              # Dokumentácia a iné súbory počas vývoja
└── frontend/                         # Frontend aplikácia (Vue.js)
    ├── public/                       # Statické súbory
    ├── scripts/                      # Skripty pre build
    └── src/                          # Zdrojový kód
        ├── assets/                   # Assety (CSS, obrázky)
        ├── components/               # Vue komponenty
        ├── views/                    # Vue stránky
        ├── App.vue                   # Hlavná Vue komponenta
        ├── backend.js                # Komunikácia s API
        ├── events.js                 # Správa udalostí
        ├── main.js                   # Vstupný bod Vue aplikácie
        └── router.js                 # Vue Router konfigurácia

🛠️ Inštalácia a spustenie

📋 Požiadavky

  • PHP 8.2 alebo novší
  • Webový server (Apache, Nginx)
  • Node.js a npm pre vývoj frontendu

⚙️ Backend

  1. Skopírujte súbory do webového adresára
  2. Uistite sa, že adresár data má práva na zápis
  3. Nastavte DOCUMENT ROOT na adresár backend/public
  4. Prístup k aplikácii cez webový prehliadač

📺 Frontend (pre vývoj)

  1. Prejdite do adresárafrontend
  2. Nainštalujte závislosti:
    npm install
    
  3. Spustite vývojový server:
    npm run dev
    
  4. Pre build produkčnej verzie:
    npm run build
    

📖 API dokumentácia

API je dostupné cez API.php endpoint fyzicky umiestnený v DOCUMENT ROOT backend/public/API.php. Všetky požiadavky vracajú JSON odpoveď.kompletnú a aktuálnu dokumentáciu je možné získať aj HTML formáte API.php?format=html.

🚏 Dostupné endpointy

Akcia Popis Parametre
help Zobrazí nápovedu -
add Pridá nový report title, description, status, group, priority
update Aktualizuje report report_id, report_data (JSON)
delete Vymaže report report_id
get Získa jeden report report_id
getAll Získa všetky reporty status (voliteľné)
getAllGrouped Získa reporty zoskupené podľa stavu status (voliteľné)
updateOrdNum Aktualizuje poradie reportov ordnums (JSON)
updateStatus Aktualizuje stav reportu report_id, status
attachmentAdd Pridá prílohu k reportu report_id, attachment_type, attachment_content
attachmentUpdate Aktualizuje prílohu attachment_id, attachment_content
attachmentGetAll Získa všetky prílohy reportu report_id

🔍 Príklad API volania

// Získanie všetkých reportov
fetch('api.php?action=getAll')
  .then(response => response.json())
  .then(data => console.log(data));

// Pridanie nového reportu
fetch('api.php?action=add', {
  method: 'POST',
  body: new FormData(document.querySelector('form'))
})
  .then(response => response.json())
  .then(data => console.log(data));

🏗️ Stavy reportov

ID Stav
0 Nezaradené
1 Čakajúce
2 Rozpracované
3 Blokované
4 Vyriešený

📣 Priority reportov

ID Priorita
0 Nízka
1 Stredná
2 Vysoká
3 Kritická

🕸️ Skupiny reportov

  • cp - Control Panel
  • task - Task.Platon.sk
  • websiteip - WebsiteIP
  • antispam - Antispam

Plánované vylepšenia - Planned Features

  • Skupiny reportov v samostatnej tabuľke s CRUD manažmentom

⚖️ Licencia

Tento projekt je licencovaný pod MIT licenciou.

Description
Webová aplikácia na sledovanie a správu chýb (bug tracking system).
Readme 1.5 MiB
Languages
Vue 39.7%
PHP 31.4%
CSS 17.6%
JavaScript 9.4%
Batchfile 1.4%
Other 0.5%