Modèle de backend du marché de location de yachts
Utilisateur, Vaisseau, Annonce, Réservation et Affectation d'équipage pour les opérations de charter
Un backend de marché de location de yachts prêt pour la production sur Back4app avec des flux de travail Utilisateur, Vaisseau, Annonce, Tarification saisonnière, Réservation et Affectation d'équipage. Comprend un diagramme ER, un dictionnaire de données, un schéma JSON, un terrain de jeu API, et une invite Agent AI pour un bootstrapping rapide.
Principaux enseignements du backend de charte
Ce modèle vous donne un backend de charte de yacht avec Utilisateur, Navire, Annonce, TarificationSaisonnière, Réservation et AttributionÉquipage afin que les opérateurs puissent coordonner plus rapidement l'approvisionnement de la flotte, les réservations des invités et la couverture de l'équipage.
- Structure de l'annonce du navire — Modélisez chaque Navire avec un nom, un type, une capacité, un port d'attache et un opérateur, puis publiez-le via une Annonce.
- Règles de tarification saisonnière — Stockez les tarifs saisonniers dans TarificationSaisonnière afin que la haute saison, la saison intermédiaire et les fenêtres de prix flexibles restent explicites pour chaque Annonce.
- Flux de travail de réservation d'équipage — Suivez les lignes d'AttributionÉquipage par rapport aux enregistrements de Réservation pour les capitaines, chefs, stewards et matelots.
- Visibilité du marché — Utilisez les requêtes Back4app et Live Queries pour maintenir les lignes de liste publiées, les fenêtres de tarification saisonnière et l'état des réservations à jour.
Comprendre le backend du marché de location de yacht
La saisonnalité impacte fortement le marché de la location de yacht ; sans historique, vous ne pouvez pas prévoir la demande, le personnel ou le capital bloqué dans un stock inactif. Les détails ne sont pas optionnels. Utilisez Vessel, Listing, SeasonalPricing, Booking et CrewAssignment sur Back4app pour encoder la disponibilité du marché de location de yacht, les points de tarification et les enregistrements de fulfillment dans un backend cohérent. Le schéma couvre User (nom d'utilisateur, email, mot de passe, rôle, nom d'affichage), Vessel (nom, type, capacité, port d'attache, opérateur, actif), Listing (navire, titre, description, statut, devise de base, URL de l'image présentée, opérateur), SeasonalPricing (listing, nom de la saison, date de début, date de fin, tarif de nuit, montant du dépôt, flexible), Booking (listing, invité, date d'arrivée, date de départ, nombre d'invités, statut, prix total, demandes spéciales), et CrewAssignment (réservation, nom du membre d'équipage, rôle, début de shift, fin de shift, statut) avec des flux de travail d'authentification et de marché intégrés. Connectez votre frontend préféré et expédiez plus rapidement.
Meilleur pour :
Marché de charters de yachts : instantané du backend
Le marché de charters de yachts n'est pas seulement une question de rapidité ; il s'agit de la défendabilité lorsque quelqu'un demande « montrez-moi comment vous saviez que c'était vrai. »
Le hub est le chemin le plus rapide de la curiosité curiOS à la clarté sur Vessel, Listing et SeasonalPricing sans ouvrir cinq documents différents.
Fonctionnalités du marché de la charte
Chaque carte technologique dans ce hub utilise le même schéma de charter de yacht avec Utilisateur, Vaisseau, Annonce, TarificationSaisonnière, Réservation et Affectation d'Équipage.
Enregistrements de navire et spécifications de charters
Le navire stocke le nom, le type, la capacité, le port d'attache, l'opérateur et est actif.
Annonces de charters en direct
L'annonce lie un navire au titre, à la description, au statut, à la monnaie de base, à l'URL de l'image en vedette et à l'opérateur.
Périodes de tarification saisonnière
Le tarif saisonnier suit le nom de la saison, la date de début, la date de fin, le tarif par nuit, le montant du dépôt et est flexible.
Gestion des affectations d'équipage
L'enregistrement CrewAssignment comprend la réservation, le nom de l'équipier, le rôle, le début du shift, la fin du shift et l'état.
Demandes de réservation des invités
La réservation conserve l'annonce, l'invité, la date d'arrivée, la date de départ, le nombre d'invités, l'état, le prix total et les demandes spéciales.
Pourquoi Back4app pour les opérations de charter de yachts ?
Back4app vous fournit des primitives de marché pour les navires, les tarifs, les réservations et l'équipage pour que votre équipe puisse se concentrer sur l'offre de yachts et la demande des invités au lieu de l'infrastructure.
- •Gestion des listes et des navires: Les classes Vessel et Listing conservent les détails prêts à la location, la visibilité et le statut en vedette au même endroit.
- •Tarification saisonnière sans devinette: SeasonalPricing stocke les valeurs nightlyRate à durée limitée, permettant aux opérateurs de fixer des prix d'été et de vacances avec précision.
- •Coordination de l'équipage avec la réservation: CrewAssignment lie une réservation à un crewMemberName, rôle, shiftStart et shiftEnd, ce qui facilite la gestion de la planification du capitaine et du steward.
Construisez et itérez rapidement sur les flux de travail de marché de charte avec un contrat backend unique sur chaque plateforme.
Avantages du marché de la location
Un backend de location de yacht qui aide les courtiers, propriétaires et opérateurs à passer de la demande à la réservation avec moins de friction.
Lancement de l'annonce plus rapide
Commencez avec les classes Vessel et Listing au lieu de construire des flux d'inventaire de location à partir de rien.
Les prix restent explicites
Utilisez des champs SeasonalPricing comme seasonName, startDate, endDate, nightlyRate et depositAmount afin que les décisions de tarification soient faciles à examiner.
Les emplois d'équipage restent visibles
CrewAssignment relie réservation, rôle, shiftStart et shiftEnd à chaque charter, ce qui aide les opérateurs à éviter les chevauchements.
Opérations de marché dans un seul modèle
Booking, Listing et Vessel peuvent être interrogés ensemble lorsque la demande, les prix et la disponibilité nécessitent une vue unique.
Livraison API inter-canaux
L'accès REST, GraphQL, et SDK facilite le support des portails de courtage, des applications mobiles et des outils d'administration.
Lancement assisté par l'IA
Générez rapidement une charpente backend et des conseils d'intégration avec un prompt structuré.
Prêt à lancer votre marché de location de yachts ?
Laissez l'agent IA de Back4app créer votre backend de location de yachts et générer des flux de travail pour les navires, la tarification, les réservations et l'équipage à partir d'un prompt.
Gratuit pour commencer — 50 prompts AI Agent/mois, sans carte de crédit nécessaire
Pile technologique
Tout inclus dans ce modèle de backend de marché de location de yachts.
Diagramme d'entité de charte
Modèle de relation d'entité pour le schéma de marché de charte de yacht.
Schéma couvrant les vaisseaux de yachts, les annonces de charters, les tarifs saisonniers, les réservations et les attributions d'équipage.
Voir la source du diagramme
erDiagram
User ||--o{ Vessel : "operator"
User ||--o{ Listing : "operator"
User ||--o{ Booking : "guest"
Vessel ||--o{ Listing : "vessel"
Listing ||--o{ SeasonalPricing : "listing"
Listing ||--o{ Booking : "listing"
Booking ||--o{ CrewAssignment : "booking"
User {
String objectId PK
String username
String email
String password
String role
String displayName
Date createdAt
Date updatedAt
}
Vessel {
String objectId PK
String name
String type
Number capacity
String homePort
String operatorId FK
Boolean isActive
Date createdAt
Date updatedAt
}
Listing {
String objectId PK
String vesselId FK
String title
String description
String status
String baseCurrency
String featuredImageUrl
String operatorId FK
Date createdAt
Date updatedAt
}
SeasonalPricing {
String objectId PK
String listingId FK
String seasonName
Date startDate
Date endDate
Number nightlyRate
Number depositAmount
Boolean isFlexible
Date createdAt
Date updatedAt
}
Booking {
String objectId PK
String listingId FK
String guestId FK
Date checkInDate
Date checkOutDate
Number guestCount
String status
Number totalPrice
String specialRequests
Date createdAt
Date updatedAt
}
CrewAssignment {
String objectId PK
String bookingId FK
String crewMemberName
String role
Date shiftStart
Date shiftEnd
String status
Date createdAt
Date updatedAt
}
Flux d'intégration de charter
Flux d'exécution typique pour la connexion, les annonces de vaisseaux, les mises à jour de tarification saisonnière, les demandes de réservation et la planification de l'équipage.
Voir la source du diagramme
sequenceDiagram
participant User
participant YachtCharterMarketplaceApp as Yacht Charter Marketplace App
participant Back4app as Back4app Cloud
User->>YachtCharterMarketplaceApp: Sign in as buyer or operator
YachtCharterMarketplaceApp->>Back4app: POST /login
Back4app-->>YachtCharterMarketplaceApp: Session token
User->>YachtCharterMarketplaceApp: Browse published vessel listings
YachtCharterMarketplaceApp->>Back4app: GET /classes/Listing?where={"status":"published"}
Back4app-->>YachtCharterMarketplaceApp: Listing rows with vessel pointers
User->>YachtCharterMarketplaceApp: Review seasonal pricing for a listing
YachtCharterMarketplaceApp->>Back4app: GET /classes/SeasonalPricing?where={"listing":{"__type":"Pointer","className":"Listing","objectId":"LISTING_ID"}}
Back4app-->>YachtCharterMarketplaceApp: SeasonalPricing rows
User->>YachtCharterMarketplaceApp: Create a booking request and crew plan
YachtCharterMarketplaceApp->>Back4app: POST /classes/Booking
Back4app-->>YachtCharterMarketplaceApp: Booking objectId
YachtCharterMarketplaceApp->>Back4app: POST /classes/CrewAssignment
Back4app-->>YachtCharterMarketplaceApp: CrewAssignment objectId
YachtCharterMarketplaceApp->>Back4app: Subscribe to live booking updates
Back4app-->>YachtCharterMarketplaceApp: Booking status changesGuide de terrain
Référence complète au niveau des champs pour chaque classe du schéma du marché de charters de yacht.
| Champ | Type | Description | Requis |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | Auto |
| username | String | Account username for sign in | |
| String | Primary email address for the marketplace account | ||
| password | String | Hashed password (write-only) | |
| role | String | Account role such as buyer, seller, or operator | |
| displayName | String | Public name shown in charter and fleet workflows | — |
| createdAt | Date | Auto-generated creation timestamp | Auto |
| updatedAt | Date | Auto-generated last-update timestamp | Auto |
8 champs dans User
Contrôle d'accès pour les données de charter
Comment la stratégie ACL et CLP sécurise les utilisateurs, les navires, les annonces, les tarifs, les réservations et les affectations d'équipage.
Inventaire de charter contrôlé par le propriétaire
Seul le propriétaire ou le courtier peut créer ou mettre à jour les enregistrements de navires et d'annonces pour leur flotte.
Modifications de tarification ciblées
Les mises à jour de tarification saisonnière doivent être limitées aux opérateurs autorisés afin que les modifications de tarif nocturne soient traçables.
Limites d'accès à la réservation et à l'équipage
Les lectures de réservation et d'affectation d'équipage doivent être restreintes aux rôles pertinents de courtier, de propriétaire et d'opérateur.
Schéma JSON
Définition du schéma JSON brut prête à être copiée dans Back4app ou utilisée comme référence d'implémentation.
{
"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": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Vessel",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"name": {
"type": "String",
"required": true
},
"type": {
"type": "String",
"required": true
},
"capacity": {
"type": "Number",
"required": true
},
"homePort": {
"type": "String",
"required": true
},
"operator": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"isActive": {
"type": "Boolean",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Listing",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"vessel": {
"type": "Pointer",
"required": true,
"targetClass": "Vessel"
},
"title": {
"type": "String",
"required": true
},
"description": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"baseCurrency": {
"type": "String",
"required": true
},
"featuredImageUrl": {
"type": "String",
"required": false
},
"operator": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "SeasonalPricing",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"listing": {
"type": "Pointer",
"required": true,
"targetClass": "Listing"
},
"seasonName": {
"type": "String",
"required": true
},
"startDate": {
"type": "Date",
"required": true
},
"endDate": {
"type": "Date",
"required": true
},
"nightlyRate": {
"type": "Number",
"required": true
},
"depositAmount": {
"type": "Number",
"required": false
},
"isFlexible": {
"type": "Boolean",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Booking",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"listing": {
"type": "Pointer",
"required": true,
"targetClass": "Listing"
},
"guest": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"checkInDate": {
"type": "Date",
"required": true
},
"checkOutDate": {
"type": "Date",
"required": true
},
"guestCount": {
"type": "Number",
"required": true
},
"status": {
"type": "String",
"required": true
},
"totalPrice": {
"type": "Number",
"required": true
},
"specialRequests": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "CrewAssignment",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"booking": {
"type": "Pointer",
"required": true,
"targetClass": "Booking"
},
"crewMemberName": {
"type": "String",
"required": true
},
"role": {
"type": "String",
"required": true
},
"shiftStart": {
"type": "Date",
"required": true
},
"shiftEnd": {
"type": "Date",
"required": true
},
"status": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}Invite de construction d'agent IA
Utilisez l'agent IA Back4app pour générer une véritable application de marché de location de yachts à partir de ce modèle, y compris le frontend, le backend, l'authentification, ainsi que les flux de navire, de tarification, de réservation et d'équipage.
Créez un backend Back4app sécurisé pour un marché de location de yachts avec le schéma exact et le comportement du marché ci-dessous. Schéma: 1. Utilisateur (utiliser Back4app intégré) : nom d'utilisateur, email, mot de passe, rôle, nom d'affichage. 2. Vaisseau : nom, type, capacité, port d'attache, opérateur (Pointeur vers Utilisateur), estActif. 3. Annonce : vaisseau (Pointeur vers Vaisseau), titre, description, statut, devisePrincipale, imageEn vedetteUrl, opérateur (Pointeur vers Utilisateur). 4. TarificationSaisonnière : annonce (Pointeur vers Annonce), nomSaison, dateDébut, dateFin, tarifNocturne, montantDépôt, estFlexible. 5. Réservation : annonce (Pointeur vers Annonce), invité (Pointeur vers Utilisateur), dateD'arrivée, dateDeDépart, nombreD'invités, statut, prixTotal, demandesSpéciales. 6. AffectationÉquipage : réservation (Pointeur vers Réservation), nomMembreÉquipage, rôle, débutService, finService, statut. Sécurité : - Les opérateurs peuvent créer et éditer leurs propres entrées de Vaisseau, Annonce, TarificationSaisonnière et AffectationÉquipage. - Les acheteurs peuvent créer des demandes de réservation et consulter leurs propres réservations. - Seul l'opérateur d'annonce peut mettre en pause ou publier l'Annonce. - Les enregistrements d'AffectationÉquipage doivent rester liés à une réservation réelle. Comportement : - Parcourez les annonces publiées, comparez les détails des vaisseaux, lisez les tarifs saisonniers, demandez des charters et assignez un équipage pour les réservations confirmées. - Prise en charge de la connexion, de l'inscription, de la gestion des réservations, de la gestion de la flotte et de la gestion des prix. Livraison : - Application Back4app avec schéma, CLPs, ACLs, et exemples de données de marché pour vaisseaux, annonces, tarifs saisonniers, réservations et affectations d'équipage.
Appuyez sur le bouton ci-dessous pour ouvrir l'Agent avec cette invite de modèle pré-remplie.
Ceci est l'invite de base sans suffixe technologique. Vous pouvez adapter la pile frontend générée par la suite.
Sandbox API
Essayez les points de terminaison REST et GraphQL contre le schéma du marché de location de yachts. Les réponses utilisent des données fictives et ne nécessitent pas de compte Back4app.
Utilise le même schéma que ce modèle.
Choisissez votre pile
Développez chaque carte pour voir comment intégrer Vessel, Listing et SeasonalPricing avec votre pile choisie.
Flutter Marché de location de yachts Backend
React Marché de location de yachts Backend
React Native Marché de location de yachts Backend
Next.js Marché de location de yachts Backend
JavaScript Marché de location de yachts Backend
Android Marché de location de yachts Backend
iOS Marché de location de yachts Backend
Vue Marché de location de yachts Backend
Angular Marché de location de yachts Backend
GraphQL Marché de location de yachts Backend
REST API Marché de location de yachts Backend
PHP Marché de location de yachts Backend
.NET Marché de location de yachts Backend
Ce que vous obtenez avec chaque technologie
Chaque pile utilise le même schéma backend de location de yacht et les contrats API.
Structure de données unifiée pour les locations de yachts
Gérez les navires, les annonces, les prix saisonniers, les réservations et les affectations d'équipage avec un schéma cohérent.
Soutien au flux du marché des locations
Publier des annonces, mettre à jour les tarifs saisonniers et traiter les demandes de réservation depuis un seul backend.
Visibilité de la planification d'équipage
Suivre les rôles de l'équipage et les heures de service pour que les opérations restent alignées avec chaque demande de charter.
Rôles flexibles sur le marché
Définir les expériences d'acheteur, de vendeur et d'opérateur sans changer le modèle de base.
REST/GraphQL APIs pour des applications de charter
Intégrer les interfaces web, mobile et administratives avec le même contrat de données.
Comparaison de Stack de Charter de Yacht
Comparez la vitesse de configuration, le style SDK et le support AI parmi toutes les technologies prises en charge.
| Cadre | Temps de configuration | Avantage du marché | Type SDK | Support AI |
|---|---|---|---|---|
| Environ 5 minutes | Code source unique pour la réservation de charters de yachts sur mobile et web. | SDK typé | Complet | |
| Moins de 5 minutes | Tableau de bord rapide pour courtiers pour les annonces de navires. | SDK typé | Complet | |
| ~3–7 min | Application mobile multiplateforme pour les opérations de charter. | SDK typé | Complet | |
| Configuration rapide (5 min) | Portail de marché rendu côté serveur pour les charters de yachts. | SDK typé | Complet | |
| ~3–5 min | Intégration web légère pour les annonces de navires. | SDK tapé | Complet | |
| Environ 5 min | Application native Android pour les agents de charter. | SDK tapé | Complet | |
| Moins de 5 minutes | Application native iOS pour les parcours de réservation des invités. | SDK tapé | Complet | |
| ~3–7 min | Interface web React pour les mises à jour de listes et de prix. | SDK saisie | Complet | |
| Configuration rapide (5 min) | Application admin d'entreprise pour la planification d'équipage. | SDK saisie | Complet | |
| Moins de 2 min | API flexible GraphQL pour des requêtes de navires et de prix imbriquées. | API GraphQL | Complet | |
| Configuration rapide (2 min) | Intégration REST API pour les points de terminaison du marché. | REST API | Complet | |
| ~3 min | Backend PHP côté serveur pour les opérations de location de bateau. | REST API | Complet | |
| ~3–7 min | Backend .NET pour les outils de courtier et d'opérateur. | SDK typé | Complet |
Le temps de configuration reflète la durée prévue depuis le démarrage du projet jusqu'à la première requête de navire ou de liste utilisant ce schéma de modèle.
Questions sur la location de yacht
Questions courantes sur la création d'un backend de marché de location de yacht avec ce modèle.
Prêt à construire votre application de marché de location de yacht ?
Commencez votre projet de location de yacht en quelques minutes. Aucune carte de crédit requise.