Commit 2e8ee2c31a1b5fce471f8b69f78a6ab624c3d4be

Authored by Eric Fernandez
1 parent 80a34bfc41
Exists in master

espacios necesarios

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