# 交貨便印單功能

本系統為一套以 **Flask** 開發的 Web 應用，主要用途為處理「交貨便」訂單資料的查詢、上傳與列印功能。結合正航 SQL Server 資料庫，並支援 CSV 匯入與資料預覽。

---

## 📌 功能摘要

### ✅ 1. 查詢交貨便訂單

- 從 `comBillAccounts` 表查詢指定日期 (`BillDate`) 的訂單資料
- 條件為 `Flag = 500`
- 顯示欄位：
    
    
    - EBOBillNo（訂單編號）
    - ReceMan（收件人）
    - ReceAddress（地址）
    - ReceTelephone（電話）

---

### ✅ 2. 上傳 CSV 範本

- 上傳 `template.csv` 檔案（以 cp950 編碼）
- 可預覽資料內容（分頁顯示，每頁6筆）
- 顯示欄位：
    
    
    - 訂單編號、收件人、地址、電話
- 使用者可勾選資料送出列印

---

### ✅ 3. 下載範本

- 提供下載格式統一的 `template.csv` 檔案
- 位於 `/uploads/template.csv`

---

### ✅ 4. 列印畫面預覽

- 勾選欲列印的資料
- 導向 `/print` 頁面進行印單預覽顯示
- 支援多筆同時顯示，格式可客製化為實體印單

---

## 🛠 技術架構

- **Flask**：後端框架
- **Jinja2**：HTML模板渲染
- **pyodbc**：連接 SQL Server 資料庫
- **CSV 模組**：處理匯入檔案
- **Bootstrap**（假設）：支援畫面樣式與分頁

---

## 📂 路由說明

<div class="_tableContainer_16hzy_1" id="bkmrk-%E8%B7%AF%E7%94%B1-%E6%96%B9%E6%B3%95-%E5%8A%9F%E8%83%BD-%2F-get%2Fpost-"><div class="_tableWrapper_16hzy_14 group flex w-fit flex-col-reverse" tabindex="-1"><table class="w-fit min-w-(--thread-content-width)" data-end="1024" data-start="831"><thead data-end="847" data-start="831"><tr data-end="847" data-start="831"><th data-col-size="sm" data-end="836" data-start="831">路由</th><th data-col-size="sm" data-end="841" data-start="836">方法</th><th data-col-size="sm" data-end="847" data-start="841">功能</th></tr></thead><tbody data-end="1024" data-start="871"><tr data-end="904" data-start="871"><td data-col-size="sm" data-end="877" data-start="871">`/`</td><td data-col-size="sm" data-end="888" data-start="877">GET/POST</td><td data-col-size="sm" data-end="904" data-start="888">查詢指定日期的交貨便訂單</td></tr><tr data-end="944" data-start="905"><td data-col-size="sm" data-end="917" data-start="905">`/upload`</td><td data-col-size="sm" data-end="928" data-start="917">GET/POST</td><td data-col-size="sm" data-end="944" data-start="928">上傳並預覽 CSV 資料</td></tr><tr data-end="986" data-start="945"><td data-col-size="sm" data-end="968" data-start="945">`/download_template`</td><td data-col-size="sm" data-end="974" data-start="968">GET</td><td data-col-size="sm" data-end="986" data-start="974">下載固定範本檔案</td></tr><tr data-end="1024" data-start="987"><td data-col-size="sm" data-end="998" data-start="987">`/print`</td><td data-col-size="sm" data-end="1005" data-start="998">POST</td><td data-col-size="sm" data-end="1024" data-start="1005">顯示使用者選取的資料供列印使用</td></tr></tbody></table>

</div></div>