Inventaire de location de fête
Construire avec l'agent AI
Backend d'inventaire de location de fêtes

Application d'inventaire de location de fêtes pour InventoryItem, CleaningLog, EventSetup et Booking
Comptes InventoryItem, Entrées CleaningLog et Suivi EventSetup

Un backend d'inventaire de location de fêtes prêt pour production sur Back4app avec des comptes InventoryItem, des enregistrements CleaningLog, de la planification EventSetup et des workflows de Booking. Comprend un diagramme d'entité, un dictionnaire de champs, un schéma JSON, un bac à sable API, et une invite AI Agent pour un lancement rapide.

Points à retenir pour la location de fête

Ce modèle vous fournit un backend d'inventaire de location de fête avec Utilisateur, Inventaire, JournalDeNettoyage, ConfigurationDeÉvénement et Réservation afin que votre équipe puisse rester organisée à travers les réservations, le nettoyage et la préparation de l'entrepôt.

  1. Comptes d'InventaireModélisez le stock de chaises, de tables, de draps et de tentes avec totalCount, availableCount, condition et storageLocation.
  2. Historique du JournalDeNettoyageSuivez les entrées du JournalDeNettoyage pour article, nettoyéPar, statutDeNettoyage, nettoyéÀ et détergentUtilisé.
  3. Planification de la ConfigurationDeÉvénementUtilisez les enregistrements de ConfigurationDeÉvénement pour planifier nomDeÉvénement, dateDeÉvénement, adresseDuLieu, heureDeDébutDeConfiguration et nombreDeChaises.
  4. Visibilité des réservationsConnectez Booking.customer et Booking.eventSetup afin que le personnel puisse voir ce qui quitte l'entrepôt et quand cela revient.
  5. Backend web et mobileServez les tableaux de bord du personnel et les écrans de réservation des clients via une API REST et GraphQL.

Qu'est-ce que le modèle d'application de location d'articles de fête ?

Les règles de tarification dans la location d'articles de fête ne sont rarement standard ; les week-ends, les minimums et les options supplémentaires nécessitent un backend capable d'encoder la politique fidèlement. Le coût apparaît dans les rappels et les crédits. Ce modèle modélise InventoryItem, CleaningLog, EventSetup et Booking sur Back4app afin que vous puissiez lancer une plateforme de location d'articles de fête fonctionnelle sans reconstruire la logique de réservation depuis zéro. Le schéma couvre User (nom d'utilisateur, email, mot de passe, rôle, nom affiché, numéro de téléphone), InventoryItem (type d'article, sku, nom, quantité totale, quantité disponible, condition), CleaningLog (article, nettoyé par, statut de nettoyage, nettoyé à, détergent utilisé), EventSetup (nom de l'événement, date de l'événement, adresse du lieu, heure de début de la configuration, statut, personnel principal, nombre de chaises, nombre de tables, nombre de linge), et Booking (client, eventSetup, statut de réservation, date de ramassage, montant partiel, montant de l'acompte). Connectez votre frontend préféré et commencez à gérer les locations plus rapidement.

Meilleur pour :

Entreprises de location d'articles de fêteApplications de suivi de chaises et de tablesJournaux de nettoyage et de préparationOutils de coordination de la mise en place d'événementsTableaux de réservation et de livraisonLes équipes choisissant BaaS pour les opérations de location

Location de fête : instantané du backend

Les clients ne se soucient pas de vos outils internes ; ils se soucient de savoir si les promesses de location de fête arrivent à temps, avec les bons actifs et la bonne documentation.

Ce résumé oriente les équipes autour des éléments d'inventaire, du journal de nettoyage et de la mise en place d'événements avant que quiconque ne plonge dans les diagrammes ER ou les exports JSON.

Fonctionnalités clés de location de fête

Chaque carte technologique dans ce hub utilise le même schéma de backend de location de fête avec Utilisateur, ArticleD'Inventaire, JournalDeNettoyage, ConfigurationDeÉvénement, et Réservation.

Comptes et rôles d'utilisateur

L'utilisateur stocke le nom d'utilisateur, l'email, le rôle, le nom affiché et le numéro de téléphone de chaque membre du personnel ou client.

Comptes d'éléments d'inventaire

L'élément d'inventaire suit le type d'élément, le SKU, le nombre total et le nombre disponible.

Entrées du Journal de Nettoyage

Le Journal de Nettoyage stocke l'élément, nettoyéPar, statutDuNettoyage, nettoyéÀ, et détergentUtilisé.

Planification de la Configuration de l'Événement

La Configuration de l'Événement lie un utilisateur leadStaff à eventName, setupStartTime, chairCount, et tableCount.

Pourquoi construire votre backend d'inventaire de location de fête avec Back4app ?

Back4app vous fournit les primitives d'inventaire, de réservation et de nettoyage dont un bureau de location a besoin, afin que votre équipe puisse consacrer du temps à l'exécution plutôt qu'aux branchements de backend.

  • InventoryItem et Booking restent synchronisés: Lorsqu'une réservation est confirmée, InventoryItem.availableCount reflète le nombre de chaises, tables ou linge réservés pour l'événement.
  • Les journaux de nettoyage sont faciles à auditer: CleaningLog garde l'élément, cleanedBy, cleanedAt, cleaningStatus et detergentUsed au même endroit pour un suivi clair des temps de rotation.
  • Les workflows d'installation restent visibles: Les enregistrements d'EventSetup lient eventName, setupStartTime, venueAddress et leadStaff à la réservation correcte pour la coordination le jour de la livraison.

Lancez-vous plus rapidement avec un contrat backend pour les comptes d'InventoryItem, les enregistrements de CleaningLog et la planification d'EventSetup sur des clients web et mobiles.

Avantages du Backend de Location de Fête

Un backend de location qui maintient les comptes, le nettoyage, et la configuration visibles sans travail supplémentaire sur le schéma.

Moins d'erreurs d'inventaire

InventoryItem.totalCount et InventoryItem.availableCount aident le personnel à éviter de réserver les chaises et les tables deux fois.

Statut de nettoyage clair

CleaningLog.cleaningStatus et CleaningLog.cleanedAt rendent évident quels articles peuvent retourner en circulation.

Préparation d'événements plus rapide

EventSetup.setupStartTime, EventSetup.chairCount, et EventSetup.tableCount donnent à l'équipe de l'entrepôt une liste de vérification simple pour le jour même.

Visibilité des réservations

Booking.bookingStatus, Booking.pickupDate, et Booking.subtotalAmount facilitent la révision des réservations et des retours des clients.

Transitions plus propres entre le personnel

Les enregistrements User, Booking, EventSetup, et CleaningLog restent liés afin que le comptoir de location et l'équipe de mise en place travaillent à partir des mêmes détails.

Flux de travail de démarrage AI

Générez rapidement l'infrastructure backend et des conseils d'intégration avec une invite structurée.

Prêt à lancer votre application d'inventaire de location de fête ?

Laissez l'agent AI de Back4app structurer votre backend de location de fête et générer des comptes d'InventoryItem, des entrées de CleaningLog et des flux d'EventSetup à partir d'une seule invite.

Gratuit pour commencer — 50 invites d'agent AI/mois, pas de carte de crédit requise

Pile technique de location de fête

Tout est inclus dans ce modèle de backend de location de fête.

Frontend
13+ technologies
Backend
Back4app
Base de données
MongoDB
Auth
Authentification intégrée + sessions
API
REST et GraphQL
Temps réel
Live Queries

Diagramme de l'entité de location de fête

Modèle de relation d'entité pour le schéma backend de location de fête.

Voir la source du diagramme
Mermaid
erDiagram
    User ||--o{ CleaningLog : "cleanedBy"
    User ||--o{ EventSetup : "leadStaff"
    User ||--o{ Booking : "customer"
    InventoryItem ||--o{ CleaningLog : "item"
    EventSetup ||--o{ Booking : "eventSetup"

    User {
        String objectId PK
        String username
        String email
        String password
        String role
        String displayName
        String phoneNumber
        Date createdAt
        Date updatedAt
    }

    InventoryItem {
        String objectId PK
        String itemType
        String sku
        String name
        Number totalCount
        Number availableCount
        String condition
        String storageLocation
        Date lastCleanedAt
        String notes
        Date createdAt
        Date updatedAt
    }

    CleaningLog {
        String objectId PK
        String itemId FK
        String cleanedById FK
        String cleaningStatus
        Date cleanedAt
        String detergentUsed
        String remarks
        Date createdAt
        Date updatedAt
    }

    EventSetup {
        String objectId PK
        String eventName
        Date eventDate
        String venueAddress
        Date setupStartTime
        String status
        String leadStaffId FK
        Number chairCount
        Number tableCount
        Number linenCount
        String specialInstructions
        Date createdAt
        Date updatedAt
    }

    Booking {
        String objectId PK
        String customerId FK
        String eventSetupId FK
        String bookingStatus
        Date pickupDate
        Number subtotalAmount
        Number depositAmount
        String notes
        Date createdAt
        Date updatedAt
    }

Flux de données de location de fête

Flux d'exécution typique pour la connexion, les comptes d'InventoryItem, les entrées de CleaningLog et la coordination de EventSetup.

Voir la source du diagramme
Mermaid
sequenceDiagram
  participant User
  participant PartyRentalApp as Party Rental Inventory App App
  participant Back4app as Back4app Cloud

  User->>PartyRentalApp: Sign in to open the rental desk
  PartyRentalApp->>Back4app: POST /login
  Back4app-->>PartyRentalApp: Session token

  User->>PartyRentalApp: View chair, table, and linen counts
  PartyRentalApp->>Back4app: GET /classes/InventoryItem?order=itemType,sku
  Back4app-->>PartyRentalApp: InventoryItem rows with totalCount and availableCount

  User->>PartyRentalApp: Record a linen cleaning
  PartyRentalApp->>Back4app: POST /classes/CleaningLog
  Back4app-->>PartyRentalApp: CleaningLog objectId

  User->>PartyRentalApp: Save an event setup with chairCount and tableCount
  PartyRentalApp->>Back4app: POST /classes/EventSetup
  Back4app-->>PartyRentalApp: EventSetup objectId

  PartyRentalApp->>Back4app: Subscribe to live updates for Booking and EventSetup
  Back4app-->>PartyRentalApp: Updated counts and setup status

Dictionnaire des champs

Référence complète au niveau des champs pour chaque classe dans le schéma de location de fête.

ChampTypeDescriptionObligatoire
objectIdStringAuto-generated unique identifierAutomatique
usernameStringAccount login name
emailStringContact email address
passwordStringHashed password (write-only)
roleStringUser role such as deskStaff, owner, or customer
displayNameStringName shown in rental workflows
phoneNumberStringPrimary contact number
createdAtDateAuto-generated creation timestampAutomatique
updatedAtDateAuto-generated last-update timestampAutomatique

9 champs dans User

Permissions de location de fête

Comment la stratégie ACL et CLP protège les clients, les comptes d'inventaire, les journaux de nettoyage et les enregistrements d'installation.

Accès au bureau de location basé sur les rôles

Seules les rôles du personnel doivent mettre à jour les comptes d'InventoryItem, les enregistrements de CleaningLog, le statut de réservation et les champs EventSetup.

Intégrité du journal de nettoyage

Les entrées de CleaningLog doivent être créées par du personnel autorisé et examinées avant que le stock d'articles ne soit de nouveau disponible dans l'inventaire.

Confidentialité client par réservation

Limiter les lectures des utilisateurs et des réservations au personnel assigné, au propriétaire du compte ou aux membres de l'équipage approuvés.

Schéma JSON

Définition de schéma JSON brute prête à être copiée dans Back4app ou à utiliser comme référence d'implémentation.

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
        },
        "phoneNumber": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "InventoryItem",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "itemType": {
          "type": "String",
          "required": true
        },
        "sku": {
          "type": "String",
          "required": true
        },
        "name": {
          "type": "String",
          "required": true
        },
        "totalCount": {
          "type": "Number",
          "required": true
        },
        "availableCount": {
          "type": "Number",
          "required": true
        },
        "condition": {
          "type": "String",
          "required": true
        },
        "storageLocation": {
          "type": "String",
          "required": false
        },
        "lastCleanedAt": {
          "type": "Date",
          "required": false
        },
        "notes": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "CleaningLog",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "item": {
          "type": "Pointer",
          "required": true,
          "targetClass": "InventoryItem"
        },
        "cleanedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "cleaningStatus": {
          "type": "String",
          "required": true
        },
        "cleanedAt": {
          "type": "Date",
          "required": true
        },
        "detergentUsed": {
          "type": "String",
          "required": false
        },
        "remarks": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "EventSetup",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "eventName": {
          "type": "String",
          "required": true
        },
        "eventDate": {
          "type": "Date",
          "required": true
        },
        "venueAddress": {
          "type": "String",
          "required": true
        },
        "setupStartTime": {
          "type": "Date",
          "required": true
        },
        "status": {
          "type": "String",
          "required": true
        },
        "leadStaff": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "chairCount": {
          "type": "Number",
          "required": true
        },
        "tableCount": {
          "type": "Number",
          "required": true
        },
        "linenCount": {
          "type": "Number",
          "required": false
        },
        "specialInstructions": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "Booking",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "customer": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "eventSetup": {
          "type": "Pointer",
          "required": true,
          "targetClass": "EventSetup"
        },
        "bookingStatus": {
          "type": "String",
          "required": true
        },
        "pickupDate": {
          "type": "Date",
          "required": false
        },
        "subtotalAmount": {
          "type": "Number",
          "required": true
        },
        "depositAmount": {
          "type": "Number",
          "required": false
        },
        "notes": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    }
  ]
}

Construire avec l'agent IA

Utilisez l'agent IA Back4app pour générer une application de location de fête réelle à partir de ce modèle, y compris le frontend, le backend, l'authentification, ainsi que les flux d'inventaire, de nettoyage et d'installation.

Agent IA Back4app
Prêt à construire
Créez un backend d'application d'inventaire de location de fête sur Back4app avec ce schéma et ce comportement exacts.

Schéma :
1. User (utiliser Back4app intégré) : objectId (String, auto), username (String, requis), email (String, requis), password (String, requis), role (String, requis), displayName (String, requis), phoneNumber (String), createdAt (Date, auto), updatedAt (Date, auto).
2. InventoryItem : objectId (String, auto), itemType (String, requis), sku (String, requis), name (String, requis), totalCount (Number, requis), availableCount (Number, requis), condition (String, requis), storageLocation (String), lastCleanedAt (Date), notes (String), createdAt (Date, auto), updatedAt (Date, auto).
3. CleaningLog : objectId (String, auto), item (Pointeur sur InventoryItem, requis), cleanedBy (Pointeur sur User, requis), cleaningStatus (String, requis), cleanedAt (Date, requis), detergentUsed (String), remarks (String), createdAt (Date, auto), updatedAt (Date, auto).
4. EventSetup : objectId (String, auto), eventName (String, requis), eventDate (Date, requis), venueAddress (String, requis), setupStartTime (Date, requis), status (String, requis), leadStaff (Pointeur sur User, requis), chairCount (Number, requis), tableCount (Number, requis), linenCount (Number), specialInstructions (String), createdAt (Date, auto), updatedAt (Date, auto).
5. Booking : objectId (String, auto), customer (Pointeur sur User, requis), eventSetup (Pointeur sur EventSetup, requis), bookingStatus (String, requis), pickupDate (Date), subtotalAmount (Number, requis), depositAmount (Number), notes (String), createdAt (Date, auto), updatedAt (Date, auto).

Sécurité :
- Seules les rôles du personnel peuvent mettre à jour les comptes InventoryItem, le statut de réservation et les enregistrements EventSetup. Les clients peuvent voir les détails de leur propre réservation. Utilisez Cloud Code pour la validation.

Auth :
- Inscription, connexion, déconnexion.

Comportement :
- Lister les comptes de chaises, de tables et de linge à partir d'InventoryItem.
- Enregistrer des lignes CleaningLog avec cleanedAt, cleaningStatus et detergentUsed.
- Créer des plans EventSetup avec chairCount, tableCount et leadStaff.
- Créer et gérer des enregistrements de réservation liés à EventSetup.

Livrer :
- Application Back4app avec schéma, ACL, CLP ; frontend pour les comptes d'inventaire, journaux de nettoyage, détails de réservation et planification des configurations.

Appuyez sur le bouton ci-dessous pour ouvrir l'agent avec ce modèle de demande pré-rempli.

Ceci est l'invite de base sans suffixe technologique. Vous pouvez adapter la pile frontend générée par la suite.

Déployer en quelques minutes50 invites gratuites / moisAucune carte de crédit requise

API Sandbox

Essayez les points de terminaison REST et GraphQL contre le schéma de location de fête. Les réponses utilisent des données simulées et ne nécessitent pas de compte Back4app.

Chargement du terrain de jeu…

Utilise le même schéma que ce modèle.

Choisissez votre technologie

Développez chaque carte pour voir comment intégrer InventoryItem, CleaningLog, et EventSetup avec votre pile choisie.

Flutter Inventaire de location de fête Backend

React Inventaire de location de fête Backend

React Natif Inventaire de location de fête Backend

Next.js Inventaire de location de fête Backend

JavaScript Inventaire de location de fête Backend

Android Inventaire de location de fête Backend

iOS Inventaire de location de fête Backend

Vue Inventaire de location de fête Backend

Angular Inventaire de location de fête Backend

GraphQL Inventaire de location de fête Backend

REST API Inventaire de location de fête Backend

PHP Inventaire de location de fête Backend

.NET Inventaire de location de fête Backend

Ce que vous obtenez avec chaque technologie

Chaque pile utilise le même schéma de backend de location de fête et les contrats API.

Structure de données de location unifiée

Gérez facilement les utilisateurs, les articles d'inventaire, les journaux de nettoyage, les configurations d'événements et les réservations avec un schéma cohérent.

Comptages de chaises, de tables et de linge pour votre bureau de location

Suivez totalCount, availableCount et l'état de nettoyage sans reconstruire votre modèle de données.

Suivi de la configuration de l'événement pour les journées de livraison chargées

Gardez setupStartTime, specialInstructions et leadStaff visibles pour le personnel de répartition et d'entrepôt.

Accès conscient du rôle pour les équipes de location de fêtes

Donnez au personnel et aux clients différentes vues des données de réservation et d'éléments d'inventaire.

APIs REST/GraphQL pour chaque workflow de location

Servez des tableaux de bord web, mobile et opérationnels à partir d'un seul backend.

Architecture extensible pour les opérations de location

Ajoutez des paiements, des rapports de dommages ou des itinéraires de livraison plus tard sans remplacer le schéma de base.

Comparaison des technologies de location de fête

Comparez la vitesse de configuration, le style de SDK et le support de l'IA entre toutes les technologies prises en charge.

CadreTemps de configurationAvantage de location de fêteType de SDKAssistance IA
Environ 5 minBase de code unique pour le bureau de location et les tablettes du personnel.SDK typéComplet
Moins de 5 minutesTableau de bord web rapide pour le comptage des chaises et les réservations.SDK typéComplet
~3–7 minApplication mobile multiplateforme pour équipes de magasinage et d'événements.SDK typéComplet
Configuration rapide (5 min)Portail d'opérations rendu par serveur pour les locations et la planification des configurations.SDK typéComplet
~3–5 minIntégration web légère pour l'inventaire de location.SDK typéComplet
Environ 5 minApplication Android native pour le personnel d'entrepôt.SDK tapéComplet
Moins de 5 minutesApplication iOS native pour les équipes de configuration sur site.SDK tapéComplet
~3–7 minInterface web Reactive pour les opérations de location.SDK tapéComplet
Configuration rapide (5 min)Application web d'entreprise pour la répartition et le contrôle des stocks.SDK tapéComplet
Moins de 2 minAPI GraphQL flexible pour les réservations et les enregistrements de configuration.API GraphQLComplet
Configuration rapide (2 min)Intégration REST API pour les stocks et les réservations.REST APIComplet
~3 minBackend PHP côté serveur pour les portails de location.REST APIComplet
~3–7 min.NET backend pour les opérations de location.SDK tapéComplet

Le temps de configuration reflète la durée prévue du démarrage du projet à la première requête d'inventaire ou de réservation utilisant ce schéma de modèle.

FAQ sur la location de fêtes

Questions courantes sur la création d'un backend d'inventaire de location de fêtes avec ce modèle.

Quelles politiques de location de fête sont les plus difficiles à appliquer sans données de réservation structurées ?
Quelle est la bonne façon de lier les comptes utilisateur et les rôles, les comptes d'éléments d'inventaire, les entrées de journaux de nettoyage aux inspections d'exécution et de retour ?
Pouvons-nous prendre en charge les listes d'attente de location de fête, les réservations et les clients prioritaires dans le même schéma ?
Comment afficher les comptes des chaises et des tables dans Flutter ?
Comment gérer les données de configuration dans Next.js Server Actions ?
Est-ce que React Native peut stocker des enregistrements de réservation hors ligne ?
Comment empêcher les modifications non autorisées d'inventaire ?
Quelle est la meilleure façon d'afficher les journaux de nettoyage sur Android ?

Fiable par les développeurs du monde entier

Rejoignez des équipes expédiant des produits d'opérations de location plus rapidement avec les modèles Back4app

G2 Users Love Us Badge

Prêt à créer votre application d'inventaire de location de fête ?

Commencez votre projet de location de fête en quelques minutes. Aucune carte de crédit requise.

Choisir la technologie