funciones_servicios_dart_flutter_web 2.0.0
funciones_servicios_dart_flutter_web: ^2.0.0 copied to clipboard
Paquete Flutter para cálculo de funciones de valorización de transacciones e impuestos. Incluye funciones para calcular impuestos, volumen de venta/producción/stock, precio unitario y base imponible.
funciones_servicios_dart_flutter_web #
Paquete Flutter para cálculo de funciones de valorización de transacciones e impuestos en sistemas de gestión. Solo compatible con plataforma Web.
Funciones Disponibles #
| Función | Descripción |
|---|---|
calcularImpuestos |
Calcula los impuestos a percibir estableciendo el detalle fiscal |
calcularVolumenVenta |
Calcula el volumen de un item usando unidad de volumen de VENTA |
calcularVolumenProduccion |
Calcula el volumen de un item usando unidad de volumen de PRODUCCION |
calcularVolumenStock |
Calcula el volumen usando la unidad predeterminada del producto |
calcularPrecioUnitarioxUnidadVolumen |
Valoriza un item según la lista de precios |
calcularBaseImponible |
Calcula la base imponible del item |
Instalación #
Agrega el paquete a tu pubspec.yaml:
dependencies:
funciones_servicios_dart_flutter_web: ^2.0.0
Luego ejecuta:
flutter pub get
Uso Básico #
import 'package:funciones_servicios_dart_flutter_web/funciones_servicios.dart';
// Inicializar el servicio
final funcionesServicios = FuncionesServicios(apiRest: apiRest);
// Inicializar las funciones con el esquema
await funcionesServicios.initFunciones(
coleccion: 'transaccion',
funciones: [
'calcularPrecioUnitarioxUnidadVolumen',
'calcularBaseImponible',
'calcularImpuestos',
],
esquema: esquemaTransaccion,
);
// Ejecutar las funciones sobre los datos
final result = await funcionesServicios.ejecutaFunciones(
coleccion: 'transaccion',
funciones: ['calcularPrecioUnitarioxUnidadVolumen', 'calcularBaseImponible', 'calcularImpuestos'],
data: dataTransaccion,
idItemData: itemId,
);
Orden de Ejecución Recomendado #
Para transacciones que requieren valorización y cálculo de impuestos (ej: facturas):
calcularPrecioUnitarioxUnidadVolumencalcularBaseImponiblecalcularImpuestos
Configuración de Esquemas #
Para que las funciones operen correctamente, es necesario configurar las claves de desarrollo (keyDesarrollo) en los esquemas correspondientes.
Esquema de Transacción Principal #
"transaccion": {
"keyDesarrollo": [
"keyMonedaComprobante",
"keyMonedaItem",
"keyCliente",
"keyComprobante",
"keyFechaComprobante",
"keyDetalle",
"keyProducto",
"keyIdVolumen",
"keyVolumen",
"keyCantidad",
"keyListaPrecio",
"keyFechaVigenciaLPrecio",
"keyPrecioUnitario",
"keyEstadoProducto",
"keyDescuento",
"keyDetalleFiscal",
"keyImpuestoPercibirInDetalleFiscal",
"keyTotalBaseImponibleInDetalleFiscal",
"keyTotalTasaInDetalleFiscal",
"keyFiscal",
"keyImporteTotalDescuento",
"keyImporteBaseImponible",
"keyImporteImpInterno",
"keyImporteTasa",
"keyImporteOtros"
]
}
Colecciones Complementarias #
Cliente
"cliente": {
"coleccion": "cliente",
"keyDesarrollo": [
"keyIvaPersona",
"keyDetalleFiscal",
"keyImpuestoPercibirInDetalleFiscal"
]
}
Producto
"producto": {
"coleccion": "producto",
"keyDesarrollo": [
"keyDescripcionProducto",
"keyDetalleFiscal",
"keyImpuestoPercibirInDetalleFiscal",
"keyIdUnidadVolumenPredeterminado",
"keyVolumenProduccion",
"keyIdVolumenInVolumenProduccion",
"keyVolumenInVolumenProduccion",
"keyRedondeoInVolumenProduccion",
"keyVolumenVenta",
"keyIdVolumenInVolumenVenta",
"keyVolumenInVolumenVenta",
"keyRedondeoInVolumenVenta",
"keyCategoriaProducto",
"keyFamiliaProducto"
]
}
Comprobante
"comprobante": {
"coleccion": "comprobante",
"keyDesarrollo": [
"keyDescripcionComprobante",
"keyDetalleFiscal",
"keyImpuestoPercibirInDetalleFiscal",
"keyidTipoComprobanteFiscal"
]
}
Lista de Precio
"listaPrecio": {
"coleccion": "listaPrecio",
"keyDesarrollo": [
"keyDescripcion",
"keyFechaVigenciaPrecio",
"keyUnidadVolumen",
"keyMoneda"
]
}
Detalle Lista de Precio
"detalleListaPrecio": {
"coleccion": "detalleListaPrecio",
"keyDesarrollo": [
"keyListaPrecio",
"keyFechaVigencia",
"keyFamiliaProducto",
"keyCategoriaProducto",
"keyEstadoProducto",
"keyImporte"
]
}
Cotización
"cotizacion": {
"coleccion": "cotizacion",
"keyDesarrollo": [
"keyFechaCotizacion",
"keyCotizaciones",
"keyMonedaOrigenInCotizaciones",
"keyMonedaDestinoInCotizaciones",
"keyCotizacionInCotizaciones"
]
}
Otros Esquemas
"ivaPersona": {"coleccion": "ivaPersona"},
"familiaImpuestoPercibir": {"coleccion": "familiaImpuestoPercibir"},
"impuestoPercibir": {"coleccion": "impuestoPercibir"},
"tipoComprobanteFiscal": {"coleccion": "tipoComprobanteFiscal"}
Dependencias #
api_rest_flutter_web: Comunicación con API RESTflutter_models_provider: Modelos de datosflutter_utils_providers: Utilidadescrypto: Funciones de hashuuid: Generación de identificadores únicos
Licencia #
Este proyecto está licenciado bajo la Licencia MIT - ver el archivo LICENSE para más detalles.