Templat Backend Aplikasi Penyewaan Kontainer
Kontrol penurunan yard dan ContainerCode
Backend penyewaan kontainer siap produksi di Back4app dengan containerCode, isoSize, laporan kondisi, dan manajemen lokasi penurunan. Termasuk diagram ER, kamus data, skema JSON, sandbox API, dan prompt AI Agent untuk bootstrap cepat.
Poin Penting Penyewaan Kontainer
Templat ini memberikan Anda backend penyewaan kontainer dengan containerCode, isoSize, laporan kondisi, dan lokasi pengantaran sehingga staf meja Anda dapat memberikan kutipan, memesan, memeriksa, dan mengirimkan unit dengan sedikit tindak lanjut manual.
- Inventaris kontainer berdasarkan kode dan ukuran — Model setiap Kontainer dengan containerCode, isoSize, kondisi, dan status sehingga staf dapat mencocokkan unit 20GP, 40GP, atau 40HC dengan pemesanan yang tepat.
- Laporan kondisi yang terkait dengan unit — Lampirkan entri ConditionReport ke suatu Kontainer dan tangkap reportDate, conditionNotes, dan photosUrl sebelum pengambilan atau pengembalian.
- Kontrol lokasi pengantaran — Simpan catatan Pemesanan yang terikat pada DropOffLocation sehingga tim pengiriman tahu di mana setiap kontainer harus pergi.
- Operasi yang memanfaatkan peran — Pisahkan tindakan pemesanan pelanggan dari pembaruan staf pada catatan Booking dan ConditionReport.
- Satu backend untuk web dan mobile — Layani meja sewa Anda, staf yard, dan pelanggan melalui REST atau GraphQL tanpa menduplikasi model data kontainer.
Ikhtisar: Aplikasi Sewa Kontainer
Ketersediaan adalah target yang bergerak dalam penyewaan kontainer: jendela pemeliharaan, pengembalian yang terlambat, dan paket yang mengikat beberapa aset bersama. Penundaan kecil dapat menjadi cepat besar. Gunakan Container, Booking, ConditionReport, dan DropOffLocation di Back4app untuk mengkodekan ketersediaan sewa kontainer, pengait harga, dan catatan pemenuhan dalam satu backend yang kohesif. Skema mencakup User (username, email, password, role), Container (containerCode, isoSize, condition, status, owner), Booking (bookingNumber, container, customer, dropOffLocation, pickupDate, returnDate, deliveryStatus), ConditionReport (container, inspector, reportDate, conditionNotes, photosUrl), dan DropOffLocation (locationName, addressLine1, city, region, country, geoLat, geoLng, openHours) dengan otentikasi, kontrol pemesanan, dan alur kerja sewa yang terintegrasi. Hubungkan frontend pilihan Anda dan kirim lebih cepat.
Terbaik untuk:
Bagaimana backend Penyewaan Kontainer ini diorganisir
Tim penyewaan kontainer menang ketika pekerjaan rutin membosankan: catatan yang dapat diprediksi, kepemilikan yang jelas, dan peringatan sebelum masalah kecil menjadi insiden.
Gunakan Kontainer, Pemesanan, dan ConditionReport sebagai daftar periksa untuk ruang lingkup MVP: jika tidak dimodelkan, itu akan menjadi solusi spreadsheet.
Fitur Aplikasi Penyewaan Kontainer
Setiap kartu teknologi di pusat ini menggunakan skema backend sewa kontainer yang sama dengan User, Container, ConditionReport, DropOffLocation, dan Booking.
Inventaris kontainer
Kelas kontainer menyimpan containerCode, isoSize, kondisi, status, dan pemilik.
Alur kerja pemesanan
Kelas pemesanan menghubungkan pelanggan, kontainer, lokasi pengambilan, tanggal pengambilan, tanggal pengembalian, dan status pengiriman.
Laporan kondisi saat pengambilan dan pengembalian
Kelas ConditionReport menangkap reportDate, conditionNotes, dan photosUrl.
Manajemen lokasi penyerahan
Kelas DropOffLocation menyimpan locationName, addressLine1, city, region, country, geoLat, geoLng, dan openHours.
Mengapa Membangun Backend Penyewaan Kontainer Anda dengan Back4app?
Back4app memberi Anda kontainer, pemesanan, inspeksi, dan lokasi primitif sehingga tim Anda dapat fokus pada penyewaan daripada pemeliharaan server.
- •Rekaman kontainer dan pemesanan dalam satu tempat: Kelas Kontainer dan Pemesanan menyimpan containerCode, isoSize, status, dan pickupDate yang selaras.
- •Laporan kondisi yang tetap terikat pada aset: Entri ConditionReport menangkap conditionNotes, photosUrl, dan reportDate terhadap pointer Kontainer yang nyata.
- •Pembaruan lokasi dan status secara langsung: Gunakan Live Queries untuk perubahan Pemesanan sambil tetap menjaga REST dan GraphQL tersedia untuk setiap klien.
Bangun dan iterasi alur kerja penyewaan kontainer dengan cepat dengan satu kontrak backend di semua platform.
Manfaat Aplikasi Sewa Kontainer
Backend penyewaan kontainer yang menjaga ketersediaan, inspeksi, dan titik pengiriman terorganisir.
Penawaran lebih cepat untuk unit yang tersedia
Mulai dengan Container containerCode, isoSize, dan status fields alih-alih membangun logika inventaris ulang.
Serah terima dan pemeriksaan pengembalian yang lebih aman
Ikat setiap ConditionReport ke sebuah Container sehingga reportDate dan conditionNotes tetap terlihat untuk staf saat pengambilan dan pengembalian.
Perencanaan pengiriman yang jelas
Gunakan detail Booking dropOffLocation dan pickupDate untuk melihat kemana masing-masing container harus pergi.
Akses berbasis peran untuk staf dan pelanggan
Gunakan ACL/CLP sehingga pelanggan melihat entri Booking mereka sendiri sementara staf mengelola pembaruan Container dan ConditionReport.
Riwayat sewa yang bisa Anda query
Simpan setiap pemesanan, laporan, dan lokasi pengembalian di Parse sehingga meja dapat meninjau jalur sebuah container tanpa penggabungan spreadsheet.
Alur kerja bootstrap yang dibantu AI
Hasilkan kerangka backend dan panduan integrasi dengan cepat menggunakan satu prompt terstruktur.
Siap untuk meluncurkan aplikasi sewa kontainer Anda?
Biarkan Back4app AI Agent membuat kerangka backend sewa kontainer Anda dan menghasilkan containerCode, isoSize, laporan kondisi, dan lokasi pengembalian dari satu prompt.
Gratis untuk memulai — 50 prompt AI Agent/bulan, tanpa kartu kredit diperlukan
Tumpukan Teknologi Sewa Kontainer
Semua yang termasuk dalam template backend penyewaan kontainer ini.
Peta Hubungan Kontainer
Model hubungan entitas untuk skema backend penyewaan kontainer.
Skema yang mencakup pengguna, kontainer, laporan kondisi, lokasi penurunan, dan pemesanan.
Lihat sumber diagram
erDiagram
User ||--o{ Container : "owner"
User ||--o{ ConditionReport : "inspector"
User ||--o{ Booking : "customer"
Container ||--o{ ConditionReport : "inspected"
Container ||--o{ Booking : "reserved"
DropOffLocation ||--o{ Booking : "drop-off"
User {
String objectId PK
String username
String email
String password
String role
Date createdAt
Date updatedAt
}
Container {
String objectId PK
String containerCode
String isoSize
String condition
String status
String ownerId FK
Date createdAt
Date updatedAt
}
ConditionReport {
String objectId PK
String containerId FK
String inspectorId FK
Date reportDate
String conditionNotes
String photosUrl
Date createdAt
Date updatedAt
}
DropOffLocation {
String objectId PK
String locationName
String addressLine1
String city
String region
String country
Number geoLat
Number geoLng
String openHours
Date createdAt
Date updatedAt
}
Booking {
String objectId PK
String bookingNumber
String containerId FK
String customerId FK
String dropOffLocationId FK
Date pickupDate
Date returnDate
String deliveryStatus
Date createdAt
Date updatedAt
}
Alur Aplikasi Kontainer
Alur waktu berjalan yang khas untuk otentikasi, penelusuran kontainer, pembuatan pemesanan, pelaporan kondisi, dan pembaruan lokasi pengantaran.
Lihat sumber diagram
sequenceDiagram
participant User
participant App as Shipping Container Rental App
participant Back4app as Back4app Cloud
User->>App: Sign in
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Browse ISO sizes and container status
App->>Back4app: GET /classes/Container?include=owner&order=-updatedAt
Back4app-->>App: Container list
User->>App: Review condition report
App->>Back4app: GET /classes/ConditionReport?include=container,inspector
Back4app-->>App: Inspection notes and photos URL
User->>App: Schedule a drop-off booking
App->>Back4app: POST /classes/Booking
Back4app-->>App: Booking number and delivery status
App->>Back4app: GET /classes/DropOffLocation?order=city
Back4app-->>App: Drop-off locations
opt Live updates for desk staff
App->>Back4app: Subscribe to Booking and Container changes
Back4app-->>App: Booking status changed
endPanduan Lapangan
Referensi tingkat lapangan lengkap untuk setiap kelas dalam skema penyewaan kontainer.
| Lapangan | Tipe | Deskripsi | Diperlukan |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | Otomatis |
| username | String | User login name | |
| String | User email address | ||
| password | String | Hashed password (write-only) | |
| role | String | Role of the user (e.g., staff, owner, customer) | |
| createdAt | Date | Auto-generated creation timestamp | Otomatis |
| updatedAt | Date | Auto-generated last-update timestamp | Otomatis |
7 bidang di User
Aturan Akses dan Izin
Bagaimana strategi ACL dan CLP mengamankan pengguna, kontainer, pemesanan, laporan kondisi, dan lokasi penurunan.
Batasan pemesanan pelanggan
Pelanggan dapat membuat dan melihat entri Pemesanan mereka sendiri, sementara staf mempertahankan kontrol atas catatan Kontainer dan Lokasi Penurunan.
Integritas inspeksi
Hanya staf meja sewa yang berwenang yang boleh membuat atau mengubah entri Laporan Kondisi yang terkait dengan Kontainer.
Lokasi dan visibilitas aset
Gunakan pembacaan terarah sehingga tim yang tepat dapat melihat ketersediaan Kontainer, status Pemesanan, dan instruksi pengantaran tanpa mengungkapkan sewa yang tidak terkait.
Skema JSON
Definisi skema JSON mentah siap untuk disalin ke dalam Back4app atau digunakan sebagai referensi implementasi.
{
"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": "Container",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"containerCode": {
"type": "String",
"required": true
},
"isoSize": {
"type": "String",
"required": true
},
"condition": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"owner": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "ConditionReport",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"container": {
"type": "Pointer",
"required": true,
"targetClass": "Container"
},
"inspector": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"reportDate": {
"type": "Date",
"required": true
},
"conditionNotes": {
"type": "String",
"required": true
},
"photosUrl": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "DropOffLocation",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"locationName": {
"type": "String",
"required": true
},
"addressLine1": {
"type": "String",
"required": true
},
"city": {
"type": "String",
"required": true
},
"region": {
"type": "String",
"required": true
},
"country": {
"type": "String",
"required": true
},
"geoLat": {
"type": "Number",
"required": false
},
"geoLng": {
"type": "Number",
"required": false
},
"openHours": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Booking",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"bookingNumber": {
"type": "String",
"required": true
},
"container": {
"type": "Pointer",
"required": true,
"targetClass": "Container"
},
"customer": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"dropOffLocation": {
"type": "Pointer",
"required": true,
"targetClass": "DropOffLocation"
},
"pickupDate": {
"type": "Date",
"required": true
},
"returnDate": {
"type": "Date",
"required": false
},
"deliveryStatus": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}Bangun dengan AI Agent
Gunakan AI Agent Back4app untuk menghasilkan aplikasi sewa kontainer nyata dari template ini, termasuk frontend, backend, otentikasi, dan alur kontainer, pemesanan, inspeksi, dan pengantaran.
Buat backend Aplikasi Penyewaan Kontainer yang aman di Back4app dengan skema dan perilaku yang tepat ini. Skema: 1. Pengguna (gunakan bawaan Back4app): nama pengguna, email, kata sandi, peran; objectId, createdAt, updatedAt (sistem). 2. Kontainer: containerCode (String, diperlukan), isoSize (String, diperlukan), kondisi (String, diperlukan), status (String, diperlukan), pemilik (Pointer ke Pengguna, diperlukan); objectId, createdAt, updatedAt (sistem). 3. LaporanKondisi: kontainer (Pointer ke Kontainer, diperlukan), inspector (Pointer ke Pengguna, diperlukan), reportDate (Tanggal, diperlukan), conditionNotes (String, diperlukan), photosUrl (String, opsional); objectId, createdAt, updatedAt (sistem). 4. LokasiPengembalian: locationName (String, diperlukan), addressLine1 (String, diperlukan), kota (String, diperlukan), wilayah (String, diperlukan), negara (String, diperlukan), geoLat (Number, opsional), geoLng (Number, opsional), jamBuka (String, opsional); objectId, createdAt, updatedAt (sistem). 5. Pemesanan: bookingNumber (String, diperlukan), kontainer (Pointer ke Kontainer, diperlukan), pelanggan (Pointer ke Pengguna, diperlukan), lokasiPengembalian (Pointer ke LokasiPengembalian, diperlukan), pickupDate (Tanggal, diperlukan), returnDate (Tanggal, opsional), deliveryStatus (String, diperlukan); objectId, createdAt, updatedAt (sistem). Keamanan: - Staf dapat membuat dan memperbarui kontainer, laporan kondisi, dan lokasi pengembalian. - Pemilik dapat melihat kontainer dan pemesanan mereka sendiri. - Pelanggan dapat membuat pemesanan untuk kontainer yang tersedia dan melihat bookingNumbers dan deliveryStatus mereka sendiri. - Laporan kondisi harus terlihat oleh staf dan pemilik kontainer yang sesuai. Auth: - Daftar, masuk, keluar. Perilaku: - Daftar kontainer berdasarkan isoSize dan status. - Buat laporan kondisi setelah inspeksi. - Buat pemesanan yang terikat pada lokasi pengembalian yang dipilih. - Tampilkan status pengiriman dan detail lokasi kepada pelanggan. Pengiriman: - Aplikasi Back4app dengan skema, ACLs, CLPs; frontend untuk inventaris kontainer, laporan kondisi, manajemen pemesanan, dan pemilihan lokasi pengembalian.
Tekan tombol di bawah untuk membuka Agent dengan prompt template ini yang telah diisi sebelumnya.
Ini adalah prompt dasar tanpa akhiran teknologi. Anda dapat menyesuaikan tumpukan frontend yang dihasilkan setelahnya.
API Sandbox
Coba REST dan titik akhir GraphQL terhadap skema penyewaan kontainer. Tanggapan menggunakan data tiruan dan tidak memerlukan akun Back4app.
Menggunakan skema yang sama seperti template ini.
Pilih Teknologi
Perluas setiap kartu untuk melihat cara mengintegrasikan Container, Booking, dan ConditionReport dengan tumpukan yang Anda pilih.
Backend Penyewaan Flutter
Backend Penyewaan React
Backend Penyewaan React Native
Backend Penyewaan Next.js
Backend Penyewaan JavaScript
Backend Penyewaan Android
Backend Penyewaan iOS
Backend Penyewaan Vue
Backend Penyewaan Angular
Backend Penyewaan GraphQL
Backend Penyewaan REST API
Backend Penyewaan PHP
Backend Penyewaan .NET
Apa yang Anda Dapatkan dengan Setiap Teknologi
Setiap tumpukan menggunakan skema backend penyewaan container dan kontrak API yang sama.
Struktur inventaris sewa kontainer yang terpadu
Lacak container, booking, dan laporan kondisi dengan skema yang konsisten.
Log ukuran ISO untuk sewa kontainer
Identifikasi setiap container berdasarkan kode, ukuran, kondisi, dan status.
Pelaporan kondisi untuk sewa kontainer
Catat catatan inspeksi dan foto sebelum pengambilan atau setelah pengembalian.
Kontrol lokasi penyerahan di sewa kontainer
Simpan lokasi pengiriman dan instruksi pengembalian yang terikat pada setiap pemesanan.
Perbandingan Kerangka Sewa Kontainer
Bandingkan kecepatan pengaturan, gaya SDK, dan dukungan AI di seluruh teknologi yang didukung.
| Kerangka | Waktu Pengaturan | Manfaat Sewa Kontainer | Jenis SDK | Dukungan AI |
|---|---|---|---|---|
| Sekitar 5 menit | Satu basis kode untuk sewa kontainer di perangkat seluler dan web. | SDK Tertulis | Penuh | |
| Kurang dari 5 menit | Dasbor web cepat untuk staf meja sewa. | SDK Tertulis | Penuh | |
| ~3–7 menit | Aplikasi mobile lintas platform untuk tim yard dan pengiriman. | SDK Tipe | Penuh | |
| Pengaturan cepat (5 menit) | Aplikasi web yang dirender di server untuk pemesanan dan pemeriksaan inventaris. | SDK Tipe | Penuh | |
| ~3–5 menit | Integrasi web ringan untuk operasi sewa. | SDK Tipe | Penuh | |
| Sekitar 5 menit | Aplikasi Android Native untuk inspeksi halaman dan pengambilan drop-off. | SDK yang Diketik | Penuh | |
| Kurang dari 5 menit | Aplikasi iOS Native untuk staf lapangan dan pemeriksaan pemesanan di lokasi. | SDK yang Diketik | Penuh | |
| ~3–7 menit | Antarmuka web Reactive untuk ketersediaan kontainer dan laporan. | SDK yang Diketik | Penuh | |
| Pengaturan cepat (5 menit) | Aplikasi web perusahaan untuk tim sewa multi-depot. | SDK yang Diketik | Penuh | |
| Di bawah 2 menit | API GraphQL yang fleksibel untuk tampilan kontainer dan pemesanan bersarang. | GraphQL API | Penuh | |
| Pengaturan cepat (2 menit) | Integrasi REST API untuk layar pengiriman dan inventaris. | REST API | Penuh | |
| ~3 menit | Backend PHP sisi server untuk operasi penyewaan. | REST API | Penuh | |
| ~3–7 menit | .NET backend untuk alur kerja penyewaan kontainer perusahaan. | SDK Tipe | Penuh |
Waktu pengaturan mencerminkan durasi yang diharapkan dari permulaan proyek hingga kontainer pertama atau kueri pemesanan menggunakan skema template ini.
Pertanyaan sewa kontainer
Pertanyaan umum tentang membangun backend sewa kontainer dengan template ini.
Siap untuk Membangun Aplikasi Penyewaan Kontainer Anda?
Mulai proyek penyewaan kontainer Anda dalam beberapa menit. Tidak memerlukan kartu kredit.