4.5 KiB
US-MMD001-001: Configurar Taller como Tenant
Metadata
| Campo | Valor |
|---|---|
| ID | US-MMD001-001 |
| Epica | EPIC-MMD-001 - Fundamentos |
| Modulo | fundamentos |
| Prioridad | P0 |
| Story Points | 5 |
| Sprint | Sprint 1 |
| Estado | Backlog |
| Asignado a | Por asignar |
Historia de Usuario
Como administrador del taller, quiero configurar mi taller como un tenant independiente en el sistema, para operar de forma aislada con mis propios datos, usuarios y configuraciones.
Descripcion Detallada
El administrador debe poder registrar su taller en el sistema con todos los datos necesarios para operar. Esto incluye datos basicos del negocio, configuracion de zona horaria, y parametros iniciales.
El taller configurado actuara como un tenant independiente, con total aislamiento de datos respecto a otros talleres.
Criterios de Aceptacion
Escenario 1: Registro inicial de taller
DADO que soy un nuevo administrador sin taller configurado
CUANDO completo el formulario de registro con datos validos
| Campo | Valor |
| Nombre del Taller | Diesel Express |
| Direccion | Av. Principal 123 |
| Telefono | 555-0100 |
| Email | contacto@diesel.mx |
ENTONCES el sistema crea un nuevo tenant para mi taller
Y me redirige al wizard de configuracion inicial
Escenario 2: Validacion de datos obligatorios
DADO que estoy en el formulario de registro
CUANDO intento guardar sin completar campos obligatorios
ENTONCES el sistema muestra errores de validacion
Y no permite continuar hasta completar los campos
Escenario 3: Configuracion de zona horaria
DADO que estoy configurando mi taller
CUANDO selecciono mi zona horaria (America/Mexico_City)
ENTONCES el sistema registra la zona horaria
Y todas las fechas/horas se muestran en esa zona
Escenario 4: Logo del taller
DADO que estoy en la configuracion del taller
CUANDO subo un logo (PNG/JPG, max 2MB)
ENTONCES el sistema almacena el logo
Y lo muestra en el header y documentos
Criterios Adicionales
- Nombre del taller unico en el sistema
- Logo soporta PNG, JPG, max 2MB
- Direccion con campos separados (calle, ciudad, estado, CP)
- Telefono con formato validado
- Email con formato valido
- Wizard de bienvenida al completar
Tareas Tecnicas
Database:
- DB-001: Crear tabla
workshopsen schemaworkshop_core - DB-002: Crear RLS policy para aislamiento por
workshop_id
Backend:
- BE-001: Crear WorkshopEntity con campos requeridos
- BE-002: Crear WorkshopService con metodo createWorkshop()
- BE-003: Crear WorkshopController POST /api/workshops
- BE-004: Implementar validaciones con class-validator
Frontend:
- FE-001: Crear WorkshopSetupPage con formulario
- FE-002: Crear WorkshopForm component
- FE-003: Implementar upload de logo
- FE-004: Crear welcomeWizard component
Tests:
- TEST-001: Test unitario WorkshopService
- TEST-002: Test e2e flujo de registro
Dependencias
Depende de:
- MGN-004 Tenants (Core) - Completado
Bloquea:
- US-MMD001-002: Configurar roles
- US-MMD001-003: Catalogo servicios
- Todas las demas US del modulo
Notas Tecnicas
Endpoints involucrados:
| Metodo | Endpoint | Descripcion |
|---|---|---|
| POST | /api/workshops | Crear nuevo taller |
| GET | /api/workshops/me | Obtener taller actual |
| PATCH | /api/workshops/me | Actualizar taller |
| POST | /api/workshops/me/logo | Subir logo |
Entidades/Tablas:
workshop_core.workshops: Datos del taller
Componentes UI:
WorkshopSetupPage: Pagina de configuracionWorkshopForm: Formulario principalLogoUpload: Componente de subida de logo
Definition of Ready (DoR)
- Historia claramente escrita
- Criterios de aceptacion definidos
- Story points estimados
- Dependencias identificadas
- Diseno UI disponible
- MGN-004 Tenants completado
Definition of Done (DoD)
- Codigo implementado segun criterios
- Tests unitarios escritos y pasando
- Tests de integracion pasando
- Code review aprobado
- Documentacion actualizada
- RLS verificado
- Demo realizada
Historial de Cambios
| Fecha | Cambio | Autor |
|---|---|---|
| 2025-12-06 | Creacion | Requirements-Analyst |
Creada por: Requirements-Analyst Fecha: 2025-12-06 Ultima actualizacion: 2025-12-06