说客活动追踪器后端模板
说客, 会议记录, 法案追踪, 披露报告, 和审计追踪
一个适用于说客活动追踪器后端的生产就绪版本,基于Back4app,适用于说客, 会议记录, 法案追踪, 披露报告和审计追踪。可用于跟踪所有者链接、会议参与者、法案状态、报告周期和变更历史。
游说者活动要点
此模板为您提供游说者工作流程后端,包括游说者资料、会议日志、法案跟踪、披露报告和审计踪迹,以便状态更改可追踪。
- 游说者个人资料结构 — 为每个游说者建模,包括姓名、组织、注册ID、状态和所有者,以便每条记录都有一个负责任的用户。
- 会议日志捕获 — 存储会议日志行,包括游说者、会议日期、主题、与会者、状态和备注,以便进行可搜索的审查。
- 法案跟踪队列 — 使用法案跟踪来维护法案编号、标题、会议、状态、优先级和最后审核时间,以便后续跟进。
概述:游说者活动跟踪器
游说者活动的成功与否取决于后续行动:接收、截止日期和客户通讯不能依赖于任何记得任务的人。细节不是可选的。借助Back4app上的核心实体,游说者活动团队可以在协作同一案件记录的同时实施职责分离。该模式涵盖用户、游说者、会议日志、账单跟踪、披露报告和审计轨迹。连接您喜欢的前端并保持活动历史的组织性。
最佳用途:
该游说活动后端是如何组织的
每个游说活动负责人都希望减少“未知的未知”。结构化记录将意外情况转化为您可以提前检测到的例外。
该摘要帮助团队在任何人深入ER图或JSON导出之前,围绕用户管理、游说者档案和会议记录捕获进行定位。
游说者活动核心功能
此中心中的每个技术卡都使用相同的游说者活动架构,包括用户、游说者、会议记录、BillTrack、DisclosureReport 和审计跟踪。
用户管理
用户存储用户名、电子邮件、密码和角色。
游说者资料
游说者记录包括姓名、组织、注册ID、状态和所有者。
会议日志记录
会议日志记录游说者、会议日期、主题、与会者、状态和备注。
账单跟踪
BillTrack 记录 billNumber、标题、议会、状态、优先级和最后审核时间。
披露报告
DisclosureReport 链接 reportingPeriod、状态、fileUrl、游说者、准备人和提交时间。
为什么要在Back4app上构建您的游说者跟踪器?
Back4app为您提供游说者档案、会议记录、法案跟踪、披露提交和审计历史的数据原语,以便您的团队可以专注于工作流而不是管道。
- •游说者和审计跟踪在一个地方: 存储每个游说者的姓名、组织、注册ID和所有者,然后在会议记录或提交发生更改时将其与审计跟踪条目配对。
- •BillTrack 状态无须猜测: 在 BillTrack 中保留 billNumber、title、chamber、status、priority 和 lastReviewedAt,以便员工能够快速过滤立法队列。
- •DisclosureReport 生成加上 API 灵活性: 在保持 REST 和 GraphQL 可供每个客户端使用的同时,使用 Live Queries 进行 DisclosureReport 更新。
在所有平台上通过一个后端合同构建和迭代 Lobbyist、MeetingLog、BillTrack 和 DisclosureReport 流程。
游说者活动的好处
一个后端,可以保持文件、会议历史和账单状态有序,而无需重建数据模型。
更快的活动日志记录
从 Lobbyist、MeetingLog、BillTrack 和 DisclosureReport 类开始,而不是从头设计架构。
清晰的归档责任
跟踪 reportingPeriod、status、fileUrl 和 submittedAt,以便披露工作保持可见。
可追溯的编辑
使用 AuditTrail 条目显示哪个用户在何时更改了 MeetingLog、BillTrack 或 DisclosureReport 记录。
权限意识结构
使用 ACL 和 CLP 来限制谁可以更新 Lobbyist、MeetingLog、BillTrack 和 DisclosureReport 记录。
会议和法案查询
在可查询字段中存储 meetingDate、subject、billNumber、chamber 和 priority,以便于仪表板和导出。
人工智能辅助引导
通过一个结构化提示快速生成架构脚手架和集成指南。
准备好启动您的游说活动跟踪器了吗?
让 Back4app AI 代理为您的游说活动后端搭建脚手架,并从一个提示中生成 Lobbyist、MeetingLog、BillTrack、DisclosureReport 和 AuditTrail 流。
免费开始 — 每月 50 个 AI 代理提示,无需信用卡
游说活动栈
此游说者活动后端模板中包含的一切。
游说者实体图
游说者活动后端架构的实体关系模型。
涵盖用户、游说者、会议记录、法案跟踪、披露报告和审计追踪的架构。
查看图示源
erDiagram
User ||--o{ Lobbyist : "owner"
User ||--o{ MeetingLog : "createdBy"
User ||--o{ DisclosureReport : "preparedBy"
User ||--o{ AuditTrail : "changedBy"
Lobbyist ||--o{ MeetingLog : "lobbyist"
Lobbyist ||--o{ BillTrack : "lobbyist"
Lobbyist ||--o{ DisclosureReport : "lobbyist"
User {
String objectId PK
String username
String email
String password
String role
Date createdAt
Date updatedAt
}
Lobbyist {
String objectId PK
String name
String organization
String registrationId
String status
String ownerId FK
Date createdAt
Date updatedAt
}
MeetingLog {
String objectId PK
String lobbyistId FK
Date meetingDate
String subject
Array attendees
String status
String notes
String createdById FK
Date createdAt
Date updatedAt
}
BillTrack {
String objectId PK
String billNumber
String title
String chamber
String status
String priority
String lobbyistId FK
Date lastReviewedAt
Date createdAt
Date updatedAt
}
DisclosureReport {
String objectId PK
String reportingPeriod
String status
String fileUrl
String lobbyistId FK
String preparedById FK
Date submittedAt
Date createdAt
Date updatedAt
}
AuditTrail {
String objectId PK
String entityType
String entityId
String action
String changedById FK
Date changedAt
String details
Date createdAt
Date updatedAt
}
游说者同步流程
典型的运行流程包括登录、加载游说者行、创建会议记录、审查法案跟踪项目、生成披露报告,以及写入审计跟踪条目。
查看图示源
sequenceDiagram
participant User
participant App as Lobbyist Activity Tracker App
participant Back4app as Back4app Cloud
User->>App: Sign in
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Load lobbyist profile list
App->>Back4app: GET /classes/Lobbyist?include=owner
Back4app-->>App: Lobbyist rows
User->>App: Add a meeting log
App->>Back4app: POST /classes/MeetingLog
Back4app-->>App: MeetingLog objectId
User->>App: Review bill tracking queue
App->>Back4app: GET /classes/BillTrack?order=-updatedAt
Back4app-->>App: BillTrack items
User->>App: Generate a disclosure report
App->>Back4app: POST /classes/DisclosureReport
Back4app-->>App: DisclosureReport fileUrl
App->>Back4app: Write AuditTrail entry for the change
Back4app-->>App: AuditTrail objectId游说者字段指南
游说者活动模式中每个类的完整字段级别参考。
| 字段 | 类型 | 描述 | 必填 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 自动 |
| username | String | User login name | |
| String | User email address | ||
| password | String | Hashed password (write-only) | |
| role | String | User role such as operationsLead, contributor, or complianceReviewer | |
| createdAt | Date | Auto-generated creation timestamp | 自动 |
| updatedAt | Date | Auto-generated last-update timestamp | 自动 |
7 字段在 User 中
权限和审计控制
ACL 和 CLP 策略如何保护用户、游说者、会议日志、法案跟踪、披露报告和审计轨迹。
用户范围的帐户控制
只有经过身份验证的用户应该更新自己的个人资料或角色相关的偏好设置。
会议日志完整性
限制对会议日志的创建和编辑,以便只有授权员工可以更改游说者、会议日期、主题、与会者或状态。
披露和账单访问
应用读写规则到 BillTrack 和 DisclosureReport,使提交数据仅对已批准的贡献者可见。
JSON Schema
原始 JSON schema 定义,准备复制到 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
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Lobbyist",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"name": {
"type": "String",
"required": true
},
"organization": {
"type": "String",
"required": true
},
"registrationId": {
"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": "MeetingLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"lobbyist": {
"type": "Pointer",
"required": true,
"targetClass": "Lobbyist"
},
"meetingDate": {
"type": "Date",
"required": true
},
"subject": {
"type": "String",
"required": true
},
"attendees": {
"type": "Array",
"required": true
},
"status": {
"type": "String",
"required": true
},
"notes": {
"type": "String",
"required": false
},
"createdBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "BillTrack",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"billNumber": {
"type": "String",
"required": true
},
"title": {
"type": "String",
"required": true
},
"chamber": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"priority": {
"type": "String",
"required": true
},
"lobbyist": {
"type": "Pointer",
"required": true,
"targetClass": "Lobbyist"
},
"lastReviewedAt": {
"type": "Date",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "DisclosureReport",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"reportingPeriod": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"fileUrl": {
"type": "String",
"required": true
},
"lobbyist": {
"type": "Pointer",
"required": true,
"targetClass": "Lobbyist"
},
"preparedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"submittedAt": {
"type": "Date",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "AuditTrail",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"entityType": {
"type": "String",
"required": true
},
"entityId": {
"type": "String",
"required": true
},
"action": {
"type": "String",
"required": true
},
"changedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"changedAt": {
"type": "Date",
"required": true
},
"details": {
"type": "String",
"required": false
},
"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. 披露报告:报告期(字符串,必填),状态(字符串,必填),文件URL(字符串,必填),说客(指向说客的指针,必填),准备者(指向用户的指针,必填),提交时间(日期,选填);objectId,createdAt,updatedAt(系统)。 6. 审计日志:实体类型(字符串,必填),实体ID(字符串,必填),操作(字符串,必填),更改者(指向用户的指针,必填),更改时间(日期,必填),详细信息(字符串,选填);objectId,createdAt,updatedAt(系统)。 安全性: - 只有操作负责人或指定贡献者可以为其范围内创建和编辑说客、会议日志和法案跟踪行。 - 披露报告应由准备者可写且应由合规审查员可审核。 - 审计日志仅可附加,应该记录会议验证、法案状态更改及披露提交操作。 身份验证: - 注册、登录、登出。 行为: - 列出说客,输入会议日志,更新法案状态,准备披露报告,并为每个跟踪的更改撰写审计条目。 交付: - Back4app 应用,包含架构、CLP、ACL和会议日志、法案跟踪、披露报告及审计审查的前端。
按下下面的按钮打开代理,并预填充此模板提示。
这是没有技术后缀的基础提示。您可以在之后调整生成的前端堆栈。
API 沙盒
尝试使用 REST 和 GraphQL 端点进行说客活动架构。响应使用模拟数据,无需 Back4app 账户。
使用与此模板相同的架构。
请选择您的技术栈
展开每个卡片以查看如何将 Lobbyist、MeetingLog 和 BillTrack 与您选择的技术栈集成。
Flutter 游说者活动跟踪后端
React 游说者活动跟踪后端
React 原生 游说者活动跟踪后端
Next.js 游说者活动跟踪后端
JavaScript 游说者活动跟踪后端
Android 游说者活动跟踪后端
iOS 游说者活动跟踪后端
Vue 游说者活动跟踪后端
Angular 游说者活动跟踪后端
GraphQL 游说者活动跟踪后端
REST API 游说者活动跟踪后端
PHP 游说者活动跟踪后端
.NET 游说者活动跟踪后端
您在每个技术中获得的内容
每个技术栈使用相同的说客活动后端架构和 API 合同。
统一的说客活动数据结构
使用一个架构管理说客、会议记录、账单跟踪、披露报告和审计。
可审计的备案报告
在每个客户端中保持 reportingPeriod、status、fileUrl 和 submittedAt 可见。
立法工作的账单状态跟踪
按账单编号、议会、状态和优先级过滤账单,无需自定义端点。
角色可感知的访问权限
定义适合运营负责人、研究人员和归档工作人员的权限。
说客堆栈比较
比较所有支持的技术的设置速度、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 web UI。 | 输入的SDK | 完整 | |
| 快速(5分钟)设置 | 用于合规审查队列的企业web应用。 | 输入的SDK | 完整 | |
| 少于2分钟 | 灵活的 GraphQL API 用于嵌套会议和披露查询。 | GraphQL API | 完整 | |
| 快速(2分钟)设置 | REST API 集成用于备案和状态检查。 | REST API | 完整 | |
| 大约 3 分钟 | 服务器端 PHP 后端用于报告和导出。 | REST API | 完整 | |
| 大约 3–7 分钟 | .NET 会议日志和账单跟踪的后端。 | 类型化 SDK | 完整 |
设置时间反映从项目启动到使用此模板架构的第一次 MeetingLog 或 BillTrack 查询的预期持续时间。
游说者工作流程问题
关于使用此模板构建游说者活动跟踪器后端的常见问题。