bdpformulas 1.0.48 → 1.0.50
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/context.js +1 -0
- package/build/index.d.ts +2 -0
- package/build/index.js +3 -1
- package/build/models/eeff/admFinanciera/index.d.ts +144 -0
- package/build/models/eeff/admFinanciera/index.js +26 -0
- package/build/strategies/agriculture/balanceAgr.strategy.js +1 -0
- package/build/strategies/agriculture/costos.detail/costosCalc.js +1 -1
- package/build/strategies/agriculture/flujoProyAgr.strategy.js +3 -2
- package/build/strategies/agriculture/ventas.detail/ventas.calc.js +2 -1
- package/build/strategies/analisisFinancieros.strategy.js +20 -22
- package/build/strategies/balance.strategy.js +14 -2
- package/build/strategies/common/analisisFinCalculos/analisisGrafico.calc.js +47 -45
- package/build/strategies/common/analisisFinCalculos/ratios.calc.js +158 -157
- package/build/strategies/common/balance.calc.js +3 -1
- package/build/strategies/common/balanceCalculos/balanceAux.calc.js +11 -1
- package/build/strategies/common/balanceCalculos/flujoAux.calc.js +2 -11
- package/build/strategies/common/flujoCalculos/flujoConstructor.js +313 -308
- package/build/strategies/eeff/admFinanciera/amortizaciones.d.ts +8 -0
- package/build/strategies/eeff/admFinanciera/amortizaciones.js +31 -0
- package/build/strategies/eeff/admFinanciera/aplicacionesHandler.d.ts +16 -0
- package/build/strategies/eeff/admFinanciera/aplicacionesHandler.js +175 -0
- package/build/strategies/eeff/admFinanciera/lineasMixtasHandler.d.ts +7 -0
- package/build/strategies/eeff/admFinanciera/lineasMixtasHandler.js +40 -0
- package/build/strategies/eeff/admFinanciera/prestamoBajoLineaHandler.d.ts +13 -0
- package/build/strategies/eeff/admFinanciera/prestamoBajoLineaHandler.js +75 -0
- package/build/strategies/eeff/admFinanciera/prestamoDirectoHandler.d.ts +26 -0
- package/build/strategies/eeff/admFinanciera/prestamoDirectoHandler.js +267 -0
- package/build/strategies/eeff/admFinanciera/prestamoLeasingHandler.d.ts +20 -0
- package/build/strategies/eeff/admFinanciera/prestamoLeasingHandler.js +162 -0
- package/build/strategies/eeff/admFinanciera/proyeccionPrestamosDirectosHandler.d.ts +27 -0
- package/build/strategies/eeff/admFinanciera/proyeccionPrestamosDirectosHandler.js +219 -0
- package/build/strategies/eeff/admFinanciera/utils.d.ts +96 -0
- package/build/strategies/eeff/admFinanciera/utils.js +209 -0
- package/build/strategies/eeff/admFinanciera.strategy.d.ts +14 -0
- package/build/strategies/eeff/admFinanciera.strategy.js +139 -0
- package/build/strategies/eeff/balanceEEFF.strategy.js +3 -2
- package/build/strategies/eeff/flujoProyEEFF.strategy.js +3 -2
- package/build/strategies/general/balanceGeneral.strategy.js +2 -1
- package/build/strategies/general/flujoProyGeneral.strategy.js +2 -1
- package/build/strategies/pecuary/balancePec.strategy.js +7 -6
- package/build/strategies/pecuary/desarrollo.detail/desarrolloCalc.js +11 -3
- package/build/strategies/pecuary/desarrollo.strategy.js +2 -2
- package/build/strategies/pecuary/flujoProyPec.strategy.js +7 -6
- package/build/strategies/pecuary/ventas.detail/estacionalidadCalc.js +7 -1
- package/build/strategies/pecuary/ventas.detail/ventasIngresosCalc.js +7 -1
- package/build/strategies/production/balancePrd.strategy.js +7 -6
- package/build/strategies/production/costos.detail/costosCalc.js +1 -1
- package/build/strategies/production/flujoProyPrd.strategy.js +7 -6
- package/package.json +26 -21
- package/tsconfig.json +1 -1
package/build/context.js
CHANGED
package/build/index.d.ts
CHANGED
|
@@ -19,6 +19,7 @@ import FlujoProyectado from "./strategies/flujoProyectado.strategy";
|
|
|
19
19
|
import AnalisisFinancieros from "./strategies/analisisFinancieros.strategy";
|
|
20
20
|
import BalanceGeneralStrategy from "./strategies/general/balanceGeneral.strategy";
|
|
21
21
|
import FlujoProyectadoGeneralStrategy from "./strategies/general/flujoProyGeneral.strategy";
|
|
22
|
+
import AdmFinancieraStrategy from './strategies/eeff/admFinanciera.strategy';
|
|
22
23
|
declare const Pecuario: {
|
|
23
24
|
Auxiliar: typeof Auxiliar;
|
|
24
25
|
Desarrollo: typeof Desarrollo;
|
|
@@ -41,6 +42,7 @@ declare const Agricola: {
|
|
|
41
42
|
declare const EEFF: {
|
|
42
43
|
BalanceEEFFStrategy: typeof BalanceEEFFStrategy;
|
|
43
44
|
FlujoProyectadoEEFFStrategy: typeof FlujoProyectadoEEFFStrategy;
|
|
45
|
+
AdmFinancieraStrategy: typeof AdmFinancieraStrategy;
|
|
44
46
|
};
|
|
45
47
|
declare const General: {
|
|
46
48
|
BalanceGeneralStrategy: typeof BalanceGeneralStrategy;
|
package/build/index.js
CHANGED
|
@@ -26,6 +26,7 @@ const flujoProyectado_strategy_1 = __importDefault(require("./strategies/flujoPr
|
|
|
26
26
|
const analisisFinancieros_strategy_1 = __importDefault(require("./strategies/analisisFinancieros.strategy"));
|
|
27
27
|
const balanceGeneral_strategy_1 = __importDefault(require("./strategies/general/balanceGeneral.strategy"));
|
|
28
28
|
const flujoProyGeneral_strategy_1 = __importDefault(require("./strategies/general/flujoProyGeneral.strategy"));
|
|
29
|
+
const admFinanciera_strategy_1 = __importDefault(require("./strategies/eeff/admFinanciera.strategy"));
|
|
29
30
|
const Pecuario = {
|
|
30
31
|
Auxiliar: anexo_strategy_1.default,
|
|
31
32
|
Desarrollo: desarrollo_strategy_1.default,
|
|
@@ -50,7 +51,8 @@ const Agricola = {
|
|
|
50
51
|
exports.Agricola = Agricola;
|
|
51
52
|
const EEFF = {
|
|
52
53
|
BalanceEEFFStrategy: balanceEEFF_strategy_1.default,
|
|
53
|
-
FlujoProyectadoEEFFStrategy: flujoProyEEFF_strategy_1.default
|
|
54
|
+
FlujoProyectadoEEFFStrategy: flujoProyEEFF_strategy_1.default,
|
|
55
|
+
AdmFinancieraStrategy: admFinanciera_strategy_1.default
|
|
54
56
|
};
|
|
55
57
|
exports.EEFF = EEFF;
|
|
56
58
|
const General = {
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import { Frecuencia, TipoCuota } from "../../../strategies/eeff/admFinanciera/utils";
|
|
2
|
+
export type TipoOperacionLeasing = 'LEASING' | 'LEASEBACK';
|
|
3
|
+
export declare enum TipoDestinoEnum {
|
|
4
|
+
CapitalInversion = "KI",
|
|
5
|
+
CapitalOperacion = "KO",
|
|
6
|
+
Otros = "OTROS"
|
|
7
|
+
}
|
|
8
|
+
export declare enum TipoOperacionExistencia {
|
|
9
|
+
Nueva = "NUEVA",
|
|
10
|
+
Antigua = "ANTIGUA"
|
|
11
|
+
}
|
|
12
|
+
export interface PrestamoDirecto {
|
|
13
|
+
ActividadDeudaId: number;
|
|
14
|
+
ActividadEconomicaId: number;
|
|
15
|
+
UUID: string;
|
|
16
|
+
IndicadorABM: string;
|
|
17
|
+
TipoDeuda: string;
|
|
18
|
+
Descripcion: string;
|
|
19
|
+
MontoOriginal: number;
|
|
20
|
+
Activo: boolean;
|
|
21
|
+
Plazo: number;
|
|
22
|
+
Tasa: number;
|
|
23
|
+
TipoExistencia: TipoExistencia;
|
|
24
|
+
AnnoProyectadoInicio: number;
|
|
25
|
+
Gracia: number;
|
|
26
|
+
EsNuestroBanco: boolean;
|
|
27
|
+
TipoFacilidad: TipoCuota;
|
|
28
|
+
TipoPeriodicidadId: Frecuencia;
|
|
29
|
+
DestinoOperacionId: TipoDestinoEnum;
|
|
30
|
+
FechaDesembolso: string | null;
|
|
31
|
+
EsBajoLinea: boolean;
|
|
32
|
+
PorcionPagada: number;
|
|
33
|
+
CuotasPagadas: number;
|
|
34
|
+
Clasificador: string;
|
|
35
|
+
AmortizacionesCapital: Partial<ProyeccionPrestamo>;
|
|
36
|
+
AmortizacionesCapitalCuotaFinal: Partial<ProyeccionPrestamo>;
|
|
37
|
+
AmortizacionesCapitalEfectoCorriente: Partial<ProyeccionPrestamo>;
|
|
38
|
+
AmortizacionesInteres: Partial<ProyeccionPrestamo>;
|
|
39
|
+
CuadroEfectoExposicion: Partial<ProyeccionPrestamo>;
|
|
40
|
+
CuadroEfectoLinea: Partial<ProyeccionPrestamo>;
|
|
41
|
+
PorcionesNoCorrientes: Partial<ProyeccionPrestamo>;
|
|
42
|
+
Plazos: Partial<ProyeccionPrestamo>;
|
|
43
|
+
PlazoRemanenteAños: number;
|
|
44
|
+
MesesPorcionPagada: number;
|
|
45
|
+
}
|
|
46
|
+
export interface PrestamoBajoLinea {
|
|
47
|
+
ActividadDeudaId: number;
|
|
48
|
+
ActividadEconomicaId: number;
|
|
49
|
+
UUID: string;
|
|
50
|
+
IndicadorABM: string;
|
|
51
|
+
TipoDeuda: string;
|
|
52
|
+
Descripcion: string;
|
|
53
|
+
MontoOriginal: number;
|
|
54
|
+
Activo: boolean;
|
|
55
|
+
TipoExistencia: TipoExistencia;
|
|
56
|
+
Plazo: number;
|
|
57
|
+
Tasa: number;
|
|
58
|
+
EsNuestroBanco: boolean;
|
|
59
|
+
EsBajoLinea: boolean;
|
|
60
|
+
MontoUtilizado: number;
|
|
61
|
+
VencimientoLinea: string | null;
|
|
62
|
+
CantidadAnnos: number;
|
|
63
|
+
TasaPonderada: number;
|
|
64
|
+
Clasificador: string;
|
|
65
|
+
SaldoLineaAplicar: number;
|
|
66
|
+
Proyecciones: Partial<ProyeccionPrestamo>;
|
|
67
|
+
Aplicaciones: Partial<ProyeccionPrestamo>;
|
|
68
|
+
}
|
|
69
|
+
export interface PrestamoLeasing {
|
|
70
|
+
ActividadDeudaId: number;
|
|
71
|
+
ActividadEconomicaId: number;
|
|
72
|
+
UUID: string;
|
|
73
|
+
IndicadorABM: string;
|
|
74
|
+
TipoDeuda: string;
|
|
75
|
+
Descripcion: string;
|
|
76
|
+
MontoOriginal: number;
|
|
77
|
+
Activo: boolean;
|
|
78
|
+
Plazo: number;
|
|
79
|
+
Tasa: number;
|
|
80
|
+
AnnoProyectadoInicio: number;
|
|
81
|
+
TipoAmortizacion: Frecuencia;
|
|
82
|
+
TipoOperacion: TipoOperacionLeasing;
|
|
83
|
+
TipoOperacion2: TipoOperacionExistencia;
|
|
84
|
+
MontoCuotaPeriodo: number;
|
|
85
|
+
MontoAporteInicial: number;
|
|
86
|
+
MontoValorResidual: number;
|
|
87
|
+
MontoValorBien: number;
|
|
88
|
+
Clasificador: string;
|
|
89
|
+
Plazos: Partial<ProyeccionPrestamo>;
|
|
90
|
+
PlazosMultiplicados: Partial<ProyeccionPrestamo>;
|
|
91
|
+
AmortizacionesCapital: Partial<ProyeccionPrestamo>;
|
|
92
|
+
AmortizacionesCapitalFinal: Partial<ProyeccionPrestamo>;
|
|
93
|
+
AmortizacionesInteres: Partial<ProyeccionPrestamo>;
|
|
94
|
+
PorcionesCorrientes: Partial<ProyeccionPrestamo>;
|
|
95
|
+
PorcionesNoCorrientes: Partial<ProyeccionPrestamo>;
|
|
96
|
+
Aplicaciones: Partial<ProyeccionPrestamo>;
|
|
97
|
+
ActivacionOperacion: number;
|
|
98
|
+
}
|
|
99
|
+
export interface LineaCreditoMixta {
|
|
100
|
+
Descripcion: string;
|
|
101
|
+
TipoExistencia: TipoExistencia;
|
|
102
|
+
Tasa: number;
|
|
103
|
+
Clasificador: string;
|
|
104
|
+
RubroId?: string;
|
|
105
|
+
[key: `Gestion${number}`]: number | undefined;
|
|
106
|
+
}
|
|
107
|
+
export interface ProyeccionPrestamo {
|
|
108
|
+
id: number;
|
|
109
|
+
Descripcion: string;
|
|
110
|
+
Clasificador?: string;
|
|
111
|
+
Editable?: boolean;
|
|
112
|
+
RubroId?: string;
|
|
113
|
+
[key: `Gestion${number}`]: number | undefined;
|
|
114
|
+
}
|
|
115
|
+
export interface AdministracionFinancieraData {
|
|
116
|
+
ActividadEconomicaId: number;
|
|
117
|
+
EvaluacionId: number;
|
|
118
|
+
CantidadProyeccion: number;
|
|
119
|
+
InicioProyeccion: string;
|
|
120
|
+
PrestamoDirecto: Partial<PrestamoDirecto>[];
|
|
121
|
+
PrestamoBajoLinea: Partial<PrestamoBajoLinea>[];
|
|
122
|
+
PrestamoLeasing: Partial<PrestamoLeasing>[];
|
|
123
|
+
LineasMixtasBDP: Partial<LineaCreditoMixta>[];
|
|
124
|
+
LineasMixtasOtros: Partial<LineaCreditoMixta>[];
|
|
125
|
+
ProyeccionPrestamosDirectos: Partial<ProyeccionPrestamo>[];
|
|
126
|
+
}
|
|
127
|
+
export interface AdministracionFinancieraCalcData extends AdministracionFinancieraData {
|
|
128
|
+
ProyeccionPrestamosBajoLineas: Partial<ProyeccionPrestamo>[];
|
|
129
|
+
ProyeccionPrestamosDirectos: Partial<ProyeccionPrestamo>[];
|
|
130
|
+
ProyeccionAplicaciones: Partial<ProyeccionPrestamo>[];
|
|
131
|
+
}
|
|
132
|
+
export type TipoExistencia = "EXISTENTE" | "NUEVA";
|
|
133
|
+
export declare const rubros: {
|
|
134
|
+
lineasMixtas: {
|
|
135
|
+
descripcion: string;
|
|
136
|
+
vencimientoCorrienteLargoPlazo: string;
|
|
137
|
+
deudaFinancieraLargoPlazo: string;
|
|
138
|
+
gastosFinancierosYComisiones: string;
|
|
139
|
+
};
|
|
140
|
+
proyeccionPrestamosDirectos: {
|
|
141
|
+
interesManual: string;
|
|
142
|
+
interesLeasingManual: string;
|
|
143
|
+
};
|
|
144
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.rubros = exports.TipoOperacionExistencia = exports.TipoDestinoEnum = void 0;
|
|
4
|
+
var TipoDestinoEnum;
|
|
5
|
+
(function (TipoDestinoEnum) {
|
|
6
|
+
TipoDestinoEnum["CapitalInversion"] = "KI";
|
|
7
|
+
TipoDestinoEnum["CapitalOperacion"] = "KO";
|
|
8
|
+
TipoDestinoEnum["Otros"] = "OTROS";
|
|
9
|
+
})(TipoDestinoEnum || (exports.TipoDestinoEnum = TipoDestinoEnum = {}));
|
|
10
|
+
var TipoOperacionExistencia;
|
|
11
|
+
(function (TipoOperacionExistencia) {
|
|
12
|
+
TipoOperacionExistencia["Nueva"] = "NUEVA";
|
|
13
|
+
TipoOperacionExistencia["Antigua"] = "ANTIGUA";
|
|
14
|
+
})(TipoOperacionExistencia || (exports.TipoOperacionExistencia = TipoOperacionExistencia = {}));
|
|
15
|
+
exports.rubros = {
|
|
16
|
+
lineasMixtas: {
|
|
17
|
+
descripcion: 'DESCP',
|
|
18
|
+
vencimientoCorrienteLargoPlazo: 'VCLP',
|
|
19
|
+
deudaFinancieraLargoPlazo: 'DFLP',
|
|
20
|
+
gastosFinancierosYComisiones: 'GFC',
|
|
21
|
+
},
|
|
22
|
+
proyeccionPrestamosDirectos: {
|
|
23
|
+
interesManual: 'INTM',
|
|
24
|
+
interesLeasingManual: 'INTLM',
|
|
25
|
+
}
|
|
26
|
+
};
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.calcular = void 0;
|
|
4
4
|
const calcular = (Costos) => {
|
|
5
5
|
return Costos.map((item) => {
|
|
6
|
-
let result =
|
|
6
|
+
let result = { ...item };
|
|
7
7
|
result.Cantidad = parseFloat(item.Cantidad);
|
|
8
8
|
result.PrecioUnitario = parseFloat(item.PrecioUnitario);
|
|
9
9
|
result.Total = Math.round(result.Cantidad * result.PrecioUnitario * result.Superficie * 100) / 100;
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const ventas_calc_1 = require("./ventas.detail/ventas.calc");
|
|
4
4
|
class FlujoProyectadoAgrStrategy {
|
|
5
|
+
actividades;
|
|
5
6
|
constructor() {
|
|
6
7
|
this.actividades = [];
|
|
7
8
|
}
|
|
@@ -53,7 +54,7 @@ const getIngresoActividad = (actividad) => {
|
|
|
53
54
|
if (!actividad.Ventas.CalculoIngreso)
|
|
54
55
|
return null;
|
|
55
56
|
const total = actividad.Ventas.CalculoIngreso.find((item) => item.ActividadProductoId == 0);
|
|
56
|
-
let result =
|
|
57
|
+
let result = { ...total, Descripcion: `Ventas Act:${total.ActividadEconomicaId}` };
|
|
57
58
|
return result;
|
|
58
59
|
};
|
|
59
60
|
//@ts-ignore
|
|
@@ -61,7 +62,7 @@ const getCostosActividad = (actividad) => {
|
|
|
61
62
|
if (!actividad.Costos.Meses || actividad.Costos.Meses.length == 0)
|
|
62
63
|
return null;
|
|
63
64
|
const total = actividad.Costos.Meses.find((item) => item.ActividadProductoId == 0);
|
|
64
|
-
let result =
|
|
65
|
+
let result = { ...total, Descripcion: `Costos Act:${total.ActividadEconomicaId}` };
|
|
65
66
|
return result;
|
|
66
67
|
};
|
|
67
68
|
//@ts-ignore
|
|
@@ -7,7 +7,8 @@ const addCalculoIngresosVentas = (ventas) => {
|
|
|
7
7
|
const calculoIngreso = ventas.Productos.reduce((acc, producto) => {
|
|
8
8
|
const ingreso = (0, exports.calcularIngreso)(producto);
|
|
9
9
|
if (!acc.has(0))
|
|
10
|
-
acc.set(0,
|
|
10
|
+
acc.set(0, { ...ingreso, ActividadProductoId: 0,
|
|
11
|
+
ActividadProductoDesc: 'Total' });
|
|
11
12
|
else {
|
|
12
13
|
for (let i = 1; i <= 12; i++) {
|
|
13
14
|
acc.get(0)[`Monto${i}`] += ingreso[`Monto${i}`];
|
|
@@ -9,28 +9,6 @@ const apalancamiento_calc_1 = require("./common/analisisFinCalculos/apalancamien
|
|
|
9
9
|
const analisisDupont_calc_1 = require("./common/analisisFinCalculos/analisisDupont.calc");
|
|
10
10
|
const puntoEquilibrio_calc_1 = require("./common/analisisFinCalculos/puntoEquilibrio.calc");
|
|
11
11
|
class AnalisisFinancieros {
|
|
12
|
-
constructor() {
|
|
13
|
-
this.generarMapBalance = (data) => {
|
|
14
|
-
return data.balance.balance.reduce((acc, item) => {
|
|
15
|
-
let uuid = item.UUID ? item.UUID : '0';
|
|
16
|
-
let key = `${item.RubroId}_${item.Clasificador == 'HABM' || item.Clasificador == 'CT' ? uuid : '0'}`;
|
|
17
|
-
if (acc.has(key))
|
|
18
|
-
throw new Error(`Duplicado en balanceMap: ${key}`);
|
|
19
|
-
acc.set(key, item);
|
|
20
|
-
return acc;
|
|
21
|
-
}, new Map());
|
|
22
|
-
};
|
|
23
|
-
this.generarMapEERR = (data) => {
|
|
24
|
-
return data.balance.eerr.reduce((acc, item) => {
|
|
25
|
-
let uuid = item.UUID ? item.UUID : '0';
|
|
26
|
-
let key = `${item.RubroId}_${item.Clasificador == 'HABM' || item.Clasificador == 'CT' ? uuid : '0'}`;
|
|
27
|
-
if (acc.has(key))
|
|
28
|
-
throw new Error(`Duplicado en balanceMap: ${key}`);
|
|
29
|
-
acc.set(key, item);
|
|
30
|
-
return acc;
|
|
31
|
-
}, new Map());
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
12
|
execute(data) {
|
|
35
13
|
let analisisGrafico = new analisisGrafico_calc_1.default(data);
|
|
36
14
|
let ratios = new ratios_calc_1.default(data);
|
|
@@ -46,5 +24,25 @@ class AnalisisFinancieros {
|
|
|
46
24
|
delete data.eerrMap;
|
|
47
25
|
return data;
|
|
48
26
|
}
|
|
27
|
+
generarMapBalance = (data) => {
|
|
28
|
+
return data.balance.balance.reduce((acc, item) => {
|
|
29
|
+
let uuid = item.UUID ? item.UUID : '0';
|
|
30
|
+
let key = `${item.RubroId}_${item.Clasificador == 'HABM' || item.Clasificador == 'CT' ? uuid : '0'}`;
|
|
31
|
+
if (acc.has(key))
|
|
32
|
+
throw new Error(`Duplicado en balanceMap: ${key}`);
|
|
33
|
+
acc.set(key, item);
|
|
34
|
+
return acc;
|
|
35
|
+
}, new Map());
|
|
36
|
+
};
|
|
37
|
+
generarMapEERR = (data) => {
|
|
38
|
+
return data.balance.eerr.reduce((acc, item) => {
|
|
39
|
+
let uuid = item.UUID ? item.UUID : '0';
|
|
40
|
+
let key = `${item.RubroId}_${item.Clasificador == 'HABM' || item.Clasificador == 'CT' ? uuid : '0'}`;
|
|
41
|
+
if (acc.has(key))
|
|
42
|
+
throw new Error(`Duplicado en balanceMap: ${key}`);
|
|
43
|
+
acc.set(key, item);
|
|
44
|
+
return acc;
|
|
45
|
+
}, new Map());
|
|
46
|
+
};
|
|
49
47
|
}
|
|
50
48
|
exports.default = AnalisisFinancieros;
|
|
@@ -58,7 +58,13 @@ const calcularBalance = (balance) => {
|
|
|
58
58
|
let result = balance.map((item) => {
|
|
59
59
|
i++;
|
|
60
60
|
const esGrupo = item.Clasificador == 'P' || item.Clasificador == 'C';
|
|
61
|
-
return
|
|
61
|
+
return {
|
|
62
|
+
...item,
|
|
63
|
+
MontoEmpresa: (!esGrupo ? parseFloat(item.MontoEmpresa) : 0),
|
|
64
|
+
MontoFamiliar: (!esGrupo ? parseFloat(item.MontoFamiliar) : 0),
|
|
65
|
+
MontoTotal: (!esGrupo ? parseFloat(item.MontoEmpresa) + parseFloat(item.MontoFamiliar) : 0),
|
|
66
|
+
IdVirtual: i
|
|
67
|
+
};
|
|
62
68
|
});
|
|
63
69
|
result = sumarizarCuenta(['ACT_CN_11000', 'ACT_CN_12000',
|
|
64
70
|
'ACT_CN_21000', 'ACT_CN_22000', 'ACT_CN_30000'], result);
|
|
@@ -80,7 +86,13 @@ const calcularEERR = (eerr) => {
|
|
|
80
86
|
let result = eerr.map((item) => {
|
|
81
87
|
i++;
|
|
82
88
|
const esGrupo = item.Clasificador == 'P' || item.Clasificador == 'C';
|
|
83
|
-
return
|
|
89
|
+
return {
|
|
90
|
+
...item,
|
|
91
|
+
MontoEmpresa: (!esGrupo ? parseFloat(item.MontoEmpresa) : 0),
|
|
92
|
+
MontoFamiliar: (!esGrupo ? parseFloat(item.MontoFamiliar) : 0),
|
|
93
|
+
MontoTotal: (!esGrupo ? parseFloat(item.MontoEmpresa) + parseFloat(item.MontoFamiliar) : 0),
|
|
94
|
+
IdVirtual: i
|
|
95
|
+
};
|
|
84
96
|
});
|
|
85
97
|
//Ingresos
|
|
86
98
|
result = sumarizarCuenta(['ACT_CN_40000'], result);
|
|
@@ -1,52 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
class AnalisisGrafico {
|
|
4
|
+
//@ts-ignore
|
|
5
|
+
data;
|
|
4
6
|
constructor(data) {
|
|
5
|
-
this.balanceGeneral = () => {
|
|
6
|
-
let array = [];
|
|
7
|
-
array.push(this.data.balanceMap.get('ACT_CN_11900_0'));
|
|
8
|
-
array.push(this.data.balanceMap.get('ACT_CN_12900_0'));
|
|
9
|
-
array.push(this.data.balanceMap.get('ACT_CN_21900_0'));
|
|
10
|
-
array.push(this.data.balanceMap.get('ACT_CN_22900_0'));
|
|
11
|
-
array.push(this.data.balanceMap.get('ACT_CN_39000_0'));
|
|
12
|
-
this.data.estructuraGeneral = array;
|
|
13
|
-
};
|
|
14
|
-
this.evolucionActivos = () => {
|
|
15
|
-
let array = [];
|
|
16
|
-
array.push(this.data.balanceMap.get('ACT_CN_11900_0'));
|
|
17
|
-
array.push(this.data.balanceMap.get('ACT_CN_12900_0'));
|
|
18
|
-
array.push(this.data.balanceMap.get('ACT_CN_19000_0'));
|
|
19
|
-
this.data.evolucionActivos = array;
|
|
20
|
-
};
|
|
21
|
-
this.comportamientoPasivos = () => {
|
|
22
|
-
let array = [];
|
|
23
|
-
array.push(this.data.balanceMap.get('ACT_CN_21900_0'));
|
|
24
|
-
array.push(this.data.balanceMap.get('ACT_CN_22900_0'));
|
|
25
|
-
array.push(this.data.balanceMap.get('ACT_CN_29000_0'));
|
|
26
|
-
this.data.comportamientoPasivos = array;
|
|
27
|
-
};
|
|
28
|
-
this.comportamientoPatrimonio = () => {
|
|
29
|
-
let array = [];
|
|
30
|
-
array.push(this.data.balanceMap.get('ACT_CN_39000_0'));
|
|
31
|
-
this.data.comportamientoPatrimonio = array;
|
|
32
|
-
};
|
|
33
|
-
this.evolucionEstadoResultados = () => {
|
|
34
|
-
let array = [];
|
|
35
|
-
array.push(this.data.eerrMap.get('ACT_CN_40003_0'));
|
|
36
|
-
array.push(this.data.eerrMap.get('ACT_CN_41004_0'));
|
|
37
|
-
array.push(this.data.eerrMap.get('ACT_CN_43900_0'));
|
|
38
|
-
this.data.evolucionEstadoResultados = array;
|
|
39
|
-
};
|
|
40
|
-
this.margenesEstadoResultados = () => {
|
|
41
|
-
let array = [];
|
|
42
|
-
const ratio3 = this.data.Ratios.rentabilidad.find((item) => item.id === 'Ratio3');
|
|
43
|
-
const ratio4 = this.data.Ratios.rentabilidad.find((item) => item.id === 'Ratio4');
|
|
44
|
-
const ratio5 = this.data.Ratios.rentabilidad.find((item) => item.id === 'Ratio5');
|
|
45
|
-
array.push(ratio3);
|
|
46
|
-
array.push(ratio4);
|
|
47
|
-
array.push(ratio5);
|
|
48
|
-
this.data.margenesEstadoResultados = array;
|
|
49
|
-
};
|
|
50
7
|
this.data = data;
|
|
51
8
|
}
|
|
52
9
|
generarGraficos() {
|
|
@@ -57,5 +14,50 @@ class AnalisisGrafico {
|
|
|
57
14
|
this.evolucionEstadoResultados();
|
|
58
15
|
this.margenesEstadoResultados();
|
|
59
16
|
}
|
|
17
|
+
balanceGeneral = () => {
|
|
18
|
+
let array = [];
|
|
19
|
+
array.push(this.data.balanceMap.get('ACT_CN_11900_0'));
|
|
20
|
+
array.push(this.data.balanceMap.get('ACT_CN_12900_0'));
|
|
21
|
+
array.push(this.data.balanceMap.get('ACT_CN_21900_0'));
|
|
22
|
+
array.push(this.data.balanceMap.get('ACT_CN_22900_0'));
|
|
23
|
+
array.push(this.data.balanceMap.get('ACT_CN_39000_0'));
|
|
24
|
+
this.data.estructuraGeneral = array;
|
|
25
|
+
};
|
|
26
|
+
evolucionActivos = () => {
|
|
27
|
+
let array = [];
|
|
28
|
+
array.push(this.data.balanceMap.get('ACT_CN_11900_0'));
|
|
29
|
+
array.push(this.data.balanceMap.get('ACT_CN_12900_0'));
|
|
30
|
+
array.push(this.data.balanceMap.get('ACT_CN_19000_0'));
|
|
31
|
+
this.data.evolucionActivos = array;
|
|
32
|
+
};
|
|
33
|
+
comportamientoPasivos = () => {
|
|
34
|
+
let array = [];
|
|
35
|
+
array.push(this.data.balanceMap.get('ACT_CN_21900_0'));
|
|
36
|
+
array.push(this.data.balanceMap.get('ACT_CN_22900_0'));
|
|
37
|
+
array.push(this.data.balanceMap.get('ACT_CN_29000_0'));
|
|
38
|
+
this.data.comportamientoPasivos = array;
|
|
39
|
+
};
|
|
40
|
+
comportamientoPatrimonio = () => {
|
|
41
|
+
let array = [];
|
|
42
|
+
array.push(this.data.balanceMap.get('ACT_CN_39000_0'));
|
|
43
|
+
this.data.comportamientoPatrimonio = array;
|
|
44
|
+
};
|
|
45
|
+
evolucionEstadoResultados = () => {
|
|
46
|
+
let array = [];
|
|
47
|
+
array.push(this.data.eerrMap.get('ACT_CN_40003_0'));
|
|
48
|
+
array.push(this.data.eerrMap.get('ACT_CN_41004_0'));
|
|
49
|
+
array.push(this.data.eerrMap.get('ACT_CN_43900_0'));
|
|
50
|
+
this.data.evolucionEstadoResultados = array;
|
|
51
|
+
};
|
|
52
|
+
margenesEstadoResultados = () => {
|
|
53
|
+
let array = [];
|
|
54
|
+
const ratio3 = this.data.Ratios.rentabilidad.find((item) => item.id === 'Ratio3');
|
|
55
|
+
const ratio4 = this.data.Ratios.rentabilidad.find((item) => item.id === 'Ratio4');
|
|
56
|
+
const ratio5 = this.data.Ratios.rentabilidad.find((item) => item.id === 'Ratio5');
|
|
57
|
+
array.push(ratio3);
|
|
58
|
+
array.push(ratio4);
|
|
59
|
+
array.push(ratio5);
|
|
60
|
+
this.data.margenesEstadoResultados = array;
|
|
61
|
+
};
|
|
60
62
|
}
|
|
61
63
|
exports.default = AnalisisGrafico;
|