ELD备份日志的关键要点
此模板为您提供了一个包含工作状态、里程日志和故障报告的ELD备份纸质日志后端,以便运营团队可以保持备份记录的结构化和可搜索性。
- 工作状态条目保持结构化 — 为每个DutyLog行建模,包含司机、状态和状态日期时间字段以便快速查看。
- 里程日志仍然可追踪 — 存储每个MileageLog,包括里程表开始、里程表结束、行驶公里数和行程日期。
- 故障报告简单易行 — 捕获故障报告的详细信息,如位置、车辆单位、问题摘要和报告时间。
ELD 备份纸质日志后台概览
培训、认证和例外应包含在结构化的 ELD 备份纸质日志数据中,而不是在在人离开时消失的一次性电子邮件中。小延迟会迅速累积。在 Back4app 上,司机、DutyLog、MileageLog、BreakdownReport 和 TripEntry 连接成一个连贯的 ELD 备份纸质日志叙述,而不是一堆无关的工单和文件。该架构涵盖司机(fullName、employeeId、licenseNumber)、DutyLog(driver、dutyStatus、statusDateTime、notes)、MileageLog(driver、tripDate、odometerStart、odometerEnd、milesDriven)、BreakdownReport(driver、vehicleUnit、location、issueSummary、reportedAt)和 TripEntry(driver、dutyLog、routeName、backupNotes),并内置认证和备份日志工作流。连接您首选的前端,快速交付。
最佳适用于:
ELD备份纸质日志后端概述
当日常工作变得无聊时,ELD备份纸质日志团队获胜:可预测的记录、明显的所有权,以及在小问题变成事件之前的警报。
这里的每个技术卡片都映射到相同的司机、DutyLog和MileageLog模型——选择一个堆栈而无需重新谈判您的后端合同。
核心ELD备份日志功能
此中心中的每个技术卡都使用相同的 ELD 备份纸日志架构,包括 Driver、DutyLog、MileageLog、BreakdownReport 和 TripEntry。
司机名册管理
司机类存储fullName、employeeId和licenseNumber。
职责状态记录
DutyLog 类记录 dutyStatus、statusDateTime 和备注。
里程日志记录
MileageLog 类存储 tripDate、odometerStart、odometerEnd 和 milesDriven。
分解报告
BreakdownReport 类保存 vehicleUnit、location、issueSummary 和 reportedAt。
行程条目连续性
TripEntry 类链接了司机、值班日志、路线名称和备忘录。
为什么要使用Back4app构建您的ELD备份纸质日志后端?
Back4app为您提供司机、职责、里程和故障原语,以便您的团队可以专注于记录工作和恢复操作,而不是托管自定义API。
- •DutyLog和MileageLog准备好进行查询: DutyLog类和MileageLog类将职责状态和行驶里程保存在不同的字段中,这有助于调度人员根据tripDate或司机审核纸质条目。
- •BreakdownReport记录易于验证: 使用BreakdownReport配合vehicleUnit、location和issueSummary,这样主管就可以检查事件报告,而无需翻阅自由格式的笔记。
- •一个后端中的实时和API访问: Live Queries可以刷新DutyLog更改,同时REST和GraphQL依然提供相同的Driver、TripEntry和BreakdownReport数据。
保持备份日志流动,为现场工作人员、调度和管理人员提供一个后端合同。
核心优势
一个备份日志后端,帮助管理人员和协调员保持现场条目的清晰和可搜索性。
更快的工作审核
按状态日期时间对DutyLog行进行排序,以便监督员可以首先检查最近的纸质日志更改。
里程线保持一致
在MileageLog中存储odometerStart、odometerEnd和milesDriven,而不是将距离分散到自由文本中。
故障有上下文
使用BreakdownReport与vehicleUnit、location和issueSummary捕捉情况,而不丢失关键信息。
可追溯的备份条目
TripEntry将routeName和backupNotes与创建它们的司机和工作日志关联。
清晰的访问边界
应用ACL和CLP规则,仅允许授权角色编辑DutyLog、MileageLog和BreakdownReport记录。
AI辅助启动
快速生成模式和第一次集成通道,只需一个结构化提示。
准备好启动您的ELD备份日志应用程序了吗?
让 Back4app AI代理从一个提示搭建您的ELD备份纸质日志后端,并生成工作日志、里程日志和故障报告流程。
免费开始 — 每月50个AI代理提示,无需信用卡
技术栈
此 ELD 备份纸日志模板中包含的所有内容。
ELD 备份日志的实体关系图
ELD 备份纸质日志模式的实体关系模型。
涵盖驾驶员、工作日志、里程日志、故障报告和行程记录的模式。
查看图表源
erDiagram
Driver ||--o{ Vehicle : "assignedDriver"
Driver ||--o{ DutyStatusEntry : "driver"
Vehicle ||--o{ DutyStatusEntry : "vehicle"
Driver ||--o{ MileageLog : "driver"
Vehicle ||--o{ MileageLog : "vehicle"
Driver ||--o{ BreakdownReport : "driver"
Vehicle ||--o{ BreakdownReport : "vehicle"
DutyStatusEntry ||--o{ PaperLogAttachment : "dutyStatusEntry"
Driver ||--o{ PaperLogAttachment : "uploadedBy"
Driver {
String objectId PK
String username
String email
String password
String driverName
String role
String homeTerminal
Date createdAt
Date updatedAt
}
Vehicle {
String objectId PK
String unitNumber
String vin
String licensePlate
String status
String assignedDriverId FK
Date createdAt
Date updatedAt
}
DutyStatusEntry {
String objectId PK
String driverId FK
String vehicleId FK
String status
Date statusDateTime
String location
String remarks
Date createdAt
Date updatedAt
}
MileageLog {
String objectId PK
String driverId FK
String vehicleId FK
Date tripDate
Number odometerStart
Number odometerEnd
Number milesDriven
String routeSummary
Date createdAt
Date updatedAt
}
BreakdownReport {
String objectId PK
String driverId FK
String vehicleId FK
String reportNumber
Date reportedAt
String issueType
String severity
String status
String location
String notes
Date createdAt
Date updatedAt
}
PaperLogAttachment {
String objectId PK
String dutyStatusEntryId FK
String fileUrl
String fileName
String uploadedById FK
Date createdAt
Date updatedAt
}
备份日志的集成流程
签到、值班记录、里程捕获和故障报告的典型运行流程。
查看图表源
sequenceDiagram
participant Driver
participant App as ELD Backup Paper Log App
participant Back4app as Back4app Cloud
Driver->>App: Sign in to review backup duty log
App->>Back4app: POST /login
Back4app-->>App: Session token
Driver->>App: Open duty status entries
App->>Back4app: GET /classes/DutyStatusEntry?include=driver,vehicle&order=-statusDateTime
Back4app-->>App: DutyStatusEntry rows
Driver->>App: Add mileage log for the trip
App->>Back4app: POST /classes/MileageLog
Back4app-->>App: MileageLog objectId
Driver->>App: Submit a roadside issue
App->>Back4app: POST /classes/BreakdownReport
Back4app-->>App: BreakdownReport objectId
App->>Back4app: POST /classes/PaperLogAttachment
Back4app-->>App: PaperLogAttachment objectIdELD备份日志的数据字典
备份纸质日志模式中每个类的字段级参考。
| 字段 | 类型 | 描述 | 必需 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 自动 |
| username | String | Driver login name | |
| String | Driver email address | ||
| password | String | Hashed password (write-only) | |
| driverName | String | Name shown on paper log entries | |
| role | String | Role of the user (e.g. manager, coordinator, driver) | |
| homeTerminal | String | Terminal or depot assigned to the driver | |
| createdAt | Date | Auto-generated creation timestamp | 自动 |
| updatedAt | Date | Auto-generated last-update timestamp | 自动 |
9 字段在 Driver 中
纸质日志的安全性和权限
ACL和CLP策略如何保护司机、值班日志、里程日志、故障报告和行程条目。
司机档案所有权
只有经过认证的司机或批准的协调员可以编辑该员工ID的司机档案。
值班日志完整性
DutyLog 行数据只能由授权用户进行写入,Cloud Code 可以 Bloc 进行会重写 statusDateTime 历史的编辑。
限制的故障细分访问
保持故障报告的读取仅限于派遣、维护或分配的车队团队,当位置详情或问题摘要需要控制时。
ELD备份日志的模式(JSON)
准备好复制到Back4app或作为实施参考的原始JSON模式定义。
{
"classes": [
{
"className": "Driver",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"username": {
"type": "String",
"required": true
},
"email": {
"type": "String",
"required": true
},
"password": {
"type": "String",
"required": true
},
"driverName": {
"type": "String",
"required": true
},
"role": {
"type": "String",
"required": true
},
"homeTerminal": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Vehicle",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"unitNumber": {
"type": "String",
"required": true
},
"vin": {
"type": "String",
"required": true
},
"licensePlate": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"assignedDriver": {
"type": "Pointer",
"required": false,
"targetClass": "Driver"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "DutyStatusEntry",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"driver": {
"type": "Pointer",
"required": true,
"targetClass": "Driver"
},
"vehicle": {
"type": "Pointer",
"required": true,
"targetClass": "Vehicle"
},
"status": {
"type": "String",
"required": true
},
"statusDateTime": {
"type": "Date",
"required": true
},
"location": {
"type": "String",
"required": false
},
"remarks": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "MileageLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"driver": {
"type": "Pointer",
"required": true,
"targetClass": "Driver"
},
"vehicle": {
"type": "Pointer",
"required": true,
"targetClass": "Vehicle"
},
"tripDate": {
"type": "Date",
"required": true
},
"odometerStart": {
"type": "Number",
"required": true
},
"odometerEnd": {
"type": "Number",
"required": true
},
"milesDriven": {
"type": "Number",
"required": true
},
"routeSummary": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "BreakdownReport",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"driver": {
"type": "Pointer",
"required": true,
"targetClass": "Driver"
},
"vehicle": {
"type": "Pointer",
"required": true,
"targetClass": "Vehicle"
},
"reportNumber": {
"type": "String",
"required": true
},
"reportedAt": {
"type": "Date",
"required": true
},
"issueType": {
"type": "String",
"required": true
},
"severity": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"location": {
"type": "String",
"required": false
},
"notes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "PaperLogAttachment",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"dutyStatusEntry": {
"type": "Pointer",
"required": true,
"targetClass": "DutyStatusEntry"
},
"fileUrl": {
"type": "String",
"required": true
},
"fileName": {
"type": "String",
"required": true
},
"uploadedBy": {
"type": "Pointer",
"required": true,
"targetClass": "Driver"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}与AI代理一起构建
使用Back4app AI代理从此模板生成真实的ELD备份纸质日志应用程序,包括前端、后端、认证、值班日志、里程日志和故障报告流程。
在Back4app上创建一个ELD备份纸日志应用的后端,具有以下确切的架构和行为。 架构: 1. 驾驶员:fullName(字符串,必填),employeeId(字符串,必填),licenseNumber(字符串,必填),homeTerminal(字符串);objectId,createdAt,updatedAt(系统)。 2. DutyLog:driver(指向驾驶员的指针,必填),dutyStatus(字符串,必填),statusDateTime(日期,必填),notes(字符串);objectId,createdAt,updatedAt(系统)。 3. MileageLog:driver(指向驾驶员的指针,必填),tripDate(日期,必填),odometerStart(数字,必填),odometerEnd(数字,必填),milesDriven(数字,必填),routeName(字符串);objectId,createdAt,updatedAt(系统)。 4. BreakdownReport:driver(指向驾驶员的指针,必填),vehicleUnit(字符串,必填),location(字符串,必填),issueSummary(字符串,必填),reportedAt(日期,必填),status(字符串,必填);objectId,createdAt,updatedAt(系统)。 5. TripEntry:driver(指向驾驶员的指针,必填),dutyLog(指向DutyLog的指针,必填),routeName(字符串,必填),backupNotes(字符串),shiftDate(日期,必填);objectId,createdAt,updatedAt(系统)。 安全性: - 只有指定的驾驶员或协调员可以更新驾驶员和日志条目。使用云代码进行验证。 认证: - 注册、登录、登出。 行为: - 列出驾驶员,创建工作日志,添加里程日志,并提交故障报告。 交付: - 带有架构、ACL、CLP的Back4app应用;驾驶员档案、工作日志、里程日志、故障报告和行程条目的前端。
按下面的按钮打开代理,使用此模板提示预填。
这是没有技术后缀的基本提示。您可以在之后调整生成的前端堆栈。
ELD备份日志的API演示
尝试使用纸日志架构的REST和GraphQL端点。响应使用模拟数据,无需Back4app账户。
使用与此模板相同的架构。
选择您的技术用于ELD备份日志
展开每张卡片,了解如何将 Driver、DutyLog 和 MileageLog 与您选择的技术栈集成。
Flutter ELD备份纸质日志后端
React ELD备份纸质日志后端
React 原生 ELD备份纸质日志后端
Next.js ELD备份纸质日志后端
JavaScript ELD备份纸质日志后端
Android ELD备份纸质日志后端
iOS ELD备份纸质日志后端
Vue ELD备份纸质日志后端
Angular ELD备份纸质日志后端
GraphQL ELD备份纸质日志后端
REST API ELD备份纸质日志后端
PHP ELD备份纸质日志后端
.NET ELD备份纸质日志后端
您每种技术获得的内容
每个技术栈使用相同的 ELD 备份纸质日志模式和 API 合同。
统一的纸质日志数据结构
使用一个一致的模式管理司机、值班日志、里程日志和故障报告。
备份值班状态跟踪
记录与现场文档匹配的时间戳的值班状态变化。
里程和路线记录
存储 tripDate、routeName 和 milesDriven 以供审核和对账。
运营的详细报告
跟踪 vehicleUnit、location 和 issueSummary 以便于维护和调度跟进。
REST/GraphQL APIs 记录
从网络、移动或后台工具集成相同的 ELD 备份纸质日志数据。
可扩展的车队工作流程
以新类的形式添加检查、提醒或警报,而不替换基础架构。
ELD 备份框架比较
比较所有支持的技术中的设置速度、SDK 风格和 AI 支持。
| 框架 | 设置时间 | ELD备份好处 | SDK 类型 | AI支持 |
|---|---|---|---|---|
| 大约5分钟 | 用于DutyLog、MileageLog和故障报告的单一代码库。 | 类型化SDK | 完整 | |
| 少于5分钟 | 快速网络仪表板,用于备份日志审核。 | 类型化SDK | 完整 | |
| ~3–7分钟 | 用于现场日志捕获的跨平台移动应用程序。 | 输入的SDK | 完整 | |
| 快速设置(5分钟) | 供调度员和经理使用的服务器渲染仪表板。 | 输入的SDK | 完整 | |
| ~3–5分钟 | 轻量级网页集成用于纸质日志。 | 输入的SDK | 完整 | |
| 大约5分钟 | 原生 Android 应用程序,供驾驶员和协调员使用。 | 输入的 SDK | 完整 | |
| 少于 5 分钟 | 用于备份记录的原生 iPhone 应用程序。 | 输入的 SDK | 完整 | |
| 大约 3–7 分钟 | Reactive 网页 UI,适用于值班和里程屏幕。 | 输入的 SDK | 完整 | |
| 快速(5 分钟)设置 | 企业车队运营的网络应用程序。 | 输入的 SDK | 完整 | |
| 少于2分钟 | 灵活的 GraphQL API 用于日志和报告。 | GraphQL API | 完整 | |
| 快速(2分钟)设置 | REST API 集成用于备份日志表单。 | REST API | 完整 | |
| 约3分钟 | 服务器端 PHP 后端用于车队日志记录。 | REST API | 完整 | |
| ~3–7分钟 | .NET 后端用于职责和里程工作流程。 | 输入的SDK | 完整 |
设置时间反映从项目引导到首次DutyLog或MileageLog查询的预期时长,使用此模板架构。
常见问题
关于使用此模板构建 ELD 备份纸质日志后端的常见问题。