為滿足消費者不想登入購買的需求,於是以訪客消費的方式,建立起 Mood Online Shop。
- 完成使用者故事
- 訪客可以輸入訂單編號及 Email 查詢訂單進度
- 開發
- 持續將 Controllers 重構成 Repositories and Services
- deploy 至 heroku,使用 clearDB
- Bugs
- 若 delete cartItem 之前修改地址等欄位,將無法帶回上一次地址等資料
- 訪客可以使用 Email 註冊會員
- 訪客可以使用 Email 登入
- 會員可以登出
- 訪客可以瀏覽商品列表
- 訪客可以查看單一商品
- 訪客在商品列表頁可以查看不同顏色的商品照片
- 訪客在單一商品頁可以查看不同顏色的商品照片
- 訪客可以切換 banner
- 訪客可以將商品放入購物車
- 訪客在 cart 頁可以查看購買商品清單
- 訪客在庫存足夠時,可以增加購物車中的商品數量
- 訪客在庫存足夠時,可以減少購物車中的商品數量
- 訪客在庫存不足時,無法將商品加入購物車
- 訪客可以移除購物車中的商品
- 訪客在 cart 頁可以預估運費
- 訪客在 checkout 頁可以查看購買商品清單
- 訪客在 checkout 頁可以輸入配送資訊
- 訪客在 checkout 頁可以輸入付款資訊
- 訪客在 checkout 頁可以查看訂單資訊做最後確認
- 訪客在 checkout 頁可以完成商品訂購
- 訪客完成商品訂購後,可以收到訂單成功的通知信
- 訪客可以透過藍新金流完成信用卡付款
- 前端
- Handlebars
- 後端
- Database: MySQL
- Runtime: Node.js
- Framwork: Express.js
- Clone 專案,請於
Console
輸入指令
- Clone 至本地端
https://github.com/HuangMinShi/Moody-Online-Shop.git
- 切換至專案資料夾
cd Moody-Online-Shop
- 安裝套件(請參考 package.json)
npm install
- 開啟專案
code .
- 新增環境設定檔,請參考
.env.example
於專案根目錄新增.env
檔,其內容如下
GMAIL_USER=gmail_user
GMAIL_PASS=gmail_pass
HOST_URL=from_ngrok
MERCHANT_ID=newebpay_id
HASH_KEY=newebpay_key
HASH_IV=newebpay_iv
- 修改資料庫 config
- 路徑:./config/config.json
- 修改內容:development 中的 password
"development": {
"username": "root",
"password": "password",
"..."
},
- 資料庫設定
- 新增資料庫,於 MySQL Workbench 輸入指令
DROP DATABASE IF EXISTS ec_web;
CREATE DATABASE ec_web;
USE ec_web;
- 建立表格與種子資料,於
Console
輸入指令
npx run migrate
- 啟動
- 啟動專案,請在
Console
輸入下方指令
npm run dev
- 本地端啟動程式
- IP Address
- User Account / Password