Commit 105ca960f6da63493a5e4538758400b3d9ca6efc

Authored by Marcelo Puebla
1 parent 9faff659aa
Exists in develop

Fix

Refactor de codigo, cambio para elegir localidad y provincia
src/js/controller.js
1 1 angular.module('focaModalDomicilio')
2   - .controller('focaModalDomicilioController',
3   - [
4   - '$timeout',
5   - '$filter',
6   - '$scope',
7   - '$uibModalInstance',
8   - 'focaModalDomicilioService',
9   - '$uibModal',
10   - 'idCliente',
11   - 'esNuevo',
12   - 'focaModalService',
13   - function($timeout, $filter, $scope, $uibModalInstance, focaModalDomicilioService,
14   - $uibModal, idCliente, esNuevo, focaModalService) {
15   -
16   - $scope.buscar = function() {
17   - focaModalDomicilioService
18   - .getDomiciliosEntregaByIdCliente($scope.idCliente)
19   - .then(function(res) {
20   - $scope.domicilios = res.data;
21   - $scope.search();
22   - $scope.primerBusqueda = true;
23   - }
24   - );
25   - };
  2 + .controller('focaModalDomicilioController',
  3 + ['$timeout', '$filter', '$scope', '$uibModalInstance', 'focaModalDomicilioService',
  4 + '$uibModal', 'idCliente', 'esNuevo', 'focaModalService', 'IDomicilio',
  5 + function ($timeout, $filter, $scope, $uibModalInstance, focaModalDomicilioService,
  6 + $uibModal, idCliente, esNuevo, focaModalService, IDomicilio) {
  7 +
  8 + $scope.buscar = function () {
  9 + focaModalDomicilioService
  10 + .getDomiciliosEntregaByIdCliente($scope.idCliente)
  11 + .then(function (res) {
  12 + $scope.domicilios = res.data;
  13 + $scope.search();
  14 + $scope.primerBusqueda = true;
  15 + });
  16 + };
  17 + $scope.filters = '';
  18 + $scope.idCliente = idCliente;
  19 + $scope.buscar();
  20 + $scope.ingreso = esNuevo;
  21 + $scope.primerBusqueda = false;
  22 + $scope.contactos = [{}];
  23 + // pagination
  24 + $scope.numPerPage = 5;
  25 + $scope.currentPage = 1;
  26 + $scope.filteredDomicilios = [];
  27 + $scope.currentPageDomicilios = [];
  28 + $scope.selectedDomicilio = -1;
  29 + $scope.focused = 1;
  30 + $scope.domicilio = IDomicilio;
  31 +
  32 + //METODOS
  33 + $scope.search = function (pressed) {
  34 + $scope.filteredDomicilios = $filter('filter')(
  35 + $scope.domicilios,
  36 + { $: $scope.filters }
  37 + );
  38 +
  39 + if (pressed) {
  40 + if ($scope.filteredDomicilios.length === 0) {
  41 + $timeout(function () {
  42 + angular.element('#search')[0].focus();
26 43 $scope.filters = '';
27   - $scope.idCliente = idCliente;
28   - $scope.buscar();
29   - $scope.ingreso = esNuevo;
30   - $scope.primerBusqueda = false;
31   - $scope.contactos = [{}];
32   - // pagination
33   - $scope.numPerPage = 5;
34   - $scope.currentPage = 1;
35   - $scope.filteredDomicilios = [];
36   - $scope.currentPageDomicilios = [];
37   - $scope.selectedDomicilio = -1;
38   - $scope.focused = 1;
39   - $scope.domicilio = {};
40   -
41   - //METODOS
42   - $scope.search = function(pressed) {
43   - $scope.filteredDomicilios = $filter('filter')(
44   - $scope.domicilios,
45   - {$: $scope.filters}
46   - );
47   -
48   - if (pressed) {
49   - if ($scope.filteredDomicilios.length === 0) {
50   - $timeout(function() {
51   - angular.element('#search')[0].focus();
52   - $scope.filters = '';
53   - });
54   - } else {
55   - primera();
56   - }
57   - }
58   -
59   - $scope.lastPage = Math.ceil(
60   - $scope.filteredDomicilios.length / $scope.numPerPage
61   - );
62   -
63   - $scope.resetPage();
64   - };
65   -
66   - $scope.resetPage = function() {
67   - $scope.currentPage = 1;
68   - $scope.selectPage(1);
69   - };
70   -
71   - $scope.selectPage = function(page) {
72   - var start = (page - 1) * $scope.numPerPage;
73   - var end = start + $scope.numPerPage;
74   - $scope.paginas = [];
75   - $scope.paginas = calcularPages(page);
76   - $scope.currentPageDomicilios = $scope.filteredDomicilios.slice(start, end);
77   - $scope.currentPage = page;
78   - };
79   -
80   - $scope.select = function(domicilio) {
81   - $uibModalInstance.close(domicilio);
82   - };
83   -
84   - $scope.cancel = function() {
85   - $uibModalInstance.dismiss('cancel');
86   - };
87   -
88   - $scope.busquedaDown = function(key) {
89   - if (key === 40) {
90   - primera(key);
91   - }
92   - };
93   -
94   - $scope.busquedaPress = function(key) {
95   - if (key === 13) {
96   - $scope.search(true);
97   - }
98   - };
99   -
100   - $scope.itemDomicilio = function(key) {
101   - if (key === 38) {
102   - anterior(key);
103   - }
104   -
105   - if (key === 40) {
106   - siguiente(key);
107   - }
108   -
109   - if (key === 37) {
110   - retrocederPagina();
111   - }
112   -
113   - if (key === 39) {
114   - avanzarPagina();
115   - }
116   - };
117   -
118   - $scope.agregarDomicilio = function() {
119   -
120   - $scope.domicilio.valores = [];
121   - $scope.domicilio.idCliente = $scope.idCliente;
122   - if ($scope.domicilio.calle) {
123   - $scope.domicilio.valores.push({
124   - ID_ADAC_1: 1,
125   - dato: $scope.domicilio.calle
126   - });
127   - }
128   - if ($scope.domicilio.numeroCalle) {
129   - $scope.domicilio.valores.push({
130   - ID_ADAC_1: 2,
131   - dato: $scope.domicilio.numeroCalle
132   - });
133   - }
134   - if ($scope.domicilio.localidad) {
135   - $scope.domicilio.valores.push({
136   - ID_ADAC_1: 3,
137   - dato: $scope.domicilio.localidad
138   - });
139   - }
140   - if ($scope.domicilio.provincia) {
141   - $scope.domicilio.valores.push({
142   - ID_ADAC_1: 4,
143   - dato: $scope.domicilio.provincia
144   - });
145   - }
146   - if ($scope.domicilio.latitud) {
147   - $scope.domicilio.valores.push({
148   - ID_ADAC_1: 23,
149   - dato: $scope.domicilio.latitud.toString()
150   - });
151   - }
152   - if ($scope.domicilio.longitud) {
153   - $scope.domicilio.valores.push({
154   - ID_ADAC_1: 24,
155   - dato: $scope.domicilio.longitud.toString()
156   - });
157   - }
158   -
159   - if (!$scope.domicilio.titulo) {
160   - focaModalService.alert('Ingrese titulo');
161   - return;
162   - } else if (!$scope.domicilio.calle) {
163   - focaModalService.alert('Ingrese calle');
164   - return;
165   - } else if (!$scope.domicilio.numeroCalle) {
166   - focaModalService.alert('Ingrese numero de calle');
167   - return;
168   - } else if (!$scope.domicilio.localidad) {
169   - focaModalService.alert('Ingrese localidad');
170   - return;
171   - } else if (!$scope.domicilio.provincia) {
172   - focaModalService.alert('Ingrese provincia');
173   - return;
174   - }
175   -
176   - //domicilios de entrega corresponden al 1
177   - focaModalDomicilioService
178   - .obtenerUltimoPorNivelPadre(1)
179   - .then(function(res) {
180   - $scope.domicilio.nivel1 = 1;//domicilio de entrega corresponde 1
181   - $scope.domicilio.nivel2 = res.data[0].ultimo + 1;
182   - focaModalDomicilioService
183   - .guardarDomicilio($scope.domicilio)
184   - .then(function() {
185   - $scope.buscar();
186   - $scope.ingreso = false;
187   - $scope.domicilio = {};
188   - })
189   - .catch(function() {
190   - focaModalService.alert('Hubo un error al crear el domicilio');
191   - $scope.ingreso = false;
192   - });
193   - });
194   - };
195   -
196   - $scope.verPuntosDescarga = function(key) {
197   -
198   - $scope.currentPageDomicilios[key].verPuntos = true;
199   - $scope.select($scope.currentPageDomicilios[key]);
200   - };
201   -
202   - $scope.localizarDomicilio = function(localizar) {
203   - var direccion = null;
204   - if (localizar) {
205   - direccion = {
206   - calle: $scope.domicilio.calle,
207   - numero: $scope.domicilio.numeroCalle,
208   - localidad: $scope.domicilio.localidad,
209   - provincia: $scope.domicilio.provincia
210   - };
211   - }
212   - var modalInstance = $uibModal.open(
213   - {
214   - ariaLabelledBy: 'Buscar domicilio',
215   - templateUrl: 'modal-localizar.html',
216   - controller: 'focaModalLocalizarController',
217   - size: 'lg',
218   - resolve: {
219   - parametros: {
220   - direccion: direccion,
221   - latitud: $scope.domicilio.latitud,
222   - longitud: $scope.domicilio.longitud
223   - }
224   - }
225   - }
226   - );
227   - modalInstance.result.then(function(res) {
228   - $scope.domicilio.latitud = res.latitud;
229   - $scope.domicilio.longitud = res.longitud;
230   - }, function() {
231   - //TODO: funciรณn llamada cuando cancela el modal
232   - });
233   - };
234   -
235   - $scope.next = function(key) {
236   - if (key === 13) $scope.focused++;
237   - };
238   -
239   - function calcularPages(paginaActual) {
240   - var paginas = [];
241   - paginas.push(paginaActual);
242   -
243   - if (paginaActual - 1 > 1) {
244   -
245   - paginas.unshift(paginaActual - 1);
246   - if (paginaActual - 2 > 1) {
247   - paginas.unshift(paginaActual - 2);
248   - }
249   - }
250   -
251   - if (paginaActual + 1 < $scope.lastPage) {
252   - paginas.push(paginaActual + 1);
253   - if (paginaActual + 2 < $scope.lastPage) {
254   - paginas.push(paginaActual + 2);
255   - }
256   - }
257   -
258   - if (paginaActual !== 1) {
259   - paginas.unshift(1);
260   - }
261   -
262   - if (paginaActual !== $scope.lastPage) {
263   - paginas.push($scope.lastPage);
264   - }
265   -
266   - return paginas;
267   - }
268   -
269   - function primera() {
270   - $scope.selectedDomicilio = 0;
271   - }
272   -
273   - function anterior() {
274   - if ($scope.selectedDomicilio === 0 && $scope.currentPage > 1) {
275   - retrocederPagina();
276   - } else {
277   - $scope.selectedDomicilio--;
278   - }
279   - }
280   -
281   - function siguiente() {
282   - if ($scope.selectedDomicilio < $scope.currentPageDomicilios.length ) {
283   - $scope.selectedDomicilio++;
284   - } else {
285   - avanzarPagina();
286   - }
287   - }
288   -
289   - function retrocederPagina() {
290   - if ($scope.currentPage > 1) {
291   - $scope.selectPage($scope.currentPage - 1);
292   - $scope.selectedDomicilio = $scope.numPerPage - 1;
293   - }
  44 + });
  45 + } else {
  46 + primera();
  47 + }
  48 + }
  49 +
  50 + $scope.lastPage = Math.ceil(
  51 + $scope.filteredDomicilios.length / $scope.numPerPage
  52 + );
  53 +
  54 + $scope.resetPage();
  55 + };
  56 +
  57 + $scope.resetPage = function () {
  58 + $scope.currentPage = 1;
  59 + $scope.selectPage(1);
  60 + };
  61 +
  62 + $scope.selectPage = function (page) {
  63 + var start = (page - 1) * $scope.numPerPage;
  64 + var end = start + $scope.numPerPage;
  65 + $scope.paginas = [];
  66 + $scope.paginas = calcularPages(page);
  67 + $scope.currentPageDomicilios = $scope.filteredDomicilios.slice(start, end);
  68 + $scope.currentPage = page;
  69 + };
  70 +
  71 + $scope.select = function (domicilio) {
  72 + $uibModalInstance.close(domicilio);
  73 + };
  74 +
  75 + $scope.cancel = function () {
  76 + $uibModalInstance.dismiss('cancel');
  77 + };
  78 +
  79 + $scope.busquedaDown = function (key) {
  80 + if (!key === 40) return;
  81 + primera(key);
  82 + };
  83 +
  84 + $scope.busquedaPress = function (key) {
  85 + if (!key === 13) return;
  86 + $scope.search(true);
  87 + };
  88 +
  89 + $scope.seleccionarLocalidad = function (key) {
  90 + if (!key === 13) return;
  91 + if (!$scope.domicilio.provincia.ID) {
  92 + focaModalService.alert('Seleccione una provincia');
  93 + return;
  94 + }
  95 +
  96 + var parametrosModal = {
  97 + searchText: $scope.domicilio.localidad.NOMBRE,
  98 + query: '/localidad/' + parseInt($scope.domicilio.provincia.ID),
  99 + columnas: focaModalDomicilioService.getLocalidadTableFormat(),
  100 + titulo: 'Bรบsqueda de localidades',
  101 + size: 'md'
  102 + };
  103 +
  104 + focaModalService.modal(parametrosModal)
  105 + .then(function (localidad) {
  106 + $scope.domicilio.localidad = localidad;
  107 + $timeout(function () {
  108 + $scope.focused = 5;
  109 + });
  110 + });
  111 + };
  112 +
  113 + $scope.seleccionarProvincia = function (key) {
  114 + if (!key === 13) return;
  115 + var parametrosModal = {
  116 + searchText: $scope.domicilio.provincia.NOMBRE,
  117 + query: '/provincia',
  118 + columnas: focaModalDomicilioService.getProvinciaTableFormat(),
  119 + titulo: 'Bรบsqueda de provincias',
  120 + size: 'md'
  121 + };
  122 + focaModalService.modal(parametrosModal)
  123 + .then(function (provincia) {
  124 + $scope.domicilio.provincia = provincia;
  125 + $timeout(function () {
  126 + $scope.focused = 4;
  127 + });
  128 + });
  129 + };
  130 +
  131 + $scope.itemDomicilio = function (key) {
  132 + switch (key) {
  133 + case 38:
  134 + anterior(key);
  135 + break;
  136 + case 40:
  137 + siguiente(key);
  138 + break;
  139 + case 37:
  140 + retrocederPagina();
  141 + break;
  142 + case 39:
  143 + avanzarPagina();
  144 + break;
  145 + }
  146 + };
  147 +
  148 + $scope.agregarDomicilio = function () {
  149 + $scope.domicilio.valores = [];
  150 + $scope.domicilio.idCliente = $scope.idCliente;
  151 + if ($scope.domicilio.calle) {
  152 + $scope.domicilio.valores.push({
  153 + ID_ADAC_1: 1,
  154 + dato: $scope.domicilio.calle
  155 + });
  156 + }
  157 + if ($scope.domicilio.numeroCalle) {
  158 + $scope.domicilio.valores.push({
  159 + ID_ADAC_1: 2,
  160 + dato: $scope.domicilio.numeroCalle
  161 + });
  162 + }
  163 + if ($scope.domicilio.localidad.ID) {
  164 + $scope.domicilio.valores.push({
  165 + ID_ADAC_1: 3,
  166 + dato: $scope.domicilio.localidad.NOMBRE
  167 + });
  168 + }
  169 + if ($scope.domicilio.provincia.ID) {
  170 + $scope.domicilio.valores.push({
  171 + ID_ADAC_1: 4,
  172 + dato: $scope.domicilio.provincia.NOMBRE
  173 + });
  174 + }
  175 + if ($scope.domicilio.latitud) {
  176 + $scope.domicilio.valores.push({
  177 + ID_ADAC_1: 23,
  178 + dato: $scope.domicilio.latitud.toString()
  179 + });
  180 + }
  181 + if ($scope.domicilio.longitud) {
  182 + $scope.domicilio.valores.push({
  183 + ID_ADAC_1: 24,
  184 + dato: $scope.domicilio.longitud.toString()
  185 + });
  186 + }
  187 +
  188 + if (!$scope.domicilio.titulo) {
  189 + focaModalService.alert('Ingrese titulo');
  190 + return;
  191 + } else if (!$scope.domicilio.calle) {
  192 + focaModalService.alert('Ingrese calle');
  193 + return;
  194 + } else if (!$scope.domicilio.numeroCalle) {
  195 + focaModalService.alert('Ingrese numero de calle');
  196 + return;
  197 + } else if (!$scope.domicilio.localidad.ID) {
  198 + focaModalService.alert('Ingrese localidad');
  199 + return;
  200 + } else if (!$scope.domicilio.provincia.ID) {
  201 + focaModalService.alert('Ingrese provincia');
  202 + return;
  203 + }
  204 +
  205 + //domicilios de entrega corresponden al 1
  206 + focaModalDomicilioService
  207 + .obtenerUltimoPorNivelPadre(1)
  208 + .then(function (res) {
  209 + $scope.domicilio.nivel1 = 1; //domicilio de entrega corresponde 1
  210 + $scope.domicilio.nivel2 = res.data[0].ultimo + 1;
  211 + focaModalDomicilioService
  212 + .guardarDomicilio($scope.domicilio)
  213 + .then(function () {
  214 + $scope.buscar();
  215 + $scope.ingreso = false;
  216 + $scope.domicilio = {};
  217 + })
  218 + .catch(function () {
  219 + focaModalService.alert('Hubo un error al crear el domicilio');
  220 + $scope.ingreso = false;
  221 + });
  222 + });
  223 + };
  224 +
  225 + $scope.verPuntosDescarga = function (key) {
  226 + $scope.currentPageDomicilios[key].verPuntos = true;
  227 + $scope.select($scope.currentPageDomicilios[key]);
  228 + };
  229 +
  230 + $scope.localizarDomicilio = function (localizar) {
  231 + var direccion = null;
  232 + if (localizar) {
  233 + direccion = {
  234 + calle: $scope.domicilio.calle,
  235 + numero: $scope.domicilio.numeroCalle,
  236 + localidad: $scope.domicilio.localidad.NOMBRE,
  237 + provincia: $scope.domicilio.provincia.NOMBRE
  238 + };
  239 + }
  240 + var modalInstance = $uibModal.open(
  241 + {
  242 + ariaLabelledBy: 'Buscar domicilio',
  243 + templateUrl: 'modal-localizar.html',
  244 + controller: 'focaModalLocalizarController',
  245 + size: 'lg',
  246 + resolve: {
  247 + parametros: {
  248 + direccion: direccion,
  249 + latitud: $scope.domicilio.latitud,
  250 + longitud: $scope.domicilio.longitud
294 251 }
  252 + }
  253 + }
  254 + );
  255 + modalInstance.result.then(function (res) {
  256 + $scope.domicilio.latitud = res.latitud;
  257 + $scope.domicilio.longitud = res.longitud;
  258 + }, function () {
  259 + //TODO: funciรณn llamada cuando cancela el modal
  260 + });
  261 + };
  262 +
  263 + $scope.next = function (key) {
  264 + if (key === 13) $scope.focused++;
  265 + };
  266 +
  267 + function calcularPages(paginaActual) {
  268 + var paginas = [];
  269 + paginas.push(paginaActual);
  270 +
  271 + if (paginaActual - 1 > 1) {
  272 +
  273 + paginas.unshift(paginaActual - 1);
  274 + if (paginaActual - 2 > 1) {
  275 + paginas.unshift(paginaActual - 2);
  276 + }
  277 + }
295 278  
296   - function avanzarPagina() {
297   - if ($scope.currentPage < $scope.lastPage) {
298   - $scope.selectPage($scope.currentPage + 1);
299   - $scope.selectedDomicilio = 0;
300   - }
301   - }
  279 + if (paginaActual + 1 < $scope.lastPage) {
  280 + paginas.push(paginaActual + 1);
  281 + if (paginaActual + 2 < $scope.lastPage) {
  282 + paginas.push(paginaActual + 2);
302 283 }
303   - ]
304   - );
  284 + }
  285 +
  286 + if (paginaActual !== 1) {
  287 + paginas.unshift(1);
  288 + }
  289 +
  290 + if (paginaActual !== $scope.lastPage) {
  291 + paginas.push($scope.lastPage);
  292 + }
  293 +
  294 + return paginas;
  295 + }
  296 +
  297 + function primera() {
  298 + $scope.selectedDomicilio = 0;
  299 + }
  300 +
  301 + function anterior() {
  302 + if ($scope.selectedDomicilio === 0 && $scope.currentPage > 1) {
  303 + retrocederPagina();
  304 + } else {
  305 + $scope.selectedDomicilio--;
  306 + }
  307 + }
  308 +
  309 + function siguiente() {
  310 + if ($scope.selectedDomicilio < $scope.currentPageDomicilios.length) {
  311 + $scope.selectedDomicilio++;
  312 + } else {
  313 + avanzarPagina();
  314 + }
  315 + }
  316 +
  317 + function retrocederPagina() {
  318 + if ($scope.currentPage > 1) {
  319 + $scope.selectPage($scope.currentPage - 1);
  320 + $scope.selectedDomicilio = $scope.numPerPage - 1;
  321 + }
  322 + }
  323 +
  324 + function avanzarPagina() {
  325 + if ($scope.currentPage < $scope.lastPage) {
  326 + $scope.selectPage($scope.currentPage + 1);
  327 + $scope.selectedDomicilio = 0;
  328 + }
  329 + }
  330 + }
  331 + ]
  332 + );
src/js/idomicilio.js
... ... @@ -0,0 +1,18 @@
  1 +angular.module('focaModalDomicilio')
  2 + .service('IDomicilio', [
  3 + function () {
  4 + return {
  5 + provincia: {
  6 + ID: null,
  7 + NOMBRE: '',
  8 + COD_RESOL_60: null,
  9 + COD_RG1510: null,
  10 + },
  11 + localidad: {
  12 + ID: null,
  13 + PCI: null,
  14 + NOMBRE: ''
  15 + }
  16 + }
  17 + }
  18 + ]);
1 1 angular.module('focaModalDomicilio')
2   - .service('focaModalDomicilioService', [
3   - '$http',
4   - 'API_ENDPOINT',
5   - function($http, API_ENDPOINT) {
6   - return {
7   - getDomiciliosEntregaByIdCliente: function(id) {
8   - return $http.get(API_ENDPOINT.URL +
9   - '/domicilio/entrega/cliente/' + id);
10   - },
11   - guardarDomicilio: function(domicilio) {
12   - return $http.post(API_ENDPOINT.URL + '/domicilio', {domicilio: domicilio});
13   - },
14   - guardarContacto: function(contacto) {
15   - return $http.post(API_ENDPOINT.URL + '/contacto', {contacto: contacto});
16   - },
17   - obtenerUltimoPorNivelPadre: function(nivel1) {
18   - return $http.get(API_ENDPOINT.URL + '/domicilio/ultimo/' + nivel1);
19   - }
20   - };
  2 + .service('focaModalDomicilioService', [
  3 + '$http', 'API_ENDPOINT',
  4 + function ($http, API_ENDPOINT) {
  5 + return {
  6 + getDomiciliosEntregaByIdCliente: function (id) {
  7 + return $http.get(API_ENDPOINT.URL +
  8 + '/domicilio/entrega/cliente/' + id);
  9 + },
  10 + guardarDomicilio: function (domicilio) {
  11 + return $http.post(API_ENDPOINT.URL + '/domicilio', { domicilio: domicilio });
  12 + },
  13 + guardarContacto: function (contacto) {
  14 + return $http.post(API_ENDPOINT.URL + '/contacto', { contacto: contacto });
  15 + },
  16 + obtenerUltimoPorNivelPadre: function (nivel1) {
  17 + return $http.get(API_ENDPOINT.URL + '/domicilio/ultimo/' + nivel1);
  18 + },
  19 + getProvinciaTableFormat: function () {
  20 + return [
  21 + { propiedad: 'ID', nombre: 'Codigo', filtro: { nombre: 'rellenarDigitos', parametro: 3 } },
  22 + { propiedad: 'NOMBRE', nombre: 'Nombre' }
  23 + ]
  24 + },
  25 + getLocalidadTableFormat: function () {
  26 + return [{ propiedad: 'ID', nombre: 'Cรณdigo', }, { propiedad: 'NOMBRE', nombre: 'Nombre' }]
21 27 }
22   - ]);
  28 + };
  29 + }
  30 + ]);
src/views/modal-domicilio.html
... ... @@ -10,16 +10,14 @@
10 10 ng-click="ingreso = true"
11 11 ng-show="!ingreso"
12 12 title="Nuevo">
13   - <i class="fa fa-plus" aria-hidden="true"></i>
  13 + <i class="fa fa-plus"></i>
14 14 </button>
15 15 </div>
16 16 </div>
17 17 </div>
18 18 <div class="modal-body" id="modal-body">
19 19  
20   - <div ng-show="!primerBusqueda">
21   - Debe realizar una primer bรบsqueda.
22   - </div>
  20 + <div ng-show="!primerBusqueda">Debe realizar una primer bรบsqueda.</div>
23 21  
24 22 <div ng-show="!ingreso">
25 23 <table ng-show="!ingreso" class="table table-striped table-sm">
... ... @@ -35,41 +33,36 @@
35 33 </thead>
36 34 <tbody>
37 35 <tr ng-show="currentPageDomicilios.length == 0 && primerBusqueda">
38   - <td colspan="5">
39   - No se encontraron resultados.
40   - </td>
  36 + <td colspan="5">No se encontraron resultados.</td>
41 37 </tr>
42 38 <tr class="selectable"
43 39 ng-repeat="(key,domicilio) in currentPageDomicilios">
44 40 <td
45 41 ng-bind="domicilio.titulo"
46   - ng-click="select(domicilio)"
47   - ></td>
  42 + ng-click="select(domicilio)">
  43 + </td>
48 44 <td
49 45 ng-bind="domicilio.Calle + ' ' + domicilio.Numero"
50   - ng-click="select(domicilio)"
51   - ></td>
  46 + ng-click="select(domicilio)">
  47 + </td>
52 48 <td
53 49 ng-bind="domicilio.Localidad"
54   - ng-click="select(domicilio)"
55   - ></td>
  50 + ng-click="select(domicilio)">
  51 + </td>
56 52 <td
57 53 ng-bind="domicilio.Provincia"
58   - ng-click="select(domicilio)"
59   - ></td>
  54 + ng-click="select(domicilio)">
  55 + </td>
60 56 <td>
61 57 <button
62   - type="button"
63 58 class="btn btn-sm p-1 float-right btn-secondary"
64 59 ng-click="verPuntosDescarga(key)"
65   - title="Puntos de descarga"
66   - >
  60 + title="Puntos de descarga">
67 61 <small>PD</small>
68 62 </button>
69 63 </td>
70 64 <td>
71 65 <button
72   - type="button"
73 66 class="btn btn-sm p-1 float-right"
74 67 ng-class="{
75 68 'btn-secondary': selectedDomicilio != key + 1,
... ... @@ -78,9 +71,8 @@
78 71 foca-focus="selectedDomicilio == {{key + 1}}"
79 72 ng-keydown="itemDomicilio($event.keyCode)"
80 73 ng-click="select(domicilio)"
81   - title="Seleccionar"
82   - >
83   - <i class="fa fa-circle-thin" aria-hidden="true"></i>
  74 + title="Seleccionar">
  75 + <i class="fa fa-circle-thin"></i>
84 76 </button>
85 77 </td>
86 78 </tr>
... ... @@ -101,8 +93,7 @@
101 93 <label>Tipo</label>
102 94 <select
103 95 class="form-control"
104   - ng-disabled="true"
105   - >
  96 + ng-disabled="true">
106 97 <option ng-value="2">Entrega</option>
107 98 </select>
108 99 </div>
... ... @@ -118,8 +109,7 @@
118 109 ng-keypress="next($event.keyCode)"
119 110 ng-focus="focused = 1"
120 111 foca-focus="focused == 1"
121   - teclado-virtual
122   - />
  112 + teclado-virtual/>
123 113 </div>
124 114 <div class="col-9">
125 115 <label>Calle</label>
... ... @@ -132,8 +122,7 @@
132 122 ng-keypress="next($event.keyCode)"
133 123 ng-focus="focused = 2"
134 124 foca-focus="focused == 2"
135   - teclado-virtual
136   - />
  125 + teclado-virtual/>
137 126 </div>
138 127 <div class="col-3">
139 128 <label>Nยบ</label>
... ... @@ -152,41 +141,69 @@
152 141 </div>
153 142 <div class="col-6">
154 143 <label>Localidad</label>
155   - <input
156   - type="text"
157   - class="form-control"
158   - ng-model="domicilio.localidad"
159   - placeholder="Ingrese localidad"
160   - ng-required="true"
161   - ng-keypress="next($event.keyCode)"
162   - ng-focus="focused = 4"
163   - foca-focus="focused == 4"
164   - teclado-virtual
165   - />
  144 + <div class="input-group">
  145 + <input
  146 + type="text"
  147 + class="form-control form-control-sm"
  148 + ng-model="domicilio.localidad.NOMBRE"
  149 + ng-keypress="seleccionarLocalidad($event.keyCode)"
  150 + placeholder="Seleccione localidad"
  151 + ng-required="true"
  152 + foca-focus="focused == 5"
  153 + ng-focus="focus(5)"
  154 + teclado-virtual/>
  155 + <button
  156 + ng-show="domicilio.localidad.NOMBRE.length"
  157 + class="clear-input"
  158 + ng-click="domicilio.localidad.ID = null; domicilio.localidad.NOMBRE = ''">
  159 + <i class="fa fa-times"></i>
  160 + </button>
  161 + <div class="input-group-append">
  162 + <button
  163 + ladda="searchLoading"
  164 + class="btn btn-outline-secondary"
  165 + ng-click="seleccionarLocalidad(13)">
  166 + <i class="fa fa-search"></i>
  167 + </button>
  168 + </div>
  169 + </div>
166 170 </div>
167 171 <div class="col-6">
168 172 <label>Provincia</label>
169   - <input
170   - type="text"
171   - class="form-control"
172   - ng-model="domicilio.provincia"
173   - placeholder="Ingrese provincia"
174   - ng-required="true"
175   - ng-keypress="next($event.keyCode)"
176   - ng-focus="focused = 5"
177   - foca-focus="focused == 5"
178   - teclado-virtual
179   - />
  173 + <div class="input-group">
  174 + <input
  175 + type="text"
  176 + class="form-control form-control-sm"
  177 + ng-model="domicilio.provincia.NOMBRE"
  178 + ng-keypress="seleccionarProvincia($event.keyCode)"
  179 + placeholder="Seleccione provincia"
  180 + ng-required="true"
  181 + ng-focus="focus(4)"
  182 + foca-focus="focused == 4"
  183 + teclado-virtual/>
  184 + <button
  185 + ng-show="domicilio.provincia.NOMBRE.length"
  186 + class="clear-input"
  187 + ng-click="domicilio.provincia.ID = null; domicilio.provincia.NOMBRE = ''">
  188 + <i class="fa fa-times"></i>
  189 + </button>
  190 + <div class="input-group-append">
  191 + <button
  192 + ladda="searchLoading"
  193 + class="btn btn-outline-secondary"
  194 + ng-click="seleccionarProvincia(13)">
  195 + <i class="fa fa-search"></i>
  196 + </button>
  197 + </div>
  198 + </div>
180 199 </div>
181 200 </div>
182 201 <div class="row mt-3">
183 202 <div class="col-12">
184 203 <button
185   - type="button"
186 204 class="btn btn-outline-debo float-right ml-3"
187 205 ng-click="localizarDomicilio()">Buscar</button>
188 206 <button
189   - type="button"
190 207 class="btn btn-outline-debo float-right"
191 208 ng-disabled="!domicilio.calle || !domicilio.numeroCalle || !domicilio.localidad || !domicilio.provincia"
192 209 ng-click="localizarDomicilio(true)">Localizar</button>
... ... @@ -199,25 +216,24 @@
199 216 <ul class="pagination pagination-sm mb-0 justify-content-end">
200 217 <li class="page-item" ng-class="{'disabled': currentPage == 1}">
201 218 <a class="page-link" href="javascript:void();" ng-click="selectPage(currentPage - 1)">
202   - <span aria-hidden="true">&laquo;</span>
  219 + <span>&laquo;</span>
203 220 <span class="sr-only">Anterior</span>
204 221 </a>
205 222 </li>
206 223 <li
207 224 class="page-item"
208 225 ng-repeat="pagina in paginas"
209   - ng-class="{'active': pagina == currentPage}"
210   - >
211   - <a
  226 + ng-class="{'active': pagina == currentPage}">
  227 + <a
212 228 class="page-link"
213 229 href="javascript:void();"
214 230 ng-click="selectPage(pagina)"
215   - ng-bind="pagina"
216   - ></a>
  231 + ng-bind="pagina">
  232 + </a>
217 233 </li>
218 234 <li class="page-item" ng-class="{'disabled': currentPage == lastPage}">
219 235 <a class="page-link" href="javascript:void();" ng-click="selectPage(currentPage + 1)">
220   - <span aria-hidden="true">&raquo;</span>
  236 + <span>&raquo;</span>
221 237 <span class="sr-only">Siguiente</span>
222 238 </a>
223 239 </li>
... ... @@ -226,22 +242,19 @@
226 242 <button
227 243 ng-show="!ingreso"
228 244 class="btn btn-sm btn-secondary"
229   - type="button"
230   - ng-click="cancel()"
231   - >Volver
  245 + ng-click="cancel()">
  246 + Volver
232 247 </button>
233 248 <button
234 249 ng-show="ingreso"
235 250 class="btn btn-secondary btn-sm"
236   - type="button"
237   - ng-click="ingreso = !ingreso; domicilio = {}; contactos = [{}]"
238   - >Cancelar
  251 + ng-click="ingreso = !ingreso; domicilio = {}; contactos = [{}]">
  252 + Cancelar
239 253 </button>
240 254 <button
241 255 ng-show="ingreso"
242 256 class="btn btn-sm btn-primary"
243   - type="button"
244   - ng-click="agregarDomicilio()"
245   - >Agregar domicilio
  257 + ng-click="agregarDomicilio()">
  258 + Agregar domicilio
246 259 </button>
247 260 </div>