feat: implementar jornadas y validar aliases
This commit is contained in:
23
openspec/changes/implement-jornada-toldo/design.md
Normal file
23
openspec/changes/implement-jornada-toldo/design.md
Normal file
@@ -0,0 +1,23 @@
|
||||
# Design: implement-jornada-toldo
|
||||
|
||||
## Dominio
|
||||
JornadaToldo agrega unidad transaccional:
|
||||
- id, fecha, estado, responsable(s), baseInicial
|
||||
- inventarioInicial (movimientos), inventarioFinal
|
||||
- ventas[], gastos[]
|
||||
- ajustes[] con motivo
|
||||
- cuadreCaja
|
||||
- fechaApertura, fechaCierre
|
||||
|
||||
## Flujo
|
||||
1. Abrir jornada (indicar responsables, base inicial)
|
||||
2. Inventario inicial (comparar con última jornada cerrada, registrar diferencias)
|
||||
3. Operación diaria (ventas, gastos, ingresos adicionales)
|
||||
4. Inventario final
|
||||
5. Cierre con cuadre (validar inventario vs ventas)
|
||||
|
||||
## Validaciones
|
||||
- No permitir ventas/gastos si jornada no abierta
|
||||
- Ajustes requieren motivo
|
||||
- Productos distintos por productor
|
||||
- Cuadre usa totales de jornada
|
||||
20
openspec/changes/implement-jornada-toldo/proposal.md
Normal file
20
openspec/changes/implement-jornada-toldo/proposal.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# Proposal: implement-jornada-toldo
|
||||
|
||||
## Why
|
||||
El README describe una unidad de trabajo clara: "apertura/jornada" del toldo. El equipo recoge productos, hace inventario inicial (comparando con cierre anterior), vende, registra gastos, hace inventario de cierre e ingresa a cuadre. Actualmente inventario/ventas/gastos/cierre están aislados.
|
||||
|
||||
## What Changes
|
||||
- Crear entidad Jornada (JornadaToldo): fecha, estado (ABIERTA/CERRADA), responsables, inventario inicial, inventario final, base inicial, cierre caja, resumen
|
||||
- Flujo unificado: Abrir Jornada → Inventario inicial/diferencias → Ventas → Gastos → Ingresos adicionales → Cierre (inventario final + cuadre)
|
||||
- POS debe registrar ventas correctamente y mostrarlas en cierre/caja
|
||||
- Ajustes con motivo obligatorios en toda modificación
|
||||
- Reportes por productor integrados a la jornada
|
||||
- Tests de casos de uso reales (comprar 3 libras café, 2 condimentos, varias ventas, cierre de caja)
|
||||
- Mejorar UI para flujo diario
|
||||
|
||||
## Impact
|
||||
- packages/core: Jornada entity + reglas
|
||||
- packages/data: schema + repositorio
|
||||
- packages/services: JornadaService unificado
|
||||
- apps/toldo-app: UI flujo apertura/cierre
|
||||
- Tests de casos de uso
|
||||
@@ -0,0 +1,22 @@
|
||||
# Spec: jornada-toldo
|
||||
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: Jornada unificada
|
||||
The system SHALL have a JornadaToldo that groups all operations of a market day.
|
||||
|
||||
#### Scenario: Abrir jornada
|
||||
- GIVEN no open jornada
|
||||
- WHEN user opens jornada with responsables and base inicial
|
||||
- THEN jornada is created with estado ABIERTA
|
||||
|
||||
#### Scenario: Ventas asociadas a jornada
|
||||
- GIVEN open jornada
|
||||
- WHEN sale is registered
|
||||
- THEN sale is linked to jornadaId
|
||||
|
||||
#### Scenario: Cierre de jornada
|
||||
- GIVEN open jornada with ventas and gastos
|
||||
- WHEN closing with final inventory and cash counts
|
||||
- THEN jornada becomes CERRADA with cuadre
|
||||
- AND cannot add sales/gastos after closure
|
||||
28
openspec/changes/implement-jornada-toldo/tasks.md
Normal file
28
openspec/changes/implement-jornada-toldo/tasks.md
Normal file
@@ -0,0 +1,28 @@
|
||||
# Tasks
|
||||
|
||||
## 1. Dominio
|
||||
- [x] 1.1 Crear entidad JornadaToldo en core
|
||||
- [x] 1.2 Reglas de apertura/cierre
|
||||
- [x] 1.3 Tests dominio jornada
|
||||
|
||||
## 2. Datos
|
||||
- [x] 2.1 Schema Dexie jornadas
|
||||
- [x] 2.2 Repositorio JornadaRepository
|
||||
- [x] 2.3 Migración schema
|
||||
|
||||
## 3. Servicios
|
||||
- [x] 3.1 JornadaService (abrir/cerrar)
|
||||
- [x] 3.2 Integrar ventas/gastos a jornada
|
||||
- [x] 3.3 Cuadre desde jornada
|
||||
- [x] 3.4 Tests casos de uso completos
|
||||
|
||||
## 4. UI
|
||||
- [x] 4.1 Vista Apertura de Jornada
|
||||
- [x] 4.2 Integrar POS con jornada activa
|
||||
- [x] 4.3 Integrar Gastos con jornada
|
||||
- [x] 4.4 Vista Cierre de Jornada
|
||||
- [x] 4.5 Dashboard con jornada activa
|
||||
|
||||
## 5. Tests Playwright
|
||||
- [ ] 5.1 Setup Playwright
|
||||
- [ ] 5.2 Test caso uso completo: abrir jornada, agregar productos, venta múltiple, gastos, cierre
|
||||
Reference in New Issue
Block a user