关键要点
此模板为您提供一个烟囱清扫日志后端,包含清扫作业、检查照片、灰烬去除日志和安全证书跟踪,以便办公室协调员和现场团队保持同步。
- 清扫作业跟踪 — 以协调员可以查询的方式,为每个清扫作业建模,包括地址、服务日期和团队分配。
- 检查照片捕获 — 将检查照片文件存储在相关清扫作业旁边,以便前后证据附加到正确的访问。
- 灰烬去除日志 — 记录每个服务调用的灰烬去除日志详情,例如清洁的烟道、灰烬量和备注。
烟囱清扫日志应用模板是什么?
当烟囱清扫数据被结构化而不是困在PDF和边聊中时,路由、零件和客户沟通才会显得轻松。细节不可忽视。该架构以SweepJob、InspectionPhoto、SootRemovalLog和SafetyCert为中心,基于Back4app进行实时查询,为烟囱清扫操作员提供一个整个组织都可以信任的事实来源。该架构涵盖SweepJob(propertyName,serviceDate,technician,status)、InspectionPhoto(sweepJob,photoUrl,caption)、SootRemovalLog(sweepJob,sootLevel,removedBy,notes)和SafetyCert(sweepJob,certNumber,issuedAt,expiresAt,status),并内置认证和工作流支持。连接你喜欢的前端,开始更快地记录现场工作。
最佳用途:
这个烟囱清洁后端是如何组织的
最好的烟囱清洁仪表盘看起来很无聊,因为基础实体是干净的——而不是因为有人在午夜对电子表格进行了处理。
使用此概述查看SweepJob、InspectionPhoto和SootRemovalLog如何结合在一起,然后再将工程时间投入到具体的客户框架中。
核心烟囱清扫日志功能
这个中心的每个技术卡片使用相同的烟囱清扫后端架构,包括 SweepJob、InspectionPhoto、SootRemovalLog 和 SafetyCert。
SweepJob调度
SweepJob存储propertyName、serviceDate、technician和status。
InspectionPhoto 捕获
InspectionPhoto 链接 photoUrl、标题和 sweepJob。
SootRemovalLog 条目
SootRemovalLog 记录 sootLevel、removedBy、备注和 sweepJob。
SafetyCert 跟踪
SafetyCert 存储 certNumber、issuedAt、expiresAt、status 和 sweepJob。
为什么要使用Back4app构建您的烟囱清洁日志应用后端?
Back4app为您提供工作、照片、日志和证书原语,方便您的团队专注于服务质量,而不是管道问题。
- •SweepJob和SafetyCert在一个模型中: 使用SweepJob类进行服务访问,使用SafetyCert跟踪证书,而不是将状态分散在电子表格中。
- •检查照片文件与访问保持关联: 在InspectionPhoto上存储photoUrl并将其链接到正确的SweepJob,以便轻松查看前后的图像。
- •实时更新活动路线: 在保持每个客户端可用的REST和GraphQL的同时,使用Live Queries进行SweepJob和SootRemovalLog的更改。
通过一个后端合同,快速构建和更新烟囱清扫工作流程,适用于移动端和网页。
核心优势
一个帮助现场团队和协调员保持一致的烟囱清扫后端。
更快的工作接收
从 SweepJob、InspectionPhoto、SootRemovalLog 和 SafetyCert 类开始,而不是从零设计每个表。
照片支持的服务证明
使用 InspectionPhoto.photoUrl,以便每次烟囱访问都有清晰的证据附加到正确的工作。
办公室与现场之间的更顺畅交接
技术人员在协调员从同一后端查看作业状态和证书状态时更新SootRemovalLog笔记。
证书可见性
跟踪SafetyCert.expiresAt和状态,以便在访问关闭后不会丢失更新。
友好的工作人员和设备
通过一个API向平板电脑、手机和网络仪表板提供清扫作业、照片和日志。
AI辅助设置
通过一个结构化提示快速生成后端架构和集成指导。
准备好启动您的烟囱清扫日志应用程序了吗?
让 Back4app AI 代理搭建你的烟囱清扫后端,并从一个提示生成检查照片、烟灰清除日志和安全证书流程。
免费启动 — 每月 50 个 AI 代理提示,无需信用卡
技术栈
此烟囱清扫日志应用模板中的一切。
ER图
烟囱清扫日志后端架构的实体关系模型。
涵盖清扫工作、检查照片、烟灰清除日志和安全证书的架构。
查看图表来源
erDiagram
SweepUser ||--o{ Property : "assignedCoordinator"
SweepUser ||--o{ Inspection : "inspector"
SweepUser ||--o{ InspectionPhoto : "takenBy"
SweepUser ||--o{ SootRemovalLog : "technician"
SweepUser ||--o{ SafetyCertificate : "issuedBy"
Property ||--o{ Inspection : "property"
Inspection ||--o{ InspectionPhoto : "inspection"
Inspection ||--o{ SootRemovalLog : "inspection"
Inspection ||--o{ SafetyCertificate : "inspection"
SweepUser {
String objectId PK
String username
String email
String password
String fullName
String role
Date createdAt
Date updatedAt
}
Property {
String objectId PK
String propertyName
String addressLine
String contactName
String contactPhone
String assignedCoordinatorId FK
Date createdAt
Date updatedAt
}
Inspection {
String objectId PK
String propertyId FK
String inspectorId FK
Date inspectionDate
String chimneyCondition
String inspectionNotes
String status
Date createdAt
Date updatedAt
}
InspectionPhoto {
String objectId PK
String inspectionId FK
String photoUrl
String caption
String takenById FK
Date createdAt
Date updatedAt
}
SootRemovalLog {
String objectId PK
String inspectionId FK
String technicianId FK
String sootLevel
String removalMethod
Number amountRemoved
String workNotes
Date createdAt
Date updatedAt
}
SafetyCertificate {
String objectId PK
String inspectionId FK
String certificateNumber
String issuedById FK
Date issueDate
Date expiryDate
String certificateStatus
Date createdAt
Date updatedAt
}
集成流程
典型的登录、清扫工作列表、上传检查照片、记录烟灰清理和发放安全证书的运行流程。
查看图表源
sequenceDiagram
participant User
participant App as Chimney Sweep Log App
participant Back4app as Back4app Cloud
User->>App: Sign in as manager or technician
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Load property list
App->>Back4app: GET /classes/Property?include=assignedCoordinator
Back4app-->>App: Properties with coordinator pointers
User->>App: Open an inspection
App->>Back4app: GET /classes/Inspection?include=property,inspector
Back4app-->>App: Inspection rows and status values
User->>App: Add inspection photos and soot removal log
App->>Back4app: POST /classes/InspectionPhoto and POST /classes/SootRemovalLog
Back4app-->>App: Saved photo and removal log objects
User->>App: Issue a safety certificate
App->>Back4app: POST /classes/SafetyCertificate
Back4app-->>App: Certificate number and expiry date数据字典
烟囱清扫日志架构中每个类的完整字段级参考。
| 字段 | 类型 | 描述 | 必需 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 自动 |
| username | String | Login name for a coordinator, manager, or field user | |
| String | Email address for notifications and access | ||
| password | String | Hashed password (write-only) | |
| fullName | String | Display name for the sweep user | |
| role | String | Role in the chimney sweep workflow (e.g. manager, coordinator, technician) | |
| createdAt | Date | Auto-generated creation timestamp | 自动 |
| updatedAt | Date | Auto-generated last-update timestamp | 自动 |
8 字段在 SweepUser 中
安全和权限
如何通过ACL和CLP策略保护清扫作业、检查照片、烟灰日志和安全证书。
技术人员拥有的清扫记录
只有指定的技术人员或协调员应该创建、更新或关闭他们控制的清扫作业。
照片和日志完整性
使用云代码确保检查照片和烟灰移除日志条目在保存前指向一个真实的清扫作业。
证书访问控制
限制安全证书的读取和编辑权限给已批准的员工,以保持发放和到期详细信息准确。
架构(JSON)
准备好复制到Back4app或作为实施参考使用的原始JSON架构定义。
{
"classes": [
{
"className": "SweepUser",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"username": {
"type": "String",
"required": true
},
"email": {
"type": "String",
"required": true
},
"password": {
"type": "String",
"required": true
},
"fullName": {
"type": "String",
"required": true
},
"role": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Property",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"propertyName": {
"type": "String",
"required": true
},
"addressLine": {
"type": "String",
"required": true
},
"contactName": {
"type": "String",
"required": true
},
"contactPhone": {
"type": "String",
"required": true
},
"assignedCoordinator": {
"type": "Pointer",
"required": true,
"targetClass": "SweepUser"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Inspection",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"property": {
"type": "Pointer",
"required": true,
"targetClass": "Property"
},
"inspector": {
"type": "Pointer",
"required": true,
"targetClass": "SweepUser"
},
"inspectionDate": {
"type": "Date",
"required": true
},
"chimneyCondition": {
"type": "String",
"required": true
},
"inspectionNotes": {
"type": "String",
"required": false
},
"status": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "InspectionPhoto",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"inspection": {
"type": "Pointer",
"required": true,
"targetClass": "Inspection"
},
"photoUrl": {
"type": "String",
"required": true
},
"caption": {
"type": "String",
"required": false
},
"takenBy": {
"type": "Pointer",
"required": true,
"targetClass": "SweepUser"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "SootRemovalLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"inspection": {
"type": "Pointer",
"required": true,
"targetClass": "Inspection"
},
"technician": {
"type": "Pointer",
"required": true,
"targetClass": "SweepUser"
},
"sootLevel": {
"type": "String",
"required": true
},
"removalMethod": {
"type": "String",
"required": true
},
"amountRemoved": {
"type": "Number",
"required": true
},
"workNotes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "SafetyCertificate",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"inspection": {
"type": "Pointer",
"required": true,
"targetClass": "Inspection"
},
"certificateNumber": {
"type": "String",
"required": true
},
"issuedBy": {
"type": "Pointer",
"required": true,
"targetClass": "SweepUser"
},
"issueDate": {
"type": "Date",
"required": true
},
"expiryDate": {
"type": "Date",
"required": true
},
"certificateStatus": {
"type": "String",
"required": true
},
"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(系统)。 安全性: - 只有被分配的技术人员或协调员可以创建、更新或关闭他们控制的清扫工作。使用云代码验证检查照片和煤烟清除日志条目指向真实的清扫工作。限制安全证书访问给被批准的员工。 认证: - 注册,登录,登出。 行为: - 列出清扫工作,上传检查照片,记录煤烟清除日志,并签发安全证书。 交付: - 带有架构、ACLs、CLPs的 Back4app 应用;用于清扫工作、检查照片、煤烟日志和安全证书跟踪的前端。
按下面的按钮打开代理,模板提示将预先填写。
这是没有技术后缀的基本提示。您可以之后调整生成的前端堆栈。
API 操作台
尝试针对烟囱清扫者架构的 REST 和 GraphQL 端点。响应使用模拟数据,无需 Back4app 账户。
使用与此模板相同的架构。
选择您的技术
展开每个卡片以查看如何将 SweepJob、InspectionPhoto 和 SootRemovalLog 与您选择的技术栈集成。
Flutter 烟囱清扫日志后台
React 烟囱清扫日志后台
React 原生 烟囱清扫日志后台
Next.js 烟囱清扫日志后台
JavaScript 烟囱清扫日志后台
Android 烟囱清扫日志后台
iOS 烟囱清扫日志后台
Vue 烟囱清扫日志后台
Angular 烟囱清扫日志后台
GraphQL 烟囱清扫日志后台
REST API 烟囱清扫日志后台
PHP 烟囱清扫日志后台
.NET 烟囱清扫日志后台
每种技术带给您的好处
每个烟囱清洁工使用相同的烟囱清洁后端架构和API合同。
统一的烟囱工作数据
使用一个一致的模型管理SweepJob、InspectionPhoto、SootRemovalLog和SafetyCert。
照片支持的服务证明
将检查照片附加到正确的清洁工作以便后续审核。
为团队追踪安全证书
监控问题和到期日期,以便证书状态对协调员可见。
明确技术人员的工作流程
分配工作、记录烟灰清除,和使用共享后端更新工作状态。
烟囱清扫框架比较
比较所有支持的技术的设置速度、SDK 风格和 AI 支持。
| 框架 | 设置时间 | 烟囱清扫好处 | SDK 类型 | AI 支持 |
|---|---|---|---|---|
| 大约 5 分钟 | 移动和网络上的烟囱清扫工作统一代码库。 | 类型化 SDK | 全部 | |
| 少于5分钟 | 为烟囱清扫协调员提供快速的网络仪表板。 | 类型化SDK | 全部 | |
| 大约3-7分钟 | 针对现场技术人员的跨平台移动应用。 | 类型化SDK | 全部 | |
| 快速(5分钟)设置 | 用于烟囱清扫操作的服务器渲染网络应用。 | 类型化SDK | 全部 | |
| ~3–5 分钟 | 轻量级网络集成用于清扫日志。 | 键入 SDK | 全部 | |
| 大约 5 分钟 | 用于现场检查照片的原生 Android 应用。 | 键入 SDK | 全部 | |
| 不到 5 分钟 | 用于烟囱服务备注的原生 iPhone 应用。 | 键入 SDK | 全部 | |
| ~3–7 分钟 | 智能品牌网络用户界面用于烟囱清扫日志。 | 输入的 SDK | 全部 | |
| 快速(5分钟)设置 | 调度和认证跟踪的操作仪表板。 | 输入的 SDK | 全部 | |
| 少于 2 分钟 | 灵活的品牌 0 API 用于嵌套清扫作业视图。 | 品牌 0 API | 全部 | |
| 快速(2分钟)设置 | REST API 集成用于现场日志和上传。 | 品牌 0 | 全部 | |
| 大约 3 分钟 | 服务器端 PHP 后端用于清扫日志工具。 | REST API | 全部 | |
| 大约 3–7 分钟 | .NET 后端用于烟囱服务记录。 | 类型化 SDK | 全部 |
设置时间反映从项目启动到使用此模板架构的第一次 SweepJob 或 InspectionPhoto 查询的预期持续时间。
常见问题
关于使用此模板构建烟囱清扫日志应用后端的常见问题。