Skip to content

Web Aplication to manage reservations dedicated for clinics

Notifications You must be signed in to change notification settings

stepkos/reservation-app

Repository files navigation

Reservation app


Application built with Laravel for administrating dental offices

Application logo forthebadge forthebadge forthebadge

Table of Contents

Authors

  • Jakub Stępkowski stepkos : Team Leader, Full-Stack Developer
  • Jan Napieralski R3VANEK : Back-End Developer, Database Engineer
  • Mateusz Sztankiewicz DΣUS : Front-End Developer
  • Kamil Paczkowski Avngarde : Front-End Developer

Installation

Before you start

Steps

  • Clone repository to your computer
  • Go to xampp phpmyadmin site and hit command create database reservationapp
  • Go to project directory and run in terminal composer install
  • In project locate env.example clone it, fill with your environment specs and save as .env
  • Run command php artisan key:generate
  • Execute php artisan migrate:fresh --seed
  • For local server to run app enter php artisan serve

Description

This app was built as an term project for school. It is service handling 3 types of users and their actions :

  • patient : Views all doctors in database, views his visits and can book new one
  • doctor : Can view his visits and has special subsite where he can view all details about patient with whom he has right now visit
  • reception : Views all visits in database, can modify users, cancel visits and change dates of incoming visits

Functionalities

Login Panel

Login Panel

Features

  • Working login functionalities
  • Fully secure CSRF token authentication
  • Protection from SQL Injection attacks
  • Redirecting user to appriopriate panel based on user role


Registration Panel

Registration Panel

Features

  • Working registration functionalities
  • Fully secure CSRF token authentication
  • Protection from SQL Injection attacks
  • Checking input formats
  • Redirecting user to panel
  • New user's role is automatically set to patient reception stuff can later change that
  • Hashing and salting user password in database


Patient main panel

Patient main panel

Features

  • User can see here his/hers upcoming visits in dental office in form of compact cards with necessary data
  • On the right there is compact calendar. On it there are marked upcoming visits
  • Log out button


Patient all doctor panel

Patient all doctor panel

Features

  • User can see information about all doctor users in database in form of compact cards
  • Log out button


Patient create visit panel

Patient create visit panel

Features

  • User can book new visit with doctor
  • Select input with real doctor data
  • Asynchronous viewing selected doctor work hours
  • Create short note about your health status in textarea input
  • Log out button
  • Validation of given visit date
    • Checking if entered date is in future
    • Checking if entered hour matches doctor work hours in correct day week
    • Checking if selected doctor doesn't have visit during entered date and hour


Doctor main panel

Doctor main panel

Features

  • User can see here his/hers upcoming visits in dental office in form of compact cards with necessary data
  • On the right there is compact calendar. On it there are marked upcoming visits
  • Log out button


Doctor archive panel

Doctor archive panel

Features

  • User can see here his/hers archive visits with patient users in form of compact cards
  • On the right there is compact calendar. On it there are marked upcoming visits
  • Log out button


Doctor visit panel

Doctor visit panel

Features

  • This panel is accesible only if doctor have right now visit with patient
    • If not it displays information about next upcoming visit
  • doctor user can see all information about current visit and history of previous patient visits in dental office
  • doctor user can add his note to visit
  • Asynchronous timer displaying time left till visit end
  • Log out button


Reception main panel

Reception main panel

Features

  • reception users see here upcoming visits
  • Upcoming visits can be deleted or reception users can change date of visit
  • Log out button


Reception accounts panel

Reception accounts panel

Features

  • reception users see here all users in database
  • reception users can change user roles


Reception archive panel

Reception archive panel

Features

  • reception users see here all visits (previous and upcoming) in database
  • Asynchronous filtering visits by :
    • date
    • doctor name
    • patient name
    • visit type

Database

Thanks to Laravel features, database schema is stored in multiple php files in database/migrations folder

  • Be sure your XAMPP is running mysql port and you have empty database called reservationapp
  • You can easily import it via command php artisan migrate:fresh
  • To fill database with random data please use php artisan db:seed

Below you can see graphical schema for tables

Database schema

Documentation

Full documentation for this project in polish you can find here (Front-End is little out of date)

License

All rights reserved

About

Web Aplication to manage reservations dedicated for clinics

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •