bdpformulas 1.0.58 → 1.0.60
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/strategies/agriculture/balanceAgr.strategy.js +1 -102
- package/build/strategies/balance.strategy.d.ts +2 -0
- package/build/strategies/balance.strategy.js +159 -23
- package/build/strategies/common/balance.calc.d.ts +0 -1
- package/build/strategies/common/balance.calc.js +1 -3
- package/build/strategies/common/flujoCalculos/flujoConstructor.d.ts +2 -2
- package/build/strategies/common/flujoCalculos/flujoConstructor.js +90 -83
- package/build/strategies/common/flujoCalculos/supuestos.calc.d.ts +2 -2
- package/build/strategies/pecuary/Constantes.d.ts +1 -1
- package/build/strategies/pecuary/anexo.strategy.d.ts +2 -2
- package/build/strategies/pecuary/anexo.strategy.js +10 -5
- package/build/strategies/pecuary/balancePec.strategy.d.ts +2 -1
- package/build/strategies/pecuary/balancePec.strategy.js +124 -72
- package/build/strategies/pecuary/flujoProyPec.strategy.d.ts +9 -1
- package/build/strategies/pecuary/flujoProyPec.strategy.js +285 -87
- package/build/strategies/production/balancePrd.strategy.d.ts +2 -1
- package/build/strategies/production/balancePrd.strategy.js +66 -32
- package/package.json +1 -1
- package/tsconfig.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const getSupuestosEmpty: (data: any) => any
|
|
2
|
-
export declare const getSupuestos: (data: any) => any
|
|
1
|
+
export declare const getSupuestosEmpty: (data: any) => any;
|
|
2
|
+
export declare const getSupuestos: (data: any) => any;
|
|
@@ -20,5 +20,5 @@ export declare const RUBROS: {
|
|
|
20
20
|
ACT_PEC_NOV: string;
|
|
21
21
|
ACT_PEC_SALDO: string;
|
|
22
22
|
};
|
|
23
|
-
export declare const getOrden: (rubro: string) => 3 | 1 | 2 | 4 |
|
|
23
|
+
export declare const getOrden: (rubro: string) => 3 | 1 | 2 | 4 | 6 | 5 | 7 | 8 | 9 | 10 | undefined;
|
|
24
24
|
export declare const getMap: (array: any[], key: string) => any;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Strategy } from
|
|
2
|
-
import { AuxiliarSchemaType } from
|
|
1
|
+
import { Strategy } from '../../strategy.interface';
|
|
2
|
+
import { AuxiliarSchemaType } from '../../models/pecuary/auxiliar.schema';
|
|
3
3
|
export default class Auxiliar implements Strategy {
|
|
4
4
|
execute(data: AuxiliarSchemaType): any;
|
|
5
5
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const utils_1 = require("../eeff/admFinanciera/utils");
|
|
3
4
|
//@ts-ignore
|
|
4
5
|
const calcularHato = (data) => {
|
|
5
6
|
const gestiones = data.reduce((acc, item) => {
|
|
@@ -50,7 +51,7 @@ const calcularHato = (data) => {
|
|
|
50
51
|
}
|
|
51
52
|
if (!(item.RubroId in acc)) {
|
|
52
53
|
acc[item.RubroId] = item.CantidadCabezas * item.PrecioCabeza;
|
|
53
|
-
acc.Total = acc.Total +
|
|
54
|
+
acc.Total = acc.Total + item.CantidadCabezas * item.PrecioCabeza;
|
|
54
55
|
}
|
|
55
56
|
return acc;
|
|
56
57
|
}, {});
|
|
@@ -62,11 +63,15 @@ class Auxiliar {
|
|
|
62
63
|
data.PropiedadesGanaderas.forEach((item) => {
|
|
63
64
|
item.Total = 0;
|
|
64
65
|
item.Rubros.forEach((rubro) => {
|
|
65
|
-
|
|
66
|
-
|
|
66
|
+
const precioCabezaBalance = (0, utils_1.ourParseFloat)(rubro.PrecioCabezaBalance);
|
|
67
|
+
if (precioCabezaBalance)
|
|
68
|
+
rubro.Total =
|
|
69
|
+
parseFloat(rubro.CantidadCabezas) * precioCabezaBalance;
|
|
67
70
|
else
|
|
68
|
-
rubro.Total =
|
|
69
|
-
|
|
71
|
+
rubro.Total =
|
|
72
|
+
parseFloat(rubro.CantidadCabezas) *
|
|
73
|
+
parseFloat(rubro.PrecioCabeza);
|
|
74
|
+
item.Total += rubro.Total;
|
|
70
75
|
});
|
|
71
76
|
});
|
|
72
77
|
data.HistoricoHato = calcularHato(data.HistoricoHato);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { Strategy } from
|
|
1
|
+
import { Strategy } from '../../strategy.interface';
|
|
2
2
|
export default class BalancePecStrategy implements Strategy {
|
|
3
3
|
actividades: any[];
|
|
4
|
+
private camposCalculadosDefinidos;
|
|
4
5
|
constructor();
|
|
5
6
|
execute(data: any): any;
|
|
6
7
|
}
|
|
@@ -1,13 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const lodash_1 = require("lodash");
|
|
4
|
+
const utils_1 = require("../eeff/admFinanciera/utils");
|
|
3
5
|
const gCuentaIngreso = 'ACT_CN_40001';
|
|
4
6
|
const gCuentaCosto = 'ACT_CN_41002';
|
|
5
7
|
const gCuentaGasto = 'ACT_CN_43002';
|
|
6
8
|
const gCuentaOtrosIngresosDet = 'ACT_CN_45001';
|
|
7
9
|
class BalancePecStrategy {
|
|
8
10
|
actividades;
|
|
11
|
+
camposCalculadosDefinidos;
|
|
9
12
|
constructor() {
|
|
10
13
|
this.actividades = [];
|
|
14
|
+
this.camposCalculadosDefinidos = [
|
|
15
|
+
{
|
|
16
|
+
RubroId: 'ACT_CN_41002',
|
|
17
|
+
Correlativos: '*',
|
|
18
|
+
Familiar: false,
|
|
19
|
+
Empresa: true
|
|
20
|
+
}
|
|
21
|
+
];
|
|
11
22
|
}
|
|
12
23
|
execute(data) {
|
|
13
24
|
if (!this.actividades || this.actividades.length == 0)
|
|
@@ -15,9 +26,10 @@ class BalancePecStrategy {
|
|
|
15
26
|
const cuentasIngresosCopy = getCuentasCopy(data, gCuentaIngreso);
|
|
16
27
|
const cuentasCostoCopy = getCuentasCopy(data, gCuentaCosto);
|
|
17
28
|
const cuentaGastoCopy = getCuentasCopy(data, gCuentaGasto);
|
|
18
|
-
|
|
29
|
+
const cuentaOtrosIngresosCopy = getCuentasCopy(data, gCuentaOtrosIngresosDet, true);
|
|
30
|
+
for (const actividad of this.actividades) {
|
|
19
31
|
anadirIngresosAuxPec(actividad, data);
|
|
20
|
-
anadirIngresoVenta(actividad, data)
|
|
32
|
+
//anadirIngresoVenta(actividad, data)
|
|
21
33
|
anadirCosto(actividad, data);
|
|
22
34
|
anadirGasto(actividad, data);
|
|
23
35
|
anadirOtrosIngresos(actividad, data);
|
|
@@ -25,100 +37,125 @@ class BalancePecStrategy {
|
|
|
25
37
|
sumarizarCuentas(`${gCuentaIngreso}.1`, gCuentaIngreso, data, cuentasIngresosCopy);
|
|
26
38
|
sumarizarCuentas(`${gCuentaCosto}.1`, gCuentaCosto, data, cuentasCostoCopy);
|
|
27
39
|
sumarizarCuentas(`${gCuentaGasto}.1`, gCuentaGasto, data, cuentaGastoCopy);
|
|
40
|
+
sumarizarCuentas(`${gCuentaOtrosIngresosDet}.1`, gCuentaOtrosIngresosDet, data, cuentaOtrosIngresosCopy, true);
|
|
41
|
+
data.camposCalculadosDefinidos = this.camposCalculadosDefinidos;
|
|
42
|
+
console.log((0, lodash_1.cloneDeep)(data));
|
|
28
43
|
return data;
|
|
29
44
|
}
|
|
30
45
|
}
|
|
31
46
|
exports.default = BalancePecStrategy;
|
|
32
|
-
const getCuentasCopy = (data, rubroId) => {
|
|
47
|
+
const getCuentasCopy = (data, rubroId, withZero = false) => {
|
|
33
48
|
if (!data.eerr || data.eerr.length == 0)
|
|
34
49
|
throw new Error('Debe ingresar cuentas EERR');
|
|
35
|
-
|
|
50
|
+
const originalData = new Map();
|
|
36
51
|
const rango = data.eerr[0].Rango;
|
|
37
52
|
for (let i = 1; i <= rango; i++) {
|
|
38
|
-
|
|
39
|
-
cuentaIngreso
|
|
40
|
-
cuentaIngreso.
|
|
41
|
-
|
|
53
|
+
const key = withZero ? `${rubroId}_0_${i}` : `${rubroId}_${i}`;
|
|
54
|
+
const cuentaIngreso = data.eerrMap.get(key);
|
|
55
|
+
cuentaIngreso.MontoEmpresa =
|
|
56
|
+
Math.round(parseFloat(cuentaIngreso.MontoEmpresa) * 100) / 100;
|
|
57
|
+
cuentaIngreso.MontoFamiliar =
|
|
58
|
+
Math.round(parseFloat(cuentaIngreso.MontoFamiliar) * 100) / 100;
|
|
59
|
+
originalData.set(key, { ...cuentaIngreso });
|
|
42
60
|
}
|
|
43
61
|
return originalData;
|
|
44
62
|
};
|
|
45
63
|
const anadirIngresosAuxPec = (actividad, data) => {
|
|
46
64
|
const rango = data.eerr[0].Rango;
|
|
47
|
-
for (let i = 1; i <= rango
|
|
65
|
+
for (let i = 1; i <= rango; i++) {
|
|
48
66
|
const cuentaIngreso = data.eerrMap.get(`${gCuentaIngreso}_${i}`);
|
|
49
|
-
|
|
67
|
+
const copy = { ...cuentaIngreso };
|
|
50
68
|
copy.RubroId = `${gCuentaIngreso}.1`;
|
|
51
69
|
copy.Descripcion = `Ingresos por Ventas ${actividad.Desarrollo.ActividadGanadera}`;
|
|
52
|
-
copy.UUID = `${gCuentaIngreso}_${actividad.AuxPec.ActividadEconomicaId}
|
|
70
|
+
copy.UUID = `${gCuentaIngreso}_${actividad.AuxPec.ActividadEconomicaId}`;
|
|
53
71
|
copy.MontoEmpresa = 0;
|
|
54
72
|
copy.MontoFamiliar = 0;
|
|
55
73
|
copy.Correlativo = i;
|
|
56
|
-
copy.Clasificador = '
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
74
|
+
copy.Clasificador = 'SBCT';
|
|
75
|
+
copy.Subcuenta = true;
|
|
76
|
+
const historicoHato = actividad.AuxPec?.HistoricoHato;
|
|
77
|
+
if (historicoHato) {
|
|
78
|
+
const historico = historicoHato.at(i - 1);
|
|
79
|
+
const filaTotales = historico?.find((h) => h.key === 'TOTALES');
|
|
80
|
+
if (filaTotales)
|
|
81
|
+
copy.MontoEmpresa = parseFloat(filaTotales.Total);
|
|
61
82
|
}
|
|
62
83
|
data.eerr.push(copy);
|
|
84
|
+
data.eerrMap.set(`${copy.UUID}_${i}`, copy);
|
|
63
85
|
}
|
|
64
86
|
};
|
|
65
|
-
const anadirIngresoVenta = (actividad, data) => {
|
|
66
|
-
const rango = data.eerr[0].Rango
|
|
67
|
-
const cuentaIngreso = data.eerrMap.get(`${gCuentaIngreso}${rango}`)
|
|
68
|
-
|
|
69
|
-
copy.RubroId = `${gCuentaIngreso}.1
|
|
70
|
-
copy.Descripcion = `Ingresos por Ventas ${actividad.Desarrollo.ActividadGanadera}
|
|
71
|
-
copy.UUID = `${gCuentaIngreso}_${actividad.AuxPec.ActividadEconomicaId}_${rango}
|
|
72
|
-
copy.MontoEmpresa = 0
|
|
73
|
-
copy.MontoFamiliar = 0
|
|
74
|
-
copy.Correlativo = rango
|
|
75
|
-
copy.Clasificador = 'CT'
|
|
87
|
+
/* const anadirIngresoVenta = (actividad: any, data: any) => {
|
|
88
|
+
const rango = data.eerr[0].Rango
|
|
89
|
+
const cuentaIngreso = data.eerrMap.get(`${gCuentaIngreso}${rango}`)
|
|
90
|
+
const copy = { ...cuentaIngreso }
|
|
91
|
+
copy.RubroId = `${gCuentaIngreso}.1`
|
|
92
|
+
copy.Descripcion = `Ingresos por Ventas ${actividad.Desarrollo.ActividadGanadera}`
|
|
93
|
+
copy.UUID = `${gCuentaIngreso}_${actividad.AuxPec.ActividadEconomicaId}_${rango}`
|
|
94
|
+
copy.MontoEmpresa = 0
|
|
95
|
+
copy.MontoFamiliar = 0
|
|
96
|
+
copy.Correlativo = rango
|
|
97
|
+
copy.Clasificador = 'CT'
|
|
98
|
+
|
|
76
99
|
if (actividad.Ventas.Ventas && actividad.Ventas.Ventas.length > 0) {
|
|
77
|
-
copy.MontoEmpresa = actividad.Ventas.Ventas.reduce(
|
|
78
|
-
acc
|
|
79
|
-
|
|
80
|
-
|
|
100
|
+
copy.MontoEmpresa = actividad.Ventas.Ventas.reduce(
|
|
101
|
+
(acc: any, item: any) => {
|
|
102
|
+
acc += parseFloat(item.IngresoTotal)
|
|
103
|
+
return acc
|
|
104
|
+
},
|
|
105
|
+
0
|
|
106
|
+
)
|
|
81
107
|
}
|
|
82
|
-
|
|
83
|
-
|
|
108
|
+
|
|
109
|
+
data.eerr.push(copy)
|
|
110
|
+
} */
|
|
84
111
|
const anadirCosto = (actividad, data) => {
|
|
85
112
|
const rango = data.eerr[0].Rango;
|
|
86
113
|
const cuentaCosto = data.eerrMap.get(`${gCuentaCosto}_${rango}`);
|
|
87
114
|
for (let i = 1; i <= rango; i++) {
|
|
88
|
-
|
|
115
|
+
const copy = { ...cuentaCosto };
|
|
89
116
|
copy.RubroId = `${gCuentaCosto}.1`;
|
|
90
117
|
copy.Descripcion = `Costos de Ventas ${actividad.Desarrollo.ActividadGanadera}`;
|
|
91
|
-
copy.UUID = `${gCuentaCosto}_${actividad.AuxPec.ActividadEconomicaId}
|
|
118
|
+
copy.UUID = `${gCuentaCosto}_${actividad.AuxPec.ActividadEconomicaId}`;
|
|
92
119
|
copy.MontoEmpresa = 0;
|
|
93
120
|
copy.MontoFamiliar = 0;
|
|
94
121
|
copy.Correlativo = i;
|
|
95
|
-
copy.Clasificador = '
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
copy.MontoEmpresa =
|
|
122
|
+
copy.Clasificador = 'SBCT';
|
|
123
|
+
copy.Subcuenta = true;
|
|
124
|
+
if (i < rango) {
|
|
125
|
+
const porcentaje = data.eerrMap.get(`ACT_CN_41001_${i}`);
|
|
126
|
+
const ingreso = data.eerrMap.get(`ACT_CN_40001_${actividad.AuxPec.ActividadEconomicaId}_${i}`);
|
|
127
|
+
copy.MontoEmpresa =
|
|
128
|
+
((0, utils_1.ourParseFloat)(ingreso?.MontoEmpresa) *
|
|
129
|
+
(0, utils_1.ourParseFloat)(porcentaje?.MontoEmpresa)) /
|
|
130
|
+
100;
|
|
131
|
+
}
|
|
132
|
+
if (i === rango && actividad.Costos.Calculo) {
|
|
133
|
+
const filaTotal = actividad.Costos.Calculo.find((value) => value.RubroId === 'TOT01');
|
|
134
|
+
if (filaTotal) {
|
|
135
|
+
copy.MontoEmpresa = (0, utils_1.ourParseFloat)(filaTotal.Total);
|
|
136
|
+
}
|
|
101
137
|
}
|
|
102
138
|
data.eerr.push(copy);
|
|
139
|
+
data.eerrMap.set(`${copy.UUID}_${i}`, copy);
|
|
103
140
|
}
|
|
104
141
|
};
|
|
105
142
|
const anadirGasto = (actividad, data) => {
|
|
106
143
|
const rango = data.eerr[0].Rango;
|
|
107
144
|
const cuentaGasto = data.eerrMap.get(`${gCuentaGasto}_${rango}`);
|
|
145
|
+
const otrosGastos = calcularOtrosGastos(actividad.OtrosGastos);
|
|
108
146
|
for (let i = 1; i <= rango; i++) {
|
|
109
|
-
|
|
147
|
+
const copy = { ...cuentaGasto };
|
|
110
148
|
copy.RubroId = `${gCuentaGasto}.1`;
|
|
111
|
-
copy.UUID = `${gCuentaGasto}_${actividad.AuxPec.ActividadEconomicaId}
|
|
149
|
+
copy.UUID = `${gCuentaGasto}_${actividad.AuxPec.ActividadEconomicaId}`;
|
|
112
150
|
copy.Descripcion = `Gastos Administrativos Operativos ${actividad.Desarrollo.ActividadGanadera}`;
|
|
113
151
|
copy.MontoEmpresa = 0;
|
|
114
152
|
copy.MontoFamiliar = 0;
|
|
115
153
|
copy.Correlativo = i;
|
|
116
|
-
copy.Clasificador = '
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
copy.MontoEmpresa = Math.round(parseFloat(otrosGastos.GastosOperativos) * 100) / 100;
|
|
120
|
-
}
|
|
154
|
+
copy.Clasificador = 'SBCT';
|
|
155
|
+
copy.MontoEmpresa = (0, utils_1.ourParseFloat)(otrosGastos.GastosOperativos);
|
|
156
|
+
copy.Subcuenta = true;
|
|
121
157
|
data.eerr.push(copy);
|
|
158
|
+
data.eerrMap.set(`${copy.UUID}_${i}`, copy);
|
|
122
159
|
}
|
|
123
160
|
};
|
|
124
161
|
const calcularOtrosGastos = (gastos) => {
|
|
@@ -139,39 +176,54 @@ const anadirOtrosIngresos = (actividad, data) => {
|
|
|
139
176
|
const rango = data.eerr[0].Rango;
|
|
140
177
|
const cuentaOtrosIngresos = data.eerr.find((item) => item.RubroId == gCuentaOtrosIngresosDet);
|
|
141
178
|
for (let i = 1; i <= rango; i++) {
|
|
142
|
-
|
|
143
|
-
copy.
|
|
179
|
+
const copy = { ...cuentaOtrosIngresos };
|
|
180
|
+
copy.RubroId = `${gCuentaOtrosIngresosDet}.1`;
|
|
181
|
+
copy.UUID = `${gCuentaOtrosIngresosDet}_${actividad.AuxPec.ActividadEconomicaId}`;
|
|
144
182
|
copy.Descripcion = `Otros Ingresos ${actividad.Desarrollo.ActividadGanadera}`;
|
|
145
183
|
copy.MontoEmpresa = 0;
|
|
146
184
|
copy.MontoFamiliar = 0;
|
|
147
185
|
copy.Correlativo = i;
|
|
148
|
-
copy.Clasificador = '
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
copy.MontoFamiliar = actividad.Ventas.OtrosIngresos
|
|
152
|
-
acc += parseFloat(item.Monto);
|
|
153
|
-
return acc;
|
|
154
|
-
}, 0);
|
|
155
|
-
copy.MontoFamiliar = Math.round(copy.MontoFamiliar * 100) / 100;
|
|
186
|
+
copy.Clasificador = 'SBCT';
|
|
187
|
+
copy.Subcuenta = true;
|
|
188
|
+
if (rango == i && actividad.Ventas?.OtrosIngresos) {
|
|
189
|
+
copy.MontoFamiliar = calcularOtrosIngresos(actividad.Ventas.OtrosIngresos, data.cantidadProyeccion);
|
|
156
190
|
}
|
|
157
191
|
data.eerr.push(copy);
|
|
192
|
+
data.eerrMap.set(`${copy.UUID}_${i}`, copy);
|
|
158
193
|
}
|
|
159
194
|
};
|
|
160
|
-
|
|
195
|
+
function calcularOtrosIngresos(otrosIngresos, cantidadProyeccion) {
|
|
196
|
+
return otrosIngresos.reduce((acc, curr) => {
|
|
197
|
+
let suma = 0;
|
|
198
|
+
for (let j = 1; j <= cantidadProyeccion; j++) {
|
|
199
|
+
suma += (0, utils_1.ourParseFloat)(curr[`Gestion${j}`]);
|
|
200
|
+
}
|
|
201
|
+
return acc + suma;
|
|
202
|
+
}, 0);
|
|
203
|
+
}
|
|
204
|
+
const sumarizarCuentas = (rubroOrigen, rubroDestino, data, dataOriginal, withZero = false) => {
|
|
161
205
|
const rango = data.eerr[0].Rango;
|
|
162
206
|
for (let i = 1; i <= rango; i++) {
|
|
163
|
-
const cuentaOrigen = data.eerr.
|
|
164
|
-
if (!cuentaOrigen)
|
|
165
|
-
throw new Error(
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
if (original.MontoFamiliar == 0)
|
|
172
|
-
cuentaDestino
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
207
|
+
const cuentaOrigen = data.eerr.filter((item) => item.RubroId == rubroOrigen && item.Correlativo == i);
|
|
208
|
+
if (!cuentaOrigen || cuentaOrigen.length == 0)
|
|
209
|
+
throw new Error('No existe el rubro Calculado ${rubroOrigen}_${i} en el EERR');
|
|
210
|
+
cuentaOrigen.forEach((itemCuentaOrigen) => {
|
|
211
|
+
const key = withZero
|
|
212
|
+
? `${rubroDestino}_0_${i}`
|
|
213
|
+
: `${rubroDestino}_${i}`;
|
|
214
|
+
const original = dataOriginal.get(key);
|
|
215
|
+
if (original.MontoEmpresa == 0 || original.MontoFamiliar == 0) {
|
|
216
|
+
const cuentaDestino = data.eerrMap.get(key);
|
|
217
|
+
if (original.MontoEmpresa == 0)
|
|
218
|
+
cuentaDestino.MontoEmpresa += itemCuentaOrigen.MontoEmpresa;
|
|
219
|
+
if (original.MontoFamiliar == 0)
|
|
220
|
+
cuentaDestino.MontoFamiliar +=
|
|
221
|
+
itemCuentaOrigen.MontoFamiliar;
|
|
222
|
+
cuentaDestino.MontoEmpresa =
|
|
223
|
+
Math.round(cuentaDestino.MontoEmpresa * 100) / 100;
|
|
224
|
+
cuentaDestino.MontoFamiliar =
|
|
225
|
+
Math.round(cuentaDestino.MontoFamiliar * 100) / 100;
|
|
226
|
+
}
|
|
227
|
+
});
|
|
176
228
|
}
|
|
177
229
|
};
|
|
@@ -1,6 +1,14 @@
|
|
|
1
|
-
import { Strategy } from
|
|
1
|
+
import { Strategy } from '../../strategy.interface';
|
|
2
2
|
export default class FlujoProyectadoPecStrategy implements Strategy {
|
|
3
3
|
actividades: any[];
|
|
4
4
|
constructor();
|
|
5
5
|
execute(data: any): any;
|
|
6
|
+
private setParametrosEngorde;
|
|
7
|
+
private addIngresoAnual;
|
|
8
|
+
private addCostoAnual;
|
|
9
|
+
private getPorcentaje;
|
|
10
|
+
private addGastoAnual;
|
|
11
|
+
private addOtroIngresoFamiliarAnual;
|
|
12
|
+
private getGastosFamiliares;
|
|
13
|
+
private setGastosFamiliares;
|
|
6
14
|
}
|