GithubHelp home page GithubHelp logo

digital_receipt_system's Introduction

Digital Receipt System

C Project Extension - Computing Year 1, Imperial College London.
Developed by Zirun Zhai, Ivy Tam, Soon Zhi Ho (Brandon), Wei Yi Tee.
Available upon request:

  • Usage + Testing demo
  • Repository for implementation of C Project: ARM11 emulator and assembler

Project Summary:
Designed to eliminate the need of paper receipts.
Our program enables merchants to take and manipulate orders from customers; after an order is paid, the receipt can be issued via email to the customer.

Usage

Notes: Email login as the sender currently only works for limited email accounts due to security reasons

Digital Receipt System

  1. Run make merchant
  2. ./merchant without any arguments runs the program in interactive mode
    1. Login - merchant prompted for an ID
    • New ID: Prompt for registration with password (hashed and stored with ID in merchantID.txt)
    • Existing ID: Prompt for password which will be checked against stored hash
    1. Setting sender email
    • Merchant will be prompted for an email address and password from where receipts are sent to customers
    • Authentication currently only works for gmail accounts which allow access from less secure apps
    1. Menu loaded, merchant actions:
    • Each merchant has their own folder (id as folder name, stored in Merchants folder) which stores a record of receipts and the merchant's menu of items to sell (currently only supports addition by manually moving a menu text file into the folder)
    • After successful login, the menu will be loaded and the merchant can select actions to be carried out by inputting the action's corresponding number as follows :
      [0] Quit program
      [1] Take new order
      [2] Edit order
      [3] Cancel order
      [4] Pay order + Send receipt

Testing

Manual testing: Go to tests/
Automatic testing (limited): Run make runtest and ./runtest

digital_receipt_system's People

Contributors

weiyi-t avatar

Watchers

 avatar

Forkers

zzirun bhsz

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.