Skip to content
This repository has been archived by the owner on Sep 6, 2021. It is now read-only.

Latest commit

 

History

History
330 lines (270 loc) · 11.2 KB

README.md

File metadata and controls

330 lines (270 loc) · 11.2 KB

NTACT logo

npm v7.16.0 license GPL-3.0 node v14.16.0

NTACT

👩‍💼 비대면 시대에 적합한 매장 통합 관리 웹 애플리케이션 NTACT 👨‍💼

기존 매장의 키오스크 사용은 고객에게 있어 긴 대기 줄과 위생 문제, 애플리케이션을 사용하더라도 브랜드마다 자사 앱을 설치해야 하는 번거로움 등을 비롯하여 불편한 점이 많습니다. 또, 직원 입장에서는 종이 주문서와 구두 소통은 착오를 일으키는 등의 어려운 점이 존재합니다. NTACT는 이러한 문제점을 해결하기 위해 웹 브라우저를 통한 간단한 주문 및 결제와 디지털화 된 주방 제어 서비스를 제공합니다👩‍🍳

📖 Wiki 보러가기

📋 Table of Contents

🚀 Getting started

Prerequisites

  • npm

    npm install npm@latest -g
    
  • redis

    # Windows
    Download from https://github.com/tporadowski/redis
    # Mac
    brew install redis
    # Ubuntu
    sudo apt-get install redis-server

Installation & Run

  1. Clone the repository

    git clone https://github.com/coding-Benny/NTACT.git
    
  2. Install NPM packages and run

    • 📱 client

      cd client
      npm install
      npm run start
    • 👔 manager

      cd manager
      npm install
      npm run start
    • 💻 server

      cd server
      npm install
      npm run start

Initial Configuration

  • Client configuration: client/src/config
    • loginInfo.json
    • {
        "jwt_password": "Put your JWT password"
      }
    • payment.json
    • {
        "imp_user_code": "Put your I'mport; franchisee identification code"
      }
  • Manager configuration: manager/src/Login
    • loginInfo.json

      {
        "jwt_password": "Put your JWT password"
      }
  • Server configuration: server/src/config
    • db-config.json

      {
        "development": {    
          "username": "Put your user name here",
          "password": "Put your password here",
          "database": "Put your database here",
          "host": "Put your host name here",
          "dialect": "mysql",
          "operatorsAliases": 0,
          "define": {
            "timestamps": false,
            "underscored" : true
          }  
        },  
        "test": {
          "username": "Put your username here",
          "password": "Put your password here",
          "database": "Put your database here",
          "host": "Put your host name here",
          "dialect": "mysql"
        },  
        "production": {
          "username": "Put your username here",
          "password": "Put your password here",
          "database": "Put your database here",
          "host": "Put your host name here",
          "dialect": "mysql"
        }
      }
    • password-config.json

      {
        "jwt_password" : "Put your JWT password"
      }
    • payment-config.json

      {
        "imp_key": "Put your REST API key",
        "imp_secret": "Put your REST API Secret key"
      }
    • s3-config.json

      {  
        "AWSAccessKeyId": "Put your AWS access key ID",
        "AWSSecretKey": "Put your AWS Secret key",
        "Bucket": "Put your bucket name"
      }
    • Syncing database

      1. Create server/sync-db.bat file

        start cmd /c "npx sequelize-auto -h YOUR_HOST_NAME -d YOUR_DATABASE_NAME -u YOUR_USERNAME -x YOUR_PASSWORD -p YOUR_PORT_NUMBER -c YOUR_CONFIG_FILE_PATH -o YOUR_OUTPUT_DIRECTORY -C"
        @ECHO DB Sync Done!
        
        # Mac or Linux
        npx sequelize-auto -h ntactdb.c8obj2inxx2r.ap-northeast-2.rds.amazonaws.com -d ntactDB -u ntact -x qlalfqjsgh -p 3306 -c ./config/db-config.json -o ./models -C
        echo DB Sync Done!
      2. Run batch file

        cd server
        sync-db.bat
        
        # Mac or Linux
        cd server
        chmod u+x ./sync-db.bat
        ./sync-db.bat

🏗️ Project Architecture

Project Architecture

🔍 Flow Chart

Flow Chart

🎈 Features

Client

  • 로그인
  • client-login
  • 메뉴 페이지
  • menu add menu
  • 장바구니
  • my cart
  • 결제
  • input customer's info payment
  • 주문 처리 현황
  • order accepted order in-progress order completed
  • 주문 취소
  • cancel order order canceled
  • 주문 내역
  • order history

Manager

  • 로그인
  • manager login
  • 주문 접수 내역
  • order list
  • 실시간 메뉴 상태 관리
  • realtime menu management
  • 카테고리 & 메뉴 생성
  • create category and menu
  • 카테고리 관리
  • category management
  • 메뉴 관리
  • menu management

👩‍💻 Maintainers 👨‍💻

YeonJi Kim
김연지
📌 Role
📜 Commit Log
JongGeun Park
박종근
📜 Commit Log
JeongHyeon Lee
이정현
📌 Role
📜 Commit Log
SuJin Choi
최수진
📌 Role
📜 Commit Log

📝 License

The code in this project is licensed under GPL-3.0 license. See LICENSE for more information.