Proyecto

General

Perfil

Desarrollo de los sitios web profesionales.top,choferes.top y escritores.top

Documentación de usuario
2025-12-29

**Alcance y objetivos:
**

  • Propósito: Marketplace de servicios de chofer y profesionales (“Top” como vitrina general, “Choferes.top” enfocado en movilidad).
  • Modelos de uso: Match entre cliente y prestador con gestión de pedidos, agenda, pagos y reputación.
  • Roles: Administrador, Cliente, Prestador de servicio.

**Estructura de base de datos mínima
**
Entidades principales

  • Usuarios: Perfil y autenticación.
  • Servicios: Ofertas publicadas por prestadores.
  • Pedidos: Solicitudes de clientes hacia un servicio.
  • Mensajes: Chat entre cliente y prestador.
  • Calificaciones: Reputación y feedback post-servicio.
  • Pagos: Registro de transacciones y estados.
  • Auditoría: Trazabilidad de acciones relevantes.

Tablas y campos clave

  • Usuarios

    • id: UUID
    • rol: admin | cliente | prestador
    • email: único
    • hash_password: string
    • nombre: string
    • telefono: string
    • estado: activo | suspendido
    • createdat / updatedat: datetime
  • Perfiles_prestador

    • id: UUID
    • usuario_id: FK usuarios.id
    • titulo: string
    • descripcion: text
    • zona: string (ciudad/provincia)
    • disponibilidad: json (franjas horarias)
    • documentacion_verificada: boolean
    • rating_promedio: decimal(2,1)
  • Servicios

    • id: UUID
    • prestadorid: FK perfilesprestador.id
    • categoria: string (ej. “chofer”, “profesional”)
    • subcategoria: string (ej. “traslados urbanos”)
    • precio_base: decimal
    • unidad: porhora | portrayecto | fijo
    • politica_cancelacion: enum (flexible | moderada | estricta)
    • activo: boolean
  • Pedidos

    • id: UUID
    • cliente_id: FK usuarios.id
    • servicio_id: FK servicios.id
    • prestadorid: FK perfilesprestador.id
    • fecha_solicitada: datetime
    • origen / destino: string (para choferes)
    • detalle: text
    • monto_estimado: decimal
    • estado: pendiente | aceptado | en_progreso | completado | cancelado
    • motivo_cancelacion: text (nullable)
    • createdat / updatedat: datetime
  • Mensajes

    • id: UUID
    • pedido_id: FK pedidos.id
    • emisor_id: FK usuarios.id
    • contenido: text
    • leido: boolean
    • created_at: datetime
  • Calificaciones

    • id: UUID
    • pedido_id: FK pedidos.id
    • clienteid / prestadorid: FK
    • puntaje: int (1–5)
    • comentario: text
    • created_at: datetime
  • Pagos

    • id: UUID
    • pedido_id: FK pedidos.id
    • monto: decimal
    • moneda: string (ARS)
    • metodo: string (ej. “MercadoPago”, “transferencia”)
    • estado: iniciado | aprobado | rechazado | reembolsado
    • referencia_gateway: string
    • createdat / updatedat: datetime
  • Auditoria

    • id: UUID
    • usuario_id: FK usuarios.id
    • accion: string (ej. “login”, “crearpedido”, “cambiarestado”)
    • entidad: string (ej. “pedido”, “servicio”)
    • entidad_id: UUID
    • ip: string
    • metadata: json
    • created_at: datetime

Roles y permisos

  • Administrador
    • Permisos: CRUD global de usuarios/servicios, moderación de contenido y calificaciones, verificación documental, gestión de políticas y categorías, reportes y métricas.
  • Cliente
    • Permisos: Crear pedidos, chatear, pagar, calificar prestadores, editar perfil, cancelar según política.
  • Prestador de servicio
    • Permisos: Publicar/editar servicios, aceptar/rechazar pedidos, chatear, marcar progreso y completar, emitir facturas/recibos, configurar disponibilidad y zonas.

**User stories esenciales
**

  • Administrador
    • Moderación: Como admin quiero listar y filtrar servicios y calificaciones para ocultar contenido inapropiado.
    • Verificación: Como admin quiero marcar perfiles como verificados para aumentar la confianza.
    • Reportes: Como admin quiero ver métricas de pedidos y conversiones …

Ficheros