烟草合规日志后台模板
年龄检查日志和商店审核追踪
在 Back4app 上的生产就绪 烟草合规日志后台,包含年龄检查日志、标识审核和税票追踪。包括 ER 图、数据字典、JSON 架构、API 游乐场,以及一个 人工智能代理 提示以快速设置。
合规日志关键要点
该模板为您提供了一个烟草合规日志后端,包含年龄检查日志、标识审计和税票跟踪,以便管理人员和现场工作人员可以在一个地方记录检查并审查结果。
- 与位置相关的年龄检查日志 — 为每个年龄检查日志创建一个指向位置的指针,以便商店访问、员工检查和审查注释保持有序。
- 标识审计覆盖范围 — 追踪每个地点的标识审计结果,包括所需的警告、位置和缺失标识问题。
- 税票验证 — 记录税票详细信息,包括票据号码、产品类型和验证结果,以便进行审计准备的审查。
- 现场准备审核工作流程 — 使用 Back4app 类和权限,以便协调员可以提交、审核和批准合规日志。
烟草合规日志后端概览
监管机构期望烟草合规日志证据是持久的:足够不可变以建立信任,足够灵活以便随时间改善程序。成本体现在回调和信用中。在 Back4app 上,位置、年龄检查日志、标识审核和税Stamp连接成一个连贯的烟草合规日志叙述,而不是一堆不相关的票据和文件。模式涵盖用户(用户名、电子邮件、密码)、位置(店名、地址、地区)、年龄检查日志(位置、店员姓名、客户出生年份、结果)、标识审核(位置、标识类型、位置、状态)和税Stamp(位置、邮票编号、产品类型、验证时间),并内置了身份验证和审核控制。连接您喜欢的前端,开始更早地记录检查。
最佳适用:
烟草合规日志:后端快照
最好的烟草合规日志仪表板很无聊,因为底层实体是干净的——而不是因为有人在午夜处理了一个电子表格。
无论您是从 Flutter、React、Next.js 还是其他受支持的路径开始,期望相同的位置、年龄检查日志和标识审计。
核心烟草合规日志功能
本中心中的每个技术卡片使用相同的烟草合规日志架构,包括 Location、AgeCheckLog、SignageAudit 和 TaxStamp。
位置注册
位置类存储店名、地址、地区和状态。
年龄检查日志
年龄检查日志类存储店员姓名、顾客出生年份、结果和备注。
标牌审计
标牌审计类记录标牌类型、放置位置、状态和状态。
税票追踪
TaxStamp 类存储 stampNumber、productType、verifiedAt 和 verificationStatus。
为什么要使用 Back4app 构建您的烟草合规日志后端?
Back4app 为您提供合规日志原语,以便您的团队可以专注于检查和审查步骤,而不是基础设施和重复的 API 连接。
- •位置中心的日志记录: Location 类将 AgeCheckLog、SignageAudit 和 TaxStamp 记录锚定到一个商店或地点。
- •AgeCheckLog 和 SignageAudit 工作流程: 创建带有结果、signType 和 placement 字段的条目,然后在不更改应用合同的情况下进行审核。
- •TaxStamp 验证支持: 在 TaxStamp 中存储 stampNumber、productType 和 verifiedAt,以便审计员可以稍后追踪检查历史。
将检查日志记录、签名审核和税票检查合并到每个客户端的一个后端合同中。
核心优势
一个烟草合规后端,帮助您记录检查,同时不丢失现场细节。
更快的商店检查设置
从 Location、AgeCheckLog、SignageAudit 和 TaxStamp 开始,而不是手动构建合规表。
清除审查记录
记录谁进入了日志,它所属的商店,以及为后期审计捕获的结果。
现场和管理人员可见性
让协调员从同一数据模型中审查年龄检查、标识问题和印章验证。
对合规日志的控制访问
使用 ACL/CLP,以便现场员工、主管和审计员只能看到他们应该处理的记录。
适用于每个设备的可重用 API
从一个 API 合约为移动检查员、内部仪表板和审查工具提供服务。
以提示驱动的项目启动
使用 AI Agent 提示生成合规应用程序结构,并加快实施速度。
准备好推出你的烟草合规日志应用了吗?
让 Back4app AI 代理构建你的烟草合规日志后端,并从一个提示生成年龄检查、标牌审核和税票流程。
免费开始 - 每月 50 个 AI 代理提示,无需信用卡
技术栈
此烟草合规日志后端模板中包含所有内容。
烟草合规 ER 图
烟草合规日志后端架构的实体关系模型。
涵盖商店位置、年龄检查日志、标识审核和税收章验证的架构。
查看图表源
erDiagram
User ||--o{ Location : "manager"
User ||--o{ AgeCheckLog : "checkedBy"
User ||--o{ SignageAudit : "auditedBy"
User ||--o{ TaxStampInspection : "inspectedBy"
Location ||--o{ AgeCheckLog : "location"
Location ||--o{ SignageAudit : "location"
Location ||--o{ TaxStampInspection : "location"
User {
String objectId PK
String username
String email
String password
String role
Date createdAt
Date updatedAt
}
Location {
String objectId PK
String storeName
String storeCode
String address
String managerId FK
Date createdAt
Date updatedAt
}
AgeCheckLog {
String objectId PK
String locationId FK
String checkedById FK
Date checkDate
String customerInitials
Boolean dobVerified
String idType
String notes
Date createdAt
Date updatedAt
}
SignageAudit {
String objectId PK
String locationId FK
String auditedById FK
Date auditDate
Boolean ageRestrictionSignPresent
Boolean healthWarningSignPresent
String photoUrl
String finding
Date createdAt
Date updatedAt
}
TaxStampInspection {
String objectId PK
String locationId FK
String inspectedById FK
Date inspectionDate
String productBrand
String stampSerial
Boolean stampMatched
String issueNotes
Date createdAt
Date updatedAt
}
合规日志集成流程
典型运行流程,包括认证、位置查找、年龄检查日志、标识审计和税票验证。
查看图表源
sequenceDiagram
participant User
participant App as Tobacco Compliance Log App
participant Back4app as Back4app Cloud
User->>App: Sign in
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Open location queue
App->>Back4app: GET /classes/Location?include=manager
Back4app-->>App: Locations and managers
User->>App: Add age check log
App->>Back4app: POST /classes/AgeCheckLog
Back4app-->>App: AgeCheckLog objectId
User->>App: Submit signage audit
App->>Back4app: POST /classes/SignageAudit
Back4app-->>App: SignageAudit objectId
User->>App: Review tax stamp inspection
App->>Back4app: GET /classes/TaxStampInspection?order=-inspectionDate
Back4app-->>App: Inspection history数据字典
烟草合规日志架构中每个类的完整字段级参考。
| 字段 | 类型 | 描述 | 必填 |
|---|---|---|---|
| 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 manager, coordinator, or fieldStaff | |
| createdAt | Date | Auto-generated creation timestamp | 自动 |
| updatedAt | Date | Auto-generated last-update timestamp | 自动 |
7 字段在 User 中
安全与权限
ACL 和 CLP 策略如何保护年龄检查日志、标识审核和税务印章记录。
角色限制字段输入
现场工作人员可以创建 AgeCheckLog 和 SignageAudit 条目,但审批或删除仅限于主管。
位置范围可见性
用户只能查看属于其地区或指定路线的位置记录和相关日志。
审计跟踪保护
使用 Cloud Code 验证,以便 stampNumber、result 和 verificationStatus 的更改保持受控和可追溯。
架构 (JSON)
准备好可以复制到 Back4app 的原始 JSON 架构定义或用作实施参考。
{
"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": "Location",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"storeName": {
"type": "String",
"required": true
},
"storeCode": {
"type": "String",
"required": true
},
"address": {
"type": "String",
"required": true
},
"manager": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "AgeCheckLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"location": {
"type": "Pointer",
"required": true,
"targetClass": "Location"
},
"checkedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"checkDate": {
"type": "Date",
"required": true
},
"customerInitials": {
"type": "String",
"required": false
},
"dobVerified": {
"type": "Boolean",
"required": true
},
"idType": {
"type": "String",
"required": true
},
"notes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "SignageAudit",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"location": {
"type": "Pointer",
"required": true,
"targetClass": "Location"
},
"auditedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"auditDate": {
"type": "Date",
"required": true
},
"ageRestrictionSignPresent": {
"type": "Boolean",
"required": true
},
"healthWarningSignPresent": {
"type": "Boolean",
"required": true
},
"photoUrl": {
"type": "String",
"required": false
},
"finding": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "TaxStampInspection",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"location": {
"type": "Pointer",
"required": true,
"targetClass": "Location"
},
"inspectedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"inspectionDate": {
"type": "Date",
"required": true
},
"productBrand": {
"type": "String",
"required": true
},
"stampSerial": {
"type": "String",
"required": true
},
"stampMatched": {
"type": "Boolean",
"required": true
},
"issueNotes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}使用 AI 代理构建
使用 Back4app AI 代理根据此模板生成一个真实的烟草合规日志应用,包括前端、后端、身份验证、年龄检查、标识审核和税票流程。
在 Back4app 上使用此确切的架构和行为创建烟草合规日志应用后端。 架构: 1. 用户(使用 Back4app 内置):用户名、电子邮件、密码;objectId、createdAt、updatedAt(系统)。 2. 位置:商店名称(字符串,必填),地址(字符串,必填),区域(字符串,必填),状态(字符串,必填);objectId、createdAt、updatedAt(系统)。 3. 年龄检查日志:位置(指向位置的指针,必填)、店员姓名(字符串,必填)、顾客出生年份(数字,必填)、结果(字符串,必填)、备注(字符串);objectId、createdAt、updatedAt(系统)。 4. 标识审核:位置(指向位置的指针,必填)、标识类型(字符串,必填)、位置(字符串,必填)、状态(字符串,必填)、情况(字符串,必填);objectId、createdAt、updatedAt(系统)。 5. 税票:位置(指向位置的指针,必填)、票据编号(字符串,必填)、产品类型(字符串,必填)、验证时间(日期,必填)、验证状态(字符串,必填);objectId、createdAt、updatedAt(系统)。 安全性: - 只有指定的现场用户可以为其位置创建日志。监督者可以审核和批准。使用云代码进行验证。 身份验证: - 注册、登录、注销。 行为: - 列出位置、创建年龄检查日志、提交标识审核和验证税票。 交付: - Back4app 应用程序,具有架构、ACL、CLP;面向位置、年龄检查、标识审核和税票验证的前端。
按下面的按钮打开代理,并预填充此模板提示。
这是没有技术后缀的基础提示。您可以在之后调整生成的前端堆栈。
API游乐场
在烟草合规日志模式下尝试REST和GraphQL端点。响应使用模拟数据,无需Back4app账户。
使用与此模板相同的模式。
选择您的技术
展开每个卡片以查看如何将位置、年龄检查日志和标识审计与您选择的技术栈集成。
Flutter 烟草合规日志后端
React 烟草合规日志后端
React 原生 烟草合规日志后端
Next.js 烟草合规日志后端
JavaScript 烟草合规日志后端
Android 烟草合规日志后端
iOS 烟草合规日志后端
Vue 烟草合规日志后端
Angular 烟草合规日志后端
GraphQL 烟草合规日志后端
REST API 烟草合规日志后端
PHP 烟草合规日志后端
.NET 烟草合规日志后端
您能获得的每项技术
每个堆栈使用相同的烟草合规日志架构和API合同。
统一的合规日志结构
使用一个架构管理地点、年龄检查日志、标牌审计和税务印章记录。
现场团队的年龄检查日志
在商店级别捕获clerkName、customerBirthYear和结果。
标牌审计跟踪
记录每次审计访问的signType、placement和condition。
税务印章验证可追溯性
存储 stampNumber 和 verificationStatus 以便后续审核。
用于合规应用的 REST/GraphQL API
从同一后端集成仪表板、移动现场工具和主管视图。
可扩展的审核工作流程
在不更换核心日志模型的情况下添加审批、问题说明或升级步骤。
烟草合规框架比较
比较所有支持技术的设置速度、SDK 风格和人工智能支持。
| 框架 | 设置时间 | 合规日志的好处 | SDK 类型 | 人工智能支持 |
|---|---|---|---|---|
| 大约 5 分钟 | 用于移动和网络的现场检查人员的单一代码库。 | 类型化 SDK | 完整 | |
| 少于 5 分钟 | 为合规经理提供快速网页仪表板。 | 类型化 SDK | 完整 | |
| 约 3-7 分钟 | 跨平台移动应用程序用于门店访问。 | 类型化 SDK | 完整 | |
| 快速(5分钟)设置 | 为评审团队提供的服务器渲染网页应用。 | 类型安全SDK | 完整 | |
| 约3-5分钟 | 轻量级浏览器集成用于现场日志记录。 | 类型安全SDK | 完整 | |
| 大约5分钟 | 用于门店检查的原生Android应用程序。 | 类型安全SDK | 完整 | |
| 少于5分钟 | 用于合规检查的原生iPhone应用程序。 | 类型化SDK | 完整 | |
| 约3-7分钟 | React区报告的网络用户界面。 | 类型化SDK | 完整 | |
| 快速(5分钟)设置 | 用于审计和批准的企业Web应用程序。 | 类型化SDK | 完整 | |
| 少于2分钟 | 灵活的 GraphQL API 以链接合规记录。 | GraphQL API | 完整 | |
| 快速(2分钟)设置 | REST API 集成用于检查工具。 | REST API | 完整 | |
| 约3分钟 | 服务端 PHP 后端用于合规门户。 | REST API | 完整 | |
| 约3-7分钟 | .NET 后端审计工作流程。 | 类型化 SDK | 完整 |
设置时间反映了从项目启动到使用此模板模式进行第一次位置或年龄检查日志查询的预期持续时间。
常见问题解答
有关如何使用此模板构建烟草合规日志后端的常见问题。