Skip to main content

叫貨單管理系統(Flask + MSSQL + SQLite)

📖 簡介

此系統整合 MSSQL (B倉庫存)SQLite (訂單/商品顯示控制),提供 Web 介面管理叫貨單,並支援 Email 發送叫貨單Excel 匯出


🛠 功能特色

  1. 商品管理

    • 從 MSSQL comProduct 讀取商品資料。

    • SQLite 紀錄商品顯示控制與備註(product_control 表)。

    • 可搜尋、更新商品是否顯示及備註說明。

  2. B倉庫存查詢

    • MSSQL 查詢:

      • StkYearMonthQty → 現有庫存

      • stkBorrowSub → 借出數量

    • 計算並回傳 實際庫存(RealStock)

  3. 叫貨單管理

    • 建立叫貨單

      • 輸入日期、選擇商品與數量,附備註。

      • 自動生成單號(格式:YYYYMMDD-序號)。

    • 編輯叫貨單

      • 修改商品清單與備註。

    • 刪除叫貨單

      • AJAX 刪除指定叫貨單。

    • 列表分頁

      • 預設每頁顯示 10 筆 (PAGE_SIZE = 10)。

  4. 寄送叫貨單(Gmail API)

    • 使用 Gmail API 發送 HTML 格式叫貨單。

    • 收件人群組包含多個 Email(如主管/工廠/門市)。

    • SQLite 更新寄送狀態與寄送時間。

  5. Excel 匯出

    • 叫貨清單匯出

      • SKU / 品名規格 / 數量

    • 工廠叫貨匯出

      • SKU 對應 UserDef1(工廠編號)

      • 品名規格 / 數量


📂 資料庫結構

SQLite (db.sqlite3)

  • orders

    • id (PK)

    • date

    • order_no

    • products (JSON)

    • note

    • mail_sent (是否寄送)

    • mail_record (寄送時間)

  • product_control

    • sku (PK)

    • show (是否顯示)

    • note (備註)

MSSQL

  • comProduct:商品資料

  • comProductClass:商品分類

  • StkYearMonthQty:庫存數量

  • stkBorrowSub:借出數量


📐 系統流程

  1. 使用者登入首頁 → 選擇分類 → 選擇商品與數量。

  2. 系統查詢 B倉實際庫存並顯示。

  3. 建立叫貨單,存入 SQLite。

  4. 可選擇匯出 Excel 或寄送 Email 給指定收件人。

  5. 商品顯示與備註可於管理頁維護。


📊 畫面範例

  • 首頁

    • 日期預設為今日。

    • 下拉選單選擇商品分類。

    • 顯示商品現有庫存與可輸入叫貨數量。

  • 叫貨清單

    • 顯示訂單列表。

    • 可進行 編輯 / 刪除 / 寄送 操作。

  • 商品管理

    • 搜尋 SKU 或品名。

    • 更新商品顯示狀態與備註。


✅ 成果

  • 完整的 叫貨單管理系統

  • 整合 MSSQL 即時庫存與 SQLite 控制表。

  • 支援 寄送 Gmail匯出 Excel

  • 適合工廠與門市每日叫貨作業流程。