Modelo de Backend do Marketplace de Mão de Obra para Mudança
Busca de Equipe, Registro de Reserva, Atribuição e Revisão
Um backend de marketplace de mão de obra para mudança pronto para produção na Back4app com busca de CrewListing, registro de BookingRequest, logs de CrewAssignment e registros de CrewReview. Inclui diagrama ER, dicionário de dados, esquema JSON, sandbox de API e um prompt de Agente de IA para bootstrap rápido.
Principais Conclusões
Este modelo oferece um backend de marketplace de trabalho de mudança com busca de CrewListing, captação de BookingRequest e rastreamento de CrewAssignment para que os operadores possam combinar a demanda com as equipes disponíveis mais rapidamente.
- Busca de CrewListing — Modele CrewListing com hourlyRate, crewSize, heavyLiftingCapability, serviceArea, equipmentNotes e availabilityStatus para que os compradores possam comparar as equipes antes de reservar.
- Captação de BookingRequest — Armazene BookingRequest com jobTitle, moveDate, startTime, hoursNeeded, pickupZip, dropoffZip e heavyItems para capturar os detalhes da mudança.
- Registros de CrewAssignment — Mantenha CrewAssignment ligado a bookingRequest, crewListing, assignedBy, crewSizeLogged e arrivalStatus para cada trabalho dispatchado.
- Histórico do CrewReview — Use o CrewReview com avaliação, comentário e safetyFlag para rastrear resultados após registros de BookingRequest concluídos.
Entendendo o Backend do Marketplace de Mão de Obra de Mudança
No marketplace de mão de obra de mudança, a verdade operacional é o cronograma — se o calendário estiver errado, cada promessa subsequente também estará errada. Confiabilidade é um recurso, não uma nota de rodapé. Modele as entidades principais na Back4app para dar às equipes do marketplace de mão de obra de mudança um backend que pode crescer de um único pátio para operações em múltiplos locais. O esquema abrange Usuário, CrewListing, BookingRequest, CrewAssignment e CrewReview com recursos de autenticação e fluxo de trabalho do marketplace incorporados. Conecte seu frontend preferido e envie mais rápido.
Melhor para:
Visão geral do backend do marketplace de mão de obra para mudanças
Os clientes não se importam com suas ferramentas internas; eles se importam se as promessas do marketplace de mão de obra para mudanças aparecem no horário, com os ativos certos e a documentação correta.
Este resumo orienta equipes sobre contas de usuário e funções, perfis do marketplace de listagem de equipes e a coleta de solicitações de reserva antes que alguém mergulhe em diagramas ER ou exportações JSON.
Recursos principais do mercado de mão de obra de mudança
Cada cartão de tecnologia neste hub usa o mesmo esquema de back-end de mão de obra de movimentação com User, CrewListing, BookingRequest, CrewAssignment e CrewReview.
Contas de usuário e funções
O usuário armazena nome de usuário, e-mail, função, nome de exibição, número de telefone e área de serviço.
Perfis de mercado do CrewListing
O CrewListing armazena título, taxa horária, tamanho da equipe, capacidade de levantamento pesado, área de serviço e status de disponibilidade.
Recepção de BookingRequest
O BookingRequest captura título do trabalho, data de mudança, hora de início, horas necessárias, CEP de retirada, CEP de entrega e itens pesados.
Rastreamento de Atribuição de Equipe
A Atribuição de Equipe vincula bookingRequest, crewListing, assignedBy, crewSizeLogged e arrivalStatus.
Feedback de Avaliação de Equipe
A Avaliação de Equipe armazena bookingRequest, reviewer, crewListing, rating, comment e safetyFlag.
Por que construir seu backend de marketplace de mão de obra para mudanças com Back4app?
Back4app oferece a você primitivas de Usuário, BookingRequest e CrewListing para que sua equipe possa se concentrar em combinar equipes e trabalhos de mudança em vez de conectar infraestrutura.
- •Gestão de listagens e reservas da equipe: As classes User, CrewListing e BookingRequest mantêm identidade de login, serviceArea, moveDate, pickupZip e dropoffZip em um só lugar.
- •Controle de fluxo de atribuição e revisão: Os registros de CrewAssignment e CrewReview tornam crewSizeLogged, arrivalStatus, rating e safetyFlag visíveis após o despacho.
- •Flexibilidade em tempo real + API: Use Live Queries para atualizações de BookingRequest enquanto mantém REST e GraphQL disponíveis para painéis de despacho.
Construa e itere rapidamente em recursos de mão de obra de mudança com um único contrato de backend em todas as plataformas.
Benefícios Principais
Um backend de trabalho de mudança que ajuda você a passar de lead para atribuição de equipe sem reescrever a camada de dados.
Recebimento de reservas mais rápido
Comece com BookingRequest com moveDate, startTime, hoursNeeded, pickupZip e dropoffZip em vez de inventar um novo formulário de mudança.
Verificações claras de capacidade da equipe
Use CrewListing com heavyLiftingCapability, crewSize e equipmentNotes para manter transporte de escadas, carrinhos e cintas visíveis antes do despacho.
Atribuição de equipe que você pode auditar
CrewAssignment mantém bookingRequest, crewListing, assignedBy, crewSizeLogged e arrivalStatus visíveis quando um trabalho é confirmado.
Acesso limitado para operadores e trabalhadores
Use ACL/CLP para que apenas os usuários certos possam editar as linhas de User, CrewListing, BookingRequest e CrewAssignment.
Histórico de trabalho e revisão
Armazenar as alterações de status de BookingRequest, timestamps de CrewAssignment e classificações de CrewReview sem quebrar o esquema.
Fluxo de trabalho de bootstrap de IA
Gere rapidamente a estrutura de backend e a orientação de integração com um prompt estruturado.
Pronto para lançar seu marketplace de mão de obra de mudança?
Deixe o Back4app Agente de IA estruturar seu backend de mão de obra de mudança e gerar fluxos de CrewListing, BookingRequest, CrewAssignment e CrewReview a partir de um prompt.
Grátis para começar — 50 prompts de Agente de IA/mês, sem necessidade de cartão de crédito
Tecnologia de Mão de Obra para Mudanças
Tudo incluído neste modelo de backend de mercado de mão de obra para mudanças.
Diagrama de Classes do Marketplace
Modelo de relacionamento de entidades para o esquema de backend do marketplace de mão de obra em mudança.
Esquema abrangendo usuários, listagens de equipe, solicitações de reserva, atribuições de equipe e avaliações de equipe.
Ver origem do diagrama
erDiagram
User ||--o{ CrewListing : "owner"
User ||--o{ BookingRequest : "buyer"
User ||--o{ CrewAssignment : "assignedBy"
User ||--o{ CrewReview : "reviewer"
CrewListing ||--o{ BookingRequest : "preferredCrew"
CrewListing ||--o{ CrewAssignment : "crewListing"
CrewListing ||--o{ CrewReview : "crewListing"
BookingRequest ||--o{ CrewAssignment : "bookingRequest"
BookingRequest ||--o{ CrewReview : "bookingRequest"
User {
String objectId PK
String username
String email
String password
String role
String displayName
String phoneNumber
String serviceArea
Date createdAt
Date updatedAt
}
CrewListing {
String objectId PK
String title
Number hourlyRate
Number crewSize
Boolean heavyLiftingCapability
String serviceArea
String equipmentNotes
String availabilityStatus
String ownerId FK
Date createdAt
Date updatedAt
}
BookingRequest {
String objectId PK
String jobTitle
Date moveDate
String startTime
Number hoursNeeded
String pickupZip
String dropoffZip
Boolean heavyItems
String status
String buyerId FK
String preferredCrewId FK
Date createdAt
Date updatedAt
}
CrewAssignment {
String objectId PK
String bookingRequestId FK
String crewListingId FK
String assignedById FK
Number crewSizeLogged
String arrivalStatus
Date startedAt
Date finishedAt
Date createdAt
Date updatedAt
}
CrewReview {
String objectId PK
String bookingRequestId FK
String reviewerId FK
String crewListingId FK
Number rating
String comment
Boolean safetyFlag
Date createdAt
Date updatedAt
}
Sequência do Fluxo de Reserva
Fluxo de execução típico para login, busca de Listagem de Equipe, criação de Solicitação de Reserva, registro de Atribuição de Equipe e atualizações de Avaliação de Equipe.
Ver origem do diagrama
sequenceDiagram
participant Buyer
participant App as Moving Labor Marketplace App
participant Back4app as Back4app Cloud
Buyer->>App: Login
App->>Back4app: POST /login
Back4app-->>App: Session token
Buyer->>App: Search crew listings by hourlyRate, crewSize, and heavyLiftingCapability
App->>Back4app: GET /classes/CrewListing?where=...
Back4app-->>App: Matching CrewListing rows
Buyer->>App: Submit BookingRequest for a moveDate and hoursNeeded
App->>Back4app: POST /classes/BookingRequest
Back4app-->>App: BookingRequest objectId
Operator->>App: Assign CrewAssignment and log crewSizeLogged
App->>Back4app: POST /classes/CrewAssignment
Back4app-->>App: Assignment saved
App->>Back4app: Live query updates for BookingRequest status and CrewReview
Back4app-->>App: Updated move workflow and ratingsDicionário de Campos
Referência completa a nível de campo para cada classe no esquema do mercado de trabalho móvel.
| Campo | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | Automático |
| username | String | User login name | |
| String | User email address | ||
| password | String | Hashed password (write-only) | |
| role | String | Role of the user (buyer, seller, operator) | |
| displayName | String | Public name shown in the marketplace | |
| phoneNumber | String | Contact phone number | — |
| serviceArea | String | Primary metro area or region served | — |
| createdAt | Date | Auto-generated creation timestamp | Automático |
| updatedAt | Date | Auto-generated last-update timestamp | Automático |
10 campos em User
Regras de Acesso para Usuários, Equipes e Reservas
Como a estratégia ACL e CLP protege Usuário, Listagem de Equipes, Solicitação de Reserva, Atribuição de Equipe e Avaliação de Equipe.
Controles do perfil do usuário
Apenas o proprietário ou operador da conta pode atualizar nome de usuário, função, nome de exibição, número de telefone e área de serviço.
Integridade de reservas
Apenas o comprador ou o despachante pode criar, editar ou cancelar linhas de BookingRequest e CrewAssignment.
Visibilidade de revisão restrita
Restringir as leituras de CrewReview aos participantes correspondentes do BookingRequest e operadores aprovados.
Esquema JSON
Definição de esquema JSON bruta pronta para copiar para Back4app ou usar como referência de implementação.
{
"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
},
"serviceArea": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "CrewListing",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"title": {
"type": "String",
"required": true
},
"hourlyRate": {
"type": "Number",
"required": true
},
"crewSize": {
"type": "Number",
"required": true
},
"heavyLiftingCapability": {
"type": "Boolean",
"required": true
},
"serviceArea": {
"type": "String",
"required": true
},
"equipmentNotes": {
"type": "String",
"required": false
},
"availabilityStatus": {
"type": "String",
"required": true
},
"owner": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "BookingRequest",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"jobTitle": {
"type": "String",
"required": true
},
"moveDate": {
"type": "Date",
"required": true
},
"startTime": {
"type": "String",
"required": true
},
"hoursNeeded": {
"type": "Number",
"required": true
},
"pickupZip": {
"type": "String",
"required": true
},
"dropoffZip": {
"type": "String",
"required": true
},
"heavyItems": {
"type": "Boolean",
"required": true
},
"status": {
"type": "String",
"required": true
},
"buyer": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"preferredCrew": {
"type": "Pointer",
"required": false,
"targetClass": "CrewListing"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "CrewAssignment",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"bookingRequest": {
"type": "Pointer",
"required": true,
"targetClass": "BookingRequest"
},
"crewListing": {
"type": "Pointer",
"required": true,
"targetClass": "CrewListing"
},
"assignedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"crewSizeLogged": {
"type": "Number",
"required": true
},
"arrivalStatus": {
"type": "String",
"required": true
},
"startedAt": {
"type": "Date",
"required": false
},
"finishedAt": {
"type": "Date",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "CrewReview",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"bookingRequest": {
"type": "Pointer",
"required": true,
"targetClass": "BookingRequest"
},
"reviewer": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"crewListing": {
"type": "Pointer",
"required": true,
"targetClass": "CrewListing"
},
"rating": {
"type": "Number",
"required": true
},
"comment": {
"type": "String",
"required": false
},
"safetyFlag": {
"type": "Boolean",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}Construir com Agente de IA
Use o Agente de IA Back4app para gerar um aplicativo real de mercado de trabalho móvel a partir deste template, incluindo frontend, backend, autenticação, e fluxos de CrewListing, BookingRequest, CrewAssignment e CrewReview.
Crie um aplicativo de mercado seguro para mão de obra móvel no Back4app com este esquema e comportamento exatos. Esquema: 1. Usuário: nomeDeUsuário (String, obrigatório), email (String, obrigatório), senha (String, obrigatório), papel (String, obrigatório), nomeExibido (String, obrigatório), númeroDeTelefone (String, opcional), áreaDeServiço (String, opcional); objectId, criadoEm, atualizadoEm (sistema). 2. ListaDeEquipes: título (String, obrigatório), taxaHorária (Número, obrigatório), tamanhoDaEquipe (Número, obrigatório), capacidadeDeLevantamentoPesado (Booleano, obrigatório), áreaDeServiço (String, obrigatório), notasDeEquipamento (String, opcional), statusDeDisponibilidade (String, obrigatório), proprietário (Ponteiro para Usuário, obrigatório); objectId, criadoEm, atualizadoEm (sistema). 3. SolicitaçãoDeReserva: títuloDoTrabalho (String, obrigatório), dataDeMudança (Data, obrigatório), horaDeInício (String, obrigatório), horasNecessárias (Número, obrigatório), cepDeRetirada (String, obrigatório), cepDeEntrega (String, obrigatório), itensPesados (Booleano, obrigatório), status (String, obrigatório), comprador (Ponteiro para Usuário, obrigatório), equipePreferida (Ponteiro para ListaDeEquipes, opcional); objectId, criadoEm, atualizadoEm (sistema). 4. AtribuiçãoDeEquipe: solicitaçãoDeReserva (Ponteiro para SolicitaçãoDeReserva, obrigatório), listaDeEquipes (Ponteiro para ListaDeEquipes, obrigatório), atribuídoPor (Ponteiro para Usuário, obrigatório), tamanhoDaEquipeRegistrado (Número, obrigatório), statusDeChegada (String, obrigatório), iniciadoEm (Data, opcional), finalizadoEm (Data, opcional); objectId, criadoEm, atualizadoEm (sistema). 5. RevisãoDeEquipe: solicitaçãoDeReserva (Ponteiro para SolicitaçãoDeReserva, obrigatório), revisor (Ponteiro para Usuário, obrigatório), listaDeEquipes (Ponteiro para ListaDeEquipes, obrigatório), avaliação (Número, obrigatório), comentário (String, opcional), sinalDeSegurança (Booleano, opcional); objectId, criadoEm, atualizadoEm (sistema). Segurança: - Compradores podem criar registros de SolicitaçõesDeReserva e ler suas próprias reservas. - Vendedores podem gerenciar seus próprios registros de ListaDeEquipes. - Operadores podem criar registros de AtribuiçõesDeEquipe e atualizar o status de SolicitaçõesDeReserva. - Registros de RevisãoDeEquipe devem ser criados somente após uma reserva concluída. Comportamento: - Pesquisar equipes por taxaHorária, tamanhoDaEquipe, capacidadeDeLevantamentoPesado e áreaDeServiço. - Criar solicitações de reserva com dataDeMudança e horasNecessárias. - Atribuir equipes e registrar tamanhoDaEquipeRegistrado. - Coletar avaliações pós-trabalho e feedback de segurança. Entregar: - aplicativo Back4app com esquema, ACLs, CLPs e fluxos de UI para compradores, vendedores e operadores, incluindo busca por ListaDeEquipes, intake de SolicitaçõesDeReserva, rastreamento de AtribuiçãoDeEquipe e captura de RevisãoDeEquipe.
Pressione o botão abaixo para abrir o Agente com este prompt de template pré-preenchido.
Este é o prompt base sem um sufixo de tecnologia. Você pode adaptar a pilha frontend gerada depois.
API Sandbox
Experimente os endpoints REST e GraphQL contra o esquema do mercado de trabalho dinâmico. As respostas usam dados fictícios e não exigem uma conta Back4app.
Usa o mesmo esquema que este modelo.
Escolha sua pilha
Expanda cada cartão para ver como integrar CrewListing, BookingRequest e CrewAssignment com sua pilha escolhida.
Flutter Mercado de Mão de Obra
React Mercado de Mão de Obra
React Nativo Mercado de Mão de Obra
Next.js Mercado de Mão de Obra
JavaScript Mercado de Mão de Obra
Android Mercado de Mão de Obra
iOS Mercado de Mão de Obra
Vue Mercado de Mão de Obra
Angular Mercado de Mão de Obra
GraphQL Mercado de Mão de Obra
REST API Mercado de Mão de Obra
PHP Mercado de Mão de Obra
.NET Mercado de Mão de Obra
O que você recebe com cada tecnologia
Cada pilha usa o mesmo esquema de backend de mão de obra móvel e contratos de API.
Estrutura unificada de dados de mão de obra móvel
Gerencie facilmente User, CrewListing, BookingRequest, CrewAssignment e CrewReview com um esquema consistente.
Correspondência de tripulação por taxa e tamanho
Compare as linhas de CrewListing e atribua o tamanho de equipe correto para cada solicitação de mudança.
Rastreamento da capacidade de levantamento pesado
Mantenha a capacidade de levantamento pesado e notas de equipamentos anexadas a cada listagem de equipe.
Fluxos de trabalho do operador personalizáveis
Defina níveis de acesso e permissões adaptados a compradores, vendedores e operadores.
Comparação de Estruturas do Mercado de Mão de Obra
Compare a velocidade de configuração, o estilo do SDK e o suporte a IA em todas as tecnologias suportadas.
| Estrutura | Tempo de Configuração | Benefício do Mercado de Mão de Obra | Tipo de SDK | Suporte de IA |
|---|---|---|---|---|
| Cerca de 5 min | Código único para despachar movimentadores em mobile e web. | SDK Tipado | Completo | |
| Menos de 5 minutos | Painel web rápido para listagens de equipes e reservas. | SDK Tipado | Completo | |
| ~3–7 min | Aplicativo móvel multiplataforma para despacho de movimentação. | SDK Digitado | Completo | |
| Configuração rápida (5 min) | Aplicativo web renderizado no servidor para operações de mão de obra de mudança. | SDK Digitado | Completo | |
| ~3–5 min | Integração web leve para correspondência de mão de obra. | SDK Digitado | Completo | |
| Cerca de 5 min | Aplicativo nativo Android para transportadores e despachantes. | SDK Digitado | Completo | |
| Menos de 5 minutos | Aplicativo nativo iOS para coordenação de mudanças. | SDK Digitado | Completo | |
| ~3–7 min | Interface web Reactive para operações do mercado de trabalho. | SDK Digitado | Completo | |
| Configuração rápida (5 min) | Aplicativo web empresarial para fluxos de trabalho de despachante. | SDK Digitado | Completo | |
| Menos de 2 min | API flexível GraphQL para correspondência de mão de obra. | GraphQL API | Completo | |
| Configuração rápida (2 min) | Integração REST API para sistemas de movimentação de mão de obra. | REST API | Completo | |
| ~3 min | Backend PHP do lado do servidor para despacho de mão de obra. | REST API | Completo | |
| ~3–7 min | .NET backend para operações de mão de obra de mudanças. | SDK Digitado | Completo |
O tempo de configuração reflete a duração esperada desde a inicialização do projeto até a primeira consulta de CrewListing ou BookingRequest usando este esquema de template.
Centro de Ajuda
Perguntas comuns sobre como construir um backend de mercado de mão-de-obra para mudança com este template.
Pronto para construir seu mercado de mão de obra de mudanças?
Inicie seu projeto de mão de obra de mudanças em minutos. Nenhum cartão de crédito necessário.