workspace-v1/projects/erp-mecanicas-diesel/docs/02-definicion-modulos/MMD-006-cotizaciones/historias-usuario/US-MMD006-003-aplicar-descuentos.md
rckrdmrd 66161b1566 feat: Workspace-v1 complete migration with NEXUS v3.4
Sistema NEXUS v3.4 migrado con:

Estructura principal:
- core/orchestration: Sistema SIMCO + CAPVED (27 directivas, 28 perfiles)
- core/catalog: Catalogo de funcionalidades reutilizables
- shared/knowledge-base: Base de conocimiento compartida
- devtools/scripts: Herramientas de desarrollo
- control-plane/registries: Control de servicios y CI/CD
- orchestration/: Configuracion de orquestacion de agentes

Proyectos incluidos (11):
- gamilit (submodule -> GitHub)
- trading-platform (OrbiquanTIA)
- erp-suite con 5 verticales:
  - erp-core, construccion, vidrio-templado
  - mecanicas-diesel, retail, clinicas
- betting-analytics
- inmobiliaria-analytics
- platform_marketing_content
- pos-micro, erp-basico

Configuracion:
- .gitignore completo para Node.js/Python/Docker
- gamilit como submodule (git@github.com:rckrdmrd/gamilit-workspace.git)
- Sistema de puertos estandarizado (3005-3199)

Generated with NEXUS v3.4 Migration System
EPIC-010: Configuracion Git y Repositorios
2026-01-04 03:37:42 -06:00

2.5 KiB

US-MMD006-003: Aplicar Descuentos

Metadata

Campo Valor
ID US-MMD006-003
Epica EPIC-MMD-006 - Cotizaciones y Presupuestos
Modulo cotizaciones
Prioridad P1
Story Points 3
Sprint Sprint 6
Estado Backlog

Historia de Usuario

Como administrador, quiero aplicar descuentos a las cotizaciones, para ofrecer precios especiales a clientes o por volumen.

Descripcion Detallada

Los descuentos pueden aplicarse por linea, por categoria (mano de obra o refacciones), o al total. Deben respetarse limites segun permisos del usuario.


Criterios de Aceptacion

Escenario 1: Descuento global

DADO que tengo cotizacion con total $10,000
CUANDO aplico descuento global 10%
ENTONCES muestra:
  | Subtotal | $10,000 |
  | Descuento | -$1,000 |
  | Total | $9,000 |

Escenario 2: Descuento por categoria

DADO que quiero descuento solo en mano de obra
CUANDO aplico 15% a servicios
ENTONCES solo afecta lineas de tipo servicio
Y refacciones mantienen precio

Escenario 3: Limite de descuento

DADO que mi perfil permite max 10%
CUANDO intento aplicar 15%
ENTONCES el sistema advierte:
  "Descuento excede limite (10%). Requiere autorizacion"
Y envia solicitud al supervisor

Escenario 4: Descuento de flota

DADO que el vehiculo pertenece a flota
CUANDO creo cotizacion
ENTONCES aplica automaticamente descuentos de flota:
  | Mano obra | 10% |
  | Refacciones | 5% |

Escenario 5: Motivo de descuento

DADO que aplico descuento > 5%
CUANDO confirmo
ENTONCES debo registrar motivo:
  | Motivo | Cliente frecuente |
Y se guarda para auditoria

Reglas de Descuento

Rol Max descuento
Recepcionista 5%
Supervisor 15%
Administrador 30%
Gerente Sin limite

Tareas Tecnicas

Database:

  • DB-107: Campos descuento en quotes
  • DB-108: Tabla discount_requests

Backend:

  • BE-215: Aplicar descuentos
  • BE-216: Validar limites por rol
  • BE-217: Solicitud de autorizacion

Frontend:

  • FE-211: Crear DiscountModal
  • FE-212: Crear DiscountByCategory
  • FE-213: Crear AuthorizationRequest

Definition of Done (DoD)

  • Descuento global
  • Descuento por categoria
  • Limite segun rol
  • Descuento de flota automatico
  • Motivo obligatorio
  • Tests pasando

Creada por: Requirements-Analyst Fecha: 2025-12-06