Pagrindinės savybės
1. Vartotojo autentifikavimas
Programa užtikrina, kad tik įgalioti darbuotojai galėtų pasiekti lankomumo funkcijas:
Prisijungimo sistema: vartotojai prisijungia naudodami savo kredencialus, kurie gali apimti el. pašto adresą ir slaptažodį arba biometrinį patvirtinimą.
Vaidmenimis pagrįsta prieiga: administratoriai, vadovai ir darbuotojai turi pritaikytą prieigą prie duomenų ir funkcijų pagal savo vaidmenis.
2. Punch-In ir Punch-Out sistema
Darbuotojai gali registruoti savo darbo valandas naudodami šiuos duomenis:
Punch-In: Darbo dienos pradžioje vartotojai gali pažymėti savo dalyvavimą.
„Punch-Out“: Pasibaigus pamainai vartotojai registruoja savo išvykimą.
Režimas neprisijungus: kilus tinklo problemoms, programa išsaugo lankomumo duomenis vietoje ir sinchronizuoja juos su serveriu, kai ryšys atkuriamas.
3. Vietos sekimas
Programa nuskaito naudotojo buvimo vietą realiuoju laiku perforavimo ir perforavimo metu, kad užtikrintų, jog lankomumas būtų tiksliai registruojamas:
Vietos tikslumas: naudoja GPS ir API (pvz., Google Maps arba Ola API), kad gautų tikslias vietos koordinates.
Geofencing: įspėja vartotojus, jei jie yra už leistinos vietos, kai bando registruoti lankomumą.
4. Vaizdo fiksavimas
Norėdami užkirsti kelią įgaliotinio lankymui:
Programėlė padaro asmenukę permušimo ir išmušimo metu.
Vaizdai saugomi saugiai, susieti su vartotojų įrašais.
5. Datos ir laiko įrašymas
Programa automatiškai įrašo perforavimo įvykių datą ir laiką:
Užtikrina darbo grafikų laikymąsi.
Kiekvienam lankomumo įrašui pateikiama laiko žyma.
6. Duomenų valdymas
Visi užfiksuoti duomenys yra saugiai saugomi:
Duomenų bazės dizainas: apima vartotojų lenteles, lankomumo įrašus ir vietos duomenis.
Saugi saugykla: įgyvendina šifravimą, kad apsaugotų jautrią informaciją, pvz., vartotojo vaizdus ir vietas.
7. Prietaisų skydelis administratoriams
Programoje yra informacijos suvestinė, skirta administratoriams:
Peržiūrėkite lankomumo žurnalus.
Kurkite ataskaitas (kasdien, kas savaitę arba kas mėnesį).
Eksportuokite duomenis darbo užmokesčio ir atitikties tikslais.
Darbo eiga
1. Vartotojo prisijungimas
Vartotojai atidaro programą ir įveda savo prisijungimo duomenis.
Po sėkmingo autentifikavimo jie nukreipiami į pagrindinį ekraną, kuriame rodomos įvedimo ir ištraukimo parinktys.
2. Perforavimo procesas
1 veiksmas: vartotojas bakstelėja mygtuką „Punch-In“.
2 veiksmas: programa nuskaito dabartinę vietą naudodama įrenginio GPS arba API.
3 veiksmas: užfiksuojama asmenukė, siekiant patikrinti, ar vartotojas yra.
4 veiksmas: dabartinė data ir laikas įrašomi automatiškai.
5 veiksmas: visi surinkti duomenys (vieta, vaizdas, data ir laikas) saugomi vietinėje duomenų bazėje arba siunčiami į serverį.
3. Išmušimo procesas
Perforavimo procesas yra identiškas perforavimo procesui, išskyrus tai, kad registruojamas išvykimo laikas.
4. Duomenų sinchronizavimas
Kai neprisijungę, lankomumo įrašai saugomi vietoje, naudojant tokias technologijas kaip SQLite arba Hive.
Kai interneto ryšys atkuriamas, programa sinchronizuoja duomenis su nuotoliniu serveriu.
5. Administratoriaus prietaisų skydelio prieiga
Administratoriai gali prisijungti prie atskiro portalo, kad galėtų tvarkyti ir analizuoti lankomumo duomenis.
Duomenų filtrai leidžia peržiūrėti konkrečius darbuotojų įrašus arba generuoti ataskaitas.
Techninė architektūra
Frontend
Struktūra: „Flutter“ kelių platformų kūrimui.
UI: intuityvi ir paprasta sąsaja darbuotojams ir administratoriams.
Funkcionalumas neprisijungus: integracija su Hive arba SharedPreferences duomenų saugojimui neprisijungus.
Backend
Framework: FastAPI arba Node.js API kūrimui.
Duomenų bazė: PostgreSQL arba MongoDB vartotojų ir lankomumo duomenims saugoti.
Saugykla: saugykla debesyje (pvz., AWS S3) vaizdams ir užšifruotiems slaptiems duomenims.
API
Autentifikavimo API: tvarko prisijungimą ir vartotojo patvirtinimą.
Punch-In/Out API: įrašo lankomumo duomenis ir išsaugo juos duomenų bazėje.
Sinchronizavimo API: užtikrina, kad duomenys neprisijungus būtų įkeliami į serverį, kai prisijungiama.
Saugumo priemonės
Duomenų šifravimas: užšifruokite slaptą informaciją, pvz., vaizdus ir GPS koordinates.
Žetonais pagrįstas autentifikavimas: saugiai prieigai prie API naudoja JWT.
Vaidmenų valdymas: užtikrina, kad vartotojai galėtų pasiekti tik su jų vaidmeniu susijusius duomenis ir funkcijas.