Skip to content

Plataforma técnica · Sevastopol

Proveedores de Inventario en Sevastopol

Islands Inventarios Proveedores

ProveedoresInventarioIsland mantiene el padrón de proveedores clasificados para el routing contable de compras. Cada proveedor lleva tipo_proveedor (EXISTENCIAS / GASTO / ACTIVO_FIJO / MIXTO) más flags genera_existencias, genera_activo_fijo y genera_gasto que el procesamiento de compras consulta para decidir dónde va cada documento.

La clasificación es decisión one-time por proveedor — el alta inicial define la ruta para todas sus compras futuras. Los MIXTO requieren criterio adicional por línea durante el procesamiento.

DecisiónMotivo
4 tipos cerrados (EXISTENCIAS / GASTO / ACTIVO_FIJO / MIXTO)Cubren las tres rutas contables canónicas + el caso mixto. Texto libre permitiría categorías sin contraparte en el procesador.
3 flags genera_* independientes del tipoPermite tipos compuestos: MIXTO con genera_existencias=true + genera_gasto=true separa rutas según giro. El procesador lee los flags, no solo el tipo.
giro_aplicable como array por proveedorUn proveedor puede vender a múltiples giros. La intersección con giro_codigo del tenant decide visibilidad.
Auto-filtrado por giros del tenantloadProveedores agrega giro_codes desde empresaGiros automáticamente. Solo se muestran proveedores cuyos giros intersectan con la empresa. Evita listas ruidosas en tenants con giros únicos.
Override de giro en filtroSi el operador selecciona un giro específico, este reemplaza la lista de giros de la empresa. Útil para revisar un giro puntual.
Lista de pendientes con missing_from_compras=trueDetecta proveedores presentes en compras del periodo activo pero ausentes del padrón clasificado. El operador completa la clasificación antes de procesar el cierre.
Conteo en pendientes incluye total_documentos + fecha_ultima_compraPermite priorizar: proveedores con muchos documentos o compras recientes se clasifican primero.
Filtros locales por tipo + activo + textoVolumen del padrón es manejable; búsqueda local sobre razon_social y rut_proveedor.
Modal único para alta/ediciónMismo form para crear y editar — el operador no piensa en dos UIs distintas.
TipoRuta contableFlags típicos
EXISTENCIASInventario → kardex.genera_existencias=true.
GASTOGastos — cuenta de gasto operacional.genera_gasto=true.
ACTIVO_FIJOActivo Fijo — capitalizable.genera_activo_fijo=true.
MIXTOCualquier combinación. Decisión por línea durante el procesamiento.Combinaciones de flags genera_*.
GrupoCampos esperados
Identificaciónrut_proveedor, razon_social.
Clasificacióntipo_proveedor, genera_existencias, genera_activo_fijo, genera_gasto.
Alcancegiro_aplicable (lista de códigos).
Operaciónactivo, observaciones.
Métricas (pendientes)total_documentos, fecha_ultima_compra.
MétricaCálculo
totalproveedores.length
activosproveedores.filter(p => p.activo).length
existenciasproveedores.filter(p => p.tipo_proveedor === "EXISTENCIAS").length
gastoproveedores.filter(p => p.tipo_proveedor === "GASTO").length
Método + rutaUso
GET /api/inventario/proveedores?tenant_id=&manage=true&tipo=&activo=&giro_codes=Listado clasificado del tenant.
GET /api/inventario/proveedores?tenant_id=&manage=true&missing_from_compras=true&año=&mes=Pendientes en compras sin clasificar.
POST /api/inventario/proveedores?tenant_id=Alta.
PUT /api/inventario/proveedores/:id?tenant_id=Edición.
DELETE /api/inventario/proveedores/:id?tenant_id=Eliminación.
GET /api/parameters/giros-comercialesCatálogo de giros (global).
GET /api/admin/company?tenant_id=Config de giros del tenant.

InventarioService mantiene el endpoint /proveedores con la lógica de manage=true (autorización), giro_codes (filtrado por intersección) y missing_from_compras=true (detección de pendientes).

  • Inventario (UI) consume la clasificación al procesar compras del tab compras.
  • Gastos y Activo Fijo son los destinos alternativos según tipo_proveedor.
  • Operaciones SII alimenta las compras que detectan proveedores pendientes.
  • Administración del tenant (/api/admin/company) define qué giros aplica el filtro.

Estas relaciones se documentan en cada destino, no aquí.