PadelOS Planning, Lessen & Banen vormt het centrale planningshart van PadelOS. De module brengt trainers, spelers, teams, lessen, locaties, banen, beschikbaarheid en reserveringen samen in één overzichtelijke werkomgeving.
Het doel is niet alleen om afspraken in een agenda te plaatsen. PadelOS moet het volledige proces ondersteunen: van beschikbaarheid en groepsindeling tot baanreservering, lesvoorbereiding, aanwezigheid, vervanging, facturatie en rapportage.
Administrators, planners, trainers, clubs en locaties werken vanuit dezelfde gegevensbron. Spelers krijgen een eigen overzicht waarin zij uitsluitend hun relevante lessen, wijzigingen en meldingen zien.
De visie van PadelOS is dat een goede planning ontstaat wanneer alle betrokken gegevens met elkaar verbonden zijn.
Een les is daarom geen los agenda-item, maar een centraal record met relaties naar:
een trainer;
één of meer spelers;
een team of trainingsgroep;
een club en locatie;
een specifieke baan;
een datum en tijd;
een lesreeks en lesnummer;
een lesvoorbereiding;
aanwezigheid en afwezigheid;
een tarief, factuur of abonnement;
meldingen en agenda-items;
evaluaties en voortgang.
Hierdoor ontstaat één betrouwbare waarheid voor alle gebruikers. Wijzigingen hoeven niet steeds handmatig in verschillende agenda’s, spreadsheets, berichten en administraties te worden verwerkt.
Veel padelscholen, trainers en verenigingen plannen momenteel via een combinatie van spreadsheets, agenda’s, WhatsApp-berichten, e-mail, reserveringssystemen en losse documenten.
Dat veroorzaakt onder meer:
dubbele boekingen;
onduidelijkheid over beschikbare trainers;
conflicten tussen lessen en baanreserveringen;
vergeten wijzigingen;
handmatig overnemen van gegevens;
onvoldoende zicht op maximale trainerbelasting;
spelers die niet weten waar of wanneer zij trainen;
ontbrekende registratie van afwezigheid en inhaallessen;
verschillen tussen de planning en de facturatie;
versnipperde lesvoorbereidingen;
onvoldoende managementinformatie.
PadelOS brengt deze processen samen. De planning wordt daarmee een gecontroleerde workflow in plaats van een verzameling losse afspraken.
De planningsmodule wordt ontwikkeld voor verschillende gebruikersgroepen.
Administrators beheren de volledige planning, configuratie, rollen, rechten, locaties, banen, trainers, spelers, lesreeksen en systeeminstellingen.
Managers en planners stellen roosters samen, verdelen trainers, maken groepen, reserveren banen en lossen conflicten op.
Trainers beheren hun beschikbaarheid, voorkeurslocaties, maximale inzet en persoonlijke planning. Zij bekijken hun groepen, spelers, lesvoorbereidingen en wijzigingen.
Spelers zien hun eigen lessen, locaties, trainers, groepsinformatie, wijzigingen en meldingen. Afhankelijk van de ingestelde rechten kunnen zij afwezigheid doorgeven of een inhaalmogelijkheid aanvragen.
Clubs en locaties beheren beschikbare banen, openingstijden, blokkades, onderhoud, evenementen en reserveringsvoorwaarden.
Technische specialisten ondersteunen de koppelingen met Google Calendar, externe reserveringssystemen, notificaties, API’s en toekomstige cloudvoorzieningen.
Testers controleren gebruikersstromen, agendaweergaven, conflictdetectie, mobiele bediening, rechten, tijdzones en uitzonderingssituaties.
PadelOS Planning, Lessen & Banen moet uiteindelijk de volgende kernfuncties ondersteunen:
dag-, week-, maand- en seizoensplanning;
losse lessen en terugkerende lesreeksen;
planning per trainer, speler, team, locatie en baan;
trainerbeschikbaarheid;
maximale inzet per dag en week;
voorkeursdagen, tijden en locaties;
baanbeschikbaarheid en baanreserveringen;
automatische conflictdetectie;
trainingsgroepen en groepsindelingen;
wachtlijsten;
proeflessen en losse deelnemers;
afwezigheid en vervanging;
inhaal- en vervangingslessen;
annuleringen;
reistijdbuffers;
agenda-integratie;
meldingen en herinneringen;
koppeling met aanwezigheid;
koppeling met lesvoorbereiding;
koppeling met facturatie;
planningsoverzichten en rapportages.
De module wordt stapsgewijs opgebouwd. Niet alle functies zijn al productierijp.
PadelOS ondersteunt verschillende niveaus van planning.
De dagplanning toont alle lessen, trainers, spelers, locaties en banen van één dag. Planners kunnen snel zien waar vrije ruimte, overlap of uitval ontstaat.
De weekplanning is het belangrijkste operationele rooster. Deze weergave maakt terugkerende lessen, trainerbelasting, baanbezetting en open plekken zichtbaar.
De maandplanning ondersteunt management, capaciteitscontrole, evenementen, vakantieperiodes, baanonderhoud en financiële verwachtingen.
De seizoensplanning bevat volledige trainingsperioden, bijvoorbeeld voorjaars-, zomer-, najaars- en winterprogramma’s. Hierbij worden startdatum, einddatum, vakanties, feestdagen, aantal lessen, reservedata en inhaalmomenten vastgelegd.
Elke weergave gebruikt dezelfde centrale records. Een wijziging in de weekplanning wordt daardoor ook zichtbaar in de dag-, maand- en seizoensplanning.
Een les kan als losse activiteit of als onderdeel van een terugkerende lesreeks worden aangemaakt.
Een lesreeks bevat onder andere:
een unieke LesreeksID;
een naam en omschrijving;
start- en einddatum;
dag en tijd;
duur van de les;
aantal geplande lessen;
trainer of trainersteam;
groep of team;
locatie en baan;
tarief of abonnement;
vakanties en uitzonderingsdata;
status;
annulerings- en inhaalvoorwaarden.
Vanuit een lesreeks kunnen afzonderlijke lesrecords worden gegenereerd. Iedere les krijgt een eigen PlanningID of LesID. Daardoor kan één les worden verplaatst, geannuleerd of vervangen zonder de volledige reeks te veranderen.
Bij een structurele wijziging moet de gebruiker kunnen kiezen tussen:
alleen deze les wijzigen;
deze en alle volgende lessen wijzigen;
de volledige lesreeks wijzigen.
Voor definitieve verwerking toont PadelOS altijd een controleoverzicht van de gevolgen.
Trainers moeten hun beschikbaarheid op een eenvoudige en mobiele manier kunnen beheren.
Per trainer kunnen onder meer de volgende gegevens worden vastgelegd:
beschikbare dagen;
beschikbare tijdvakken;
niet-beschikbare perioden;
voorkeurslocaties;
uitgesloten locaties;
maximale lessen per dag;
maximale lessen per week;
maximale aaneengesloten lestijd;
minimale pauze tussen lessen;
reistijdbuffer;
mogelijke lesniveaus;
doelgroep of specialisatie;
vervangingsbeschikbaarheid;
vakantie en verlof;
actief of tijdelijk niet inzetbaar.
PadelOS vergelijkt deze gegevens met de geplande lessen. Wanneer een planner een trainer buiten diens beschikbaarheid, maximale inzet of voorkeursgebied probeert in te roosteren, verschijnt een waarschuwing.
In een professionele versie kan het systeem geschikte trainers voorstellen op basis van beschikbaarheid, reistijd, bevoegdheid, locatie, specialisatie, contracturen en actuele belasting. De planner houdt daarbij altijd de eindbeslissing.
Spelers kunnen individueel, als duo, als team of als trainingsgroep aan lessen worden gekoppeld.
Bij groepsindeling kan rekening worden gehouden met:
speelsterkte;
leeftijd;
trainingsdoel;
voorkeursdagen;
beschikbare tijden;
locatievoorkeur;
groepsgrootte;
sociaal passende indeling;
competitieteam;
traineradvies;
wachtlijstpositie;
abonnementsvorm;
medische of praktische aandachtspunten, voor zover noodzakelijk en toegestaan.
Een speler kan meerdere profielen of relaties hebben. Dezelfde persoon kan bijvoorbeeld speler, trainer, ouder, contactpersoon of clubmedewerker zijn. PadelOS koppelt deze rollen via centrale personen- en profielrecords.
Groepswijzigingen worden bijgehouden in een historie. Daardoor blijft zichtbaar wie op welk moment onderdeel van een groep was. Dit is belangrijk voor aanwezigheid, voortgang, communicatie en facturatie.
De planningsmodule maakt onderscheid tussen organisaties, clubs, locaties en banen.
Een club kan meerdere locaties hebben. Een locatie kan meerdere binnen- en buitenbanen bevatten. Per baan kunnen onder andere worden geregistreerd:
unieke BaanID;
naam of baannummer;
gekoppelde LocatieID;
type baan;
binnen of buiten;
enkel- of dubbelbaan;
openingstijden;
beschikbare tijdsloten;
reserveringsduur;
onderhoudsblokkades;
tijdelijke sluitingen;
verlichting;
toegankelijkheid;
reserveringskosten;
externe reserveringsreferentie;
actieve status.
Een baan kan niet gelijktijdig aan meerdere lessen worden toegewezen, tenzij de configuratie dit uitdrukkelijk toestaat. Onderhoud, competities, toernooien, clinics en andere evenementen kunnen tijdvakken blokkeren.
Op termijn kan PadelOS vrije banen automatisch vergelijken met trainer- en spelersbeschikbaarheid.
Een geplande les en een baanreservering zijn inhoudelijk met elkaar verbonden, maar blijven afzonderlijk controleerbaar.
Een les kan bijvoorbeeld al voorlopig zijn ingepland terwijl de baan nog niet definitief is bevestigd. Daarom gebruikt PadelOS duidelijke reserveringsstatussen:
concept;
aangevraagd;
voorlopig gereserveerd;
bevestigd;
gewijzigd;
geannuleerd;
verlopen;
niet beschikbaar.
De planner ziet onmiddellijk welke lessen nog geen bevestigde baan hebben.
Zolang er geen rechtstreekse koppeling met het reserveringssysteem van een club bestaat, kan een reserveringsnummer, bevestigingslink of externe referentie handmatig worden opgeslagen. Een latere API-koppeling moet reserveringen automatisch kunnen aanmaken, controleren, wijzigen en annuleren.
Conflictdetectie is een essentiële voorwaarde voor betrouwbare planning.
PadelOS controleert onder meer of:
een trainer twee overlappende lessen heeft;
een speler gelijktijdig in meerdere lessen staat;
een baan dubbel is geboekt;
een locatie op dat moment geopend is;
een trainer beschikbaar is;
de maximale inzet wordt overschreden;
voldoende pauze is ingepland;
de reistijdbuffer haalbaar is;
een speler of trainer als afwezig staat geregistreerd;
een baan door onderhoud of evenement is geblokkeerd;
een les buiten de gekozen seizoensperiode valt;
een groep groter is dan toegestaan;
de benodigde baan of faciliteit beschikbaar is.
PadelOS maakt onderscheid tussen een blokkade en een waarschuwing. Een dubbele baanreservering kan bijvoorbeeld als harde blokkade gelden, terwijl een afwijking van een voorkeurslocatie alleen een waarschuwing geeft.
Een bevoegde gebruiker kan sommige waarschuwingen gemotiveerd overschrijven. De reden, gebruiker en datum worden dan in de auditlog vastgelegd.
Spelers en trainers moeten afwezigheid gecontroleerd kunnen doorgeven.
Bij een afwezigheidsmelding worden vastgelegd:
persoon;
les;
datum en tijd;
reden of categorie;
moment van melding;
wel of geen recht op inhalen;
vervanging nodig;
administratieve status;
eventuele financiële gevolgen.
Voor trainers kan PadelOS een lijst met beschikbare vervangers tonen. Daarbij wordt gecontroleerd op planning, reisafstand, kwalificaties, niveau en maximale inzet.
Voor spelers kan een vrije plaats beschikbaar worden gesteld aan:
een vaste reservespeler;
iemand uit dezelfde trainingsgroep;
iemand op de wachtlijst;
een speler met een inhaaltegoed;
een geschikte speler van vergelijkbaar niveau.
De wachtlijst krijgt een duidelijke volgorde en historie. Uitnodigingen hebben een vervaltijd, zodat de plek daarna automatisch aan een volgende kandidaat kan worden aangeboden.
Trainers kunnen op één dag op verschillende locaties werken. Daarom is een controle op reistijd noodzakelijk.
Per trainer kan een standaard reistijdbuffer worden ingesteld. Daarnaast kan een afwijkende buffer per combinatie van locaties worden opgeslagen.
Bijvoorbeeld:
les eindigt om 18.00 uur op locatie A;
volgende les begint om 18.15 uur op locatie B;
ingestelde reistijdbuffer is 30 minuten;
PadelOS toont een conflict.
In de tijdelijke Apps Script- en Sheets-versie kan dit met vaste buffertijden en een eenvoudige locatiematrix worden gecontroleerd. Een professioneel cloudplatform kan reistijd dynamisch laten berekenen via een kaart- of routevoorziening.
Automatische routeberekening mag alleen als ondersteuning worden gebruikt. Verkeer, parkeren, materiaaloverdracht en persoonlijke omstandigheden blijven aandachtspunten voor de planner en trainer.
Binnen PadelOS is een eerste test met Google Calendar uitgevoerd. Daarbij is aangetoond dat agenda-items vanuit de PadelOS-omgeving kunnen worden aangemaakt. Deze test vormt een technische basis, maar is nog geen volledige productiekoppeling.
De uiteindelijke agenda-integratie moet ondersteunen:
agenda’s per trainer;
agenda’s per team of trainingsgroep;
persoonlijke speleragenda’s;
gedeelde club- en locatieagenda’s;
aanmaken en wijzigen van afspraken;
annuleringen;
herinneringen;
links naar les- en locatiegegevens;
herkenbare kleuren per status of activiteit;
tijdzonecontrole;
terugkerende afspraken;
verwerking van uitzonderingen;
synchronisatiestatus en foutmeldingen.
Google Calendar mag niet de primaire database van PadelOS worden. De centrale planning in PadelOS blijft leidend. Agenda-items zijn gekoppelde weergaven van die planning.
Voor betrouwbare tweerichtingssynchronisatie zijn unieke externe event-ID’s, wijzigingsdatums, synchronisatieregels en conflictprocedures noodzakelijk.
Iedere geplande les kan worden gekoppeld aan een lesvoorbereiding.
Een trainer kan vanuit de planning:
een bestaande lesvoorbereiding selecteren;
een nieuwe les voorbereiden;
het thema en leerdoel vastleggen;
spelers en groep bekijken;
oefeningen en differentiatie toevoegen;
materialen registreren;
veiligheidsaandachtspunten controleren;
technische en tactische coachpunten toevoegen;
de les achteraf evalueren.
De planning kan informatie bevatten over hoofdspelsituatie, niveau, lesnummer, seizoensthema en eerder behandelde onderdelen. Zo ondersteunt de module niet alleen wanneer een les plaatsvindt, maar ook wat er tijdens de les wordt geleerd.
Na afloop kan de trainer aanwezigheid registreren. Per deelnemer wordt bijvoorbeeld gekozen uit:
aanwezig;
afwezig gemeld;
afwezig zonder melding;
te laat;
vervanger;
proefles;
les ingehaald.
Deze gegevens kunnen worden gebruikt voor voortgang, communicatie, inhaalrechten, evaluatie en rapportage.
Planning vormt een belangrijke bron voor financiële administratie.
Een geplande, gegeven, geannuleerde of ingehaalde les kan verschillende financiële gevolgen hebben. Daarom moet per les zichtbaar zijn:
gekoppeld tarief;
abonnement of lespakket;
facturabele status;
baanhuur;
trainervergoeding;
korting of tegoed;
annuleringsvoorwaarden;
betalingsstatus;
gekoppelde FactuurID;
gekoppelde BetalingID.
De planningsmodule berekent niet zelfstandig alle financiële gegevens. Zij levert gecontroleerde brongegevens aan de modules Facturen, Betalingen, Abonnementen, Contracten en Tarieven.
Rapportages kunnen vervolgens inzicht geven in:
aantal geplande en gegeven lessen;
traineruren;
baanbezetting;
bezettingsgraad per locatie;
annuleringen en uitval;
aanwezigheid per speler;
openstaande inhaallessen;
wachtlijsten;
omzet per periode;
verwachte inkomsten;
trainerkosten;
baanhuur;
capaciteit per seizoen.
De huidige ontwikkelbasis gebruikt Google Sheets als gegevensopslag, Google Apps Script als backend en Google Sites of een HTML-webapp als gebruikersomgeving.
Relevante tabellen zijn onder meer:
PLANNING;
LESSEN;
LESPLANNING;
LESREEKSEN;
TRAINERS;
SPELERS;
TEAMS;
TRAININGSGROEPEN;
ORGANISATIES;
CLUBS;
LOCATIES;
BANEN;
BESCHIKBAARHEID;
AFWEZIGHEID;
AANWEZIGHEID;
WACHTLIJSTEN;
FACTUREN;
BETALINGEN;
NOTIFICATIES;
EVALUATIES.
Een planningsrecord bevat bij voorkeur minimaal:
PlanningID;
Datum;
Dag;
Starttijd;
Eindtijd;
Tijdzone;
LesID;
LesreeksID;
Lesnummer;
GroepID;
TrainerID;
LocatieID;
BaanID;
Thema;
Status;
Reserveringsstatus;
CalendarEventID;
Opmerkingen;
AangemaaktOp;
AangemaaktDoor;
LaatsteWijziging;
GewijzigdDoor.
Unieke ID’s zijn belangrijker dan namen. Namen kunnen veranderen, maar relaties moeten behouden blijven.
Voor een professioneel multi-tenant cloudplatform is uiteindelijk een transactionele database nodig met tenantisolatie, toegangscontrole, versiebeheer, auditlogs, wachtrijen voor synchronisatie en beveiligde API’s. De naam voor deze internationale architectuur is CAMTESI: Cloud Architecture & Multi-Tenant Engine – System International.
Binnen PadelOS zijn al belangrijke fundamenten beschikbaar:
centrale tabellen voor spelers, trainers, planning, clubs, locaties en banen;
Apps Script-functies voor het lezen en beheren van tabelgegevens;
een Registry-opzet voor modules, tabellen, velden en relaties;
CRUD-processen voor aanmaken, lezen, wijzigen en verwijderen;
een Enterprise Portal-basis met navigatie naar Planning, Locaties en Banen;
vastgelegde velden voor trainerbeschikbaarheid;
maximale lessen per dag en week;
locatievoorkeuren en reistijdbuffers;
een geslaagde eerste Google Calendar-test;
bestaande lesvoorbereidingen en trainingsinhoud die later aan planning kunnen worden gekoppeld.
De eerste werkende versie kan ondersteunen:
planningstabellen;
formulieren voor lessen en lesreeksen;
eenvoudige kalenderweergaven;
filters per trainer, speler, locatie en baan;
vaste beschikbaarheid;
basisconflictdetectie;
handmatige baanbevestiging;
Google Calendar-export;
aanwezigheid;
eenvoudige meldingen;
koppeling met factuurrecords.
Nog niet productierijp zijn onder andere:
volledige rolgebaseerde gebruikersportalen;
betrouwbare tweerichtingssynchronisatie met agenda’s;
automatische seizoensgeneratie;
geavanceerde conflictdetectie;
automatische vervanging;
wachtlijstautomatisering;
externe baanreserverings-API’s;
realtime notificaties;
dynamische routeberekening;
volledige facturatie-integratie;
schaalbare multi-tenant verwerking;
transacties bij gelijktijdige wijzigingen;
uitgebreide audit- en herstelvoorzieningen.
Google Sheets is geschikt voor ontwikkeling, tests en beperkte pilots, maar heeft grenzen bij gelijktijdige verwerking, transacties, schaalbaarheid en complexe rechten. Daarnaast kunnen dubbele agenda-items, vertraagde synchronisatie, onjuiste tijdzones en onvoldoende datavalidatie tot fouten leiden.
Daarom moet iedere fase worden getest met realistische scenario’s voordat planning, reserveringen of financiële verwerking als volledig betrouwbaar worden beschouwd.
De ontwikkeling van PadelOS Planning, Lessen & Banen verloopt in beheersbare fasen.
tabellen en velden controleren;
unieke ID’s invoeren;
relaties tussen planning, lessen, trainers, spelers, locaties en banen vastleggen;
statussen en validatieregels standaardiseren.
lessen aanmaken, wijzigen en annuleren;
dag- en weekoverzicht;
filters per trainer, groep, locatie en baan;
mobiele formulieren;
rechten per rol.
terugkerende lesreeksen;
uitzonderingsdata;
trainerbeschikbaarheid;
maximale inzet;
locatievoorkeuren;
reistijdbuffers.
dubbele boekingen voorkomen;
baanstatussen;
onderhoud en blokkades;
groepslimieten;
controle op trainer-, speler- en locatieconflicten.
gecontroleerde Google Calendar-koppeling;
wijzigingsmeldingen;
herinneringen;
afwezigheid;
vervanging;
wachtlijsten;
aanwezigheidsregistratie.
koppeling met lesvoorbereiding;
leerdoelen en evaluaties;
facturabele lessen;
traineruren;
baanhuur;
abonnementen en betalingen;
managementrapportages.
migratie naar CAMTESI;
multi-tenant database;
beveiligde API’s;
realtime verwerking;
externe reserveringskoppelingen;
schaalbare notificaties;
auditlogs, back-ups en herstelprocedures.
PadelOS zoekt trainers, planners, clubs, locaties, Calendar-specialisten, softwareontwikkelaars en testers die praktijkervaring willen inbrengen.
Zij kunnen bijdragen door:
echte planningssituaties te beschrijven;
testgroepen en pilotlocaties beschikbaar te stellen;
uitzonderingen en conflicten te testen;
gebruikerservaringen te beoordelen;
agenda- en reserveringskoppelingen te ontwikkelen;
gegevensmodellen te controleren;
beveiliging en privacy te onderzoeken;
rapportages en dashboards te testen;
mee te denken over een schaalbare internationale architectuur.
PadelOS Planning, Lessen & Banen groeit zo van een werkende Apps Script- en Sheets-proefomgeving naar een betrouwbare centrale planningsmodule voor trainers, spelers, padelscholen, verenigingen, clubs en locaties.
De ambitie is duidelijk: één planning, één gegevensbron en voor iedere gebruiker precies het juiste overzicht.