Project 4 - Voorraad & Defecten Beheer
Projectbriefing
Projectnaam: Voorraad & Defecten Beheer "StockCheck"
Datum: 18 december 2025
Opdrachtgever: Event-locatie "De Festiviteit"
Contactpersoon: Dhr. J. Willems (Operationeel Manager)
1. Achtergrond en Probleemstelling
Event-locatie "De Festiviteit" beschikt over 12 verschillende zalen en 4 bars. Tijdens events merken kelners en barpersoneel vaak dat apparatuur (zoals een biertap, koffiemachine of verlichting) defect is of dat specifieke voorraad (zoals fusten of glaswerk) kritiek laag is.
Nu wordt dit doorgegeven op bierviltjes of via een rommelige groepsapp. De technische dienst en de inkoper missen hierdoor het overzicht, waardoor events soms starten met kapotte apparatuur of te weinig voorraad.
2. Doelstelling
Wij willen een intern meldingsportaal (StockCheck) laten ontwikkelen.
Personeel moet op de werkvloer direct een melding kunnen maken. De technische dienst en inkoop moeten deze meldingen centraal kunnen beheren, prioriteren en afvinken.
3. Doelgroepen
-
Vloerpersoneel (Gebruikers): Willen direct melden dat een koelkast niet koelt en zien of de melding is opgepakt.
-
Facilitair Beheer (Admins): Willen een lijst met taken (reparaties/bestellingen), gesorteerd op urgentie voor het volgende event.
4. Gewenste Functionaliteiten (Must-Haves)
Voor het MVP verwachten wij de volgende functies:
-
Authenticatie:
-
Inlogscherm voor medewerkers.
-
Rol-verdeling in de database:
staff(user) enfacilitair(admin).
-
-
Voor Vloerpersoneel:
-
Dashboard met een lijst van hun eigen actieve meldingen.
-
Formulier "Nieuwe Melding" (Locatie/Zaal, Omschrijving, Type: Defect/Voorraadtekort).
-
Zichtbare status (bijv. "In wachtrij", "Wordt geregeld", "Afgehandeld").
-
-
Voor Facilitair Beheer (Admins):
-
Centraal overzicht van alle openstaande meldingen van de gehele locatie.
-
Detailpagina om per melding actie te ondernemen.
-
Mogelijkheid om de Status en de Impact (Kritiek/Niet-kritiek) aan te passen.
-
Mogelijkheid om een "Logboek Notitie" (bijv: onderdeel besteld) toe te voegen.
-
5. Technische Eisen & Randvoorwaarden
-
Taal & Database: PHP (8.x) en MySQL.
-
Code Architectuur: Gebruik van
includesvoor de navigatie en database-instellingen. -
Veiligheid: Verplichte beveiliging tegen SQL-injection via Prepared Statements en XSS via
htmlspecialchars(). -
Data Integriteit: Elke melding is via een Foreign Key gekoppeld aan de
user_idvan de melder.
6. Budget en Planning
-
Tijdsinvestering: Wij schatten dit project op circa 40-45 uur.
-
Oplevering: Prototype binnen 5 weken.
7. Gevraagde actie
-
Lever een Functioneel Ontwerp.
-
Lever een Technische Schets (ERD + Wireframes).
-
Realiseer de applicatie en lever de broncode op via Git.
BIJLAGE: Specifieke Design & Interface Wensen
De look & feel moet passen bij een moderne horeca-omgeving: donkere achtergronden met "Neon" accentkleuren voor status-indicatoren.
-
Visuele Impact-indicatie:
-
In de meldingslijst moet de impact direct opvallen:
-
Lage impact: Grijze rand (bijv. kapot lampje in gang).
-
Medium impact: Gele rand (bijv. voorraad fusten bijna op).
-
KRITIEK: Dikke, rode gloed/rand (
#FF0000) (bijv. hoofdtap defect vóór bruiloft).
-
-
-
De "Floating" Navigatie:
-
Wij willen een zwevende navigatiebalk onderin het scherm (Mobile First gedachte), zodat personeel met hun duim makkelijk tussen "Home" en "Melden" kan schakelen.
-
Op desktop moet deze balk gewoon bovenin vaststaan (sticky top).
-
-
Melding Detail (Split View):
-
Gebruik CSS Grid voor de detailpagina:
-
Header (100%): De locatie/zaal naam in een groot font.
-
Main (70%): De omschrijving en de admin-notities.
-
Sidebar (30%): Tijdstip van melding, naam medewerker en een dropdown voor de status.
-
-
-
De "Manager Filter":
-
Boven de lijst moeten knoppen staan voor snelle filtering via de URL (
GET):-
"Toon Alles"
-
"Kritieke Meldingen"
-
"Alleen Voorraadtekorten"
-
-
Tips voor jouw Examenportfolio
Waarom is deze opdracht geschikt voor je examen?
-
Complexiteit (W3): De koppeling tussen zalen/locaties en meldingen dwingt je tot een goede relationele database-opzet.
-
SQL Parameters (W3): De "Manager Filter" laat zien dat je variabelen veilig uit de URL kunt halen en kunt binden aan een SQL query.
-
UX/UI (W1): De Mobile First navigatie-eis laat zien dat je kunt werken met Responsive Design en moderne layout-technieken.
-
Testen (W4): Test of een gewone medewerker de status niet zelf stiekem naar "Afgehandeld" kan zetten via de URL of het formulier.