Plantilla del backend del CRM de limpieza
Sitios de clientes, horarios de limpieza, inventario de suministros e informes de inspección
Un backend CRM de limpieza listo para producción en Back4app con registros de ClientSite, asignaciones de CleaningSchedule, SupplyInventory y entradas de SiteInspectionLog. Incluye diagrama ER, diccionario de datos, esquema JSON, playground de API y un prompt de Agente AI para un arranque rápido.
Conclusiones del CRM de limpieza
Esta plantilla te proporciona un backend de CRM de limpieza con ClientSite, CleaningSchedule, SupplyInventory y SiteInspectionLog para que los coordinadores y el personal de campo puedan permanecer en el mismo flujo de trabajo.
- Control del sitio del cliente — Rastrear cada ClientSite con siteName, siteCode, address, clientName, serviceLevel, primaryContact y active.
- Flujo de asignación de programación — Usa CleaningSchedule para conectar site, assignedTo, serviceDate, startTime, endTime, frequency, status y notes.
- Visibilidad del suministro — Almacenar SupplyInventory por sitio con itemName, sku, category, quantityOnHand, reorderLevel, unit y lastRestockedAt.
- Registro de inspección — Registre las entradas de SiteInspectionLog con sitio, programación, inspector, fecha de inspección, puntuación, hallazgos, acciones correctivas y photoUrl.
- Operaciones conscientes del rol — Aplique reglas de ACL y CLP para que coordinadores, técnicos, inspectores y clientes vean las filas correctas de Usuario, ClientSite, CleaningSchedule y SiteInspectionLog.
Descripción general: CRM de limpieza
La generación de informes en el CRM de limpieza debería responder a las preguntas de liderazgo sin una búsqueda manual a través de carpetas y hilos de mensajes. La solución es operativa, no motivacional. Con ClientSite, CleaningSchedule, SupplyInventory y SiteInspectionLog en Back4app, los equipos de CRM de limpieza pueden hacer cumplir la separación de deberes mientras colaboran en el mismo registro de caso. El esquema cubre Usuario, ClientSite (nombreDelSitio, códigoDelSitio, dirección, nombreDelCliente, nivelDeServicio, contactoPrincipal, activo), CleaningSchedule (sitio, asignadoA, fechaDeServicio, horaDeInicio, horaDeFin, frecuencia, estado, notas), SupplyInventory (sitio, nombreDelArtículo, sku, categoría, cantidadEnMano, nivelDeReorden, unidad, últimaFechaReabastecida) y SiteInspectionLog (sitio, programación, inspector, fechaDeInspección, puntuación, hallazgos, accionesCorrectivas, photoUrl) con controles de acceso de autenticación y operacionales integrados. Conéctese a su frontend preferido y envíe más rápido.
Mejor para:
Resumen del backend de CRM de limpieza
Los cambios estacionales afectan más al CRM de limpieza cuando cambian el personal, pero el modelo de datos no se ajusta a nuevos SKU, sitios o políticas.
Si estás evaluando Back4app, ClientSite, CleaningSchedule y SupplyInventory demuestran cuánta estructura obtienes antes de escribir SQL personalizado.
Funciones del CRM de limpieza
Cada tarjeta de tecnología en este hub utiliza el mismo esquema de backend de CRM de limpieza con Usuario, SitioCliente, HorarioDeLimpieza, InventarioDeSuministros y RegistroDeInspecciónDeSitio.
Gestión de roles de usuario
El usuario almacena el nombre de usuario, correo electrónico, rol y nombre completo para coordinadores, técnicos, inspectores y clientes.
Perfiles de sitio del cliente
ClientSite vincula cada ubicación a un siteName, siteCode, dirección, clientName, serviceLevel, primaryContact y bandera activa.
Seguimiento del programa de limpieza
CleaningSchedule almacena sitio, asignadoA, fechaDelServicio, horaDeInicio, horaDeFin, frecuencia, estado y notas.
Suministrar controles de inventario
SupplyInventory captura nombreDelArticulo, sku, categoria, cantidadEnMano, nivelDeReorden, unidad y ultimaReposicion.
Registros de inspección del sitio
SiteInspectionLog registra sitio, horario, inspector, fechaDeInspección, puntaje, hallazgos, accionesCorrectivas y fotoUrl.
¿Por qué construir tu backend de CRM de limpieza con Back4app?
Back4app te proporciona elementos básicos de sitio, horario, inventario e inspección para que tu equipo pueda centrarse en la entrega de servicios en lugar de la plomería de backend.
- •ClientSite y CleaningSchedule se mantienen alineados: Vincula cada CleaningSchedule a un ClientSite para que los equipos sepan dónde trabajar y los supervisores puedan actualizar la frecuencia de servicio sin hojas de cálculo duplicadas.
- •SupplyInventory apoya los controles de reposición: Almacena filas de SupplyInventory para cada sitio para que el personal pueda comparar quantityOnHand con reorderLevel antes de que un armario se quede sin existencias.
- •Visibilidad de inspección en vivo: Usa Live Queries en SiteInspectionLog para que los hallazgos de un recorrido por el sitio aparezcan rápidamente para coordinadores y personal en contacto con el cliente.
Construye y actualiza flujos de trabajo de limpieza rápidamente con un solo contrato de backend en todas las plataformas.
Beneficios del CRM de limpieza
Un backend de CRM de limpieza que ayuda a las operaciones a mantenerse precisas sin añadir trabajo administrativo adicional.
Planificación de ruta y turno más rápida
Comienza con un esquema completo de SitioCliente y HorarioDeLimpieza en lugar de reconstruir calendarios de servicio desde cero.
Controles de inventario que coinciden con la estantería
Utiliza campos de InventarioDeSuministros como cantidadEnMano, nivelDeReorden y unidad para que las escaseces sean visibles antes del siguiente servicio de piso.
Seguimiento de inspecciones
Almacena los hallazgos del RegistroDeInspecciónDeSitio, puntuación, accionesCorrectivas y photoUrl para que los supervisores puedan cerrar el ciclo sobre los problemas del sitio.
Limpiar límites de acceso
Aplicar reglas de ACL y CLP para que solo los roles de usuario adecuados puedan editar los registros de ClientSite, CleaningSchedule o SiteInspectionLog.
Un backend para herramientas de campo y oficina
Exponer los mismos datos del CRM de limpieza a través de REST y GraphQL para despacho, equipos móviles y paneles de oficina.
Bootstrap asistido por IA
Generar rápidamente la estructura de backend y la guía de integración con un aviso estructurado.
¿Listo para lanzar tu CRM de limpieza?
Deja que el Agente de IA de Back4app estructure tu backend de CRM de limpieza y genere registros de ClientSite, asignaciones de CleaningSchedule, seguimiento de SupplyInventory y entradas de SiteInspectionLog desde un solo aviso.
Gratis para empezar — 50 indicaciones de agente AI/mes, no se requiere tarjeta de crédito
Tecnología de CRM de limpieza
Todo incluido en esta plantilla comercial de backend de CRM de limpieza.
Mapa de relación de limpieza
Modelo de relación de entidad para el esquema de backend del CRM de limpieza.
Esquema que cubre usuarios, sitios de clientes, horarios, suministros y registros de inspección.
Ver fuente del diagrama
erDiagram
User ||--o{ ClientSite : "primaryContact"
User ||--o{ CleaningSchedule : "assignedTo"
User ||--o{ SiteInspectionLog : "inspector"
ClientSite ||--o{ CleaningSchedule : "site"
ClientSite ||--o{ SupplyInventory : "site"
ClientSite ||--o{ SiteInspectionLog : "site"
CleaningSchedule ||--o{ SiteInspectionLog : "schedule"
User {
String objectId PK
String username
String email
String password
String role
String fullName
Date createdAt
Date updatedAt
}
ClientSite {
String objectId PK
String siteName
String siteCode
String address
String clientName
String serviceLevel
String primaryContactId FK
Boolean active
Date createdAt
Date updatedAt
}
CleaningSchedule {
String objectId PK
String siteId FK
String assignedToId FK
Date serviceDate
String startTime
String endTime
String frequency
String status
String notes
Date createdAt
Date updatedAt
}
SupplyInventory {
String objectId PK
String siteId FK
String itemName
String sku
String category
Number quantityOnHand
Number reorderLevel
String unit
Date lastRestockedAt
Date createdAt
Date updatedAt
}
SiteInspectionLog {
String objectId PK
String siteId FK
String scheduleId FK
String inspectorId FK
Date inspectionDate
Number score
String findings
String correctiveActions
String photoUrl
Date createdAt
Date updatedAt
}
Flujo de la aplicación de limpieza
Flujo de ejecución típico para autenticación, carga de sitio del cliente, horarios de limpieza, inventario de suministros y registros de inspección.
Ver fuente del diagrama
sequenceDiagram
participant User
participant App as Commercial Janitorial CRM App
participant Back4app as Back4app Cloud
User->>App: Sign in to the janitorial dashboard
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Load cleaning schedules for assigned sites
App->>Back4app: GET /classes/CleaningSchedule?include=site,assignedTo
Back4app-->>App: CleaningSchedule rows
User->>App: Create a site inspection log
App->>Back4app: POST /classes/SiteInspectionLog
Back4app-->>App: SiteInspectionLog objectId
User->>App: Check supply inventory by site and reorder level
App->>Back4app: GET /classes/SupplyInventory?include=site&order=quantityOnHand
Back4app-->>App: SupplyInventory rows
App->>Back4app: Listen for schedule and inventory updates
Back4app-->>App: LiveQuery change eventsGuía de campo
Referencia completa a nivel de campo para cada clase en el esquema CRM de limpieza.
| Campo | Tipo | Descripción | Requerido |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | Automático |
| username | String | Login name for the account | |
| String | Contact email address | ||
| password | String | Hashed password stored by Parse | |
| role | String | Work role such as admin, coordinator, technician, inspector, or client | |
| fullName | String | Display name for dispatch and client communication | — |
| createdAt | Date | Auto-generated creation timestamp | Automático |
| updatedAt | Date | Auto-generated last-update timestamp | Automático |
8 campos en User
Acceso y permisos
Cómo la estrategia ACL y CLP asegura usuarios, sitios, horarios, inventario y registros de inspección.
Controles de usuario conscientes del rol
Solo el propietario de la cuenta o un rol de administrador debe actualizar los registros de usuario y las preferencias operativas.
Integridad del sitio y del horario
Restringir las escrituras de ClientSite y CleaningSchedule a coordinadores o supervisores, luego validar los cambios en Cloud Code.
Ámbito de inventario e inspección
Limitar las lecturas de SupplyInventory y SiteInspectionLog al personal asignado, supervisores de sitio y usuarios autorizados en contacto con el cliente.
Esquema JSON
Definición de esquema JSON en bruto lista para copiar en Back4app o utilizar como referencia de implementación.
{
"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
},
"fullName": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "ClientSite",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"siteName": {
"type": "String",
"required": true
},
"siteCode": {
"type": "String",
"required": true
},
"address": {
"type": "String",
"required": true
},
"clientName": {
"type": "String",
"required": true
},
"serviceLevel": {
"type": "String",
"required": true
},
"primaryContact": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"active": {
"type": "Boolean",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "CleaningSchedule",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"site": {
"type": "Pointer",
"required": true,
"targetClass": "ClientSite"
},
"assignedTo": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"serviceDate": {
"type": "Date",
"required": true
},
"startTime": {
"type": "String",
"required": true
},
"endTime": {
"type": "String",
"required": true
},
"frequency": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"notes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "SupplyInventory",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"site": {
"type": "Pointer",
"required": true,
"targetClass": "ClientSite"
},
"itemName": {
"type": "String",
"required": true
},
"sku": {
"type": "String",
"required": true
},
"category": {
"type": "String",
"required": true
},
"quantityOnHand": {
"type": "Number",
"required": true
},
"reorderLevel": {
"type": "Number",
"required": true
},
"unit": {
"type": "String",
"required": true
},
"lastRestockedAt": {
"type": "Date",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "SiteInspectionLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"site": {
"type": "Pointer",
"required": true,
"targetClass": "ClientSite"
},
"schedule": {
"type": "Pointer",
"required": false,
"targetClass": "CleaningSchedule"
},
"inspector": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"inspectionDate": {
"type": "Date",
"required": true
},
"score": {
"type": "Number",
"required": true
},
"findings": {
"type": "String",
"required": true
},
"correctiveActions": {
"type": "String",
"required": false
},
"photoUrl": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}Sugerencia de construcción de IA
Utiliza el agente AI de Back4app para generar una aplicación de CRM de limpieza real a partir de esta plantilla, que incluye frontend, backend, autenticación y flujos de programación de limpieza, inventario e inspección.
Crea un backend de aplicación CRM de limpieza en Back4app con este esquema y comportamiento exactos. Esquema: 1. Usuario (usa la autenticación integrada de Back4app): nombre de usuario, correo electrónico, contraseña, rol, nombreCompleto; objectId, createdAt, updatedAt (sistema). 2. ClienteSitio: nombreSitio, códigoSitio, dirección, nombreCliente, nivelServicio, contactoPrincipal (apuntador a Usuario), activo; objectId, createdAt, updatedAt (sistema). 3. ProgramaLimpieza: sitio (apuntador a ClienteSitio), asignadoA (apuntador a Usuario), fechaServicio, horaInicio, horaFin, frecuencia, estado, notas; objectId, createdAt, updatedAt (sistema). 4. InventarioSuministros: sitio (apuntador a ClienteSitio), nombreElemento, sku, categoría, cantidadDisponible, nivelReabastecimiento, unidad, últimaReposición; objectId, createdAt, updatedAt (sistema). 5. RegistroInspecciónSitio: sitio (apuntador a ClienteSitio), programa (apuntador a ProgramaLimpieza), inspector (apuntador a Usuario), fechaInspección, puntuación, hallazgos, accionesCorrectivas, fotoUrl; objectId, createdAt, updatedAt (sistema). Seguridad: - Los coordinadores gestionan las filas de ClienteSitio y asignan elementos de ProgramaLimpieza. Los técnicos solo pueden actualizar el estado de su propio ProgramaLimpieza y agregar entradas de RegistroInspecciónSitio para los sitios asignados. Los inspectores pueden crear y editar filas de RegistroInspecciónSitio para los sitios a los que están asignados. Las actualizaciones de inventario deben estar restringidas a roles de coordinador o supervisor. Los clientes pueden leer sus propios resúmenes de ClienteSitio y resultados de inspección solo cuando se les otorge explícitamente. Autenticación: - Registro, inicio de sesión, cierre de sesión. Comportamiento: - Listar sitios, crear horarios, rastrear stock de suministros y registrar hallazgos de inspección con fotos. Entrega: - Aplicación Back4app con esquema, CLPs, ACLs y un frontend para horarios, alertas de inventario y registro de inspección.
Presiona el botón de abajo para abrir el Agente con este aviso de plantilla prellenado.
Este es el aviso base sin un sufijo tecnológico. Puedes adaptar la pila de frontend generada más tarde.
Probador de API
Intenta los endpoints REST y GraphQL contra el esquema del CRM de limpieza. Las respuestas utilizan datos simulados y no requieren una cuenta de Back4app.
Usa el mismo esquema que esta plantilla.
Elige un Stack
Expande cada tarjeta para ver cómo integrar ClientSite, CleaningSchedule y SupplyInventory con tu stack elegido.
Flutter CRM de limpieza Backend
React CRM de limpieza Backend
React Nativo CRM de limpieza Backend
Next.js CRM de limpieza Backend
JavaScript CRM de limpieza Backend
Android CRM de limpieza Backend
iOS CRM de limpieza Backend
Vue CRM de limpieza Backend
Angular CRM de limpieza Backend
GraphQL CRM de limpieza Backend
REST API CRM de limpieza Backend
PHP CRM de limpieza Backend
.NET CRM de limpieza Backend
Lo que obtienes con cada tecnología
Cada stack utiliza el mismo esquema de backend de CRM de limpieza y contratos de API.
Estructura de datos unificada para operaciones de limpieza
Administra fácilmente los registros de Usuario, ClienteSitio, HorarioDeLimpieza, InventarioDeSuministros y RegistroDeInspecciónDeSitios con un esquema consistente.
Visibilidad del inventario de suministros para los equipos de limpieza
Realiza un seguimiento de los registros de InventarioDeSuministros para que las reposiciones ocurran antes de que los equipos se queden sin materiales.
Seguimiento de inspecciones para cada sitio
Almacena los resultados del RegistroDeInspecciónDeSitios con puntaje, hallazgos, accionesCorrectivas y fotoUrl.
Flujos de trabajo conscientes del rol para el personal de limpieza
Define el acceso para coordinadores, técnicos, inspectores y clientes sin cableado adicional en el backend.
Comparación de Tecnología CRM de Limpieza
Compara la velocidad de configuración, el estilo del SDK y el soporte de IA entre todas las tecnologías soportadas.
| Marco | Tiempo de Configuración | Beneficio del CRM de limpieza | Tipo de SDK | Soporte de IA |
|---|---|---|---|---|
| Aproximadamente 5 min | Base de código única para aplicaciones de tripulación y coordinador. | SDK tipado | Completo | |
| Menos de 5 minutos | Panel web rápido para horarios de limpieza. | SDK tipado | Completo | |
| ~3–7 min | Aplicación móvil multiplataforma para inspecciones. | SDK tipado | Completo | |
| Configuración rápida (5 min) | Portal de administración renderizado en servidor para operaciones. | SDK tipado | Completo | |
| ~3–5 min | Integración web ligera para herramientas de despacho. | SDK escrito | Completo | |
| Aproximadamente 5 min | Aplicación nativa Android para equipos de campo. | SDK escrito | Completo | |
| Menos de 5 minutos | Aplicación nativa iOS para supervisores. | SDK escrito | Completo | |
| ~3–7 min | Interfaz web React para planificación de usuarios y sitios. | SDK escrito | Completo | |
| Configuración rápida (5 min) | Aplicación web empresarial para operaciones de limpieza. | SDK escrito | Completo | |
| Menos de 2 min | API flexible GraphQL para consultas anidadas de sitios e inspección. | API GraphQL | Completo | |
| Configuración rápida (2 min) | REST API integración para operaciones de limpieza. | REST API | Completo | |
| ~3 min | Backend de PHP del lado del servidor para la coordinación de servicios. | REST API | Completo | |
| ~3–7 min | Backend de .NET para operaciones de limpieza. | SDK Tipado | Completo |
El tiempo de configuración refleja la duración esperada desde el inicio del proyecto hasta la primera consulta de ClientSite, CleaningSchedule o SiteInspectionLog utilizando este esquema de plantilla.
Preguntas frecuentes sobre el CRM de limpieza
Preguntas comunes sobre cómo construir un backend de CRM de limpieza con esta plantilla.
¿Listo para construir tu aplicación CRM de limpieza?
Comienza tu proyecto de CRM de limpieza en minutos. No se requiere tarjeta de crédito.