Templat Backend Aplikasi Pengiriman Tank Oksigen __PH0__
Penugasan Tank dan Koordinasi Pengiriman
Sebuah backend pengiriman tank oksigen siap produksi di Back4app dengan akses pengguna, pengiriman PatientSite, pelacakan PSI TankAssignment, sejarah RefillLog, pencarian EmergencyContact, dan pelacakan DispatchEvent. Termasuk diagram ER, kamus data, skema JSON, playground API, dan prompt AI Agent untuk bootstrap cepat.
Poin-Poin Penting
Templat ini memberikan backend pengiriman oksigen dengan peran User, jendela pengiriman PatientSite, pelacakan PSI TankAssignment, riwayat RefillLog, dan pencarian EmergencyContact sehingga koordinator dapat mengelola pengiriman dengan lebih sedikit bolak-balik.
- Visibilitas Tank PSI — Lacak TankAssignment.psiLevel, status, dan lastCheckedAt sehingga tim pengiriman tahu tangki oksigen mana yang perlu diperhatikan.
- Riwayat pengisian ulang yang dapat Anda query — Catat setiap entri RefillLog dengan tankAssignment, refillTime, psiBefore, psiAfter, refillReason, dan refilledBy.
- Routing kontak darurat — Tautkan rekaman EmergencyContact ke PatientSite sehingga staf dapat bertindak cepat ketika deliveryWindowStart, deliveryWindowEnd, atau catatan akses menjadi penting.
- Koordinasi pengiriman dan pengemudi — Gunakan TankAssignment.assignedSite, assignedDriver, dan DispatchEvent.eventType untuk menjaga rute dan penyerahan menjadi jelas.
Memahami Backend Aplikasi Pengiriman Tangki Oksigen
Checkout pengiriman oksigen yang lancar menyembunyikan puluhan pemeriksaan: kelayakan, konflik, deposit, dan penyerahan untuk pemenuhan. Model entitas inti di Back4app untuk memberikan tim pengiriman oksigen sebuah backend yang dapat berkembang dari satu halaman ke operasi multi-lokasi. Skema mencakup Pengguna, LokasiPasien, PenugasanTangki, LogPengisianUlang, KontakDarurat, dan PeristiwaPengiriman dengan kontrol alur kerja otorisasi dan pengiriman yang terintegrasi. Hubungkan frontend pilihan Anda dan kirim lebih cepat.
Terbaik untuk:
Pengiriman Oksigen: snapshot backend
Tim mobile dan staf back-office melihat potongan realitas yang berbeda dalam pengiriman oksigen; pekerjaan produk adalah untuk menyatukan potongan tersebut tanpa permainan saling menyalahkan.
Pemangku kepentingan dapat memeriksa peran pengguna untuk tim pengiriman dan perawatan, manajemen lokasi pengiriman pasien, pelacakan psi untuk setiap penugasan tangki di sini: nama, hubungan, dan alur kerja yang mereka aktifkan.
Fitur Modul Pengiriman
Setiap kartu teknologi di hub ini menggunakan skema backend pengiriman oksigen yang sama dengan User, PatientSite, TankAssignment, RefillLog, EmergencyContact, dan DispatchEvent.
Peran pengguna untuk tim pengiriman dan perawatan
Pengguna menyimpan nama pengguna, email, peran, nomor telepon, dan status aktif.
Manajemen lokasi pengiriman PatientSite
PatientSite menyimpan siteName, addressLine1, kota, region, postalCode, dan deliveryWindowStart/end.
Pelacakan PSI untuk setiap TankAssignment
TankAssignment menyimpan tankSerialNumber, psiLevel, status, assignedSite, dan assignedDriver.
Riwayat pengisian ulang di RefillLog
RefillLog melacak tankAssignment, refillTime, psiBefore, psiAfter, refillReason, dan refilledBy.
Kirim acara untuk penyerahan rute
DispatchEvent menyimpan tankAssignment, eventType, eventTime, recordedBy, dan locationNote.
Mengapa Membangun Backend Pengiriman Tangki Oksigen Anda dengan Back4app?
Back4app memberikan Anda User, PatientSite, TankAssignment, RefillLog, EmergencyContact, dan DispatchEvent primitif sehingga tim Anda dapat fokus pada pengiriman yang aman dan catatan yang jelas alih-alih pekerjaan infrastruktur.
- •Pelacakan tangki dan pengisian ulang: TankAssignment.psiLevel, status, dan RefillLog.psiBefore/psiAfter menjaga pekerjaan pengiriman dan pengisian ulang terikat pada sumber kebenaran yang sama.
- •Koordinasi situs pengiriman: PatientSite.deliveryWindowStart, deliveryWindowEnd, dan catatan mendukung perencanaan rute dan pembaruan serah terima.
- •Integrasi kontak darurat: EmergencyContact terhubung ke PatientSite sehingga pengiriman dapat menghubungi orang yang tepat ketika psiLevel berada di bawah ambang batas.
Bangun dan sesuaikan alur kerja pengiriman oksigen dengan cepat dengan satu kontrak backend di semua platform.
Manfaat Pengiriman Utama
Sebuah backend pengiriman yang membantu Anda bergerak lebih cepat tanpa kehilangan fokus pada PSI, pengisian ulang, atau penanganan kontak.
Pengaturan rute dan lokasi lebih cepat
Mulai dari kelas PatientSite dan TankAssignment daripada membuat tabel logistik.
Pemeriksaan PSI yang lebih aman
Gunakan TankAssignment.psiLevel, status, dan nextServiceDueAt untuk menampilkan silinder rendah sebelum pengiriman.
Akuntabilitas pengisian ulang yang jelas
Tinjau kembali setiap nilai RefillLog.psiBefore dan psiAfter ketika seorang pengemudi atau teknisi menyelesaikan pengisian ulang tangki.
Eskalasi darurat yang dapat diandalkan
Hubungkan EmergencyContact ke alur pengiriman sehingga koordinator tahu siapa yang harus dihubungi ketika PatientSite tertunda.
Kirim jejak acara
Gunakan DispatchEvent.eventType, eventTime, dan recordedBy untuk menunjukkan apa yang terjadi selama setiap penyerahan.
Alur kerja bootstrap AI
Hasilkan kerangka backend dan panduan integrasi dengan cepat menggunakan satu permintaan terstruktur.
Siap untuk meluncurkan aplikasi pengiriman oksigen Anda?
Biarkan Back4app AI Agent membuat kerangka backend pengiriman oksigen Anda dan menghasilkan pelacakan TankAssignment PSI, riwayat RefillLog, dan pencarian EmergencyContact dari satu permintaan.
Gratis untuk memulai — 50 permintaan AI Agent/bulan, tanpa memerlukan kartu kredit
Tumpukan Teknologi Pengiriman
Semua termasuk dalam template backend pengiriman oksigen ini.
Peta Hubungan
Model hubungan entitas untuk skema backend pengiriman oksigen.
Skema yang mencakup pengguna, lokasi pengiriman, penugasan tangki, log isi ulang, kontak darurat, dan peristiwa pengiriman.
Lihat sumber diagram
erDiagram
User ||--o{ PatientSite : "primaryContact"
User ||--o{ TankAssignment : "assignedDriver"
User ||--o{ RefillLog : "refilledBy"
User ||--o{ DispatchEvent : "recordedBy"
PatientSite ||--o{ TankAssignment : "assignedSite"
PatientSite ||--o{ EmergencyContact : "site"
TankAssignment ||--o{ RefillLog : "tankAssignment"
TankAssignment ||--o{ DispatchEvent : "tankAssignment"
User {
String objectId PK
String username
String email
String password
String role
String phoneNumber
Boolean active
Date createdAt
Date updatedAt
}
PatientSite {
String objectId PK
String siteName
String addressLine1
String city
String region
String postalCode
Date deliveryWindowStart
Date deliveryWindowEnd
String primaryContactId FK
String notes
Date createdAt
Date updatedAt
}
TankAssignment {
String objectId PK
String tankSerialNumber
Number psiLevel
String status
String assignedSiteId FK
String assignedDriverId FK
Date lastCheckedAt
Date nextServiceDueAt
Date createdAt
Date updatedAt
}
RefillLog {
String objectId PK
String tankAssignmentId FK
Date refillTime
Number psiBefore
Number psiAfter
String refilledById FK
String refillReason
String remarks
Date createdAt
Date updatedAt
}
EmergencyContact {
String objectId PK
String siteId FK
String contactName
String relationship
String phoneNumber
String preferredLanguage
Boolean isPrimary
Date createdAt
Date updatedAt
}
DispatchEvent {
String objectId PK
String tankAssignmentId FK
String eventType
Date eventTime
String recordedById FK
String locationNote
Date createdAt
Date updatedAt
}
Alur Integrasi Pengiriman
Alur runtime khas untuk otorisasi, tinjauan PSI Penugasan Tangki, pembuatan Log Isi Ulang, pembaruan Peristiwa Pengiriman, dan pencarian Kontak Darurat.
Lihat sumber diagram
sequenceDiagram
participant User
participant App as Oxygen Tank Delivery App
participant Back4app as Back4app Cloud
User->>App: Login with dispatcher or driver account
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Load tank assignments and PSI levels
App->>Back4app: GET /classes/TankAssignment?include=assignedSite,assignedDriver
Back4app-->>App: TankAssignment list
User->>App: Open a site and check refill history
App->>Back4app: GET /classes/RefillLog?where={"tankAssignment":...}
Back4app-->>App: RefillLog entries
User->>App: Save a new refill log or dispatch event
App->>Back4app: POST /classes/RefillLog
App->>Back4app: POST /classes/DispatchEvent
Back4app-->>App: Saved objectIds
App->>Back4app: Live query updates for PSI changes and emergency contact changes
Back4app-->>App: Updated TankAssignment and EmergencyContact recordsPanduan Lapangan
Referensi tingkat lapangan lengkap untuk setiap kelas dalam skema pengiriman oksigen.
| Bidang | Tipe | Deskripsi | Diperlukan |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | Auto |
| username | String | User login name | |
| String | User email address | ||
| password | String | Hashed password (write-only) | |
| role | String | Role in the app (e.g. dispatcher, driver, careTeam, patient) | |
| phoneNumber | String | Primary contact phone number | — |
| active | Boolean | Whether the account can access the app | |
| createdAt | Date | Auto-generated creation timestamp | Auto |
| updatedAt | Date | Auto-generated last-update timestamp | Auto |
9 bidang di User
Akses dan Izin
Bagaimana strategi ACL dan CLP mengamankan pengguna, situs, tangki, log pengisian ulang, dan kontak darurat.
Batasan situs pasien
Hanya staf yang berwenang yang boleh membuat atau memperbarui rincian PatientSite, termasuk deliveryWindowStart, deliveryWindowEnd, dan catatan.
Integritas tangki dan pengisian ulang
Batasi pembaruan TankAssignment dan pembuatan RefillLog hanya untuk koordinator pengiriman atau pengemudi dengan akses yang terverifikasi.
Visibilitas pengiriman terukur
Batasi bacaan DispatchEvent dan EmergencyContact hanya untuk tim perawatan yang ditugaskan, pengirim, atau pengemudi yang menangani rute tersebut.
Skema JSON
Definisi skema JSON mentah yang siap 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
},
"phoneNumber": {
"type": "String",
"required": false
},
"active": {
"type": "Boolean",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "PatientSite",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"siteName": {
"type": "String",
"required": true
},
"addressLine1": {
"type": "String",
"required": true
},
"city": {
"type": "String",
"required": true
},
"region": {
"type": "String",
"required": true
},
"postalCode": {
"type": "String",
"required": true
},
"deliveryWindowStart": {
"type": "Date",
"required": false
},
"deliveryWindowEnd": {
"type": "Date",
"required": false
},
"primaryContact": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"notes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "TankAssignment",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"tankSerialNumber": {
"type": "String",
"required": true
},
"psiLevel": {
"type": "Number",
"required": true
},
"status": {
"type": "String",
"required": true
},
"assignedSite": {
"type": "Pointer",
"required": true,
"targetClass": "PatientSite"
},
"assignedDriver": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"lastCheckedAt": {
"type": "Date",
"required": false
},
"nextServiceDueAt": {
"type": "Date",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "RefillLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"tankAssignment": {
"type": "Pointer",
"required": true,
"targetClass": "TankAssignment"
},
"refillTime": {
"type": "Date",
"required": true
},
"psiBefore": {
"type": "Number",
"required": true
},
"psiAfter": {
"type": "Number",
"required": true
},
"refilledBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"refillReason": {
"type": "String",
"required": true
},
"remarks": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "EmergencyContact",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"site": {
"type": "Pointer",
"required": true,
"targetClass": "PatientSite"
},
"contactName": {
"type": "String",
"required": true
},
"relationship": {
"type": "String",
"required": true
},
"phoneNumber": {
"type": "String",
"required": true
},
"preferredLanguage": {
"type": "String",
"required": false
},
"isPrimary": {
"type": "Boolean",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "DispatchEvent",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"tankAssignment": {
"type": "Pointer",
"required": true,
"targetClass": "TankAssignment"
},
"eventType": {
"type": "String",
"required": true
},
"eventTime": {
"type": "Date",
"required": true
},
"recordedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"locationNote": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}Bangun dengan AI Agent
Gunakan AI Agent Back4app untuk menghasilkan aplikasi pengiriman tangki oksigen nyata dari template ini, termasuk frontend, backend, otentikasi, serta alur tangki, pengisian ulang, dan kontak darurat.
Buat backend aplikasi pengiriman tangki oksigen di Back4app dengan skema dan perilaku yang persis ini. Skema: 1. Pengguna (gunakan bawaan Back4app): namaPengguna, email, kataSandi, peran, nomorTelepon, aktif; objectId, dibuatPada, diperbaruiPada (sistem). 2. LokasiPasien: namaTempat, alamatBaris1, kota, wilayah, kodePos, waktuPengirimanMulai, waktuPengirimanSelesai, kontakUtama (Pointer ke Pengguna, diperlukan), catatan; objectId, dibuatPada, diperbaruiPada. 3. PenugasanTangki: nomorSerialTangki, tingkatPsi, status, lokasiDitugaskan (Pointer ke LokasiPasien, diperlukan), pengemudiDitugaskan (Pointer ke Pengguna, diperlukan), terakhirDiperiksaPada, berikutnyaJadwalServisPada; objectId, dibuatPada, diperbaruiPada. 4. LogPengisian: penugasanTangki (Pointer ke PenugasanTangki, diperlukan), waktuPengisian, psiSebelum, psiSetelah, diisiOleh (Pointer ke Pengguna, diperlukan), alasanPengisian, catatan; objectId, dibuatPada, diperbaruiPada. 5. KontakDarurat: lokasi (Pointer ke LokasiPasien, diperlukan), namaKontak, hubungan, nomorTelepon, bahasaPilihan, adalahUtama; objectId, dibuatPada, diperbaruiPada. 6. AcaraPengiriman: penugasanTangki (Pointer ke PenugasanTangki, diperlukan), jenisAcara, waktuAcara, dicatatOleh (Pointer ke Pengguna, diperlukan), catatanLokasi; objectId, dibuatPada, diperbaruiPada. Keamanan: - Petugas pengiriman dapat membuat dan memperbarui catatan PenugasanTangki, LogPengisian, AcaraPengiriman, dan LokasiPasien. - Pengemudi dapat memperbarui pemeriksaan PSI PenugasanTangki yang ditugaskan, membuat entri LogPengisian, dan menambahkan pembaruan AcaraPengiriman untuk rute yang mereka tangani. - Pengguna tim perawatan dapat melihat catatan LokasiPasien mereka dan entri KontakDarurat, tetapi tidak dapat mengedit riwayat PSI. - Data KontakDarurat hanya dapat dilihat oleh pengguna yang terautentikasi yang terlibat dalam operasi lokasi atau pengiriman. Otentikasi: - Daftar, masuk, keluar. Perilaku: - Pantau tingkat PSI, simpan log pengisian, lampirkan kontak darurat, dan catat serah terima pengiriman. - Tampilkan tekanan tangki terbaru, riwayat pengisian, jendela pengiriman, dan kontak darurat untuk setiap lokasi. Pengiriman: - Aplikasi Back4app dengan skema, ACL, CLP; frontend untuk papan pengiriman, pemeriksaan rute pengemudi, logging pengisian, dan pencarian kontak darurat.
Tekan tombol di bawah untuk membuka Agen dengan prompt template ini yang terisi sebelumnya.
Ini adalah prompt dasar tanpa akhiran teknologi. Anda dapat menyesuaikan tumpukan front-end yang dihasilkan setelahnya.
Penguji API
Coba REST dan endpoint GraphQL terhadap skema pengiriman oksigen. Respons menggunakan data palsu dan tidak memerlukan akun Back4app.
Menggunakan skema yang sama seperti template ini.
Pilih Teknologi Anda
Perluas setiap kartu untuk melihat cara mengintegrasikan PatientSite, TankAssignment, dan RefillLog dengan tumpukan yang Anda pilih.
Flutter Backend Pengiriman Oksigen
React Backend Pengiriman Oksigen
React Native Backend Pengiriman Oksigen
Next.js Backend Pengiriman Oksigen
JavaScript Backend Pengiriman Oksigen
Android Backend Pengiriman Oksigen
iOS Backend Pengiriman Oksigen
Vue Backend Pengiriman Oksigen
Angular Backend Pengiriman Oksigen
GraphQL Backend Pengiriman Oksigen
REST API Backend Pengiriman Oksigen
PHP Backend Pengiriman Oksigen
.NET Backend Pengiriman Oksigen
Apa yang Anda Dapatkan dengan Setiap Teknologi
Setiap tumpukan menggunakan skema dan kontrak API pengiriman oksigen yang sama.
Struktur data logistik oksigen yang terintegrasi
Kelola catatan Pengguna, PatientSite, TankAssignment, RefillLog, KontakDarurat, dan DispatchEvent dengan satu skema.
Pelacakan PSI untuk rute pengiriman
Jaga tekanan tangki terlihat sehingga pengiriman dapat memprioritaskan silinder rendah terlebih dahulu.
Riwayat pengisian ulang untuk teknisi
Catat psiBefore, psiAfter, dan refillTime untuk setiap pemberhentian layanan.
Pengaturan kontak darurat
Hubungkan kontak ke catatan PatientSite sehingga eskalasi tersedia saat rute berubah.
REST/GraphQL API untuk pengiriman oksigen
Integrasikan dasbor mobile, web, dan operasional dengan kontrak backend yang sama.
Arsitektur yang dapat diperluas untuk logistik oksigen
Tambahkan rute, inventaris, atau catatan layanan nanti tanpa perlu merombak skema pengiriman inti.
Perbandingan Tumpukan Pengiriman Oksigen
Bandingkan kecepatan pengaturan, gaya SDK, dan dukungan AI di semua teknologi yang didukung.
| Kerangka Kerja | Waktu Pengaturan | Manfaat Pengiriman Oksigen | Jenis SDK | Dukungan AI |
|---|---|---|---|---|
| Sekitar 5 menit | Satu basis kode untuk pengiriman oksigen di mobile dan web. | SDK yang Diketik | Penuh | |
| Kurang dari 5 menit | Dasbor web cepat untuk pengiriman dan tinjauan PSI. | SDK yang Diketik | Penuh | |
| ~3–7 menit | Aplikasi mobile lintas platform untuk pengemudi dan teknisi. | SDK yang Diketik | Penuh | |
| Pengaturan cepat (5 menit) | Aplikasi web yang dirender di server untuk koordinasi pengiriman. | SDK Tipe | Penuh | |
| ~3–5 menit | Integrasi web ringan untuk logistik oksigen. | SDK Tipe | Penuh | |
| Sekitar 5 menit | Aplikasi Android native untuk pemeriksaan rute dan PSI. | SDK Tipe | Penuh | |
| Kurang dari 5 menit | Aplikasi iOS asli untuk pengantaran dan tugas pengisian ulang. | SDK Tipe | Penuh | |
| ~3–7 menit | Antarmuka web React untuk operasi pengantaran oksigen. | SDK Tertulis | Penuh | |
| Pengaturan cepat (5 menit) | Aplikasi web perusahaan untuk pengiriman dan log pengisian ulang. | SDK Tertulis | Penuh | |
| Kurang dari 2 menit | API GraphQL yang fleksibel untuk data pengiriman oksigen. | API GraphQL | Penuh | |
| Pengaturan cepat (2 menit) | integrasi REST API untuk sistem pengiriman oksigen. | REST API | Penuh | |
| ~3 menit | Backend PHP sisi server untuk koordinasi pengiriman. | REST API | Penuh | |
| ~3–7 menit | Backend .NET untuk operasi pengiriman oksigen. | SDK yang diketik | Penuh |
Waktu pengaturan mencerminkan durasi yang diharapkan dari bootstrap proyek hingga kueri TankAssignment atau PatientSite pertama menggunakan skema template ini.
Pertanyaan Pengiriman
Pertanyaan umum tentang membangun backend pengiriman tangki oksigen dengan template ini.
Siap untuk Membangun Aplikasi Pengiriman Tangki Oksigen Anda?
Mulai proyek pengiriman oksigen Anda dalam hitungan menit. Tanpa memerlukan kartu kredit.