Plantilla de Backend de Despacho de Limpieza de Canales
Registros de altura de casas, seguimiento de desechos y recordatorios estacionales para equipos de limpieza de canales
Un backend de despacho de limpieza de canales listo para producción en Back4app con registros de altura de casas, seguimiento de desechos y recordatorios estacionales. Incluye diagrama ER, diccionario de datos, esquema JSON, playground de API, y un mensaje para AI Agent para un arranque rápido.
Aspectos clave para equipos de canalones
Este template te proporciona un backend de despacho para limpieza de canalones con registros de altura de casas, seguimiento de desechos y recordatorios estacionales para que los coordinadores y el personal de campo trabajen desde una única fuente de verdad.
- Registros de altura de casas en un solo lugar — Rastrea cada registro de casa con notas sobre la línea del tejado, alcance de escalera y detalles de acceso.
- Seguimiento de desechos asociado a trabajos — Vincula cada EntradaDeDesecho a una RutaDeServicio para que los equipos puedan registrar cantidades de bolsas y totales de paradas de vertido.
- Recordatorios estacionales que realmente se ajustan al trabajo — Utiliza RecordatorioEstacional para activar seguimientos de primavera y otoño basados en un calendario de casas.
Entendiendo el Backend de Despacho de Limpieza de Canalones
Toda organización de despacho de limpieza de canalones eventualmente se encuentra con el mismo obstáculo: el equipo es hábil, pero la capa de información no puede seguir el ritmo del trabajo. La fiabilidad es una característica, no una nota al pie. Esta plantilla modela Casa, RegistroDeAltura, EntradaDeDesecho, RutaDeServicio y RecordatorioEstacional en Back4app para que envíes un backend de despacho de limpieza de canalones funcional en lugar de estar uniendo hojas de cálculo con cinta aislante. El esquema cubre Usuario (nombreDeUsuario, correoElectrónico, contraseña), Casa (dirección, nombreDelPropietario, alturaDelTecho, notasDeAcceso), RegistroDeAltura (casa, medidoPor, longitudDeEscalera, alturaDelTecho, marcaDeTiempo), EntradaDeDesecho (ruta, sitioDeDesecho, cantidadDeBolsas, peso), RutaDeServicio (fecha, líderDelEquipo, estado, casas) y RecordatorioEstacional (casa, temporada, fechaDeVencimiento, estado) con autenticación y flujos de trabajo listos para el campo integrados. Conecta tu frontend preferido y envía más rápido.
Mejor para:
Cómo está organizado este backend de despacho de limpieza de canalones
Los equipos móviles y el personal de oficina ven diferentes porciones de la realidad en el despacho de limpieza de canalones; el trabajo del producto es unir esas porciones sin juegos de culpa.
Espera el mismo modelo de Casa, HeightLog y DisposalEntry ya sea que comiences desde Flutter, React, Next.js o otra ruta soportada.
Funciones principales de despacho de canalones
Cada tarjeta de tecnología en este hub utiliza el mismo esquema de despacho de canalones con House, HeightLog, DisposalEntry, ServiceRoute y SeasonalReminder.
Perfiles de casa para cada parada
La casa almacena dirección, nombre del propietario, altura del techo y notas de acceso.
Registros de altura en los que las cuadrillas pueden confiar
HeightLog vincula casa, medidoPor, longitudDeEscalera y alturaDelTecho.
Seguimiento de la eliminación desde el camión hasta el vertedero
DisposalEntry captura ruta, sitioDeVertido, cantidadDeBolsas y peso.
Rutas de servicio y recordatorios estacionales
ServiceRoute y SeasonalReminder coordinan el orden de trabajo y el tiempo de respuesta.
¿Por qué construir tu backend de despacho de limpieza de canalones con Back4app?
Back4app brinda a los equipos de limpieza de canalones primitives claras de Casa, HeightLog, DisposalEntry y SeasonalReminder para que los coordinadores puedan centrarse en la ruta y el seguimiento en lugar de en la infraestructura.
- •Registro de casa y altura: Las clases de Casa y HeightLog mantienen la altura del techo, notas de acceso y detalles de la escalera adjuntos a cada propiedad.
- •Seguimiento de rutas y disposición: Los registros de ServiceRoute y DisposalEntry te permiten seguir cada día de la tripulación desde la primera parada hasta la disposición en el vertedero.
- •Recordatorios de seguimiento estacionales: Los campos SeasonalReminder facilitan la programación, búsqueda y automatización de callbacks en primavera y otoño.
Crea flujos de trabajo de despacho de canalones más rápido con un contrato backend para casas, rutas, registros y recordatorios.
Beneficios principales
Un backend de limpieza de canalones que mantiene las notas de campo y la coordinación de la oficina en sincronía.
Menos detalles de casas perdidos
Las clases House y HeightLog preservan roofHeight, accessNotes y measuredBy en lugar de enterrarlos en mensajes de texto.
Registros de eliminación más limpios
Utiliza DisposalEntry para ver dumpSite, bagCount y weight para cada día de ruta.
El trabajo estacional es más fácil de repetir
SeasonalReminder te ayuda a programar seguimientos de primavera y otoño para cada Casa sin necesidad de ordenar hojas de cálculo manualmente.
Los cambios de ruta son visibles
Las actualizaciones de estado de ServiceRoute hacen obvio cuáles trabajos están programados, en progreso o completados.
Un esquema para aplicaciones de oficina y equipo
Consulta House, HeightLog y DisposalEntry desde cualquier cliente con el mismo contrato de datos.
Lanzamiento asistido por IA
Genera rápidamente el andamiaje de despacho de canalones y notas de integración con un solo prompt estructurado.
¿Listo para lanzar tu aplicación de despacho de canalones?
Deje que el agente de IA de Back4app estructure su backend de despacho de canalones y genere registros de altura de casas, seguimiento de desechos y recordatorios estacionales a partir de un solo aviso.
Gratis para empezar — 50 avisos del agente de IA/mes, no se requiere tarjeta de crédito
Stack técnico
Todo incluido en esta plantilla de backend de despacho de limpieza de canalones.
Diagrama ER de Ruta de Casa
Modelo de relación de entidades para el esquema de despacho de limpieza de canalones.
Esquema que cubre casas, registros de altura de techos, entradas de eliminación, rutas de servicio y recordatorios estacionales.
Ver fuente del diagrama
erDiagram
StaffUser ||--o{ House : "coordinates"
StaffUser ||--o{ DispatchJob : "assignedTo"
StaffUser ||--o{ DisposalLog : "disposedBy"
StaffUser ||--o{ SeasonalReminder : "createdBy"
House ||--o{ DispatchJob : "scheduled for"
House ||--o{ DisposalLog : "linked to"
House ||--o{ SeasonalReminder : "reminded"
DispatchJob ||--o{ DisposalLog : "generates"
StaffUser {
String objectId PK
String username
String email
String password
String role
String phone
Date createdAt
Date updatedAt
}
House {
String objectId PK
String address
String city
String state
String postalCode
String propertyNotes
Number houseHeight
String gateCode
String clientName
String clientPhone
Date createdAt
Date updatedAt
}
DispatchJob {
String objectId PK
String houseId FK
String assignedToId FK
Date jobDate
String status
String serviceLevel
Number houseHeightSnapshot
String crewNotes
Boolean disposalRequired
String season
Date completedAt
Date createdAt
Date updatedAt
}
DisposalLog {
String objectId PK
String jobId FK
String houseId FK
String disposedById FK
Number debrisVolume
String dumpSite
String receiptUrl
Date disposedAt
String notes
Date createdAt
Date updatedAt
}
SeasonalReminder {
String objectId PK
String houseId FK
String createdById FK
String reminderType
Date nextRunAt
String message
Boolean active
Date lastSentAt
Date createdAt
Date updatedAt
}
Flujo de Integración de Despacho
Flujo típico de tiempo de ejecución para inicio de sesión, búsqueda de casas, registros de altura, seguimiento de eliminación y recordatorios estacionales.
Ver fuente del diagrama
sequenceDiagram
participant User
participant App as Gutter Cleaning Dispatch App
participant Back4app as Back4app Cloud
User->>App: Sign in to the dispatch dashboard
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Load today's DispatchJob list
App->>Back4app: GET /classes/DispatchJob?include=house,assignedTo
Back4app-->>App: Scheduled jobs with houseHeightSnapshot and status
User->>App: Add a DisposalLog after cleanup
App->>Back4app: POST /classes/DisposalLog
Back4app-->>App: DisposalLog objectId
User->>App: Create or update a SeasonalReminder for a House
App->>Back4app: POST /classes/SeasonalReminder
Back4app-->>App: Reminder saved and ready for nextRunAt
App->>Back4app: Subscribe to DispatchJob live updates
Back4app-->>App: Job status changes and new assignmentsDiccionario de campos
Referencia completa a nivel de campo para cada clase en el esquema de despacho de canal.
| Campo | Tipo | Descripción | Requerido |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | Automático |
| username | String | Login name for dispatch staff or managers | |
| String | Email address used for access and notifications | ||
| password | String | Hashed password (write-only) | |
| role | String | Operational role such as manager, coordinator, or field-tech | |
| phone | String | Contact number for route updates and job callbacks | — |
| createdAt | Date | Auto-generated creation timestamp | Automático |
| updatedAt | Date | Auto-generated last-update timestamp | Automático |
8 campos en StaffUser
Seguridad y Permisos
Cómo la estrategia de ACL y CLP protege los registros de usuarios, detalles de la casa y registros de rutas.
Edición solo para el equipo
Solo los coordinadores y líderes de equipo autorizados deben crear o actualizar los registros de House, HeightLog, DisposalEntry y ServiceRoute.
Los detalles de la propiedad permanecen limitados
Limitar las lecturas de homeownerName, accessNotes y roofHeight a los usuarios asignados a la ruta o al personal de oficina.
Integridad del recordatorio
Las actualizaciones de SeasonalReminder deben pasar por la validación de Cloud Code para que dueDate y status permanezcan consistentes.
Esquema JSON
Definición de esquema JSON en bruto lista para copiar en Back4app o usar como referencia de implementación.
{
"classes": [
{
"className": "StaffUser",
"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
},
"phone": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "House",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"address": {
"type": "String",
"required": true
},
"city": {
"type": "String",
"required": true
},
"state": {
"type": "String",
"required": true
},
"postalCode": {
"type": "String",
"required": true
},
"propertyNotes": {
"type": "String",
"required": false
},
"houseHeight": {
"type": "Number",
"required": true
},
"gateCode": {
"type": "String",
"required": false
},
"clientName": {
"type": "String",
"required": true
},
"clientPhone": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "DispatchJob",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"house": {
"type": "Pointer",
"required": true,
"targetClass": "House"
},
"assignedTo": {
"type": "Pointer",
"required": true,
"targetClass": "StaffUser"
},
"jobDate": {
"type": "Date",
"required": true
},
"status": {
"type": "String",
"required": true
},
"serviceLevel": {
"type": "String",
"required": true
},
"houseHeightSnapshot": {
"type": "Number",
"required": true
},
"crewNotes": {
"type": "String",
"required": false
},
"disposalRequired": {
"type": "Boolean",
"required": true
},
"season": {
"type": "String",
"required": true
},
"completedAt": {
"type": "Date",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "DisposalLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"job": {
"type": "Pointer",
"required": true,
"targetClass": "DispatchJob"
},
"house": {
"type": "Pointer",
"required": true,
"targetClass": "House"
},
"disposedBy": {
"type": "Pointer",
"required": true,
"targetClass": "StaffUser"
},
"debrisVolume": {
"type": "Number",
"required": true
},
"dumpSite": {
"type": "String",
"required": true
},
"receiptUrl": {
"type": "String",
"required": false
},
"disposedAt": {
"type": "Date",
"required": true
},
"notes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "SeasonalReminder",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"house": {
"type": "Pointer",
"required": true,
"targetClass": "House"
},
"createdBy": {
"type": "Pointer",
"required": true,
"targetClass": "StaffUser"
},
"reminderType": {
"type": "String",
"required": true
},
"nextRunAt": {
"type": "Date",
"required": true
},
"message": {
"type": "String",
"required": true
},
"active": {
"type": "Boolean",
"required": true
},
"lastSentAt": {
"type": "Date",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}Construir con el agente de IA
Usa el agente de IA de Back4app para generar una aplicación de despacho de limpieza de canalones a partir de esta plantilla, incluyendo frontend, backend, autenticación, y flujos de casa, registro de altura, disposición, ruta y recordatorio.
Crea un backend de aplicación de despacho de limpieza de canalones en Back4app con este esquema y comportamiento exactos. Esquema: 1. Usuario (usar el incorporado de Back4app): nombre de usuario, correo electrónico, contraseña; objectId, createdAt, updatedAt (sistema). 2. Casa: dirección (String, requerido), nombreDelPropietario (String, requerido), alturaDelTecho (Number, requerido), notasDeAcceso (String); objectId, createdAt, updatedAt (sistema). 3. RegistroDeAltura: casa (Puntero a Casa, requerido), medidoPor (Puntero a Usuario, requerido), longitudDeEscalera (Number, requerido), alturaDelTecho (Number, requerido), marcaDeTiempo (Date, requerido); objectId, createdAt, updatedAt (sistema). 4. EntradaDeDisposición: ruta (Puntero a ServiceRoute, requerido), sitioDeVertido (String, requerido), cantidadDeBolsas (Number, requerido), peso (Number); objectId, createdAt, updatedAt (sistema). 5. RutaDeServicio: fecha (Date, requerido), jefeDeEquipo (Puntero a Usuario, requerido), estado (String, requerido), casas (Array de Punteros a Casa); objectId, createdAt, updatedAt (sistema). 6. RecordatorioEstacional: casa (Puntero a Casa, requerido), temporada (String, requerido), fechaDeVencimiento (Date, requerido), estado (String, requerido); objectId, createdAt, updatedAt (sistema). Seguridad: - Solo los coordinadores y jefes de equipo autorizados pueden crear o actualizar registros de despacho. Usa Cloud Code para validar la asignación de rutas y el estado de los recordatorios. Autenticación: - Registro, inicio de sesión, cierre de sesión. Comportamiento: - Listar casas, crear registros de altura, agregar entradas de disposición, actualizar el estado de la ruta y programar recordatorios estacionales. Entrega: - Aplicación de Back4app con esquema, ACLs, CLPs; frontend para casas, rutas, registros de altura, seguimiento de disposición y recordatorios estacionales.
Presiona el botón de abajo para abrir el agente con este aviso de plantilla pre-rellenado.
Este es el aviso base sin un sufijo de tecnología. Puedes adaptar el stack de frontend generado posteriormente.
API Playground
Prueba los endpoints REST y GraphQL contra el esquema de despacho de desagüe. Las respuestas utilizan datos simulados y no requieren una cuenta de Back4app.
Usa el mismo esquema que esta plantilla.
Elige tu tecnología
Expande cada tarjeta para ver cómo integrar House, HeightLog y DisposalEntry con tu pila elegida.
Flutter Gutter Dispatch Backend
React Gutter Dispatch Backend
React Nativo Gutter Dispatch Backend
Next.js Gutter Dispatch Backend
JavaScript Gutter Dispatch Backend
Android Gutter Dispatch Backend
iOS Gutter Dispatch Backend
Vue Gutter Dispatch Backend
Angular Gutter Dispatch Backend
GraphQL Gutter Dispatch Backend
REST API Gutter Dispatch Backend
PHP Gutter Dispatch Backend
.NET Gutter Dispatch Backend
Lo que obtienes con cada tecnología
Cada pila utiliza el mismo esquema de backend de despacho de canal y contratos de API.
Estructura de datos de trabajo de canal unificada
Gestiona casas, registros de altura, entradas de eliminación, rutas y recordatorios con un esquema.
Registros de altura de casas para equipos de campo
Mantén roofHeight, ladderLength y accessNotes adjuntos a cada parada de casa.
Seguimiento de eliminación para cada ruta
Registra dumpSite, bagCount y totales de ruta desde el camión hasta el sitio de eliminación.
Recordatorios estacionales para limpieza repetida
Programa devoluciones de primavera y otoño basadas en cada registro de casa.
REST/GraphQL APIs para herramientas de despacho
Integra paneles de oficina, aplicaciones para el equipo e informes a través de API flexibles.
Arquitectura de servicio de campo extensible
Agrega inspecciones, fotos o facturas más tarde sin descartar el modelo de despacho.
Comparación del Marco de Despacho
Compara la velocidad de configuración, el estilo de SDK y el soporte de IA en todas las tecnologías compatibles.
| Marco | Tiempo de Configuración | Beneficio de Despacho | Tipo de SDK | Soporte de IA |
|---|---|---|---|---|
| Acerca de 5 min | Código único para aplicaciones de despacho de tripulación y oficina. | SDK tipado | Completo | |
| Menos de 5 minutos | Tablero web rápido para la planificación de rutas. | SDK tipado | Completo | |
| ~3–7 min | Aplicación móvil multiplataforma para equipos de campo. | SDK tipado | Completo | |
| Configuración rápida (5 min) | Portal de oficina renderizado en servidor para el personal de despacho. | SDK tipado | Completo | |
| ~3–5 min | Integración web ligera para operaciones de canaletas. | SDK tipado | Completo | |
| Aproximadamente 5 min | Aplicación nativa Android para equipos en la carretera. | SDK tipado | Completo | |
| Menos de 5 minutos | Aplicación nativa de iPhone para mediciones en campo. | SDK tipado | Completo | |
| ~3–7 min | Interfaz web React para actualizaciones de despacho. | SDK tipado | Completo | |
| Configuración rápida (5 min) | Panel empresarial para la coordinación de rutas. | SDK tipado | Completo | |
| Menos de 2 min | API GraphQL flexible para búsquedas de casas y registros. | API GraphQL | Completo | |
| Configuración rápida (2 min) | integración de REST API para herramientas de despacho de tripulación. | REST API | Completo | |
| ~3 min | backend de PHP del lado del servidor para herramientas de administración de rutas. | REST API | Completo | |
| ~3–7 min | backend de .NET para informes operativos. | SDK tipado | Completo |
El tiempo de configuración refleja la duración esperada desde el inicio del proyecto hasta la primera consulta de casa o ruta utilizando este esquema de plantilla.
Preguntas Frecuentes
Preguntas comunes sobre la construcción de un backend de despacho para limpieza de canaletas con esta plantilla.
¿Listo para construir tu aplicación de despacho de limpieza de canalones?
Comienza tu proyecto de despacho de canalones en minutos. No se requiere tarjeta de crédito.