169 lines
4.2 KiB
Markdown
169 lines
4.2 KiB
Markdown
# US-MMD001-005: Configurar Bahias de Trabajo
|
|
|
|
## Metadata
|
|
|
|
| Campo | Valor |
|
|
|-------|-------|
|
|
| **ID** | US-MMD001-005 |
|
|
| **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 las bahias de trabajo disponibles en mi taller,
|
|
**para** poder asignar ordenes de servicio a ubicaciones especificas y controlar la capacidad.
|
|
|
|
## Descripcion Detallada
|
|
|
|
Las bahias son los espacios fisicos donde se realizan las reparaciones. Cada bahia puede tener un tipo (mecanica general, banco de pruebas, alineacion, etc.), un mecanico asignado por defecto, y un estado (disponible, ocupada, mantenimiento).
|
|
|
|
---
|
|
|
|
## Criterios de Aceptacion
|
|
|
|
**Escenario 1: Crear bahia de trabajo**
|
|
```gherkin
|
|
DADO que estoy en la configuracion de bahias
|
|
CUANDO creo una nueva bahia con:
|
|
| Campo | Valor |
|
|
| Numero | 1 |
|
|
| Nombre | Bahia Principal |
|
|
| Tipo | Mecanica General |
|
|
| Capacidad | 1 vehiculo |
|
|
ENTONCES el sistema crea la bahia
|
|
Y aparece en la lista de bahias
|
|
```
|
|
|
|
**Escenario 2: Asignar mecanico por defecto**
|
|
```gherkin
|
|
DADO que tengo una bahia creada
|
|
CUANDO asigno a "Juan Perez" como mecanico por defecto
|
|
ENTONCES las ordenes asignadas a esta bahia sugieren a Juan
|
|
Y el sistema muestra el mecanico en la vista de bahias
|
|
```
|
|
|
|
**Escenario 3: Ver estado de bahias**
|
|
```gherkin
|
|
DADO que tengo 5 bahias configuradas
|
|
CUANDO veo el tablero de bahias
|
|
ENTONCES veo cada bahia con su estado actual:
|
|
| Bahia | Estado | Orden Actual |
|
|
| 1 | Ocupada | OS-2025-0042 |
|
|
| 2 | Disponible | - |
|
|
| 3 | Mantenimiento | - |
|
|
```
|
|
|
|
**Escenario 4: Cambiar bahia a mantenimiento**
|
|
```gherkin
|
|
DADO que la bahia 3 requiere mantenimiento
|
|
CUANDO cambio su estado a "En Mantenimiento"
|
|
ENTONCES no se pueden asignar nuevas ordenes a esa bahia
|
|
Y se muestra indicador visual de no disponible
|
|
```
|
|
|
|
---
|
|
|
|
## Tipos de Bahia
|
|
|
|
| Tipo | Descripcion | Equipamiento Tipico |
|
|
|------|-------------|---------------------|
|
|
| GENERAL | Mecanica general | Herramientas basicas |
|
|
| BANCO_PRUEBAS | Pruebas de banco | Equipo de inyectores/bombas |
|
|
| DIAGNOSTICO | Diagnostico computarizado | Scanner, osciloscopio |
|
|
| ELECTRICO | Sistema electrico | Equipo de pruebas electricas |
|
|
| ALINEACION | Alineacion y balanceo | Alineadora, balanceadora |
|
|
| FRENOS | Sistema de frenos | Tornofrenos |
|
|
|
|
---
|
|
|
|
## Estados de Bahia
|
|
|
|
| Estado | Descripcion | Acepta Ordenes |
|
|
|--------|-------------|----------------|
|
|
| DISPONIBLE | Lista para recibir | Si |
|
|
| OCUPADA | Tiene orden en proceso | No |
|
|
| MANTENIMIENTO | En mantenimiento | No |
|
|
| INACTIVA | Fuera de servicio | No |
|
|
|
|
---
|
|
|
|
## Tareas Tecnicas
|
|
|
|
**Database:**
|
|
- [ ] DB-012: Crear tabla `work_bays` en schema `workshop_core`
|
|
- [ ] DB-013: Crear tabla `bay_types`
|
|
- [ ] DB-014: Relacion con usuarios (mecanico_default)
|
|
|
|
**Backend:**
|
|
- [ ] BE-016: Crear WorkBayEntity
|
|
- [ ] BE-017: Crear WorkBayService con CRUD
|
|
- [ ] BE-018: Crear WorkBayController
|
|
- [ ] BE-019: Validar cambios de estado
|
|
|
|
**Frontend:**
|
|
- [ ] FE-016: Crear BaysConfigPage
|
|
- [ ] FE-017: Crear BayCard con estado visual
|
|
- [ ] FE-018: Crear BayForm para crear/editar
|
|
- [ ] FE-019: Crear BaysBoard (vista tablero)
|
|
|
|
---
|
|
|
|
## Dependencias
|
|
|
|
**Depende de:**
|
|
- [ ] US-MMD001-001: Configurar taller
|
|
- [ ] US-MMD001-002: Configurar roles (mecanicos)
|
|
|
|
**Bloquea:**
|
|
- [ ] US-MMD002-003: Asignar orden a bahia
|
|
|
|
---
|
|
|
|
## Notas Tecnicas
|
|
|
|
**Endpoints:**
|
|
| Metodo | Endpoint | Descripcion |
|
|
|--------|----------|-------------|
|
|
| GET | /api/bays | Listar bahias |
|
|
| POST | /api/bays | Crear bahia |
|
|
| PATCH | /api/bays/:id | Actualizar bahia |
|
|
| PATCH | /api/bays/:id/status | Cambiar estado |
|
|
| GET | /api/bays/board | Vista tablero |
|
|
|
|
**Estructura:**
|
|
```typescript
|
|
interface WorkBay {
|
|
id: string;
|
|
number: number;
|
|
name: string;
|
|
type: BayType;
|
|
default_mechanic_id?: string;
|
|
status: 'available' | 'occupied' | 'maintenance' | 'inactive';
|
|
current_order_id?: string;
|
|
notes?: string;
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## Definition of Done (DoD)
|
|
|
|
- [ ] CRUD de bahias funcionando
|
|
- [ ] Vista tablero con estados
|
|
- [ ] Asignacion de mecanico default
|
|
- [ ] Cambio de estados con validacion
|
|
- [ ] Tests pasando
|
|
|
|
---
|
|
|
|
**Creada por:** Requirements-Analyst
|
|
**Fecha:** 2025-12-06
|