docs: add full documentation for all functions in tienda/views.py

Agent-Logs-Url: https://github.com/dsaub/proyecto-final/sessions/49df17c8-213a-4e23-adfe-465a0104f6a3

Co-authored-by: dsaub <54474838+dsaub@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2026-04-09 10:35:28 +00:00
committed by GitHub
parent 47ea00c822
commit ed92991872
66 changed files with 2580 additions and 0 deletions
+44
View File
@@ -0,0 +1,44 @@
# `_get_cart_stock_issues`
**Archivo:** `tienda/views.py`
**Tipo:** Función auxiliar privada
## Descripción
Comprueba si alguno de los ítems del carrito supera el stock disponible y devuelve la lista de conflictos encontrados.
Para cada ítem, compara la cantidad solicitada con el stock disponible obtenido mediante [`_get_available_stock_by_product`](./_get_available_stock_by_product.md). Si la cantidad supera el disponible, se añade un objeto de issue a la lista de resultado.
## Firma
```python
def _get_cart_stock_issues(
cart_items,
exclude_reservation_ids=None
) -> list[dict]:
```
## Parámetros
| Nombre | Tipo | Descripción |
|---------------------------|------------------|-----------------------------------------------------|
| `cart_items` | lista de `CartItem` | Ítems del carrito a verificar. |
| `exclude_reservation_ids` | lista de `int` o `None` | Reservas a excluir del cómputo de stock reservado. |
## Retorno
Lista de diccionarios con la estructura:
```python
{
"product_name": str, # Nombre del producto con conflicto
"requested": int, # Cantidad solicitada
"available": int, # Cantidad disponible
}
```
Lista vacía si no hay problemas de stock.
## Uso interno
Llamada en [`view_cart`](./view_cart.md) y [`checkout`](./checkout.md) para mostrar avisos al usuario, y en [`create_checkout_session`](./create_checkout_session.md) y [`create_paypal_payment`](./create_paypal_payment.md) para bloquear el pago si hay problemas.