活動資料庫要點
此模板為您提供一個政治捐贈者資料庫後端,其中包含活動、捐贈者、貢獻、合規代碼和外聯日誌記錄,以便活動人員能從一個結構化源進行工作。
- 活動帳簿 — 使用 committeeName、cycleYear、federalCommitteeId、status 和 owner 模型化每個活動,以便每筆貢獻都能附加到真實的委員會。
- 貢獻限額檢查 — 將 Contribution.amount、contributionDate、limitStatus 和 receiptNumber 一起保留,以便在捐贈推進之前可以進行審查。
- 合規代碼審查 — 將 ComplianceCode.fecCode、reviewState、reviewedBy 和 notes 附加到貢獻上,以便在申報需要再次查看時使用。
- 外展跟進 — 儲存 OutreachLog.contactChannel、outreachDate、result、followUpDue 及 createdBy,以保留通話、電子郵件、簡訊及事件歷史。
- 訪問感知操作員 — 使用 User.username、電子郵件、角色及全名搭配 ACL 和 CLP,以便活動工作人員、分析人員及募款人僅能查看他們應該看到的資料。
概覽:政治捐贈者資料庫
政治捐贈者資料庫中的截止日期很少是可選的;結構化的記錄層將日期轉換為提醒,而非意外。小的延遲會迅速累積。在 Back4app 上使用 Campaign、Donor、Contribution、ComplianceCode 及 OutreachLog,政治捐贈者資料庫團隊可以在協作同一個案件記錄的同時執行職責分離。架構涵蓋 User (username、電子郵件、角色、全名)、Campaign (committeeName、cycleYear、federalCommitteeId、status、owner)、Donor (fullName、employer、occupation、city、state、source)、Contribution (campaign、donor、amount、contributionDate、limitStatus、receiptNumber)、ComplianceCode (contribution、fecCode、reviewState、reviewedBy、notes) 及 OutreachLog (campaign、donor、contactChannel、outreachDate、result、followUpDue、createdBy),並內建了認證及工作流程驗證。連接您首選的前端,並更快發佈。
最適合:
這個政治捐贈者數據庫後端是如何組織的
政治捐贈者數據庫不僅關乎速度;當有人詢問「告訴我你是怎麼知道這是真的」時,它還關乎可防禦性。
使用此概覽查看活動、捐贈者和貢獻如何結合在一起,然後再為特定客戶框架投入工程時間。
活動工作流程功能
此中心中的每一個技術卡片都使用相同的政治捐贈者數據庫架構,包括用戶、活動、捐贈者、貢獻、合規代碼和外展日誌。
捐贈者檔案
捐贈者存儲全名、雇主、職業、城市、州及來源。
貢獻追蹤
貢獻鏈接一個活動、捐贈者、金額、貢獻日期、限制狀態和收據號碼。
合規代碼記錄
ComplianceCode 儲存 fecCode、reviewState、reviewedBy 和備註。
外展記錄歷史
OutreachLog 記錄活動、捐贈者、聯絡渠道、外展日期、結果和後續到期。
為什麼在 Back4app 上建立您的政治捐贈者帳簿?
Back4app 為您提供用戶、活動、捐款和合規代碼原語,以便您的團隊可以專注於審核工作和外展,而不是後端設置。
- •活動和擁有者記錄: 活動和用戶類別將 committeeName、federalCommitteeId、status 和 owner 整合在一個可查詢的形狀中。
- •捐款和限制記錄: Contribution.amount、contributionDate、limitStatus 和 receiptNumber 清楚地表明何時需要審核禮物。
- •合規代碼工作流程: ComplianceCode.fecCode、reviewState、reviewedBy 和 notes 顯示哪些捐款已被批准、標記或留待跟進。
快速構建和迭代活動記錄,並在所有平台之間使用一個後端合約。
活動數據庫的好處
一個政治捐贈者後端,將貢獻、合規和外展工作集中在一個地方。
更快的限制檢查
從 Contribution.amount、Contribution.contributionDate 和 Campaign.cycleYear 開始,而不是從頭重建捐贈邏輯。
清晰的合規性記錄
使用 ComplianceCode.fecCode 和 ComplianceCode.reviewState 來跟踪審查結果和升級記錄。
更好的捐贈者後續跟進
追蹤 OutreachLog.contactChannel 和 OutreachLog.result,以便下一次通話、電子郵件或事件反映之前的聯繫。
對敏感字段的範圍訪問
將 ACL/CLP 與 User、Donor 和 ComplianceCode 類結合,以便只有授權用戶才能查看聯繫詳情或審查者註釋。
活動級報告
查詢 Contribution、Campaign 和 ComplianceCode,以根據周期、committeeName 和 federalCommitteeId 總結捐贈情況。
AI輔助啟動
從一個結構化的提示生成捐贈者架構、驗證流程和啟動API處理程序。
活動科技堆疊
此政治捐贈者數據庫後端模板中包含所有內容。
活動實體圖
針對政治捐助者數據庫架構的實體關係模型。
涵蓋用戶、活動、捐助者、貢獻、合規代碼和外展日誌的架構。
查看圖表來源
erDiagram
User ||--o{ Campaign : "owner"
User ||--o{ ComplianceCode : "reviewedBy"
User ||--o{ OutreachLog : "createdBy"
Campaign ||--o{ Contribution : "campaign"
Campaign ||--o{ OutreachLog : "campaign"
Donor ||--o{ Contribution : "donor"
Donor ||--o{ OutreachLog : "donor"
Contribution ||--o{ ComplianceCode : "contribution"
User {
String objectId PK
String username
String email
String password
String role
String fullName
Date createdAt
Date updatedAt
}
Campaign {
String objectId PK
String committeeName
Number cycleYear
String federalCommitteeId
String status
String ownerId FK
Date createdAt
Date updatedAt
}
Donor {
String objectId PK
String fullName
String email
String employer
String occupation
String city
String state
String source
Date createdAt
Date updatedAt
}
Contribution {
String objectId PK
String campaignId FK
String donorId FK
Number amount
Date contributionDate
String limitStatus
String receiptNumber
Date createdAt
Date updatedAt
}
ComplianceCode {
String objectId PK
String contributionId FK
String fecCode
String reviewState
String reviewedById FK
String notes
Date createdAt
Date updatedAt
}
OutreachLog {
String objectId PK
String campaignId FK
String donorId FK
String contactChannel
Date outreachDate
String result
Date followUpDue
String createdById FK
Date createdAt
Date updatedAt
}
活動數據流
用戶登錄、活動查詢、貢獻輸入、合規代碼審查和記錄外展日誌的典型運行流程。
查看圖表來源
sequenceDiagram
participant User
participant App as Political Donor Database App
participant Back4app as Back4app Cloud
User->>App: Sign in to the donor workspace
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Open campaign ledger
App->>Back4app: GET /classes/Campaign?include=owner&order=-updatedAt
Back4app-->>App: Campaign records
User->>App: Record a contribution
App->>Back4app: POST /classes/Contribution
Back4app-->>App: Contribution objectId
User->>App: Assign or verify an FEC compliance code
App->>Back4app: POST /classes/ComplianceCode
Back4app-->>App: ComplianceCode objectId
User->>App: Add outreach contact log
App->>Back4app: POST /classes/OutreachLog
Back4app-->>App: OutreachLog objectId字段指南
政治捐贈者架構中每個類別的完整字段級別參考。
| 字段 | 類型 | 描述 | 必填 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 自動 |
| username | String | Operator login name | |
| String | Operator email address | ||
| password | String | Hashed password (write-only) | |
| role | String | Access role for the operator (e.g., admin, analyst, fundraiser) | |
| fullName | String | Display name for the operator | |
| createdAt | Date | Auto-generated creation timestamp | 自動 |
| updatedAt | Date | Auto-generated last-update timestamp | 自動 |
8 欄位在 User 中
活動數據的權限
ACL 和 CLP 策略如何保護用戶、活動、貢獻、合規性審查和外聯日誌。
捐贈者聯繫人控制
限制對捐贈者電子郵件、雇主、職業、城市和州欄位的讀取和編輯訪問,只有授權的分析師和籌款人才能查看這些資訊。
貢獻的完整性
只有經批准的用戶和 Cloud Code 可以在金額、貢獻日期、來源或限制狀態需要驗證時創建或更正貢獻記錄。
合規檢查記錄
僅將 ComplianceCode 註解和審核者鏈接顯示給需要檔案或審核上下文的角色。
JSON 架構
原始 JSON 架構定義可複製到 Back4app 或用作實作參考。
{
"classes": [
{
"className": "User",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"username": {
"type": "String",
"required": true
},
"email": {
"type": "String",
"required": true
},
"password": {
"type": "String",
"required": true
},
"role": {
"type": "String",
"required": true
},
"fullName": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Campaign",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"committeeName": {
"type": "String",
"required": true
},
"cycleYear": {
"type": "Number",
"required": true
},
"federalCommitteeId": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"owner": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Donor",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"fullName": {
"type": "String",
"required": true
},
"email": {
"type": "String",
"required": false
},
"employer": {
"type": "String",
"required": false
},
"occupation": {
"type": "String",
"required": false
},
"city": {
"type": "String",
"required": false
},
"state": {
"type": "String",
"required": false
},
"source": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Contribution",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"campaign": {
"type": "Pointer",
"required": true,
"targetClass": "Campaign"
},
"donor": {
"type": "Pointer",
"required": true,
"targetClass": "Donor"
},
"amount": {
"type": "Number",
"required": true
},
"contributionDate": {
"type": "Date",
"required": true
},
"limitStatus": {
"type": "String",
"required": true
},
"receiptNumber": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "ComplianceCode",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"contribution": {
"type": "Pointer",
"required": true,
"targetClass": "Contribution"
},
"fecCode": {
"type": "String",
"required": true
},
"reviewState": {
"type": "String",
"required": true
},
"reviewedBy": {
"type": "Pointer",
"required": false,
"targetClass": "User"
},
"notes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "OutreachLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"campaign": {
"type": "Pointer",
"required": true,
"targetClass": "Campaign"
},
"donor": {
"type": "Pointer",
"required": true,
"targetClass": "Donor"
},
"contactChannel": {
"type": "String",
"required": true
},
"outreachDate": {
"type": "Date",
"required": true
},
"result": {
"type": "String",
"required": true
},
"followUpDue": {
"type": "Date",
"required": false
},
"createdBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}與 AI 代理一起構建
使用 Back4app AI 代理從此模板生成一個實際的政治捐助者數據庫應用,包括前端、後端、身份驗證以及活動、合規和外展流程。
在 Back4app 上創建一個安全的政治捐贈者數據庫後端,具有這個精確的架構和行為。 架構: 1. 用戶(使用 Back4app 內建):用戶名、電子郵件、密碼、角色、全名;objectId、createdAt、updatedAt(系統)。 2. 活動:委員會名稱、周期年、聯邦委員會ID、狀態、擁有者(指向用戶);objectId、createdAt、updatedAt(系統)。 3. 捐贈者:全名、電子郵件、雇主、職業、城市、州、來源;objectId、createdAt、updatedAt(系統)。 4. 捐贈:活動(指向活動)、捐贈者(指向捐贈者)、金額、捐贈日期、限額狀態、收據編號;objectId、createdAt、updatedAt(系統)。 5. 合規代碼:捐贈(指向捐贈)、fec代碼、審查狀態、審查者(指向用戶)、備註;objectId、createdAt、updatedAt(系統)。 6. 外展日誌:活動(指向活動)、捐贈者(指向捐贈者)、聯絡渠道、外展日期、結果、跟進到期、創建者(指向用戶);objectId、createdAt、updatedAt(系統)。 安全性: - 限制編輯僅限於分配給該活動的經過身份驗證的操作員。 - 將捐贈和合規代碼的寫入視為審查的工作流程條目。 - 僅將捐贈者聯繫詳細信息和外展歷史顯示給授權的活動工作人員。 身份驗證: - 註冊、登錄、登出。 行為: - 列出活動、添加捐贈者、創建捐贈、評估捐贈限制、分配FEC合規代碼,並記錄外展跟進。 交付: - Back4app 應用程序,具有架構、CLP、ACL和支持捐贈者查詢、捐贈審查、合規標記和外展跟蹤的用戶界面。
按下下面的按鈕以使用這個預填的模板提示打開代理。
這是沒有技術後綴的基本提示。您可以在後面調整生成的前端堆疊。
API實驗室
在政治捐贈者架構下試用REST和 GraphQL 端點。響應使用模擬數據,無需 Back4app 帳戶。
使用與這個模板相同的架構。
選擇您的技術堆疊
展開每張卡片以查看如何將活動、捐贈者和貢獻與您選擇的技術堆疊整合。
Flutter 政治捐贈者資料庫後端
React 政治捐贈者資料庫後端
React 原生 政治捐贈者資料庫後端
Next.js 政治捐贈者資料庫後端
JavaScript 政治捐贈者資料庫後端
Android 政治捐贈者資料庫後端
iOS 政治捐贈者資料庫後端
Vue 政治捐贈者資料庫後端
Angular 政治捐贈者資料庫後端
GraphQL 政治捐贈者資料庫後端
REST API 政治捐贈者資料庫後端
PHP 政治捐贈者資料庫後端
.NET 政治捐贈者資料庫後端
您每種技術可獲得的功能
每個技術堆疊都使用相同的政治捐贈者資料庫架構和 API 合約。
統一的活動工作流程數據
使用一致的架構管理用戶、活動、捐贈者、貢獻和外展參考。
貢獻限額跟踪
存儲金額、日期和限額狀態,以便合規檢查保持可見。
合規代碼和審核支援
使用 ComplianceCode 標記貢獻並附上審核者備註。
籌款者的外聯日誌歷史
保持每個捐贈者和活動的通話、電子郵件、簡訊和事件跟進備註。
政治捐贈者堆疊比較
比較所有支持技術的設置速度、SDK 風格和 AI 支持。
| 框架 | 設置時間 | 政治捐贈者利益 | SDK 類型 | AI 支持 |
|---|---|---|---|---|
| 大約 5 分鐘 | 對於移動和網頁的活動審查,單一代碼基礎。 | 類型化 SDK | 完整 | |
| 少於 5 分鐘 | 快速的網頁儀表板,用於捐贈者分析。 | 類型化 SDK | 完整 | |
| 約 3–7 分鐘 | 跨平台移動應用程式,用於外展登錄。 | 類型化 SDK | 完整 | |
| 快速(5分鐘)設置 | 伺服器渲染的網頁應用程式,用於合規審查。 | 類型化SDK | 完整 | |
| 約3–5分鐘 | 輕量級網路整合,用於捐贈者搜索。 | 類型化SDK | 完整 | |
| 大約5分鐘 | 原生Android應用程式,用於現場外展。 | 類型化SDK | 完整 | |
| 少於 5 分鐘 | 原生 iOS 應用程式用於捐贈者筆記。 | 打字 SDK | 完整 | |
| 約 3–7 分鐘 | React 互動式網頁用於活動資金追蹤。 | 打字 SDK | 完整 | |
| 快速(5 分鐘)設置 | 企業網頁應用程式用於合規工作流程。 | 打字 SDK | 完整 | |
| 少於 2 分鐘 | 靈活的 GraphQL API 用於捐贈者資訊。 | GraphQL API | 完整 | |
| 快速(2 分鐘)設置 | 用於貢獻追蹤的 REST API 整合。 | REST API | 完整 | |
| 約 3 分鐘 | 用於外展操作的伺服器端 PHP 後端。 | REST API | 完整 | |
| 約 3–7 分鐘 | .NET 後端用於選舉資金記錄。 | 類型化 SDK | 完整 |
設置時間反映從項目啟動到使用此模板架構的第一次活動或貢獻查詢的預期持續時間。
活動問題
關於使用此模板構建政治捐贈者資料庫後端的常見問題。