/summergeeks

An Entry management system for all the aspiring candidates interviewing at Innovaccer

Primary LanguageJavaScript

Entry Management

An Entry management system for all the aspiring candidates interviewing at Innovaccer.

Made using
  • ReactJS
  • NodeJS
  • Nexmo

Checking In

- When a visitor enters the building, he is asked to fill the CheckIn form

- On mounting of the CheckIn page a request is made to server to get all hosts detail and they are saved in State.

- A dropdown is created using this state and the options are name of the host along with their city, to remove duplicacy

- If any of the detail is not filled it displays an error to the visitor

- Once the visitor fills all the details and clicks on checkout button a request is made to the server.

- This request has all the details of visitor along with the id of host

- On the server all the details of user are stored in the database along with id of host and current time as checkin time. Then it sends a message and email to the host that a new visitor has arrived

Checking Out

- Once the visitor has finished and is leaving he is asked to fill the checkout form

- On mounting of checkout page a request is made to the server which fetches all the current visitors

- A dropdown is created using this consiting of visitors name and email id, both are provided so that visitor doesnot face any confusion

- When he selects the name from dropdown he can click on getotp button which sends a request to server to send a otp to mobile number the visitor selected. This extra security is used so that visitor does not checkout anyone else. The otp is saved to users database

- When the visitor clicks Checkout, a request is made to server, which checks otp entered and otp in database upon matching current time is set as checkout time for the visitor. After that an email and message is sent to visitor about his details

Extra info

  • Nodemailer is used for sending email
  • Nexmo is used for sending text
  • All the api keys are in config folder which is not uploaded on github
  • All the screenshots are in images folder