# 雲端人員維護系統 # 目標 - 熟悉雲端環境:使用 Google Cloud,熟悉 Cloud Run、Cloud SQL、Cloud Storage、Pub/Sub 等元件。 - 強化後端開發能力:使用 Java Spring Boot,學習 RESTful API 設計與實作。 - 掌握檔案處理技術:包括 照片上傳、壓縮、格式驗證,學習如何運用雲端服務處理文件。 - 理解非同步處理概念:使用 Pub/Sub 進行非同步任務處理,如圖片壓縮等。 # 功能設計 ## 1. 基本 CRUD 功能 - 員工管理 - 新增:輸入員工的基本資料,如 員工編號、身分證號、電子郵件 等。 - 查詢:根據 員工名稱、編號或身分證號 來查找員工資料。 - 更新:修改員工資料,確保資料一致性。 - 刪除:刪除員工資料,需確認操作後才能執行。 ☑ 驗收標準: - API 可接受 JSON 輸入並正確寫入 Cloud SQL。 - 所有 CRUD 操作皆須有 API 測試案例(可用 Postman 或 JUnit)。 💡 雲端元件: - Cloud Run:部署 API 服務 - Cloud SQL:存放員工資料 ## 2. 檔案上傳與處理 - 允許員工上傳照片 - 限定格式 (JPG, PNG, PDF),並進行格式驗證。 - 檔案大小不可超過 2MB。 - 照片壓縮 - 上傳後自動壓縮圖片,減少存儲空間佔用。 - 使用非同步方式處理壓縮(Pub/Sub)。 - 提供下載連結 - 員工可透過 API 取得下載連結,連結有效時間 24 小時。 ☑ 驗收標準: - 照片成功上傳並存入 Cloud Storage。 - 壓縮後的圖片大小不超過 500KB。 - 下載 API 連結可正確存取且具有限時效性。 💡 雲端元件: - Cloud Storage:存放圖片 - Pub/Sub:圖片壓縮非同步處理 ## 注意事項 1.前端要求隨意,可以Demo即可,使用者可以透過前端登入系統後做對應操作 2.過程需加入KMS、Secret Manager 及 IAM 來加強 憑證管理、敏感數據保護與身份存取控制。 ## 進階功能 (選作) - 權限管理 - 管理員 可新增、刪除、修改所有員工資料。 - 一般使用者 只能查詢自己的員工資料。 - 系統日誌 - 記錄所有 API 操作(新增、查詢、更新、刪除),存放於 Cloud Logging。 ☑ 驗收標準: - 透過 Token 驗證身份,確保 API 權限符合需求。 - 查詢 Cloud Logging 可見 API 存取紀錄。