发电机租赁
与AI代理一起构建
发电机租赁后台

发电机租赁应用后台模板
燃料类型跟踪和紧急调度

一个在 Back4app 上准备好的 发电机租赁后台,包含发电机、预订、调度、运行日志和燃料检查。包括 ER 图、数据字典、JSON 模式、API 演练场,以及一个 AI 代理 提示以快速引导。

发电机租赁关键要点

本模板为您提供一个发电机租赁后端,包括 Generator、Booking、RuntimeLog、FuelCheck 和 Dispatch,以便您的团队可以从一个地方管理资产、租赁和服务呼叫。

  1. 与发电机关联的资产预订模型预订条目与关联的发电机记录,以便员工可以按地点和日期检查可用性。
  2. 燃料类型和负载可见性跟踪 Generator.fuelType、Booking.fuelTypeRequested 和 FuelCheck.fuelLevelPercent,以保持柴油、天然气或丙烷装置与工作对其。
  3. 具有服务上下文的运行日志使用 RuntimeLog.engineHours、RuntimeLog.runMinutes 和 RuntimeLog.loadPercent 来发现维护阈值,以免单元错过班次。

发电机租赁应用模板是什么?

最佳的发电机租赁体验感觉毫不费力,因为混乱的部分——冲突、押金和提醒——由结构化的工作流程处理。解决方案是操作性的,而不是激励性的。在 Back4app 上使用核心实体来编码发电机租赁的可用性、定价挂钩和履行记录,形成一个统一的后台。架构涵盖用户、发电机、预订、调度、运行日志和燃料检查,并内置了身份验证、预订和应急响应工作流程。连接你喜欢的前端,快速交付。

最佳适用于:

发电机租赁应用设备预订平台资产拥有者仪表板调度和维护跟踪工具最小可行产品推出团队选择 BaaS 进行租赁操作

发电机租赁后端概述

在发电机租赁中,小的不一致会累积:错误的状态变成错误的发货,然后是错误的发票,接着是失去的客户。

此处的每个技术卡片都映射到相同的用户账户和联系方式、发电机库存和燃料类型、预订调度模型——选择一个堆栈而无需重新谈判您的后端合同。

发电机租赁核心功能

该中心中的每张技术卡都使用相同的发电机租赁后端架构,包括用户、发电机、预订、运行日志、燃油检查和派遣。

用户账户和联系信息

用户为租赁台存储用户名、电子邮件、角色、公司名称和电话。

生成器库存和燃料类型

生成器捕获资产标签、品牌、型号、燃料类型、千瓦评分和可用状态。

预订调度

预订将生成器与用户连接,包含租赁开始、租赁结束和场地地址。

维护检查的运行时日志

RuntimeLog 存储引擎工作小时数、日志时间和负载百分比,以对应一个发电机。

燃料水平监控

FuelCheck 记录每个发电机的燃料类型、燃料水平百分比和检查时间。

紧急调度记录

调度跟踪预订、调度状态、紧急情况和司机姓名。

为什么要使用 Back4app 构建您的发电机租赁后端?

Back4app 为租赁台、所有者和客户提供一个共享的数据层,用于预订、燃料检查、运行日志和调度响应。

  • 发电机和预订记录集中在一个地方: 发电机和预订类保持资产可用性、站点详情和租赁日期的一致性。
  • 燃料类型和运行时间可见性: 如 Generator.fuelType、Booking.fuelTypeRequested 和 RuntimeLog.engineHours 等字段使得更容易发现需要加油或服务的单元。
  • 无需额外的管道即可查看调度状态: Dispatch.dispatchStatus、Dispatch.emergency 和 Booking.emergencyDispatch 使得紧急呼叫在网页和移动客户端上始终可见。

围绕预订、运行日志和调度记录构建租赁工作流,而无需拼接单独的服务。

发电机租赁的好处

一个发电机租赁后端,使从报价到派遣的操作保持可见。

更快的预订周转

预订和发电机类使接待处能够确认可用性,而无需在电子表格中搜索。

根据实际字段做出燃油决策

Generator.fuelType、Booking.fuelTypeRequested 和 FuelCheck.fuelLevelPercent 帮助员工派遣合适的加油计划。

服务呼叫的运行证据

RuntimeLog.engineHours 和 RuntimeLog.logTime 显示一个设备是否超过了服务窗口。

紧急响应清晰度

Dispatch.dispatchStatus、Dispatch.emergency 和 Dispatch.notes 确保紧急问题对相关人员保持可见。

资产所有者可见性

所有者可以查看预订、运行时读数和调度进度,而无需请求电子表格导出。

AI辅助引导

从一个结构化的提示生成租赁工作流程的架构、安全规则和集成指导。

准备好推出你的发电机租赁应用吗?

让 Back4app AI 代理搭建你的发电机租赁后端,并从一个提示中生成预订、燃料、运行时和调度工作流程。

免费开始 — 每月 50 个 AI 代理提示,无需信用卡

生成器租赁技术栈

所有内容均包含在此生成器租赁后端模板中。

前端
13+ 技术
后端
Back4app
数据库
MongoDB
身份验证
内置身份验证 + 会话
API
REST 和 GraphQL
实时
Live Queries

生成ER图

生成器租赁后端架构的实体关系模型。

查看图表源
Mermaid
erDiagram
    User ||--o{ Generator : "owner"
    User ||--o{ Booking : "customer"
    User ||--o{ RuntimeLog : "loggedBy"
    User ||--o{ FuelCheck : "checkedBy"
    Generator ||--o{ Booking : "reserved"
    Generator ||--o{ Dispatch : "dispatched"
    Generator ||--o{ RuntimeLog : "measured"
    Generator ||--o{ FuelCheck : "checked"
    Booking ||--o{ Dispatch : "fulfills"
    Booking ||--o{ RuntimeLog : "tracks"
    RuntimeLog ||--o{ FuelCheck : "references"

    User {
        String objectId PK
        String username
        String email
        String password
        String role
        String companyName
        String phone
        Date createdAt
        Date updatedAt
    }

    Generator {
        String objectId PK
        String assetTag
        String make
        String model
        String fuelType
        Number kWRating
        String availabilityStatus
        Number dailyRate
        String locationBase
        String ownerId FK
        Date createdAt
        Date updatedAt
    }

    Booking {
        String objectId PK
        String bookingNumber
        String generatorId FK
        String customerId FK
        Date rentalStart
        Date rentalEnd
        String siteAddress
        String status
        String fuelTypeRequested
        Boolean emergencyDispatch
        Date createdAt
        Date updatedAt
    }

    Dispatch {
        String objectId PK
        String bookingId FK
        String generatorId FK
        String dispatchStatus
        Date dispatchedAt
        Date arrivedAt
        String driverName
        Boolean emergency
        String notes
        Date createdAt
        Date updatedAt
    }

    RuntimeLog {
        String objectId PK
        String generatorId FK
        String bookingId FK
        String loggedById FK
        Date logTime
        Number engineHours
        Number runMinutes
        Number loadPercent
        String statusNote
        Date createdAt
        Date updatedAt
    }

    FuelCheck {
        String objectId PK
        String generatorId FK
        String runtimeLogId FK
        String checkedById FK
        Date checkTime
        String fuelType
        Number fuelLevelPercent
        Boolean topUpRequired
        String remarks
        Date createdAt
        Date updatedAt
    }

租赁集成流程

登录、生成器搜索、创建预订、记录运行日志和处理调度的典型运行流程。

查看图表源
Mermaid
sequenceDiagram
  participant User
  participant App as Industrial Generator Rental App
  participant Back4app as Back4app Cloud

  User->>App: Sign in to the rental desk or customer portal
  App->>Back4app: POST /login
  Back4app-->>App: Session token

  User->>App: Open generator roster by fuel type
  App->>Back4app: GET /classes/Generator?order=-updatedAt
  Back4app-->>App: Generator list with fuelType, availabilityStatus, and kWRating

  User->>App: Create a booking with rentalStart, rentalEnd, and fuelTypeRequested
  App->>Back4app: POST /classes/Booking
  Back4app-->>App: Booking objectId and bookingNumber

  User->>App: Mark dispatch or emergencyDispatch
  App->>Back4app: POST /classes/Dispatch
  Back4app-->>App: Dispatch status and delivery timestamps

  User->>App: Record runtime hours and fuel check
  App->>Back4app: POST /classes/RuntimeLog
  App->>Back4app: POST /classes/FuelCheck
  Back4app-->>App: Saved runtimeLog and fuelCheck entries

  App->>Back4app: Subscribe to live updates for dispatchStatus and availabilityStatus
  Back4app-->>App: Realtime changes for bookings, dispatches, and generator status

实地指南

生成器租赁架构中每个类别的完整现场级参考。

字段类型描述必填
objectIdStringAuto-generated unique identifier自动
usernameStringUser login name
emailStringUser email address
passwordStringHashed password (write-only)
roleStringAccount role: admin, rentalDesk, owner, customer, technician
companyNameStringCompany or organization name
phoneStringPrimary contact phone
createdAtDateAuto-generated creation timestamp自动
updatedAtDateAuto-generated last-update timestamp自动

9 字段在 User 中

安全和权限

ACL 和 CLP 策略如何保护用户、生成器、预订、运行时日志、燃料检查和调度记录。

用户记录控制

只有授权员工才能创建或修改用户条目;面向客户的视图应仅暴露已批准的联系方式字段。

发电机和预订所有权

租赁员工和资产所有者可以管理发电机和预订记录,而客户只能查看自己的预订。

运行时间和调度范围

运行日志、燃料检查和调度更新应限制给员工,云代码验证紧急状态变化。

JSON模式

原始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
        },
        "companyName": {
          "type": "String",
          "required": false
        },
        "phone": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "Generator",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "assetTag": {
          "type": "String",
          "required": true
        },
        "make": {
          "type": "String",
          "required": true
        },
        "model": {
          "type": "String",
          "required": true
        },
        "fuelType": {
          "type": "String",
          "required": true
        },
        "kWRating": {
          "type": "Number",
          "required": true
        },
        "availabilityStatus": {
          "type": "String",
          "required": true
        },
        "dailyRate": {
          "type": "Number",
          "required": true
        },
        "locationBase": {
          "type": "String",
          "required": false
        },
        "owner": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "Booking",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "bookingNumber": {
          "type": "String",
          "required": true
        },
        "generator": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Generator"
        },
        "customer": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "rentalStart": {
          "type": "Date",
          "required": true
        },
        "rentalEnd": {
          "type": "Date",
          "required": true
        },
        "siteAddress": {
          "type": "String",
          "required": true
        },
        "status": {
          "type": "String",
          "required": true
        },
        "fuelTypeRequested": {
          "type": "String",
          "required": true
        },
        "emergencyDispatch": {
          "type": "Boolean",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "Dispatch",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "booking": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Booking"
        },
        "generator": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Generator"
        },
        "dispatchStatus": {
          "type": "String",
          "required": true
        },
        "dispatchedAt": {
          "type": "Date",
          "required": true
        },
        "arrivedAt": {
          "type": "Date",
          "required": false
        },
        "driverName": {
          "type": "String",
          "required": false
        },
        "emergency": {
          "type": "Boolean",
          "required": false
        },
        "notes": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "RuntimeLog",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "generator": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Generator"
        },
        "booking": {
          "type": "Pointer",
          "required": false,
          "targetClass": "Booking"
        },
        "loggedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "logTime": {
          "type": "Date",
          "required": true
        },
        "engineHours": {
          "type": "Number",
          "required": true
        },
        "runMinutes": {
          "type": "Number",
          "required": false
        },
        "loadPercent": {
          "type": "Number",
          "required": false
        },
        "statusNote": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "FuelCheck",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "generator": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Generator"
        },
        "runtimeLog": {
          "type": "Pointer",
          "required": false,
          "targetClass": "RuntimeLog"
        },
        "checkedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "checkTime": {
          "type": "Date",
          "required": true
        },
        "fuelType": {
          "type": "String",
          "required": true
        },
        "fuelLevelPercent": {
          "type": "Number",
          "required": true
        },
        "topUpRequired": {
          "type": "Boolean",
          "required": false
        },
        "remarks": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    }
  ]
}

与AI代理一起构建

使用 Back4app AI 代理从此模板生成一个真实的发电机租赁应用,包括前端、后端、认证和预定、运行时、燃料和调度流程。

Back4app AI 代理
准备好构建
在 Back4app 上创建一个安全的发电机租赁应用后端,使用此确切的架构和行为。

架构:
1. 用户(使用 Back4app 内置):objectId, username, email, password, role, companyName, phone, createdAt, updatedAt。
2. 发电机:objectId, assetTag, make, model, fuelType, kWRating, availabilityStatus, dailyRate, locationBase, owner(指向用户的指针), createdAt, updatedAt。
3. 预定:objectId, bookingNumber, generator(指向发电机的指针), customer(指向用户的指针), rentalStart, rentalEnd, siteAddress, status, fuelTypeRequested, emergencyDispatch, createdAt, updatedAt。
4. 调度:objectId, booking(指向预定的指针), generator(指向发电机的指针), dispatchStatus, dispatchedAt, arrivedAt, driverName, emergency, notes, createdAt, updatedAt。
5. 运行时日志:objectId, generator(指向发电机的指针), booking(指向预定的指针), loggedBy(指向用户的指针), logTime, engineHours, runMinutes, loadPercent, statusNote, createdAt, updatedAt。
6. 燃料检查:objectId, generator(指向发电机的指针), runtimeLog(指向运行时日志的指针), checkedBy(指向用户的指针), checkTime, fuelType, fuelLevelPercent, topUpRequired, remarks, createdAt, updatedAt。

安全性:
- 租赁柜台员工可以创建预定和调度记录。
- 资产所有者可以更新发电机的 availabilityStatus、dailyRate 和 locationBase。
- 客户可以创建和查看自己的预定条目,并检查相关的调度、运行时日志和燃料检查记录。
- 运行时日志和燃料检查条目一旦保存应为追加模式,仅限管理员和原始日志用户进行修改。
- 及时向指定的租赁柜台团队展示紧急调度更新。

认证:
- 注册、登录、注销。

行为:
- 按燃料类型和可用状态过滤发电机。
- 使用 fuelTypeRequested 和 emergencyDispatch 标记创建预定。
- 更新交付、到达和归还的调度状态。
- 在租赁窗口内捕捉运行时日志和燃料检查。

交付:
- Back4app 应用,带有架构、CLP、ACL 和用于车队搜索、预定、紧急调度、运行时日志和燃料监测的前端视图。

点击下面的按钮以使用此模板提示预填充打开代理。

这是没有技术后缀的基础提示。您可以之后调整生成的前端栈。

几分钟内部署每月 50 个免费提示无需信用卡

API 游乐场

尝试使用 REST 和 GraphQL 端点对生成租赁模式进行测试。响应使用模拟数据,无需 Back4app 账户。

加载演示环境…

使用与此模板相同的模式。

选择您的技术

展开每个卡片以查看如何将生成器、预订和派遣与您选择的技术栈集成。

Flutter 生成器租赁后端

React 生成器租赁后端

React 原生 生成器租赁后端

Next.js 生成器租赁后端

JavaScript 生成器租赁后端

Android 生成器租赁后端

iOS 生成器租赁后端

Vue 生成器租赁后端

Angular 生成器租赁后端

GraphQL 生成器租赁后端

REST API 生成器租赁后端

PHP 生成器租赁后端

.NET 生成器租赁后端

每种技术带给您的

每个技术栈使用相同的生成器租赁后端架构和 API 合同。

为 发电机租赁 提供统一的租赁操作模型

通过一个模式管理用户、发电机、预订、运行日志、燃料检查和调度记录。

发电机租赁的燃料类型意识

通过Generator.fuelType过滤,并显示每个站点要求的正确单位。

发电机租赁的运行和计量跟踪

在服务窗口不延迟之前,查看RuntimeLog.engineHours和RuntimeLog.loadPercent。

发电机租赁的紧急调度可见性

跟踪Dispatch.dispatchStatus和紧急情况,从创建到关闭。

GraphQL的REST API用于发电机租赁

通过灵活的API集成调度工作台、客户门户和服务平板。

生成器租赁堆栈比较

比较所有支持技术中的设置速度、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完整

设置时间反映了从项目引导到使用此模板架构的第一个生成器或预订查询的预期持续时间。

常见问题

关于使用此模板构建发电机租赁后端的常见问题。

哪些发电机租赁政策在没有结构化预订数据的情况下最难执行?
将用户帐户和联系信息、发电机库存和燃料类型、预订调度与履行和退还检查联系起来的正确方法是什么?
我们如何在不重写预订逻辑的情况下添加新的发电机租赁费用结构或捆绑包?
我如何在 Flutter 中显示发电机可用性?
我如何在 Next.js 服务器代码中管理预订?
React Native 能离线缓存运行时日志吗?
我如何防止未经授权的调度更改?
在 Android 上展示发电机的最佳方法是什么?
从预订到调度的流程是如何工作的?
Parse 类别为此发电机租赁模板提供动力?

受到全球开发者的信任

通过Back4app模板加入团队,更快地发布发电机租赁产品

G2 Users Love Us Badge

准备好构建您的发电机租赁应用了吗?

在几分钟内开始您的发电机租赁项目。无需信用卡。

选择技术