舞臺及燈光租賃後端範本
設備預訂、服務記錄和交付排程
一個在 Back4app 上的可投入生產的 舞臺及燈光租賃後端,擁有 User、Venue、EquipmentItem、Booking、Delivery 和 BulbLifeLog 類別。在一個後端中跟蹤 bookingNumber、assetTag、wattage、deliveryCode 和 usageHours,並配備 ER 圖、數據字典、JSON 架構、API 游樂場和 AI Agent 提示。
租賃要點
本模板提供您一個舞台和燈光租賃後端,包含<strong>用戶</strong>、<strong>場地</strong>、<strong>設備項目</strong>、<strong>預訂</strong>、<strong>交付</strong>和<strong>燈泡壽命記錄</strong>,使租賃人員可以將規格、服務記錄和交付時間集中在一個地方。
- 考慮瓦特數的庫存 — 追蹤每個設備項目的<strong>資產標籤</strong>、<strong>名稱</strong>、<strong>類別</strong>、<strong>瓦特數</strong>和<strong>狀況</strong>,以便工作人員可以將正確的設備與場地匹配。
- 燈泡使用記錄 — 針對特定設備項目存儲燈泡壽命記錄條目,以記錄<strong>使用時數</strong>、<strong>燈泡狀態</strong>和檢查備註,以便在下一次預訂之前檢查。
- 交付規劃 — 使用與預訂相關聯的交付記錄來協調<strong>交付代碼</strong>、<strong>司機姓名</strong>、<strong>預定取件時間</strong>和<strong>預定交付時間</strong>。
- 租賃櫃台控制 — 管理訂單 <strong>bookingNumber</strong>、<strong>status</strong>、<strong>deliveryNeeded</strong> 和 <strong>customer</strong> 指標,以便在櫃台保持可讀的預約。
舞台與照明租賃後端一瞥
季節性對舞台與照明租賃影響深遠;沒有歷史數據,您無法預測需求、員工配置或閒置庫存佔用的資本。小的延遲會迅速累積。Back4app 促動舞台與照明租賃產品的核心實體,衝突、押金和物流需要與面向客戶的流程保持同步。模式涵蓋 <strong>用戶</strong>(用戶名、電子郵件、密碼、角色、顯示名稱、電話)、<strong>場地</strong>(名稱、地址、聯繫人姓名、聯繫電話、訪問註釋、創建者)、<strong>設備項目</strong>(資產標籤、名稱、類別、瓦特數、電壓、序列號、狀態、日租金、所有者)、<strong>預訂</strong>(訂單號、客戶、場地、項目、開始日期、結束日期、狀態、是否需要送貨、小計、備註)、<strong>送貨</strong>(送貨代碼、預訂、司機姓名、預定取貨時間、預定送達時間、狀態、路線備註、簽名網址)和 <strong>燈泡使用日志</strong>(設備項目、登錄者、使用小時數、燈泡狀態、檢查日期、備註),內建身份驗證、預訂和物流流程。連接您首選的前端,並更快發貨。
最佳選擇:
您在舞台與燈光租賃模板中獲得的內容
每個舞台與燈光租賃的負責人都希望減少「未知的未知」。結構化記錄將驚喜轉變為您可以提前檢測的例外。
該中心突顯設備庫存和瓦數過濾器、具有租賃窗口的預訂記錄、燈泡壽命記錄,以便您可以將客戶堆疊與相同的實體、字段和關係進行比較。
階段租賃核心功能
此中心中的每一張技術卡都使用相同的租賃後端架構,包含 <strong>User</strong>、<strong>Venue</strong>、<strong>EquipmentItem</strong>、<strong>Booking</strong>、<strong>Delivery</strong> 和 <strong>BulbLifeLog</strong>.
設備清單和瓦數篩選器
EquipmentItem 儲存 <strong>資產標籤</strong>、<strong>名稱</strong>、<strong>類別</strong>、<strong>瓦數</strong>、<strong>電壓</strong>、<strong>狀態</strong> 和 <strong>每日租金</strong>。
帶有租賃窗口的預訂記錄
預訂連結 <strong>預訂編號</strong>、<strong>客戶</strong>、<strong>場地</strong>、<strong>項目</strong>、<strong>開始日期</strong>、<strong>結束日期</strong>、<strong>狀態</strong> 和 <strong>是否需要配送</strong>。
燈泡壽命記錄
BulbLifeLog 捕捉 <strong>設備項目</strong>、<strong>記錄者</strong>、<strong>使用小時</strong>、<strong>燈泡狀態</strong> 和 <strong>檢查日期</strong>。
交付和取貨物流
交付商店 <strong>deliveryCode</strong>、<strong>booking</strong>、<strong>driverName</strong>、<strong>scheduledPickupAt</strong>、<strong>scheduledDropoffAt</strong>、<strong>status</strong> 和 <strong>signatureUrl</strong>.
為什麼使用 Back4app 構建您的舞台與燈光租賃後台?
Back4app 為您提供租賃訂單、庫存和物流的基本組件,讓您的員工可以花時間在裝載清單上,而不是水管工作。
- •為燈具和燈泡而建的庫存: EquipmentItem 將 <strong>assetTag</strong>、<strong>name</strong>、<strong>category</strong>、<strong>wattage</strong>、<strong>voltage</strong>、<strong>condition</strong> 和 <strong>dailyRate</strong> 聚集在一起,使得在預訂確認之前更容易篩選合適的設備。
- •重要的維護記錄: BulbLifeLog 儲存 <strong>equipmentItem</strong>、<strong>loggedBy</strong>、<strong>usageHours</strong>、<strong>bulbState</strong> 和 <strong>inspectionDate</strong>,因此燈泡更換不會被記錄在電子表格中。
- •交付和取件協調: 交付將 <strong>booking</strong> 與 <strong>deliveryCode</strong>、<strong>driverName</strong>、<strong>scheduledPickupAt</strong>、<strong>scheduledDropoffAt</strong> 和 <strong>status</strong> 關聯起來,讓運輸工作保留在租賃訂單的同一後端。
在每個平台上迅速構建和迭代租賃工作流程,使用一個後端合同。
租賃好處
一個租賃後端,幫助您的工作站更快移動,同時保持規格和物流可見。
更快速的預訂檢查
使用 EquipmentItem.<strong>wattage</strong> 和 <strong>condition</strong> 在預訂被接受之前確認燈具是否適合演出。
清潔工具維護歷史
燈泡使用記錄.<strong>使用小時數</strong>、<strong>燈泡狀態</strong> 和 <strong>檢查日期</strong> 為技術人員提供每個燈具可追溯的記錄。
更好的卡車規劃
交付.<strong>司機名稱</strong>、<strong>交付代碼</strong> 和 <strong>狀態</strong> 幫助調度協調實時裝載和退貨。
每個事件一條租賃記錄
訂單保持 <strong>訂單號碼</strong>、<strong>場地</strong>、<strong>需要交付</strong> 和 <strong>小計</strong> 一起,讓工作人員不必在工具之間追逐細節。
更安全的設備選擇
通過 <strong>瓦數</strong>、<strong>類別</strong> 和 <strong>狀況</strong> 進行篩選,以避免向場地發送錯誤的照明燈具。
AI輔助引導式啟動
快速生成架構、權限和示例租賃工作流程,使用一個結構化提示。
準備好啟動你的舞台與燈光租賃後端了嗎?
讓 Back4app AI 代理搭建你的租賃後端,並從一個提示中生成設備預訂、燈泡登記和配送物流。
免費開始 — 每月 50 條 AI 代理提示,無需信用卡
租賃技術棧
這個舞台與燈光租賃後端模板中包含所有內容。
實體圖
舞台和燈光租賃後端架構的實體關係模型。
涵蓋用戶、場地、設備項目、預訂、交付和燈泡使用日誌的架構。
查看圖示來源
erDiagram
User ||--o{ Venue : "createdBy"
User ||--o{ EquipmentItem : "owner"
User ||--o{ Booking : "customer"
User ||--o{ BulbLifeLog : "loggedBy"
Venue ||--o{ Booking : "venue"
Booking ||--o{ Delivery : "booking"
Booking }o--o{ EquipmentItem : "items"
EquipmentItem ||--o{ BulbLifeLog : "equipmentItem"
User {
String objectId PK
String username
String email
String password
String role
String displayName
String phone
Date createdAt
Date updatedAt
}
Venue {
String objectId PK
String name
String address
String contactName
String contactPhone
String accessNotes
String createdById FK
Date createdAt
Date updatedAt
}
EquipmentItem {
String objectId PK
String assetTag
String name
String category
Number wattage
String voltage
String serialNumber
String condition
Number dailyRate
String ownerId FK
Date createdAt
Date updatedAt
}
Booking {
String objectId PK
String bookingNumber
String customerId FK
String venueId FK
Array items
Date startDate
Date endDate
String status
Boolean deliveryNeeded
Number subtotal
String notes
Date createdAt
Date updatedAt
}
Delivery {
String objectId PK
String deliveryCode
String bookingId FK
String driverName
Date scheduledPickupAt
Date scheduledDropoffAt
String status
String routeNotes
String signatureUrl
Date createdAt
Date updatedAt
}
BulbLifeLog {
String objectId PK
String equipmentItemId FK
String loggedById FK
Number usageHours
String bulbState
Date inspectionDate
String notes
Date createdAt
Date updatedAt
}
預訂到交付流程
典型的登錄、設備項目查詢、預訂創建、燈泡壽命日誌檢查和交付安排的運行流程。
查看圖示源
sequenceDiagram
participant User
participant App as Stage & Lighting Rental App
participant Back4app as Back4app Cloud
User->>App: Sign in to the rental desk
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Load equipment by wattage and condition
App->>Back4app: GET /classes/EquipmentItem?order=-updatedAt
Back4app-->>App: EquipmentItem list
User->>App: Create a booking for a venue
App->>Back4app: POST /classes/Booking
Back4app-->>App: Booking objectId
User->>App: Add a delivery run and bulb life entry
App->>Back4app: POST /classes/Delivery
App->>Back4app: POST /classes/BulbLifeLog
Back4app-->>App: Delivery and BulbLifeLog saved
App->>Back4app: Subscribe to Booking, Delivery, and BulbLifeLog updates
Back4app-->>App: Live query events字段指南
舞台和燈光租賃架構中每個類的完整字段級參考。
| 字段 | 類型 | 描述 | 必填 |
|---|---|---|---|
| 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 (rentalDesk, assetOwner, customer, technician) | |
| displayName | String | Public-facing name for the account | |
| phone | String | Primary contact number | — |
| createdAt | Date | Auto-generated creation timestamp | 自動 |
| updatedAt | Date | Auto-generated last-update timestamp | 自動 |
9 欄位在 User 中
訪問和權限
ACL 和 CLP 策略如何保護客戶、訂單記錄、設備和物流記錄。
用戶帳戶控制
只有用戶資料的擁有者或授權人員應更新用戶名、電子郵件、電話和顯示名稱欄位。
訂單和庫存完整性
訂單和設備項目的寫入應在雲代碼中驗證,以保持瓦特數、狀態和租賃時間的準確性。
調度的範圍訪問
將交付和場地的可見性限制在租賃櫃檯、司機以及與訂單相關的客戶。
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
},
"displayName": {
"type": "String",
"required": true
},
"phone": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Venue",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"name": {
"type": "String",
"required": true
},
"address": {
"type": "String",
"required": true
},
"contactName": {
"type": "String",
"required": true
},
"contactPhone": {
"type": "String",
"required": true
},
"accessNotes": {
"type": "String",
"required": false
},
"createdBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "EquipmentItem",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"assetTag": {
"type": "String",
"required": true
},
"name": {
"type": "String",
"required": true
},
"category": {
"type": "String",
"required": true
},
"wattage": {
"type": "Number",
"required": true
},
"voltage": {
"type": "String",
"required": false
},
"serialNumber": {
"type": "String",
"required": false
},
"condition": {
"type": "String",
"required": true
},
"dailyRate": {
"type": "Number",
"required": true
},
"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
},
"customer": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"venue": {
"type": "Pointer",
"required": true,
"targetClass": "Venue"
},
"items": {
"type": "Array",
"required": true,
"targetClass": "EquipmentItem"
},
"startDate": {
"type": "Date",
"required": true
},
"endDate": {
"type": "Date",
"required": true
},
"status": {
"type": "String",
"required": true
},
"deliveryNeeded": {
"type": "Boolean",
"required": true
},
"subtotal": {
"type": "Number",
"required": true
},
"notes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Delivery",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"deliveryCode": {
"type": "String",
"required": true
},
"booking": {
"type": "Pointer",
"required": true,
"targetClass": "Booking"
},
"driverName": {
"type": "String",
"required": true
},
"scheduledPickupAt": {
"type": "Date",
"required": true
},
"scheduledDropoffAt": {
"type": "Date",
"required": true
},
"status": {
"type": "String",
"required": true
},
"routeNotes": {
"type": "String",
"required": false
},
"signatureUrl": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "BulbLifeLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"equipmentItem": {
"type": "Pointer",
"required": true,
"targetClass": "EquipmentItem"
},
"loggedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"usageHours": {
"type": "Number",
"required": true
},
"bulbState": {
"type": "String",
"required": true
},
"inspectionDate": {
"type": "Date",
"required": true
},
"notes": {
"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. 交付:交付代碼,預訂(指向預訂),司機姓名,預定取件時間,預定交付時間,狀態,路線註釋,簽名URL;objectId,createdAt,updatedAt(系統)。 6. 燈泡壽命記錄:設備項目(指向設備項目),登記人(指向用戶),使用小時,燈泡狀態,檢查日期,註釋;objectId,createdAt,updatedAt(系統)。 安全性: - 只有租賃櫃檯工作人員可以創建或更改預訂和交付記錄。 - 資產擁有者可以編輯自己的設備項目行並記錄他們管理的固定裝置的燈泡壽命記錄。 - 客戶可以創建預訂,查看自己的預訂和交付狀態,並閱讀與其訂單相關的場地詳細資料。 - 保護電話號碼、交付註釋和簽名URL的公共訪問。 身份驗證: - 註冊、登錄、登出。 行為: - 按功率和狀況列出固定裝置。 - 創建場地記錄、預訂、交付和燈泡壽命記錄。 - 在租賃確認之前顯示燈泡壽命歷史。 - 跟踪取件、交付和收據證明的物流。 交付: - Back4app應用程序,附帶架構、ACLs、CLPs;租賃櫃檯調度、資產擁有權、客戶預訂、燈泡壽命跟踪和交付派遣的前端。
按下面的按鈕以這個模板提示預填充的方式打開代理。
這是沒有技術後綴的基本提示。您可以在之後調整生成的前端堆棧。
API 沙箱
在舞台與燈光租賃架構上嘗試 REST 和 GraphQL 端點。響應使用模擬數據,且不需要 Back4app 帳戶。
使用與此模板相同的架構。
選擇您的技術
展開每個卡片以查看如何將名稱、地點和電話與您選擇的技術棧進行整合。
Flutter 舞台與燈光租賃後端
React 舞台與燈光租賃後端
React 原生 舞台與燈光租賃後端
Next.js 舞台與燈光租賃後端
JavaScript 舞台與燈光租賃後端
Android 舞台與燈光租賃後端
iOS 舞台與燈光租賃後端
Vue 舞台與燈光租賃後端
Angular 舞台與燈光租賃後端
GraphQL 舞台與燈光租賃後端
REST API 舞台與燈光租賃後端
PHP 舞台與燈光租賃後端
.NET 舞台與燈光租賃後端
您每種技術獲得什麼
每個堆棧都使用相同的舞台和照明租賃後端方案和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 租賃業務的網頁 UI。 | 輸入型 SDK | 完整 | |
| 快速 (5 分鐘) 設定 | 企業網頁應用程式用於租賃業務。 | 輸入型 SDK | 完整 | |
| 少於 2 分鐘 | 靈活的 GraphQL API 用於設備、訂單和日誌。 | GraphQL API | 完整 | |
| 快速(2分鐘)設置 | REST API 整合租賃工作流程。 | REST API | 完整 | |
| 約3分鐘 | 伺服器端 PHP 後端租賃入口網站。 | REST API | 完整 | |
| 約3–7分鐘 | .NET 後端租賃操作。 | 類型化 SDK | 完整 |
設置時間反映從專案啟動到使用此模板架構進行首次設備或預訂查詢的預期持續時間。
租賃問題
有關如何使用這個模板構建舞台和燈光租賃後端的常見問題。