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

127 lines
2.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 公益組織會員管理系統 --- 技術規格說明書
*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 強化互動頁面