專案背景: 本系統最初在 亞東紀念醫院圖書館 實際部署並穩定運行,用於追蹤醫院員工使用圖書館電腦的記錄。經主管同意,本專案已開源,旨在為有類似數據管理需求的學術或企業單位提供一個可靠的即時資料管理參考架構。
| 類型 | 技術 | 關鍵應用 |
|---|---|---|
| 前端/桌面應用 | C# (Windows Forms) | 基於穩定的 .NET Framework 4.8,提供輕量級、易部署的桌面 GUI 介面。 |
| 雲端服務/資料庫 | Google Sheets API v4 | 實現實時數據同步與集中管理,無需維護後端資料庫。 |
| 本地資料庫/備份 | 本地 CSV 檔案 | 作為離線緩衝與資料備份機制,確保數據可靠性。 |
| API/套件 | Google.Apis.Sheets.v4 | .NET 生態系統中可靠的 Google 服務整合工具。 |
- 專案摘要與業務價值 (Project Abstract & Business Value)
- 核心功能與演示 (Key Features & Demo)
- 安裝與配置指南 (Installation & Configuration Guide)
- 操作流程 (Usage Workflow)
- 聯絡與授權 (Contact & License)
Library_Login_Record 是一個專為 Windows 桌面環境設計的數據記錄應用程式。本專案的目標是提供一個高效、零維護、易於部署的解決方案,用於追蹤公共電腦(如圖書館、研討室)的使用情況。
- 實務驗證: 本系統已在亞東紀念醫院圖書館實際部署並穩定運行,證明其在企業級環境中的可靠性和實用性。
- 低成本數據管理: 透過整合 Google Sheets API,完美取代傳統資料庫架構,實現資料即時集中化,大幅降低數據庫維護成本。
- 數據可靠性: 採用本地 CSV 備份 + 雲端即時同步的雙重機制,確保在網路不穩定的情況下,數據依然能夠被完整記錄與追蹤。
| 功能項目 | 描述 (功能亮點) |
|---|---|
| 簡潔 ID 登記 | 提供直覺式 GUI 介面,優化使用者體驗,僅需輸入員工/使用者 ID 即可完成記錄。 |
| 自動化資產追蹤 | 自動採集電腦名稱,並提供電腦編號手動輸入選項,方便追蹤特定硬體使用頻率。 |
| 雲端即時同步 | 記錄透過 Google Sheets API 同步上傳至指定試算表,即時集中管理結合。 |
| 高容錯性備份 | 所有記錄同步儲存於本地 CSV 檔案,作為網路離線或 API 故障時的備份。 |
| 獨立部署能力 | 應用程式為 WinForms 單獨執行檔,支援在任何 Windows 電腦上獨立運行。 |
- 作業系統: Windows OS
- 運行環境: 必須安裝 .NET Framework 4.8。
- Google Cloud 配置:
- 在 Google Cloud Platform (GCP) 建立專案並啟用 Google Sheets API。
- 建立並下載 服務帳戶 (Service Account) 的 JSON 憑證金鑰。
-
克隆專案:
git clone [https://github.com/CadyLinn/Library_Login_Record.git]
-
依賴項安裝:
- 在 Visual Studio (建議 2022) 中開啟
Library_Login_Record.sln,確保所有 NuGet 套件(特別是 Google API 相關套件)已成功還原。
- 在 Visual Studio (建議 2022) 中開啟
-
API 參數配置 (
App.config):- 打開
App.config檔案,將<appSettings>區塊中的佔位符替換為您的配置:<appSettings> <add key="GoogleSpreadsheetId" value="[請替換為您的目標 Google Sheet ID]" /> <add key="GoogleCredentialPath" value="credentials.json" /> </appSettings>
- 打開
-
服務憑證部署 (關鍵步驟):
- 將您下載的服務帳戶 JSON 憑證檔案重新命名為
credentials.json。 - 將該檔案放置於專案的 執行目錄 (
bin/Debug或bin/Release)。 - 授權: 重要! 請將服務帳戶的 Email 地址(格式通常為
[service-account-name]@[project-id].iam.gserviceaccount.com)共享給您的目標 Google 試算表,並賦予其 編輯權限。
- 將您下載的服務帳戶 JSON 憑證檔案重新命名為
本應用程式設計為流程簡潔、單次執行。
- 啟動應用程式: 執行位於部署目錄的
Library_Login_Record.exe。 - 數據輸入:
- 使用者輸入其 5 碼員工編號。
- 輸入電腦編號 (如適用,最多 2 碼數字)。
- 數據傳輸: 點擊 「送出」 或按下 Enter 鍵。
- 同步處理: 系統將同步執行兩項任務:
- 將帶有時間戳的記錄寫入本地的 CSV 備份檔案。
- 異步調用 Google Sheets API,將記錄寫入雲端試算表的
libRecord工作表。
- 流程結束: 成功寫入後,程式自動退出,等待下一次使用。
| 項目 | 資訊 |
|---|---|
| 作者 (Author) | Cady Lin 林郁庭 (最初部署於亞東紀念醫院圖書館) |
| 著作權 (Copyright) | © 2025 CadyLin 林郁庭 |
| 聯絡方式 (Contact) | yytttt420@gmail.com |
| 專案授權 (License) | MIT License (請遵守開源協議) |
詳細的授權條款請參閱專案根目錄下的 LICENSE 檔案
