# US-MMD004-009: Gestionar Ubicaciones de Almacen ## Metadata | Campo | Valor | |-------|-------| | **ID** | US-MMD004-009 | | **Epica** | EPIC-MMD-004 - Inventario y Refacciones | | **Modulo** | inventario | | **Prioridad** | P2 | | **Story Points** | 3 | | **Sprint** | Sprint 6 | | **Estado** | Backlog | --- ## Historia de Usuario **Como** almacenista, **quiero** definir ubicaciones de almacen, **para** localizar rapidamente las refacciones. ## Descripcion Detallada El sistema de ubicaciones permite organizar fisicamente el almacen con un esquema jerarquico (zona, pasillo, anaquel, nivel) para localizar rapidamente cualquier refaccion. --- ## Criterios de Aceptacion **Escenario 1: Crear estructura de ubicaciones** ```gherkin DADO que configuro el almacen CUANDO defino estructura: | Zona | Descripcion | | A | Filtros y lubricantes | | B | Inyectores y bombas | | C | Partes electricas | ENTONCES se crea el arbol de ubicaciones ``` **Escenario 2: Ubicacion completa** ```gherkin DADO que creo ubicacion CUANDO defino "A-01-03" ENTONCES significa: | Parte | Valor | Descripcion | | Zona | A | Filtros | | Pasillo | 01 | Pasillo 1 | | Nivel | 03 | Tercer nivel | ``` **Escenario 3: Asignar refaccion a ubicacion** ```gherkin DADO que tengo refaccion sin ubicar CUANDO asigno ubicacion "B-02-01" ENTONCES la refaccion queda ubicada Y aparece en busqueda por ubicacion ``` **Escenario 4: Mapa visual de almacen** ```gherkin DADO que accedo al mapa de almacen CUANDO veo zona A ENTONCES muestra layout visual: - Pasillos con ocupacion - Niveles con codigo de color - Click para ver contenido ``` **Escenario 5: Ubicacion multiple** ```gherkin DADO que una refaccion esta en varias ubicaciones CUANDO consulto ENTONCES veo todas: | Ubicacion | Cantidad | | A-01-03 | 10 | | A-02-01 | 5 | | Total | 15 | ``` --- ## Esquema de Ubicacion ``` [Zona]-[Pasillo]-[Nivel] Ejemplo: A-01-03 - A: Zona (1 letra) - 01: Pasillo (2 digitos) - 03: Nivel (2 digitos) ``` --- ## Tareas Tecnicas **Database:** - [ ] DB-092: Crear tabla `warehouse_locations` - [ ] DB-093: Crear tabla `part_locations` (many-to-many) **Backend:** - [ ] BE-184: CRUD ubicaciones - [ ] BE-185: Asignar refacciones a ubicaciones - [ ] BE-186: Buscar por ubicacion **Frontend:** - [ ] FE-180: Crear LocationsManager - [ ] FE-181: Crear WarehouseMap visual - [ ] FE-182: Crear LocationPicker --- ## Definition of Done (DoD) - [ ] CRUD de ubicaciones - [ ] Estructura jerarquica - [ ] Asignar refacciones - [ ] Vista de mapa (basico) - [ ] Multi-ubicacion - [ ] Tests pasando --- **Creada por:** Requirements-Analyst **Fecha:** 2025-12-06