# Gestion de Servicios y Precios

## Tipo de usuario
Administrador

## Donde empieza
Backoffice `/admin/` -> Seccion "Servicios" o Django Admin -> Productos

## Que quiere hacer el usuario
Administrar el catalogo de servicios veterinarios y sus precios

## Pasos - Ver servicios

1. Ir a "Servicios"
2. Ver listado de todos los servicios
3. Filtrar por:
   - Categoria (Vacunacion, Consulta, Cirugia, etc.)
   - Tipo de mascota (Perro, Gato, Ambos)
   - Estado (Activo/Inactivo)

## Pasos - Agregar nuevo servicio

1. Click en "Agregar servicio"
2. Completar datos:
   - Nombre del servicio
   - Descripcion
   - Categoria
   - Tipo de mascota aplicable
   - Precio base
   - Duracion estimada
   - Requiere otros servicios (dependencias)
3. Guardar

## Pasos - Editar servicio

1. Abrir servicio existente
2. Modificar campos
3. Guardar
4. Cambios aplican a nuevas solicitudes

## Pasos - Gestionar precios

1. Abrir servicio
2. Ir a seccion "Precios"
3. Ver precio actual
4. Para cambiar precio:
   - Click "Agregar precio"
   - Ingresar monto
   - Definir fecha de vigencia
   - Guardar
5. Precio anterior queda en historial

## Pasos - Configurar combos

1. Ir a "Combos" o "Paquetes"
2. Crear nuevo combo:
   - Nombre del combo
   - Servicios incluidos
   - Precio del combo (con descuento)
   - Condiciones de aplicacion
3. Guardar

## Que deberia pasar

- Catalogo actualizado de servicios
- Precios correctos en el turnero
- Combos aplicados automaticamente
- Historial de precios para facturacion

## Problemas comunes

- Cambio de precio afecta solicitudes ya creadas
- Servicio deprecado pero con solicitudes pendientes
- Combo no se aplica automaticamente
- Precio diferente por zona/vet

## Casos especiales

- Servicio con precio variable (depende de peso mascota)
- Servicio estacional (solo ciertas epocas)
- Promocion temporal
- Precio especial por vet

## Flujos relacionados

- Turnero (muestra servicios disponibles)
- Facturacion (usa precios)

## Notas tecnicas

- APIs:
  - `GET /productos/api/v1/services/` (servicios)
  - `POST /productos/api/v1/services/` (crear)
  - `PATCH /productos/api/v1/services/{id}/` (editar)
  - `GET /productos/api/v1/prices/` (precios)
  - `POST /productos/api/v1/prices/` (nuevo precio)
- Modelo Price tiene fecha de vigencia
- Precio se congela al momento de crear solicitud
