Skip to main content

寄庫出貨與來電訂單管理系統

此專案建立一個基於 Google Sheets 的簡易訂單管理系統,透過 Flask 網頁介面進行「寄庫出貨訂單」與「消費者來電訂單」的新增、查詢、修改與刪除。所有資料集中儲存在 Google 試算表中,便於多人協作與同步管理。


🔧 技術架構

  • 後端技術

    • Python + Flask 架構,提供 Web API 與表單操作介面。

    • 採用 google-api-python-client 串接 Google Sheets 作為資料庫。

    • 使用 Service Account (service_account.json) 進行授權驗證。

  • 資料儲存

    • 所有訂單儲存在指定的 Google Sheet(工作表1),每筆資料一行。

    • 欄位包含:出貨方式、預定交貨日、訂單編號、商品資訊、訂購人、收件人、電話、地址、建檔人、是否已輸入正航、ID、建立日期。


📋 功能說明

🔍 主頁 /

  • 顯示所有訂單,支援分頁、關鍵字搜尋與日期區間篩選(根據「預定交貨日」)。

  • 訂單會依「建立日期」自動排序,最新建立的排在最前面。

➕ 新增訂單 /add

  • 使用者可透過表單建立新訂單。

  • 建立後自動產生唯一 ID 與建立日期。

  • 所有資料將插入 Google Sheets 尾端。

✏️ 編輯訂單 /edit_order/<order_id>

  • 根據訂單的唯一 ID,載入該筆資料供使用者編輯。

  • 支援更新「交貨日」、「已輸入正航(Y/N)」與其他欄位內容。

  • 資料會直接更新回 Google Sheets 的對應行。

❌ 刪除訂單 /delete_order/<order_id>

  • 根據訂單 ID 找出所在行,直接在 Google Sheets 中刪除整行資料。


🧠 額外特點

  • ID 欄位為每筆訂單產生唯一識別碼(UUID)

  • 日期欄位統一使用 YYYYMMDD 格式(內部處理與儲存)

  • 系統使用者無需登入 Google 帳戶,透過後端已授權的服務帳戶執行操作