Commit 4880965f3ed0b3204e75ee06502afe7d3b27c918

Authored by Marcelo Puebla
1 parent 3808c08118
Exists in master

Correccion en comparador.

Showing 1 changed file with 1 additions and 1 deletions   Show diff stats
src/js/controller.js
1 angular.module('focaModalResumenCuenta') 1 angular.module('focaModalResumenCuenta')
2 .controller('focaModalResumenCuentaController', [ 2 .controller('focaModalResumenCuentaController', [
3 '$timeout', 3 '$timeout',
4 '$filter', 4 '$filter',
5 '$scope', 5 '$scope',
6 '$uibModalInstance', 6 '$uibModalInstance',
7 'focaModalResumenCuentaService', 7 'focaModalResumenCuentaService',
8 'cliente', 8 'cliente',
9 '$uibModal', 9 '$uibModal',
10 'focaModalService', 10 'focaModalService',
11 function ($timeout, $filter, $scope, $uibModalInstance, 11 function ($timeout, $filter, $scope, $uibModalInstance,
12 focaModalResumenCuentaService, cliente, $uibModal, focaModalService) { 12 focaModalResumenCuentaService, cliente, $uibModal, focaModalService) {
13 var fecha = new Date(); 13 var fecha = new Date();
14 $scope.generado = false; 14 $scope.generado = false;
15 $scope.fechaDesde = new Date(fecha.setMonth(fecha.getMonth() - 1)); 15 $scope.fechaDesde = new Date(fecha.setMonth(fecha.getMonth() - 1));
16 $scope.currentPageFacturas = []; 16 $scope.currentPageFacturas = [];
17 $scope.currentPage = 1; 17 $scope.currentPage = 1;
18 $scope.numPerPage = 10; 18 $scope.numPerPage = 10;
19 $scope.selectedFactura = -1; 19 $scope.selectedFactura = -1;
20 20
21 $scope.generar = function () { 21 $scope.generar = function () {
22 focaModalResumenCuentaService 22 focaModalResumenCuentaService
23 .getResumenCuenta(cliente.COD, $scope.fechaDesde) 23 .getResumenCuenta(cliente.COD, $scope.fechaDesde)
24 .then(function (res) { 24 .then(function (res) {
25 res.data.facturas = res.data.facturas.filter(function(factura){ 25 res.data.facturas = res.data.facturas.filter(function(factura){
26 return factura.TCO != "RC" && factura.TCO != "RE" 26 return factura.TCO !== "RC" && factura.TCO !== "RE"
27 }) 27 })
28 res.data.facturas = calcularSaldos(res.data.facturas); 28 res.data.facturas = calcularSaldos(res.data.facturas);
29 $scope.generado = true; 29 $scope.generado = true;
30 $scope.results = res.data; 30 $scope.results = res.data;
31 $scope.results.fechaDesde = $scope.fechaDesde; 31 $scope.results.fechaDesde = $scope.fechaDesde;
32 $scope.search(); 32 $scope.search();
33 }); 33 });
34 }; 34 };
35 35
36 $scope.cancel = function () { 36 $scope.cancel = function () {
37 if ($scope.generado) { 37 if ($scope.generado) {
38 $scope.generado = false; 38 $scope.generado = false;
39 } else { 39 } else {
40 $uibModalInstance.dismiss('cancel'); 40 $uibModalInstance.dismiss('cancel');
41 } 41 }
42 }; 42 };
43 43
44 $scope.enviarMail = function (factura) { 44 $scope.enviarMail = function (factura) {
45 focaModalService.mail( 45 focaModalService.mail(
46 { 46 {
47 titulo: 'Enviar comprobante', 47 titulo: 'Enviar comprobante',
48 descarga: { 48 descarga: {
49 nombre: factura.numeroFactura + '.pdf', 49 nombre: factura.numeroFactura + '.pdf',
50 url: '/mail/comprobante/descargar', 50 url: '/mail/comprobante/descargar',
51 }, 51 },
52 envio: { 52 envio: {
53 mailCliente: cliente.MAIL, 53 mailCliente: cliente.MAIL,
54 url: '/mail/comprobante' 54 url: '/mail/comprobante'
55 }, 55 },
56 options: { 56 options: {
57 factura: factura 57 factura: factura
58 } 58 }
59 } 59 }
60 ); 60 );
61 }; 61 };
62 62
63 $scope.enviarResumen = function () { 63 $scope.enviarResumen = function () {
64 focaModalService.mail( 64 focaModalService.mail(
65 { 65 {
66 titulo: 'Enviar resumen de cuenta', 66 titulo: 'Enviar resumen de cuenta',
67 descarga: { 67 descarga: {
68 nombre: 'resumen-de-cuenta.pdf', 68 nombre: 'resumen-de-cuenta.pdf',
69 url: '/mail/resumen-cuenta/descargar', 69 url: '/mail/resumen-cuenta/descargar',
70 }, 70 },
71 envio: { 71 envio: {
72 mailCliente: cliente.MAIL, 72 mailCliente: cliente.MAIL,
73 url: '/mail/resumen-cuenta', 73 url: '/mail/resumen-cuenta',
74 }, 74 },
75 options: { 75 options: {
76 resumen: $scope.results 76 resumen: $scope.results
77 } 77 }
78 } 78 }
79 ); 79 );
80 }; 80 };
81 81
82 $scope.verFactura = function (factura) { 82 $scope.verFactura = function (factura) {
83 var modalInstance = $uibModal.open( 83 var modalInstance = $uibModal.open(
84 { 84 {
85 ariaLabelledBy: 'Detalle de factura', 85 ariaLabelledBy: 'Detalle de factura',
86 templateUrl: 'foca-modal-factura-detalle.html', 86 templateUrl: 'foca-modal-factura-detalle.html',
87 controller: 'focaModalFacturaDetalleController', 87 controller: 'focaModalFacturaDetalleController',
88 size: 'md', 88 size: 'md',
89 resolve: { 89 resolve: {
90 factura: factura 90 factura: factura
91 } 91 }
92 } 92 }
93 ); 93 );
94 modalInstance.result.then(); 94 modalInstance.result.then();
95 }; 95 };
96 96
97 97
98 $scope.search = function () { 98 $scope.search = function () {
99 if ($scope.results.facturas.length) { 99 if ($scope.results.facturas.length) {
100 $scope.lastPage = Math.ceil( 100 $scope.lastPage = Math.ceil(
101 $scope.results.facturas.length / $scope.numPerPage 101 $scope.results.facturas.length / $scope.numPerPage
102 ); 102 );
103 $scope.resetPage(); 103 $scope.resetPage();
104 } 104 }
105 }; 105 };
106 106
107 $scope.resetPage = function () { 107 $scope.resetPage = function () {
108 $scope.currentPage = 1; 108 $scope.currentPage = 1;
109 $scope.selectPage(1); 109 $scope.selectPage(1);
110 }; 110 };
111 111
112 $scope.selectPage = function (page) { 112 $scope.selectPage = function (page) {
113 var start = (page - 1) * $scope.numPerPage; 113 var start = (page - 1) * $scope.numPerPage;
114 var end = start + $scope.numPerPage; 114 var end = start + $scope.numPerPage;
115 $scope.paginas = []; 115 $scope.paginas = [];
116 $scope.paginas = calcularPages(page); 116 $scope.paginas = calcularPages(page);
117 $scope.currentPageFacturas = $scope.results.facturas.slice(start, end); 117 $scope.currentPageFacturas = $scope.results.facturas.slice(start, end);
118 $scope.currentPage = page; 118 $scope.currentPage = page;
119 }; 119 };
120 120
121 function calcularPages(paginaActual) { 121 function calcularPages(paginaActual) {
122 var paginas = []; 122 var paginas = [];
123 paginas.push(paginaActual); 123 paginas.push(paginaActual);
124 124
125 if (paginaActual - 1 > 1) { 125 if (paginaActual - 1 > 1) {
126 126
127 paginas.unshift(paginaActual - 1); 127 paginas.unshift(paginaActual - 1);
128 if (paginaActual - 2 > 1) { 128 if (paginaActual - 2 > 1) {
129 paginas.unshift(paginaActual - 2); 129 paginas.unshift(paginaActual - 2);
130 } 130 }
131 } 131 }
132 132
133 if (paginaActual + 1 < $scope.lastPage) { 133 if (paginaActual + 1 < $scope.lastPage) {
134 paginas.push(paginaActual + 1); 134 paginas.push(paginaActual + 1);
135 if (paginaActual + 2 < $scope.lastPage) { 135 if (paginaActual + 2 < $scope.lastPage) {
136 paginas.push(paginaActual + 2); 136 paginas.push(paginaActual + 2);
137 } 137 }
138 } 138 }
139 139
140 if (paginaActual !== 1) { 140 if (paginaActual !== 1) {
141 paginas.unshift(1); 141 paginas.unshift(1);
142 } 142 }
143 143
144 if (paginaActual !== $scope.lastPage) { 144 if (paginaActual !== $scope.lastPage) {
145 paginas.push($scope.lastPage); 145 paginas.push($scope.lastPage);
146 } 146 }
147 147
148 return paginas; 148 return paginas;
149 } 149 }
150 150
151 function calcularSaldos(facturas) { 151 function calcularSaldos(facturas) {
152 var saldo = 0; 152 var saldo = 0;
153 153
154 facturas.forEach(function (factura) { 154 facturas.forEach(function (factura) {
155 if (factura.TCO === 'CI' || 155 if (factura.TCO === 'CI' ||
156 factura.TCO === 'FT' || 156 factura.TCO === 'FT' ||
157 factura.TCO === 'ND') { 157 factura.TCO === 'ND') {
158 factura.IPA = factura.IPA * -1; 158 factura.IPA = factura.IPA * -1;
159 } else { 159 } else {
160 factura.IPA = factura.IPA; 160 factura.IPA = factura.IPA;
161 } 161 }
162 saldo += factura.IPA; 162 saldo += factura.IPA;
163 factura.saldo = saldo; 163 factura.saldo = saldo;
164 factura.saldo_show = Math.abs(saldo); 164 factura.saldo_show = Math.abs(saldo);
165 factura.IPA_SHOW = Math.abs(factura.IPA); 165 factura.IPA_SHOW = Math.abs(factura.IPA);
166 }); 166 });
167 167
168 return facturas; 168 return facturas;
169 } 169 }
170 }] 170 }]
171 ); 171 );
172 172