Template Backend Marketplace Tenaga Kerja Pindahan
Pencarian Kru, Penerimaan Pemesanan, Penugasan, dan Tinjauan
Backend marketplace tenaga kerja pindahan yang siap produksi di Back4app dengan pencarian CrewListing, penerimaan BookingRequest, log CrewAssignment, dan catatan CrewReview. Termasuk diagram ER, kamus data, skema JSON, sandbox API, dan prompt AI Agent untuk bootstrap cepat.
Poin-Poin Penting
Template ini memberi Anda backend pasar tenaga kerja pemindahan dengan pencarian CrewListing, pengambilan BookingRequest, dan pelacakan CrewAssignment sehingga operator dapat mencocokkan permintaan dengan kru yang tersedia lebih cepat.
- Pencarian CrewListing — Model CrewListing dengan hourlyRate, crewSize, heavyLiftingCapability, serviceArea, equipmentNotes, dan availabilityStatus sehingga pembeli dapat membandingkan kru sebelum memesan.
- Pengambilan BookingRequest — Simpan BookingRequest dengan jobTitle, moveDate, startTime, hoursNeeded, pickupZip, dropoffZip, dan heavyItems untuk menangkap detail pemindahan.
- Log CrewAssignment — Jaga agar CrewAssignment terikat dengan bookingRequest, crewListing, assignedBy, crewSizeLogged, dan arrivalStatus untuk setiap pekerjaan yang dikirim.
- Riwayat CrewReview — Gunakan CrewReview dengan penilaian, komentar, dan safetyFlag untuk melacak hasil setelah catatan BookingRequest selesai.
Memahami Backend Pasar Tenaga Kerja Pindahan
Dalam pasar tenaga kerja pindahan, kebenaran operasional adalah jadwal — jika kalender salah, setiap janji yang mengikuti juga salah. Keandalan adalah fitur, bukan catatan kaki. Modelkan entitas inti di Back4app untuk memberi tim pasar tenaga kerja pindahan backend yang dapat berkembang dari satu yard ke operasi multi-lokasi. Skema mencakup User, CrewListing, BookingRequest, CrewAssignment, dan CrewReview dengan fitur alur kerja otentikasi dan pasar yang terintegrasi. Hubungkan frontend pilihan Anda dan kirim lebih cepat.
Terbaik untuk:
Ikhtisar backend Pasar Tenaga Kerja Pindahan
Pelanggan tidak peduli tentang alat internal Anda; mereka peduli apakah janji pasar tenaga kerja pindahan datang tepat waktu, dengan aset yang tepat dan dokumen yang tepat.
Ringkasan ini mengorientasikan tim di sekitar akun pengguna dan peran, profil pasar listing kru, intake permintaan booking sebelum siapa pun menyelami diagram ER atau ekspor JSON.
Fitur Utama Marketplace Tenaga Kerja Pemindahan
Setiap kartu teknologi di hub ini menggunakan skema backend tenaga kerja bergerak yang sama dengan User, CrewListing, BookingRequest, CrewAssignment, dan CrewReview.
Akun pengguna dan peran
Pengguna menyimpan nama pengguna, email, peran, nama tampilan, nomor telepon, dan area layanan.
Profil pasar CrewListing
CrewListing menyimpan judul, tarif per jam, ukuran tim, kemampuan pengangkatan berat, area layanan, dan status ketersediaan.
Penerimaan BookingRequest
BookingRequest menangkap jabatan, tanggal pindahan, waktu mulai, jam yang diperlukan, kode pos pengambilan, kode pos pengantaran, dan barang berat.
Pelacakan CrewAssignment
CrewAssignment menghubungkan bookingRequest, crewListing, assignedBy, crewSizeLogged, dan arrivalStatus.
Umpan balik CrewReview
CrewReview menyimpan bookingRequest, penilai, crewListing, penilaian, komentar, dan safetyFlag.
Mengapa Membangun Backend Pasar Tenaga Kerja Pindahan Anda dengan Back4app?
Back4app memberikan Anda primitif Pengguna, BookingRequest, dan CrewListing sehingga tim Anda dapat fokus pada mencocokkan kru dan pekerjaan pindahan daripada menyalurkan infrastruktur.
- •Manajemen CrewListing dan pemesanan: Kelas User, CrewListing, dan BookingRequest menyimpan identitas login, serviceArea, moveDate, pickupZip, dan dropoffZip di satu tempat.
- •Kontrol alur penugasan dan tinjauan: Catatan CrewAssignment dan CrewReview membuat crewSizeLogged, arrivalStatus, rating, dan safetyFlag terlihat setelah pengiriman.
- •Fleksibilitas Realtime + API: Gunakan Live Queries untuk pembaruan BookingRequest sambil menjaga REST dan GraphQL tersedia untuk dasbor pengiriman.
Bangun dan iterasi fitur tenaga kerja pemindahan dengan cepat dengan satu kontrak backend di semua platform.
Manfaat Utama
Backend tenaga kerja bergerak yang membantu Anda berpindah dari prospek ke penugasan kru tanpa menulis ulang lapisan data.
Penerimaan pemesanan lebih cepat
Mulai dari BookingRequest dengan moveDate, startTime, hoursNeeded, pickupZip, dan dropoffZip alih-alih menciptakan formulir pindahan baru.
Pemeriksaan kemampuan kru yang jelas
Gunakan CrewListing dengan heavyLiftingCapability, crewSize, dan equipmentNotes untuk menjaga agar pengangkatan tangga, dolly, dan tali tetap terlihat sebelum pengiriman.
Penugasan kru yang dapat Anda audit
CrewAssignment menjaga bookingRequest, crewListing, assignedBy, crewSizeLogged, dan arrivalStatus terlihat saat pekerjaan dikonfirmasi.
Akses terbatas untuk operator dan penggerak
Gunakan ACL/CLP sehingga hanya pengguna yang tepat yang dapat mengedit User, CrewListing, BookingRequest, dan CrewAssignment.
Riwayat dan tinjauan kerja
Simpan perubahan status BookingRequest, timestamp CrewAssignment, dan penilaian CrewReview tanpa merusak skema.
Alur kerja bootstrap AI
Hasilkan kerangka backend dan panduan integrasi dengan cepat menggunakan satu prompt terstruktur.
Siap untuk meluncurkan pasar tenaga kerja pindahan Anda?
Biarkan Agen AI Back4app membuat kerangka backend tenaga kerja pindahan Anda dan menghasilkan alur CrewListing, BookingRequest, CrewAssignment, dan CrewReview dari satu prompt.
Gratis untuk memulai — 50 prompt Agen AI/bulan, tidak memerlukan kartu kredit
Tumpukan Teknologi Tenaga Kerja Pindahan
Semua yang termasuk dalam template backend pasar tenaga kerja pindahan ini.
Diagram Kelas Marketplace
Model hubungan entitas untuk skema backend marketplace tenaga kerja yang berpindah.
Skema yang mencakup pengguna, daftar kru, permintaan pemesanan, tugas kru, dan ulasan kru.
Lihat sumber diagram
erDiagram
User ||--o{ CrewListing : "owner"
User ||--o{ BookingRequest : "buyer"
User ||--o{ CrewAssignment : "assignedBy"
User ||--o{ CrewReview : "reviewer"
CrewListing ||--o{ BookingRequest : "preferredCrew"
CrewListing ||--o{ CrewAssignment : "crewListing"
CrewListing ||--o{ CrewReview : "crewListing"
BookingRequest ||--o{ CrewAssignment : "bookingRequest"
BookingRequest ||--o{ CrewReview : "bookingRequest"
User {
String objectId PK
String username
String email
String password
String role
String displayName
String phoneNumber
String serviceArea
Date createdAt
Date updatedAt
}
CrewListing {
String objectId PK
String title
Number hourlyRate
Number crewSize
Boolean heavyLiftingCapability
String serviceArea
String equipmentNotes
String availabilityStatus
String ownerId FK
Date createdAt
Date updatedAt
}
BookingRequest {
String objectId PK
String jobTitle
Date moveDate
String startTime
Number hoursNeeded
String pickupZip
String dropoffZip
Boolean heavyItems
String status
String buyerId FK
String preferredCrewId FK
Date createdAt
Date updatedAt
}
CrewAssignment {
String objectId PK
String bookingRequestId FK
String crewListingId FK
String assignedById FK
Number crewSizeLogged
String arrivalStatus
Date startedAt
Date finishedAt
Date createdAt
Date updatedAt
}
CrewReview {
String objectId PK
String bookingRequestId FK
String reviewerId FK
String crewListingId FK
Number rating
String comment
Boolean safetyFlag
Date createdAt
Date updatedAt
}
Urutan Alur Kerja Pemesanan
Alur runtime yang khas untuk login, pencarian Daftar Kru, pembuatan Permintaan Pemesanan, pencatatan Tugas Kru, dan pembaruan Ulasan Kru.
Lihat sumber diagram
sequenceDiagram
participant Buyer
participant App as Moving Labor Marketplace App
participant Back4app as Back4app Cloud
Buyer->>App: Login
App->>Back4app: POST /login
Back4app-->>App: Session token
Buyer->>App: Search crew listings by hourlyRate, crewSize, and heavyLiftingCapability
App->>Back4app: GET /classes/CrewListing?where=...
Back4app-->>App: Matching CrewListing rows
Buyer->>App: Submit BookingRequest for a moveDate and hoursNeeded
App->>Back4app: POST /classes/BookingRequest
Back4app-->>App: BookingRequest objectId
Operator->>App: Assign CrewAssignment and log crewSizeLogged
App->>Back4app: POST /classes/CrewAssignment
Back4app-->>App: Assignment saved
App->>Back4app: Live query updates for BookingRequest status and CrewReview
Back4app-->>App: Updated move workflow and ratingsKamus Bidang
Referensi tingkat bidang lengkap untuk setiap kelas dalam skema pasar tenaga kerja bergerak.
| Bidang | 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 (buyer, seller, operator) | |
| displayName | String | Public name shown in the marketplace | |
| phoneNumber | String | Contact phone number | — |
| serviceArea | String | Primary metro area or region served | — |
| createdAt | Date | Auto-generated creation timestamp | Otomatis |
| updatedAt | Date | Auto-generated last-update timestamp | Otomatis |
10 bidang di User
Aturan Akses untuk Pengguna, Kru, dan Pemesanan
Bagaimana strategi ACL dan CLP mengamankan Pengguna, DaftarKru, PermintaanPemesanan, PenugasanKru, dan TinjauanKru.
Kontrol profil pengguna
Hanya pemilik akun atau operator yang dapat memperbarui nama pengguna, peran, namaTampilan, nomorTelepon, dan areaLayanan.
Integritas pemesanan
Hanya pembeli atau pengirim yang dapat membuat, mengedit, atau membatalkan baris BookingRequest dan CrewAssignment.
Visibilitas ulasan terbatas
Batasi pembacaan CrewReview hanya untuk peserta BookingRequest yang sesuai dan operator yang disetujui.
Skema JSON
Definisi skema JSON mentah siap untuk disalin ke 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
},
"displayName": {
"type": "String",
"required": true
},
"phoneNumber": {
"type": "String",
"required": false
},
"serviceArea": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "CrewListing",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"title": {
"type": "String",
"required": true
},
"hourlyRate": {
"type": "Number",
"required": true
},
"crewSize": {
"type": "Number",
"required": true
},
"heavyLiftingCapability": {
"type": "Boolean",
"required": true
},
"serviceArea": {
"type": "String",
"required": true
},
"equipmentNotes": {
"type": "String",
"required": false
},
"availabilityStatus": {
"type": "String",
"required": true
},
"owner": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "BookingRequest",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"jobTitle": {
"type": "String",
"required": true
},
"moveDate": {
"type": "Date",
"required": true
},
"startTime": {
"type": "String",
"required": true
},
"hoursNeeded": {
"type": "Number",
"required": true
},
"pickupZip": {
"type": "String",
"required": true
},
"dropoffZip": {
"type": "String",
"required": true
},
"heavyItems": {
"type": "Boolean",
"required": true
},
"status": {
"type": "String",
"required": true
},
"buyer": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"preferredCrew": {
"type": "Pointer",
"required": false,
"targetClass": "CrewListing"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "CrewAssignment",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"bookingRequest": {
"type": "Pointer",
"required": true,
"targetClass": "BookingRequest"
},
"crewListing": {
"type": "Pointer",
"required": true,
"targetClass": "CrewListing"
},
"assignedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"crewSizeLogged": {
"type": "Number",
"required": true
},
"arrivalStatus": {
"type": "String",
"required": true
},
"startedAt": {
"type": "Date",
"required": false
},
"finishedAt": {
"type": "Date",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "CrewReview",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"bookingRequest": {
"type": "Pointer",
"required": true,
"targetClass": "BookingRequest"
},
"reviewer": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"crewListing": {
"type": "Pointer",
"required": true,
"targetClass": "CrewListing"
},
"rating": {
"type": "Number",
"required": true
},
"comment": {
"type": "String",
"required": false
},
"safetyFlag": {
"type": "Boolean",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}Bangun dengan Agen AI
Gunakan Agen AI Back4app untuk menghasilkan aplikasi pasar tenaga kerja bergerak nyata dari template ini, termasuk frontend, backend, otentikasi, dan alur CrewListing, BookingRequest, CrewAssignment, dan CrewReview.
Buat backend aplikasi pasar tenaga kerja yang aman di Back4app dengan skema dan perilaku yang tepat ini. Skema: 1. User: username (String, diperlukan), email (String, diperlukan), password (String, diperlukan), role (String, diperlukan), displayName (String, diperlukan), phoneNumber (String, opsional), serviceArea (String, opsional); objectId, createdAt, updatedAt (sistem). 2. CrewListing: title (String, diperlukan), hourlyRate (Number, diperlukan), crewSize (Number, diperlukan), heavyLiftingCapability (Boolean, diperlukan), serviceArea (String, diperlukan), equipmentNotes (String, opsional), availabilityStatus (String, diperlukan), owner (Pointer to User, diperlukan); objectId, createdAt, updatedAt (sistem). 3. BookingRequest: jobTitle (String, diperlukan), moveDate (Date, diperlukan), startTime (String, diperlukan), hoursNeeded (Number, diperlukan), pickupZip (String, diperlukan), dropoffZip (String, diperlukan), heavyItems (Boolean, diperlukan), status (String, diperlukan), buyer (Pointer to User, diperlukan), preferredCrew (Pointer to CrewListing, opsional); objectId, createdAt, updatedAt (sistem). 4. CrewAssignment: bookingRequest (Pointer to BookingRequest, diperlukan), crewListing (Pointer to CrewListing, diperlukan), assignedBy (Pointer to User, diperlukan), crewSizeLogged (Number, diperlukan), arrivalStatus (String, diperlukan), startedAt (Date, opsional), finishedAt (Date, opsional); objectId, createdAt, updatedAt (sistem). 5. CrewReview: bookingRequest (Pointer to BookingRequest, diperlukan), reviewer (Pointer to User, diperlukan), crewListing (Pointer to CrewListing, diperlukan), rating (Number, diperlukan), comment (String, opsional), safetyFlag (Boolean, opsional); objectId, createdAt, updatedAt (sistem). Keamanan: - Pembeli dapat membuat catatan BookingRequest dan membaca pemesanan mereka sendiri. - Penjual dapat mengelola catatan CrewListing mereka sendiri. - Operator dapat membuat catatan CrewAssignment dan memperbarui status BookingRequest. - Catatan CrewReview hanya dapat dibuat setelah pemesanan selesai. Perilaku: - Cari kru berdasarkan hourlyRate, crewSize, heavyLiftingCapability, dan serviceArea. - Buat permintaan pemesanan dengan moveDate dan hoursNeeded. - Tugas kru dan catat crewSizeLogged. - Kumpulkan penilaian pasca-pekerjaan dan umpan balik keselamatan. Pengiriman: - Aplikasi Back4app dengan skema, ACL, CLP, dan alur UI untuk pembeli, penjual, dan operator, termasuk pencarian CrewListing, penerimaan BookingRequest, pelacakan CrewAssignment, dan pengambilan CrewReview.
Tekan tombol di bawah ini untuk membuka Agen dengan prompt template ini yang sudah terisi.
Ini adalah prompt dasar tanpa akhiran teknologi. Anda dapat mengadaptasi tumpukan frontend yang dihasilkan setelahnya.
API Sandbox
Coba endpoints REST dan GraphQL terhadap skema pasar tenaga kerja yang bergerak. Respon menggunakan data tiruan dan tidak memerlukan akun Back4app.
Menggunakan skema yang sama seperti template ini.
Pilih Tumpukan Anda
Perluas setiap kartu untuk melihat cara mengintegrasikan CrewListing, BookingRequest, dan CrewAssignment dengan tumpukan pilihan Anda.
Flutter Pasar Tenaga Kerja Pindahan Backend
React Pasar Tenaga Kerja Pindahan Backend
React Asli Pasar Tenaga Kerja Pindahan Backend
Next.js Pasar Tenaga Kerja Pindahan Backend
JavaScript Pasar Tenaga Kerja Pindahan Backend
Android Pasar Tenaga Kerja Pindahan Backend
iOS Pasar Tenaga Kerja Pindahan Backend
Vue Pasar Tenaga Kerja Pindahan Backend
Angular Pasar Tenaga Kerja Pindahan Backend
GraphQL Pasar Tenaga Kerja Pindahan Backend
REST API Pasar Tenaga Kerja Pindahan Backend
PHP Pasar Tenaga Kerja Pindahan Backend
.NET Pasar Tenaga Kerja Pindahan Backend
Apa yang Anda Dapatkan dengan Setiap Teknologi
Setiap tumpukan menggunakan skema backend tenaga kerja bergerak dan kontrak API yang sama.
Struktur data tenaga kerja bergerak yang terpadu
Dengan mudah mengelola Pengguna, CrewListing, BookingRequest, CrewAssignment, dan CrewReview dengan skema yang konsisten.
Pencocokan kru berdasarkan tarif dan ukuran
Bandingkan baris CrewListing dan tetapkan ukuran kru yang tepat untuk setiap permintaan pindahan.
Pelacakan kemampuan pengangkatan berat
Simpan kemampuanPengangkatanBerat dan catatanPeralatan yang terlampir pada setiap daftar kru.
Alur kerja operator yang dapat disesuaikan
Tentukan level akses dan izin yang disesuaikan untuk pembeli, penjual, dan operator.
Kerangka Pasar Pekerjaan Pindahan
Bandingkan kecepatan pengaturan, gaya SDK, dan dukungan AI di semua teknologi yang didukung.
| Kerangka Kerja | Waktu Pengaturan | Manfaat Pasar Tenaga Kerja Pindahan | Jenis SDK | Dukungan AI |
|---|---|---|---|---|
| Sekitar 5 menit | Basis kode tunggal untuk pengiriman mover di mobile dan web. | SDK Tersaring | Lengkap | |
| Kurang dari 5 menit | Dasbor web cepat untuk daftar kru dan pemesanan. | SDK Tersaring | Lengkap | |
| ~3–7 menit | Aplikasi mobile lintas platform untuk pengiriman mover. | SDK Tipe | Lengkap | |
| Pengaturan cepat (5 menit) | Aplikasi web yang dirender di server untuk operasi tenaga kerja pindahan. | SDK Tipe | Lengkap | |
| ~3–5 menit | Integrasi web ringan untuk pencocokan tenaga kerja. | SDK Tipe | Lengkap | |
| Sekitar 5 menit | Aplikasi Android asli untuk penggerak dan pengirim. | SDK Tipe | Lengkap | |
| Kurang dari 5 menit | Aplikasi iOS asli untuk koordinasi penggerak. | SDK Tipe | Lengkap | |
| ~3–7 menit | UI web Reactif untuk operasi pasar tenaga kerja. | SDK Tipe | Lengkap | |
| Pengaturan cepat (5 menit) | Aplikasi web perusahaan untuk alur kerja pengirim. | SDK Tipe | Lengkap | |
| Di bawah 2 menit | API GraphQL yang fleksibel untuk pencocokan tenaga kerja. | API GraphQL | Lengkap | |
| Pengaturan cepat (2 menit) | Integrasi REST API untuk sistem pengiriman tenaga kerja. | REST API | Lengkap | |
| ~3 menit | Backend PHP sisi server untuk pengiriman tenaga kerja. | REST API | Lengkap | |
| ~3–7 menit | .NET backend untuk operasi tenaga kerja pindahan. | SDK Tertulis | Lengkap |
Waktu pengaturan mencerminkan durasi yang diharapkan dari bootstrap proyek hingga kueri CrewListing atau BookingRequest pertama menggunakan skema template ini.
Pusat Bantuan
Pertanyaan umum tentang membangun backend pasar tenaga kerja pemindahan dengan template ini.
Siap untuk Membangun Pasar Tenaga Kerja Pindahan Anda?
Mulai proyek tenaga kerja pindahan Anda dalam hitungan menit. Tanpa kartu kredit diperlukan.