Files
usher-manage-stack/AGENTS.md
2025-11-20 23:21:05 +08:00

2.4 KiB
Raw Permalink Blame History

公益組織會員管理系統 --- 技術規格說明書

Version 1.0

1. 系統概述

本系統為公益組織打造,用於管理會員資料、會費繳納、會籍期限及後續財務簽核流程。 系統目標包含:

  • 會員可自助查詢:
    • 會籍期限
    • 繳費紀錄
    • 個人資料
  • 協會內部可管理:
    • 會員資料
    • 會費紀錄
    • 財務文件簽核流程(會計 → 出納 → 理事長)
  • 高度無障礙支援WCAG 2.1 AA

2. 系統架構

2.1 技術選型(後端)

  • Laravel 10+
  • PHP 8.2+
  • MySQL 8+
  • Laravel QueueRedis 或 DB
  • Google Workspace SMTP

2.2 前端架構

  • Phase 1Blade + Tailwind + Alpine.js
  • Phase 2必要頁面用 Inertia.js + Vue 3
  • 無障礙 HTML-first 原則

3. 功能規格

3.1 會員端

  • 登入Email + 密碼)
  • 查看會員資料
  • 查看繳費紀錄
  • 修改密碼
  • 忘記密碼

3.2 後台

  • 會員管理(新增/編輯/匯入)
  • 帳號啟用連結寄送
  • 會費管理
  • 到期提醒
  • RBAC 角色管理

3.3 財務簽核(第二階段)

  • 財務文件申請
  • 出納 → 會計 → 理事長簽核流程
  • Audit Log

4. 資料庫 Schema摘要

  • members
  • users
  • roles / permissionsspatie/laravel-permission
  • membership_payments
  • finance_documents
  • audit_logs

5. 註冊與啟用流程

既有會員

  • 匯入資料 → 寄啟用連結 → 設密碼

新申請會員

  • 前台表單 → pending → 管理員審核 → 寄啟用連結

6. 寄信規格

  • 使用 Google Workspace SMTP
  • App Password 模式
  • Laravel Mailable + queue

7. 無障礙規格

  • HTML 語意化
  • 所有表單必須有 label
  • aria-live
  • 表格必須使用 table/th/thead/tbody
  • Email 為純文字友好格式

8. 安全性

  • bcrypt/argon2 密碼
  • 身分證 encrypted + hash
  • Rate limiting
  • Audit Log 必須覆蓋所有敏感操作

9. 部署建議

  • Linux VPS
  • Nginx + PHP-FPM
  • MySQL/MariaDB
  • Redisoptional
  • Daily backup
  • HTTPSLet's Encrypt

10. Roadmap

Phase 1

  • 會員登入、資料檢視、繳費紀錄
  • 後台會員管理與匯入
  • 寄信與啟用流程

Phase 2

  • RBAC
  • 到期提醒
  • Audit Log

Phase 3

  • 財務簽核流程與附件
  • Vue + Inertia 強化互動頁面