SIGDA - Integracion real Producto -> Operacion -> Envase

Esta es una PATCH, no reemplaza todo el proyecto.

Archivos a reemplazar:
app/models/Producto.php
app/controllers/ProductoController.php
app/views/producto/form.php
app/models/Pedido.php
app/models/Operacion.php
app/controllers/OperacionController.php
app/services/EnvaseService.php
app/views/pedido/show.php

Resultado:
1. En Producto puedes asociar un Tipo de Envase a RECARGA_GAS, RECARGA_AGUA o ENVASE.
2. El producto guarda id_tipo_envase y afecta_igv.
3. Al ver un pedido con una recarga asociada a envase, el boton Convertir en operacion abre una ventana de control.
4. Se elige: devuelve vacio o se presta envase.
5. La operacion registra automaticamente movimientos_envases.
6. Si devuelve vacio: LLENO -> EXTERNO y EXTERNO -> VACIO.
7. Si se presta: LLENO -> PRESTADO.
8. Envases sigue siendo para ajustes manuales; compras y operaciones normales usan sus propios flujos.
9. El flujo funciona para el pedido que luego puede terminar en Delivery. El mismo servicio queda reutilizable para venta directa en almacen.

NO reemplaza Router, Bootstrap, Caja, Inventario ni app.js.

IMPORTANTE:
Antes de probar una recarga, edita el producto y selecciona el tipo de envase correspondiente. Sin esa asociacion el sistema no puede saber que envase debe controlar.
