Modèle de backend du journal de conformité au tabac
Journal des contrôles d'âge et suivi des audits de magasin
Un backend de journal de conformité au tabac prêt pour la production sur Back4app avec journaux de contrôles d'âge, audits de signalisation, et suivi des timbres fiscaux. Inclut diagramme ER, dictionnaire de données, schéma JSON, terrain de jeu API, et un prompt Agent AI pour une configuration rapide.
Principaux enseignements du journal de conformité
Ce modèle vous fournit un backend de journal de conformité du tabac avec des journaux de contrôle d'âge, des audits de signalisation et un suivi des timbres fiscaux afin que les managers et le personnel de terrain puissent enregistrer les inspections et examiner les conclusions en un seul endroit.
- Journaux de contrôle d'âge liés à un emplacement — Modélisez chaque AgeCheckLog avec un pointeur vers l'emplacement afin que les visites en magasin, les vérifications des employés et les notes de révision restent organisées.
- Couverture de l'audit de signalisation — Suivez les résultats de l'audit de signalisation pour les avertissements requis, le placement et les problèmes de panneaux manquants à chaque emplacement.
- Vérification des timbres fiscaux — Enregistrez les détails des timbres fiscaux, y compris le numéro de timbre, le type de produit et le résultat de la vérification, pour une révision prête pour l'audit.
- Flux de travail de révision prêt sur le terrain — Utilisez les classes et permissions Back4app afin que les coordinateurs puissent soumettre, réviser et approuver les journaux de conformité.
Vue d'ensemble du backend du journal de conformité du tabac
Les régulateurs s'attendent à ce que les preuves des journaux de conformité du tabac soient durables : suffisamment immuables pour être fiables, suffisamment flexibles pour améliorer le programme au fil du temps. Le coût apparaît dans les rappels et les crédits. Sur Back4app, Location, AgeCheckLog, SignageAudit et TaxStamp se connectent pour former un récit cohérent du journal de conformité du tabac plutôt qu'un tas de tickets et de fichiers déconnectés. Le schéma couvre Utilisateur (nom d'utilisateur, e-mail, mot de passe), Emplacement (nomDuMagasin, adresse, district), AgeCheckLog (emplacement, nomDuVendeur, anneeDeNaissanceDuClient, résultat), SignageAudit (emplacement, typeDePanneau, placement, statut), et TaxStamp (emplacement, numéroDuTimbre, typeDeProduit, vérifiéLe) avec des contrôles d'authentification et de révision intégrés. Connectez votre frontend préféré et commencez à enregistrer les inspections plus tôt.
Meilleur pour :
Journal de conformité au tabac : instantané backend
Les meilleurs tableaux de bord de journal de conformité au tabac sont ennuyeux car les entités sous-jacentes sont propres — pas parce que quelqu'un a manipulations un tableur à minuit.
Attendez-vous à trouver la même Location, AgeCheckLog et SignageAudit que vous commenciez à partir de Flutter, React, Next.js, ou un autre chemin pris en charge.
Fonctionnalités clés du registre de conformité du tabac
Chaque carte technologique dans ce hub utilise le même schéma de Journal de conformité du tabac avec Location, AgeCheckLog, SignageAudit et TaxStamp.
Registre de localisation
La classe Location stocke storeName, address, district et status.
Journaux de vérification d'âge
La classe AgeCheckLog stocke clerkName, customerBirthYear, result et notes.
La classe SignageAudit enregistre signType, placement, condition et status.
SignageAudit class records signType, placement, condition, and status.
Suivi des timbres fiscaux
La classe TaxStamp stocke stampNumber, productType, verifiedAt et verificationStatus.
Pourquoi construire votre backend de journal de conformité au tabac avec Back4app ?
Back4app vous fournit les primitives du journal de conformité afin que votre équipe puisse se concentrer sur les inspections et les étapes de révision au lieu de l'infrastructure et du câblage d'API répétitif.
- •Enregistrement centré sur la localisation: La classe Location ancre les enregistrements AgeCheckLog, SignageAudit et TaxStamp à un magasin ou site.
- •Flux de travail AgeCheckLog et SignageAudit: Créer des entrées avec les champs résultat, signType et placement, puis les examiner sans changer le contrat de l'application.
- •Support de vérification de TaxStamp: Stocker stampNumber, productType et verifiedAt dans TaxStamp afin que les auditeurs puissent tracer l'historique des vérifications plus tard.
Déplacer l'enregistrement des inspections, la révision des signes et les contrôles de timbre fiscal dans un seul contrat backend pour chaque client.
Avantages principaux
Un backend de conformité du tabac qui vous aide à enregistrer les inspections sans perdre de vue les détails sur le terrain.
Configuration d'inspection de magasin plus rapide
Commencez avec Location, AgeCheckLog, SignageAudit et TaxStamp au lieu de créer manuellement des tableaux de conformité.
Effacer la trace d'examen
Enregistrer qui a saisi le journal, à quel magasin il appartient et quel résultat a été capturé pour les audits ultérieurs.
Visibilité des champs et des responsables
Permettre aux coordinateurs d'examiner les contrôles d'âge, les problèmes d'affichage et la vérification des tampons à partir du même modèle de données.
Accès contrôlé aux journaux de conformité
Utiliser ACL/CLP afin que le personnel de terrain, les superviseurs et les auditeurs ne voient que les enregistrements qu'ils doivent traiter.
API réutilisable pour chaque appareil
Servir les inspecteurs mobiles, les tableaux de bord internes et les outils d'examen à partir d'un seul contrat API.
Démarrage de projet guidé par des invites
Utiliser l'invite de l'agent AI pour générer la structure de l'application de conformité et passer plus rapidement à la mise en œuvre.
Prêt à lancer votre application de journal de conformité au tabac ?
Laissez l'agent AI de Back4app structurer votre backend de journal de conformité au tabac et générer des contrôles d'âge, des audits d'affichage et des flux de timbres fiscaux à partir d'un seul prompt.
Gratuit pour commencer — 50 prompts d'agent AI/mois, sans carte de crédit requise
Pile technique
Tout est inclus dans ce modèle de backend de journal de conformité au tabac.
Diagramme ER de conformité au tabac
Modèle de relation d'entité pour le schéma backend du journal de conformité au tabac.
Schéma couvrant les emplacements des magasins, les journaux de vérification d'âge, les audits d'affichage, et la vérification des timbres fiscaux.
Voir la source du diagramme
erDiagram
User ||--o{ Location : "manager"
User ||--o{ AgeCheckLog : "checkedBy"
User ||--o{ SignageAudit : "auditedBy"
User ||--o{ TaxStampInspection : "inspectedBy"
Location ||--o{ AgeCheckLog : "location"
Location ||--o{ SignageAudit : "location"
Location ||--o{ TaxStampInspection : "location"
User {
String objectId PK
String username
String email
String password
String role
Date createdAt
Date updatedAt
}
Location {
String objectId PK
String storeName
String storeCode
String address
String managerId FK
Date createdAt
Date updatedAt
}
AgeCheckLog {
String objectId PK
String locationId FK
String checkedById FK
Date checkDate
String customerInitials
Boolean dobVerified
String idType
String notes
Date createdAt
Date updatedAt
}
SignageAudit {
String objectId PK
String locationId FK
String auditedById FK
Date auditDate
Boolean ageRestrictionSignPresent
Boolean healthWarningSignPresent
String photoUrl
String finding
Date createdAt
Date updatedAt
}
TaxStampInspection {
String objectId PK
String locationId FK
String inspectedById FK
Date inspectionDate
String productBrand
String stampSerial
Boolean stampMatched
String issueNotes
Date createdAt
Date updatedAt
}
Flux d'intégration du journal de conformité
Flux d'exécution typique pour l'authentification, la recherche de localisation, la journalisation de vérification d'âge, les audits de signalisation et la vérification de timbre fiscal.
Voir la source du diagramme
sequenceDiagram
participant User
participant App as Tobacco Compliance Log App
participant Back4app as Back4app Cloud
User->>App: Sign in
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Open location queue
App->>Back4app: GET /classes/Location?include=manager
Back4app-->>App: Locations and managers
User->>App: Add age check log
App->>Back4app: POST /classes/AgeCheckLog
Back4app-->>App: AgeCheckLog objectId
User->>App: Submit signage audit
App->>Back4app: POST /classes/SignageAudit
Back4app-->>App: SignageAudit objectId
User->>App: Review tax stamp inspection
App->>Back4app: GET /classes/TaxStampInspection?order=-inspectionDate
Back4app-->>App: Inspection historyDictionnaire de données
Référence complète niveau champ pour chaque classe dans le schéma du Journal de Conformité au Tabac.
| Champ | Type | Description | Requis |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | Auto |
| username | String | User login name | |
| String | User email address | ||
| password | String | Hashed password (write-only) | |
| role | String | User role such as manager, coordinator, or fieldStaff | |
| createdAt | Date | Auto-generated creation timestamp | Auto |
| updatedAt | Date | Auto-generated last-update timestamp | Auto |
7 champs dans User
Sécurité et permissions
Comment la stratégie ACL et CLP protège les journaux de vérification d’âge, les audits de signalisation et les enregistrements de timbres fiscaux.
Saisie de champ limitée par rôle
Le personnel de terrain peut créer des entrées de AgeCheckLog et de SignageAudit, mais l'approbation ou la suppression reste limitée aux superviseurs.
Visibilité limitée à l'emplacement
Les utilisateurs ne devraient lire que les enregistrements de localisation et les journaux associés qui appartiennent à leur district ou à leur itinéraire assigné.
Protection de la piste d'audit
Utilisez la validation Cloud Code pour que les changements de stampNumber, result et verificationStatus restent contrôlés et traçables.
Schéma (JSON)
Définition de schéma JSON brute 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
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Location",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"storeName": {
"type": "String",
"required": true
},
"storeCode": {
"type": "String",
"required": true
},
"address": {
"type": "String",
"required": true
},
"manager": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "AgeCheckLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"location": {
"type": "Pointer",
"required": true,
"targetClass": "Location"
},
"checkedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"checkDate": {
"type": "Date",
"required": true
},
"customerInitials": {
"type": "String",
"required": false
},
"dobVerified": {
"type": "Boolean",
"required": true
},
"idType": {
"type": "String",
"required": true
},
"notes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "SignageAudit",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"location": {
"type": "Pointer",
"required": true,
"targetClass": "Location"
},
"auditedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"auditDate": {
"type": "Date",
"required": true
},
"ageRestrictionSignPresent": {
"type": "Boolean",
"required": true
},
"healthWarningSignPresent": {
"type": "Boolean",
"required": true
},
"photoUrl": {
"type": "String",
"required": false
},
"finding": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "TaxStampInspection",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"location": {
"type": "Pointer",
"required": true,
"targetClass": "Location"
},
"inspectedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"inspectionDate": {
"type": "Date",
"required": true
},
"productBrand": {
"type": "String",
"required": true
},
"stampSerial": {
"type": "String",
"required": true
},
"stampMatched": {
"type": "Boolean",
"required": true
},
"issueNotes": {
"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 journal de conformité au tabac à partir de ce modèle, y compris le frontend, le backend, l'authentification et la vérification d'âge, l'audit de signalisation et les flux de timbres fiscaux.
Créez un backend d'application de journal de conformité au tabac sur Back4app avec ce schéma et ce comportement exacts. Schéma: 1. Utilisateur (utilisez Back4app intégré) : nom d'utilisateur, email, mot de passe ; objectId, createdAt, updatedAt (système). 2. Emplacement : nomDuMagasin (String, requis), adresse (String, requis), district (String, requis), statut (String, requis) ; objectId, createdAt, updatedAt (système). 3. JournalVérificationÂge : emplacement (Pointeur vers l'Emplacement, requis), nomDuCommis (String, requis), annéeDeNaissanceClient (Nombre, requis), résultat (String, requis), notes (String) ; objectId, createdAt, updatedAt (système). 4. AuditSignalisation : emplacement (Pointeur vers l'Emplacement, requis), typeDePanneau (String, requis), emplacement (String, requis), état (String, requis), statut (String, requis) ; objectId, createdAt, updatedAt (système). 5. TimbreFiscal : emplacement (Pointeur vers l'Emplacement, requis), numéroDeTimbre (String, requis), typeDeProduit (String, requis), vérifiéÀ (Date, requis), statutDeVérification (String, requis) ; objectId, createdAt, updatedAt (système). Sécurité: - Seuls les utilisateurs de champ assignés peuvent créer des journaux pour leurs emplacements. Les superviseurs peuvent examiner et approuver. Utilisez le Cloud Code pour la validation. Auth: - Inscription, connexion, déconnexion. Comportement: - Lister les emplacements, créer des journaux de vérification d'âge, soumettre des audits de signalisation et vérifier les timbres fiscaux. Livrer: - Application Back4app avec schéma, ACLs, CLPs ; frontend pour les emplacements, vérifications d'âge, audits de signalisation et vérifications de timbres fiscaux.
Appuyez sur le bouton ci-dessous pour ouvrir l'Agent avec ce modèle de prompt pré-rempli.
Ceci est le prompt de base sans suffixe technologique. Vous pouvez adapter la pile frontend générée par la suite.
Terrain de jeu API
Essayez les points de terminaison REST et GraphQL contre le schéma du registre de conformité du tabac. 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 technologie
Développez chaque carte pour voir comment intégrer Location, AgeCheckLog et SignageAudit avec votre pile choisie.
Flutter Journal de conformité au tabac Backend
React Journal de conformité au tabac Backend
React Natif Journal de conformité au tabac Backend
Next.js Journal de conformité au tabac Backend
JavaScript Journal de conformité au tabac Backend
Android Journal de conformité au tabac Backend
iOS Journal de conformité au tabac Backend
Vue Journal de conformité au tabac Backend
Angular Journal de conformité au tabac Backend
GraphQL Journal de conformité au tabac Backend
REST API Journal de conformité au tabac Backend
PHP Journal de conformité au tabac Backend
.NET Journal de conformité au tabac Backend
Ce que vous obtenez avec chaque technologie
Chaque pile utilise le même schéma et les mêmes contrats API de journal de conformité tabac.
Structure unifiée du journal de conformité
Gérez les enregistrements de Localisation, AgeCheckLog, SignageAudit et TaxStamp avec un seul schéma.
Journaux de vérification d'âge pour les équipes sur le terrain
Capturez le nom du clerc, l'année de naissance du client et le résultat au niveau du magasin.
Suivi des audits de signalisation
Enregistrez le type de signal, le placement et l'état pour chaque visite d'audit.
Traçabilité de la vérification des timbres fiscaux
Stockez le numéro de timbre et l'état de vérification pour un examen ultérieur.
API REST/GraphQL pour les applications de conformité
Intégrez des tableaux de bord, des outils de terrain mobiles et des vues de superviseur depuis le même backend.
Flux de travail d'examen extensible
Ajoutez des approbations, des notes de problème ou des étapes d'escalade sans remplacer le modèle de journal principal.
Comparaison du cadre de conformité du tabac
Comparez la vitesse de configuration, le style SDK et le support de l'IA à travers toutes les technologies prises en charge.
| Cadre | Temps de configuration | Avantage du journal de conformité | Type de SDK | Support de l'IA |
|---|---|---|---|---|
| Environ 5 min | Base de code unique pour les inspecteurs sur mobile et web. | SDK typé | Complet | |
| Moins de 5 minutes | Tableau de bord web rapide pour les responsables de la conformité. | SDK typé | Complet | |
| ~3–7 min | Application mobile multiplateforme pour les visites en magasin. | SDK typé | Complet | |
| Configuration rapide (5 min) | Application web rendue par le serveur pour les équipes de révision. | SDK typé | Complet | |
| ~3–5 min | Intégration de navigateur légère pour l'enregistrement sur le terrain. | SDK typé | Complet | |
| Environ 5 min | Application native Android pour les inspections en magasin. | SDK typé | Complet | |
| Moins de 5 minutes | Application iPhone native pour les vérifications de conformité. | SDK typé | Complet | |
| ~3–7 min | Interface web Reactive pour la déclaration de district. | SDK typé | Complet | |
| Configuration rapide (5 min) | Application web d'entreprise pour les audits et les approbations. | SDK typé | Complet | |
| Moins de 2 min | API GraphQL flexible pour des enregistrements de conformité liés. | API GraphQL | Complet | |
| Configuration rapide (2 min) | Intégration REST API pour outils d'inspection. | REST API | Complet | |
| ~3 min | Backend PHP côté serveur pour portails de conformité. | REST API | Complet | |
| ~3–7 min | .NET backend pour les workflows d'audit. | 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 Location ou AgeCheckLog utilisant ce schéma de modèle.
Questions Fréquemment Posées
Questions courantes sur la création d'un backend de registre de conformité au tabac avec ce modèle.
Prêt à construire votre application de journal de conformité du tabac ?
Commencez votre projet de conformité du tabac en quelques minutes. Aucune carte de crédit requise.