Commit 0151454517ca1f147fab910f1835d8ef554b6800

Authored by Jose Pinto
1 parent 2cd1adeb9e
Exists in master and in 1 other branch develop

ok error, fuera timeout

Showing 1 changed file with 0 additions and 1 deletions   Show diff stats
src/js/controller.js
1 angular.module('focaModalDomicilio') 1 angular.module('focaModalDomicilio')
2 .controller('focaModalDomicilioController', 2 .controller('focaModalDomicilioController',
3 [ 3 [
4 '$timeout',
5 '$filter', 4 '$filter',
6 '$scope', 5 '$scope',
7 '$uibModalInstance', 6 '$uibModalInstance',
8 'idCliente', 7 'idCliente',
9 'esNuevo', 8 'esNuevo',
10 'focaModalDomicilioService', 9 'focaModalDomicilioService',
11 '$uibModal', 10 '$uibModal',
12 function($filter, $scope, $uibModalInstance, idCliente, esNuevo, 11 function($filter, $scope, $uibModalInstance, idCliente, esNuevo,
13 focaModalDomicilioService, $uibModal) { 12 focaModalDomicilioService, $uibModal) {
14 13
15 $scope.buscar = function() { 14 $scope.buscar = function() {
16 focaModalDomicilioService 15 focaModalDomicilioService
17 .getDomiciliosEntregaByIdCliente($scope.idCliente) 16 .getDomiciliosEntregaByIdCliente($scope.idCliente)
18 .then(function(res) { 17 .then(function(res) {
19 $scope.domicilios = res.data; 18 $scope.domicilios = res.data;
20 $scope.search(); 19 $scope.search();
21 $scope.primerBusqueda = true; 20 $scope.primerBusqueda = true;
22 } 21 }
23 ); 22 );
24 }; 23 };
25 $scope.filters = ''; 24 $scope.filters = '';
26 $scope.idCliente = idCliente; 25 $scope.idCliente = idCliente;
27 $scope.buscar(); 26 $scope.buscar();
28 $scope.ingreso = esNuevo; 27 $scope.ingreso = esNuevo;
29 $scope.primerBusqueda = false; 28 $scope.primerBusqueda = false;
30 $scope.contactos = [{}]; 29 $scope.contactos = [{}];
31 // pagination 30 // pagination
32 $scope.numPerPage = 5; 31 $scope.numPerPage = 5;
33 $scope.currentPage = 1; 32 $scope.currentPage = 1;
34 $scope.filteredDomicilios = []; 33 $scope.filteredDomicilios = [];
35 $scope.currentPageDomicilios = []; 34 $scope.currentPageDomicilios = [];
36 $scope.selectedDomicilio = -1; 35 $scope.selectedDomicilio = -1;
37 36
38 //METODOS 37 //METODOS
39 $scope.search = function(pressed) { 38 $scope.search = function(pressed) {
40 $scope.filteredDomicilios = $filter('filter')( 39 $scope.filteredDomicilios = $filter('filter')(
41 $scope.domicilios, 40 $scope.domicilios,
42 {$: $scope.filters} 41 {$: $scope.filters}
43 ); 42 );
44 43
45 if(pressed) { 44 if(pressed) {
46 if($scope.filteredDomicilios.length === 0) { 45 if($scope.filteredDomicilios.length === 0) {
47 $timeout(function() { 46 $timeout(function() {
48 angular.element('#search')[0].focus(); 47 angular.element('#search')[0].focus();
49 $scope.filters = ''; 48 $scope.filters = '';
50 }); 49 });
51 }else { 50 }else {
52 primera(); 51 primera();
53 } 52 }
54 } 53 }
55 54
56 $scope.lastPage = Math.ceil( 55 $scope.lastPage = Math.ceil(
57 $scope.filteredDomicilios.length / $scope.numPerPage 56 $scope.filteredDomicilios.length / $scope.numPerPage
58 ); 57 );
59 58
60 $scope.resetPage(); 59 $scope.resetPage();
61 }; 60 };
62 61
63 $scope.resetPage = function() { 62 $scope.resetPage = function() {
64 $scope.currentPage = 1; 63 $scope.currentPage = 1;
65 $scope.selectPage(1); 64 $scope.selectPage(1);
66 }; 65 };
67 66
68 $scope.selectPage = function(page) { 67 $scope.selectPage = function(page) {
69 var start = (page - 1) * $scope.numPerPage; 68 var start = (page - 1) * $scope.numPerPage;
70 var end = start + $scope.numPerPage; 69 var end = start + $scope.numPerPage;
71 $scope.paginas = []; 70 $scope.paginas = [];
72 $scope.paginas = calcularPages(page); 71 $scope.paginas = calcularPages(page);
73 $scope.currentPageDomicilios = $scope.filteredDomicilios.slice(start, end); 72 $scope.currentPageDomicilios = $scope.filteredDomicilios.slice(start, end);
74 $scope.currentPage = page; 73 $scope.currentPage = page;
75 }; 74 };
76 75
77 $scope.select = function(domicilio) { 76 $scope.select = function(domicilio) {
78 $uibModalInstance.close(domicilio); 77 $uibModalInstance.close(domicilio);
79 }; 78 };
80 79
81 $scope.cancel = function() { 80 $scope.cancel = function() {
82 $uibModalInstance.dismiss('cancel'); 81 $uibModalInstance.dismiss('cancel');
83 }; 82 };
84 83
85 $scope.busquedaDown = function(key) { 84 $scope.busquedaDown = function(key) {
86 if (key === 40) { 85 if (key === 40) {
87 primera(key); 86 primera(key);
88 } 87 }
89 }; 88 };
90 89
91 $scope.busquedaPress = function(key) { 90 $scope.busquedaPress = function(key) {
92 if (key === 13) { 91 if (key === 13) {
93 $scope.search(true); 92 $scope.search(true);
94 } 93 }
95 }; 94 };
96 95
97 $scope.itemDomicilio = function(key) { 96 $scope.itemDomicilio = function(key) {
98 if (key === 38) { 97 if (key === 38) {
99 anterior(key); 98 anterior(key);
100 } 99 }
101 100
102 if (key === 40) { 101 if (key === 40) {
103 siguiente(key); 102 siguiente(key);
104 } 103 }
105 104
106 if (key === 37) { 105 if (key === 37) {
107 retrocederPagina(); 106 retrocederPagina();
108 } 107 }
109 108
110 if (key === 39) { 109 if (key === 39) {
111 avanzarPagina(); 110 avanzarPagina();
112 } 111 }
113 }; 112 };
114 113
115 $scope.agregarDomicilio = function() { 114 $scope.agregarDomicilio = function() {
116 $scope.domicilio.valores = []; 115 $scope.domicilio.valores = [];
117 $scope.domicilio.idCliente = $scope.idCliente; 116 $scope.domicilio.idCliente = $scope.idCliente;
118 if($scope.domicilio.calle) { 117 if($scope.domicilio.calle) {
119 $scope.domicilio.valores.push({ 118 $scope.domicilio.valores.push({
120 ID_ADAC_1: 1, 119 ID_ADAC_1: 1,
121 dato: $scope.domicilio.calle 120 dato: $scope.domicilio.calle
122 }); 121 });
123 } 122 }
124 if($scope.domicilio.numeroCalle) { 123 if($scope.domicilio.numeroCalle) {
125 $scope.domicilio.valores.push({ 124 $scope.domicilio.valores.push({
126 ID_ADAC_1: 2, 125 ID_ADAC_1: 2,
127 dato: $scope.domicilio.numeroCalle 126 dato: $scope.domicilio.numeroCalle
128 }); 127 });
129 } 128 }
130 if($scope.domicilio.localidad) { 129 if($scope.domicilio.localidad) {
131 $scope.domicilio.valores.push({ 130 $scope.domicilio.valores.push({
132 ID_ADAC_1: 3, 131 ID_ADAC_1: 3,
133 dato: $scope.domicilio.localidad 132 dato: $scope.domicilio.localidad
134 }); 133 });
135 } 134 }
136 if($scope.domicilio.provincia) { 135 if($scope.domicilio.provincia) {
137 $scope.domicilio.valores.push({ 136 $scope.domicilio.valores.push({
138 ID_ADAC_1: 4, 137 ID_ADAC_1: 4,
139 dato: $scope.domicilio.provincia 138 dato: $scope.domicilio.provincia
140 }); 139 });
141 } 140 }
142 //domicilios de entrega corresponden al 1 141 //domicilios de entrega corresponden al 1
143 focaModalDomicilioService 142 focaModalDomicilioService
144 .obtenerUltimoPorNivelPadre(1) 143 .obtenerUltimoPorNivelPadre(1)
145 .then(function(res) { 144 .then(function(res) {
146 $scope.domicilio.nivel1 = 1;//domicilio de entrega corresponde 1 145 $scope.domicilio.nivel1 = 1;//domicilio de entrega corresponde 1
147 $scope.domicilio.nivel2 = res.data[0].ultimo + 1; 146 $scope.domicilio.nivel2 = res.data[0].ultimo + 1;
148 focaModalDomicilioService 147 focaModalDomicilioService
149 .guardarDomicilio($scope.domicilio) 148 .guardarDomicilio($scope.domicilio)
150 .then(function() { 149 .then(function() {
151 $scope.buscar(); 150 $scope.buscar();
152 $scope.ingreso = false; 151 $scope.ingreso = false;
153 $scope.domicilio = {}; 152 $scope.domicilio = {};
154 }); 153 });
155 }); 154 });
156 }; 155 };
157 156
158 $scope.verPuntosDescarga = function(key) { 157 $scope.verPuntosDescarga = function(key) {
159 var modalInstance = $uibModal.open( 158 var modalInstance = $uibModal.open(
160 { 159 {
161 ariaLabelledBy: 'Busqueda de Puntos de descarga', 160 ariaLabelledBy: 'Busqueda de Puntos de descarga',
162 templateUrl: 'modal-punto-descarga.html', 161 templateUrl: 'modal-punto-descarga.html',
163 controller: 'focaModalPuntoDescargaController', 162 controller: 'focaModalPuntoDescargaController',
164 size: 'md', 163 size: 'md',
165 resolve: { 164 resolve: {
166 filters: { 165 filters: {
167 idDomicilio: $scope.domicilios[key].id, 166 idDomicilio: $scope.domicilios[key].id,
168 idCliente: idCliente 167 idCliente: idCliente
169 } 168 }
170 } 169 }
171 } 170 }
172 ); 171 );
173 modalInstance.result.then(function(puntoDescarga) { 172 modalInstance.result.then(function(puntoDescarga) {
174 console.log(puntoDescarga); 173 console.log(puntoDescarga);
175 }, function() { 174 }, function() {
176 //TODO: función llamada cuando cancela el modal 175 //TODO: función llamada cuando cancela el modal
177 }); 176 });
178 }; 177 };
179 178
180 function calcularPages(paginaActual) { 179 function calcularPages(paginaActual) {
181 var paginas = []; 180 var paginas = [];
182 paginas.push(paginaActual); 181 paginas.push(paginaActual);
183 182
184 if (paginaActual - 1 > 1) { 183 if (paginaActual - 1 > 1) {
185 184
186 paginas.unshift(paginaActual - 1); 185 paginas.unshift(paginaActual - 1);
187 if (paginaActual - 2 > 1) { 186 if (paginaActual - 2 > 1) {
188 paginas.unshift(paginaActual - 2); 187 paginas.unshift(paginaActual - 2);
189 } 188 }
190 } 189 }
191 190
192 if (paginaActual + 1 < $scope.lastPage) { 191 if (paginaActual + 1 < $scope.lastPage) {
193 paginas.push(paginaActual + 1); 192 paginas.push(paginaActual + 1);
194 if (paginaActual + 2 < $scope.lastPage) { 193 if (paginaActual + 2 < $scope.lastPage) {
195 paginas.push(paginaActual + 2); 194 paginas.push(paginaActual + 2);
196 } 195 }
197 } 196 }
198 197
199 if (paginaActual !== 1) { 198 if (paginaActual !== 1) {
200 paginas.unshift(1); 199 paginas.unshift(1);
201 } 200 }
202 201
203 if (paginaActual !== $scope.lastPage) { 202 if (paginaActual !== $scope.lastPage) {
204 paginas.push($scope.lastPage); 203 paginas.push($scope.lastPage);
205 } 204 }
206 205
207 return paginas; 206 return paginas;
208 } 207 }
209 208
210 function primera() { 209 function primera() {
211 $scope.selectedDomicilio = 0; 210 $scope.selectedDomicilio = 0;
212 } 211 }
213 212
214 function anterior() { 213 function anterior() {
215 if ($scope.selectedDomicilio === 0 && $scope.currentPage > 1) { 214 if ($scope.selectedDomicilio === 0 && $scope.currentPage > 1) {
216 retrocederPagina(); 215 retrocederPagina();
217 } else { 216 } else {
218 $scope.selectedDomicilio--; 217 $scope.selectedDomicilio--;
219 } 218 }
220 } 219 }
221 220
222 function siguiente() { 221 function siguiente() {
223 if ($scope.selectedDomicilio < $scope.currentPageDomicilios.length ) { 222 if ($scope.selectedDomicilio < $scope.currentPageDomicilios.length ) {
224 $scope.selectedDomicilio++; 223 $scope.selectedDomicilio++;
225 } else { 224 } else {
226 avanzarPagina(); 225 avanzarPagina();
227 } 226 }
228 } 227 }
229 228
230 function retrocederPagina() { 229 function retrocederPagina() {
231 if ($scope.currentPage > 1) { 230 if ($scope.currentPage > 1) {
232 $scope.selectPage($scope.currentPage - 1); 231 $scope.selectPage($scope.currentPage - 1);
233 $scope.selectedDomicilio = $scope.numPerPage - 1; 232 $scope.selectedDomicilio = $scope.numPerPage - 1;
234 } 233 }
235 } 234 }
236 235
237 function avanzarPagina() { 236 function avanzarPagina() {
238 if ($scope.currentPage < $scope.lastPage) { 237 if ($scope.currentPage < $scope.lastPage) {
239 $scope.selectPage($scope.currentPage + 1); 238 $scope.selectPage($scope.currentPage + 1);
240 $scope.selectedDomicilio = 0; 239 $scope.selectedDomicilio = 0;
241 } 240 }
242 } 241 }
243 } 242 }
244 ] 243 ]
245 ); 244 );
246 245