# US-MMD002-011: Configurar Estados Personalizados ## Metadata | Campo | Valor | |-------|-------| | **ID** | US-MMD002-011 | | **Epica** | EPIC-MMD-002 - Ordenes de Servicio | | **Modulo** | ordenes-servicio | | **Prioridad** | P2 | | **Story Points** | 3 | | **Sprint** | Sprint 6 | | **Estado** | Backlog | --- ## Historia de Usuario **Como** administrador, **quiero** configurar estados personalizados de orden, **para** adaptar el flujo de trabajo a mi proceso especifico. ## Descripcion Detallada Cada taller puede tener procesos ligeramente diferentes. Permitir personalizar los estados y sus transiciones da flexibilidad sin perder control. --- ## Criterios de Aceptacion **Escenario 1: Ver estados actuales** ```gherkin DADO que accedo a configuracion de estados CUANDO veo la lista ENTONCES veo los estados predefinidos: | Estado | Color | Orden | Editable | | RECIBIDO | Gris | 1 | No | | EN_DIAGNOSTICO | Azul | 2 | Si | | COTIZADO | Amarillo | 3 | Si | | APROBADO | Verde | 4 | Si | | EN_REPARACION | Naranja | 5 | Si | | LISTO | Verde | 6 | No | | ENTREGADO | Gris | 7 | No | ``` **Escenario 2: Agregar estado personalizado** ```gherkin DADO que mi proceso incluye "Control de Calidad" CUANDO agrego nuevo estado: | Nombre | CONTROL_CALIDAD | | Etiqueta | Control de Calidad | | Color | Morado | | Despues de | EN_REPARACION | ENTONCES el nuevo estado aparece en el flujo ``` **Escenario 3: Configurar transiciones** ```gherkin DADO que configure el estado CONTROL_CALIDAD CUANDO defino transiciones: | Desde | Hacia | | EN_REPARACION | CONTROL_CALIDAD | | CONTROL_CALIDAD | LISTO | | CONTROL_CALIDAD | EN_REPARACION | ENTONCES solo esas transiciones son permitidas ``` **Escenario 4: Renombrar estado** ```gherkin DADO que quiero cambiar etiqueta CUANDO renombro "EN_DIAGNOSTICO" a "Evaluacion Inicial" ENTONCES se muestra con el nuevo nombre Y el codigo interno no cambia ``` --- ## Estados Base (No editables) | Estado | Razon | |--------|-------| | RECIBIDO | Inicio del flujo | | LISTO | Trigger de notificacion | | ENTREGADO | Cierre del flujo | | CANCELADO | Estado terminal | --- ## Tareas Tecnicas **Database:** - [ ] DB-063: Crear tabla `order_status_config` - [ ] DB-064: Crear tabla `status_transitions` **Backend:** - [ ] BE-127: CRUD de estados personalizados - [ ] BE-128: Validar transiciones configuradas - [ ] BE-129: Proteger estados base **Frontend:** - [ ] FE-128: Crear StatusConfigPage - [ ] FE-129: Editor visual de flujo - [ ] FE-130: Selector de colores --- ## Definition of Done (DoD) - [ ] Ver estados configurados - [ ] Agregar estado personalizado - [ ] Configurar transiciones - [ ] Renombrar etiquetas - [ ] Estados base protegidos - [ ] Tests pasando --- **Creada por:** Requirements-Analyst **Fecha:** 2025-12-06