Giter VIP home page Giter VIP logo

fs-csci150-f21-team1's Introduction

ResTips - Interactive Restaurant Webapp for Managers, Employees, and Customers

Team Members

  • Long Nguyen: Project Leader and Hardware Developer
  • Michael Nugent: Fullstack Developer
  • Arandeep Hayer: Fullstack Developer
  • Vi Nguyen: Fullstack Developer
  • Daniel Martinez: Front-End Developer

Developement Process - Agile Iterative Approach

Incremental Agile

Installation Notes

MySQLi In order to work on any pages related to the mySQL database, it is necessary to have the MySQLi PHP extension installed. It enables PHP to communicate with the MySQL database. The scripts to create the database, tables, records, and user should be found under the sql directory.

Ngrok - People Counter Ngrok must be configured to account. MySQL default port is 3306. Use TCP, not HTTP. Terminal command "./ngrok tcp 3306" starts a tunnel with a random ip address. Terminal command "./ngrok tcp --region=us --remote-addr=3.tcp.ngrok.io:26206 3306" starts a tunnel with stable ip address "3.tcp.ngrok.io:26206". Host computer needs to be aunthenticated to use.

Ngrok - Browser/Presentation Terminal command "./ngrok http --region=us --hostname=csci150projectrestips.ngrok.io 80" starts an HTTP (web browser) tunnel to stable ip address "csci150projectrestips.ngrok.io". Host computer needs to be authenticated to use.

fs-csci150-f21-team1's People

Contributors

nugentmichael1 avatar lhn1703 avatar vinguyen12 avatar danielmartinez900 avatar ashayer avatar amrutawanare avatar

Forkers

nugentmichael1

fs-csci150-f21-team1's Issues

Restaurant Settings

Name, address, days and hours. Needs to communicate with database: store and update information.

Possible bugs: database communication

If any issues arise, it will most likely be due to capitalization of or implementation of underscores in table names since PHPMyAdmin works differently that MySQL workbench, and choices were made to support one over the other.

Menu Editor - Extra features

  • - Drag and Drop: Move items from one sub category to another, or just change relative position within same subcategory.
  • category images upload
  • add, remove, move, change order of
  • implement images upload

mySQL Server Port Tunnel

Ensure mySQL server can be reached on host as Pi will directly access it on port other than 80. Ngrok?

Add "Kitchen" page to employee and manager's portals.

This page will resemble the current orders page, but only show those that have been submitted to "kitchen." This is seen in their status fields. Page only has one function: to mark items as completed. Orders will need to be broken down by individual items. When all items have been completed, the order will be marked as completed and updated on the current orders page.

Menu Editor Images Upload

Cannot upload images that have same names as those already on the server.
Two options: (1) overwrite old pictures. (2) Give new and randomized names to every image uploaded.

This also brings up the possibility of an image gallery to choose previously uploaded images, which incentivizes option 2 above.

CSS

Make the website attractive

Hash and salt passwords.

Currently, all the passwords are stored in plaintext in the database. This is a big security concern, will need to fix once we have a stable product.

UML Class Diagram

Complete by 10/19 2:00pm

SRS FRs to describe:

Customer Level

  • user registration
  • user log in/out
  • order food
  • confirm / pay order
  • waiting time estimator
  • create reservation

Employee Level

  • view pending orders (kitchen view)
  • inventory access
  • clock in/out

Manager Level

  • create / modify employee schedules
  • create / modify menu
  • manage other roles (hire/fire employee)
  • review accounting data: sales revenue

Link to diagram

https://lucid.app/lucidchart/3e13d9a8-9d73-434c-8e1f-8469a70570a0/edit?invitationId=inv_7e918cd3-90ad-43e9-bd7f-2daaf21dad7a&page=AU2h.iVtuFvG#

Compare Wiki FRs to Wireframes and Match

Ensure wireframe details can be traced to wiki and vice-versa. For example, the home page links to an "about" page that needs to be described as another feature in the UIRs or FRs.

Make and distribute dynamic nav bar

Link to one JS file in each HTML page that creates a specific nav bar based on user privileges. Centralization of nav bar code will make it easier to modify later if needed.

Wait Time Algorithm

Use Raspberry Pi's people counter data (an integer) -- strored in mySQL database -- to design an algorithm that predicts customer wait times.

Calculate Paycheck

According to timesheet and wage of employee to calculate paycheck depending on the pay period chosen (from date to date)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.