Commit c975705d1cc84dce86c8bb296792546c9c234d7c

Authored by Jose Pinto
1 parent e8c0136f61
Exists in master

campo cobrador alta clientes

src/js/controller.js
1 angular.module('focaBusquedaCliente') 1 angular.module('focaBusquedaCliente')
2 .controller('focaBusquedaClienteModalController', [ 2 .controller('focaBusquedaClienteModalController', [
3 '$uibModalInstance', 'focaBusquedaClienteService', '$scope', '$filter', 3 '$uibModalInstance', 'focaBusquedaClienteService', '$scope', '$filter',
4 '$uibModal', 'focaModalService', '$timeout', 'vendedor', 4 '$uibModal', 'focaModalService', '$timeout', 'vendedor',
5 function($uibModalInstance, focaBusquedaClienteService, $scope, $filter, 5 function($uibModalInstance, focaBusquedaClienteService, $scope, $filter,
6 $uibModal, focaModalService, $timeout, vendedor) { 6 $uibModal, focaModalService, $timeout, vendedor) {
7 7
8 $scope.vendedor = vendedor ? vendedor : {}; 8 $scope.vendedor = vendedor ? vendedor : {};
9 $scope.filters = ''; 9 $scope.filters = '';
10 $scope.primerBusqueda = false; 10 $scope.primerBusqueda = false;
11 // pagination 11 // pagination
12 $scope.numPerPage = 10; 12 $scope.numPerPage = 10;
13 $scope.currentPage = 1; 13 $scope.currentPage = 1;
14 $scope.filteredClientes = []; 14 $scope.filteredClientes = [];
15 $scope.currentPageClientes = []; 15 $scope.currentPageClientes = [];
16 $scope.selectedClientes = -1; 16 $scope.selectedClientes = -1;
17 $scope.ingreso = false; 17 $scope.ingreso = false;
18 $scope.regexCuit = new RegExp(/\b(20|23|24|27|30|33|34)(\D)?[0-9]{8}(\D)?[0-9]/g); 18 $scope.regexCuit = new RegExp(/\b(20|23|24|27|30|33|34)(\D)?[0-9]{8}(\D)?[0-9]/g);
19 $scope.focused = 1; 19 $scope.focused = 1;
20 20
21 $scope.cliente = { 21 $scope.cliente = {
22 COD: 0, 22 COD: 0,
23 ES_MAY: true, 23 ES_MAY: true,
24 provincia: { 24 provincia: {
25 NOMBRE: '' 25 NOMBRE: ''
26 }, 26 },
27 localidad: { 27 localidad: {
28 NOMBRE: '' 28 NOMBRE: ''
29 }, 29 },
30 iva: { 30 iva: {
31 NOMBRE: '' 31 NOMBRE: ''
32 }, 32 },
33 actividad: { 33 actividad: {
34 NOM: '' 34 NOM: ''
35 }, 35 },
36 zona: { 36 zona: {
37 NOM: '' 37 NOM: ''
38 }, 38 },
39 tipoFactura: { 39 tipoFactura: {
40 NOMBRE: '' 40 NOMBRE: ''
41 }, 41 },
42 tipoComprobante: { 42 tipoComprobante: {
43 NOMBRE: '' 43 NOMBRE: ''
44 }, 44 },
45 formaPago: { 45 formaPago: {
46 NOMBRE: '' 46 NOMBRE: ''
47 },
48 cobrador: {
49 NomVen: ''
47 } 50 }
48 }; 51 };
49 52
50 $scope.busquedaPress = function(key) { 53 $scope.busquedaPress = function(key) {
51 if (key === 13) { 54 if (key === 13) {
52 var funcion = ($scope.vendedor.CodVen) ? 55 var funcion = ($scope.vendedor.CodVen) ?
53 'obtenerClientesPorNombreOCuitByVendedor' : 'obtenerClientesPorNombreOCuit'; 56 'obtenerClientesPorNombreOCuitByVendedor' : 'obtenerClientesPorNombreOCuit';
54 57
55 $scope.searchLoading = true; 58 $scope.searchLoading = true;
56 focaBusquedaClienteService 59 focaBusquedaClienteService
57 [funcion]($scope.filters, $scope.vendedor.CodVen) 60 [funcion]($scope.filters, $scope.vendedor.CodVen)
58 .then( 61 .then(
59 function(res) { 62 function(res) {
60 $scope.primerBusqueda = true; 63 $scope.primerBusqueda = true;
61 $scope.clientes = res.data; 64 $scope.clientes = res.data;
62 $scope.search(true); 65 $scope.search(true);
63 primera(); 66 primera();
64 $scope.searchLoading = false; 67 $scope.searchLoading = false;
65 }); 68 });
66 } 69 }
67 }; 70 };
68 71
69 $scope.search = function (pressed) { 72 $scope.search = function (pressed) {
70 if($scope.primerBusqueda) { 73 if($scope.primerBusqueda) {
71 $scope.filteredClientes = $filter('filter')( 74 $scope.filteredClientes = $filter('filter')(
72 $scope.clientes, {$: $scope.filters} 75 $scope.clientes, {$: $scope.filters}
73 ); 76 );
74 77
75 if(pressed && $scope.filteredClientes.length === 0){ 78 if(pressed && $scope.filteredClientes.length === 0){
76 $timeout(function() { 79 $timeout(function() {
77 angular.element('#search')[0].focus(); 80 angular.element('#search')[0].focus();
78 $scope.filters = ''; 81 $scope.filters = '';
79 }); 82 });
80 } 83 }
81 84
82 $scope.lastPage = Math.ceil( 85 $scope.lastPage = Math.ceil(
83 $scope.filteredClientes.length / $scope.numPerPage 86 $scope.filteredClientes.length / $scope.numPerPage
84 ); 87 );
85 88
86 $scope.resetPage(); 89 $scope.resetPage();
87 } 90 }
88 }; 91 };
89 92
90 $scope.resetPage = function () { 93 $scope.resetPage = function () {
91 $scope.currentPage = 1; 94 $scope.currentPage = 1;
92 $scope.selectPage(1); 95 $scope.selectPage(1);
93 }; 96 };
94 97
95 $scope.selectPage = function (page) { 98 $scope.selectPage = function (page) {
96 var start = (page - 1) * $scope.numPerPage; 99 var start = (page - 1) * $scope.numPerPage;
97 var end = start + $scope.numPerPage; 100 var end = start + $scope.numPerPage;
98 $scope.paginas = []; 101 $scope.paginas = [];
99 $scope.paginas = calcularPages(page); 102 $scope.paginas = calcularPages(page);
100 $scope.currentPageClientes = $scope.filteredClientes.slice(start, end); 103 $scope.currentPageClientes = $scope.filteredClientes.slice(start, end);
101 $scope.currentPage = page; 104 $scope.currentPage = page;
102 }; 105 };
103 106
104 $scope.select = function(cliente, esNuevo = false) { 107 $scope.select = function(cliente, esNuevo = false) {
105 cliente.esNuevo = esNuevo; 108 cliente.esNuevo = esNuevo;
106 $uibModalInstance.close(cliente); 109 $uibModalInstance.close(cliente);
107 }; 110 };
108 111
109 $scope.cancel = function() { 112 $scope.cancel = function() {
110 if($scope.ingreso) { 113 if($scope.ingreso) {
111 $scope.ingreso = false; 114 $scope.ingreso = false;
112 }else { 115 }else {
113 $uibModalInstance.dismiss('cancel'); 116 $uibModalInstance.dismiss('cancel');
114 } 117 }
115 }; 118 };
116 119
117 $scope.busquedaDown = function(key) { 120 $scope.busquedaDown = function(key) {
118 if (key === 40) { 121 if (key === 40) {
119 primera(key); 122 primera(key);
120 } 123 }
121 }; 124 };
122 125
123 $scope.itemCliente = function(key) { 126 $scope.itemCliente = function(key) {
124 if (key === 38) { 127 if (key === 38) {
125 anterior(key); 128 anterior(key);
126 } 129 }
127 130
128 if (key === 40) { 131 if (key === 40) {
129 siguiente(key); 132 siguiente(key);
130 } 133 }
131 134
132 if (key === 37) { 135 if (key === 37) {
133 retrocederPagina(); 136 retrocederPagina();
134 } 137 }
135 138
136 if (key === 39) { 139 if (key === 39) {
137 avanzarPagina(); 140 avanzarPagina();
138 } 141 }
139 }; 142 };
140 143
141 $scope.focus = function(val) { 144 $scope.focus = function(val) {
142 $scope.focused = val; 145 $scope.focused = val;
143 }; 146 };
144 147
145 $scope.next = function(key) { 148 $scope.next = function(key) {
146 if (key === 13) $scope.focused++; 149 if (key === 13) $scope.focused++;
147 }; 150 };
148 151
149 $scope.seleccionarProvincia = function(key) { 152 $scope.seleccionarProvincia = function(key) {
150 if(key === 13) { 153 if(key === 13) {
151 var modalInstance = $uibModal.open( 154 var modalInstance = $uibModal.open(
152 { 155 {
153 ariaLabelledBy: 'Búsqueda de provincias', 156 ariaLabelledBy: 'Búsqueda de provincias',
154 templateUrl: 'modal-provincias.html', 157 templateUrl: 'modal-provincias.html',
155 controller: 'focaModalProvinciaController', 158 controller: 'focaModalProvinciaController',
156 size: 'md', 159 size: 'md',
157 resolve: { 160 resolve: {
158 filters: function() { 161 filters: function() {
159 return $scope.cliente.provincia.NOMBRE; 162 return $scope.cliente.provincia.NOMBRE;
160 } 163 }
161 } 164 }
162 } 165 }
163 ); 166 );
164 modalInstance.result.then(function(provincia) { 167 modalInstance.result.then(function(provincia) {
165 $scope.cliente.provincia = provincia; 168 $scope.cliente.provincia = provincia;
166 $timeout(function() { 169 $timeout(function() {
167 $scope.focused = 5; 170 $scope.focused = 5;
168 }); 171 });
169 }, function() { 172 }, function() {
170 //TODO: función llamada cuando cancela el modal 173 //TODO: función llamada cuando cancela el modal
171 }); 174 });
172 } 175 }
173 }; 176 };
174 $scope.seleccionarLocalidad = function(key) { 177 $scope.seleccionarLocalidad = function(key) {
175 if($scope.cliente.provincia.ID === undefined) { 178 if($scope.cliente.provincia.ID === undefined) {
176 focaModalService.alert('Seleccione una provincia'); 179 focaModalService.alert('Seleccione una provincia');
177 return; 180 return;
178 } 181 }
179 if(key === 13) { 182 if(key === 13) {
180 var modalInstance = $uibModal.open( 183 var modalInstance = $uibModal.open(
181 { 184 {
182 ariaLabelledBy: 'Búsqueda de localidades', 185 ariaLabelledBy: 'Búsqueda de localidades',
183 templateUrl: 'modal-localidades.html', 186 templateUrl: 'modal-localidades.html',
184 controller: 'focaModalLocalidadController', 187 controller: 'focaModalLocalidadController',
185 size: 'md', 188 size: 'md',
186 resolve: { 189 resolve: {
187 filters: { 190 filters: {
188 idProvincia: $scope.cliente.provincia.ID, 191 idProvincia: $scope.cliente.provincia.ID,
189 busqueda: $scope.cliente.localidad.nombre 192 busqueda: $scope.cliente.localidad.nombre
190 } 193 }
191 } 194 }
192 } 195 }
193 ); 196 );
194 modalInstance.result.then(function(localidad) { 197 modalInstance.result.then(function(localidad) {
195 $scope.cliente.localidad = localidad; 198 $scope.cliente.localidad = localidad;
196 $timeout(function() { 199 $timeout(function() {
197 $scope.focused = 6; 200 $scope.focused = 6;
198 }); 201 });
199 }, function() { 202 }, function() {
200 //TODO: función llamada cuando cancela el modal 203 //TODO: función llamada cuando cancela el modal
201 }); 204 });
202 } 205 }
203 }; 206 };
204 $scope.seleccionarIva = function(key) { 207 $scope.seleccionarIva = function(key) {
205 if(key === 13) { 208 if(key === 13) {
206 var query = '/iva'; 209 var query = '/iva';
207 var columnas = { 210 var columnas = {
208 nombre: ['Código', 'Nombre'], 211 nombre: ['Código', 'Nombre'],
209 propiedad: ['ID', 'NOM',] 212 propiedad: ['ID', 'NOM',]
210 }; 213 };
211 var titulo = 'Búsqueda de responsabilidad ante el IVA'; 214 var titulo = 'Búsqueda de responsabilidad ante el IVA';
212 focaModalService.modal(columnas, query, titulo, 'md').then( 215 focaModalService.modal(columnas, query, titulo, 'md').then(
213 function(iva) { 216 function(iva) {
214 $scope.cliente.iva = iva; 217 $scope.cliente.iva = iva;
215 $timeout(function() { 218 $timeout(function() {
216 $scope.focused = 9; 219 $scope.focused = 10;
217 }); 220 });
218 }, function() { 221 }, function() {
219 // funcion ejecutada cuando se cancela el modal 222 // funcion ejecutada cuando se cancela el modal
220 }); 223 });
221 } 224 }
222 }; 225 };
223 $scope.seleccionarActividad = function(key) { 226 $scope.seleccionarActividad = function(key) {
224 if(key === 13) { 227 if(key === 13) {
225 var query = '/actividad'; 228 var query = '/actividad';
226 var columnas = { 229 var columnas = {
227 nombre: ['Código', 'Nombre'], 230 nombre: ['Código', 'Nombre'],
228 propiedad: ['ID', 'NOM',] 231 propiedad: ['ID', 'NOM',]
229 }; 232 };
230 var titulo = 'Búsqueda de actividades'; 233 var titulo = 'Búsqueda de actividades';
231 focaModalService.modal(columnas, query, titulo, 'md').then( 234 focaModalService.modal(columnas, query, titulo, 'md').then(
232 function(actividad) { 235 function(actividad) {
233 $scope.cliente.actividad = actividad; 236 $scope.cliente.actividad = actividad;
237 $timeout(function() {
238 $scope.focused = 8;
239 });
234 }, function() { 240 }, function() {
235 // funcion ejecutada cuando se cancela el modal 241 // funcion ejecutada cuando se cancela el modal
236 }); 242 });
237 } 243 }
238 }; 244 };
239 $scope.seleccionarZona = function(key) { 245 $scope.seleccionarZona = function(key) {
240 if(key === 13) { 246 if(key === 13) {
241 var query = '/zona'; 247 var query = '/zona';
242 var columnas = { 248 var columnas = {
243 nombre: ['Código', 'Nombre'], 249 nombre: ['Código', 'Nombre'],
244 propiedad: ['ID', 'NOM',] 250 propiedad: ['ID', 'NOM',]
245 }; 251 };
246 var titulo = 'Búsqueda de zonas'; 252 var titulo = 'Búsqueda de zonas';
247 focaModalService.modal(columnas, query, titulo, 'md').then( 253 focaModalService.modal(columnas, query, titulo, 'md').then(
248 function(zona) { 254 function(zona) {
249 $scope.cliente.zona = zona; 255 $scope.cliente.zona = zona;
250 $timeout(function() { 256 $timeout(function() {
251 $scope.focused = 7; 257 $scope.focused = 7;
252 }); 258 });
253 }, function() { 259 }, function() {
254 // funcion ejecutada cuando se cancela el modal 260 // funcion ejecutada cuando se cancela el modal
255 }); 261 });
256 } 262 }
257 }; 263 };
258 $scope.seleccionarTipoFactura = function(key) { 264 $scope.seleccionarTipoFactura = function(key) {
259 if(key === 13) { 265 if(key === 13) {
260 var query = '/tipo-factura'; 266 var query = '/tipo-factura';
261 var columnas = { 267 var columnas = {
262 nombre: ['Código', 'Nombre'], 268 nombre: ['Código', 'Nombre'],
263 propiedad: ['ID', 'NOMBRE',] 269 propiedad: ['ID', 'NOMBRE',]
264 }; 270 };
265 var titulo = 'Búsqueda de tipos de factura'; 271 var titulo = 'Búsqueda de tipos de factura';
266 focaModalService.modal(columnas, query, titulo, 'md').then( 272 focaModalService.modal(columnas, query, titulo, 'md').then(
267 function(tipoFactura) { 273 function(tipoFactura) {
268 $scope.cliente.tipoFactura = tipoFactura; 274 $scope.cliente.tipoFactura = tipoFactura;
269 $timeout(function() { 275 $timeout(function() {
270 $scope.focused = 10; 276 $scope.focused = 11;
271 }); 277 });
272 }, function() { 278 }, function() {
273 // funcion ejecutada cuando se cancela el modal 279 // funcion ejecutada cuando se cancela el modal
274 }); 280 });
275 } 281 }
276 }; 282 };
277 $scope.seleccionarTipoComprobante = function(key) { 283 $scope.seleccionarTipoComprobante = function(key) {
278 if(key === 13) { 284 if(key === 13) {
279 var query = '/tipo-comprobante'; 285 var query = '/tipo-comprobante';
280 var columnas = { 286 var columnas = {
281 nombre: ['Código', 'Nombre'], 287 nombre: ['Código', 'Nombre'],
282 propiedad: ['ID', 'NOMBRE',] 288 propiedad: ['ID', 'NOMBRE',]
283 }; 289 };
284 var titulo = 'Búsqueda de tipos de comprobante'; 290 var titulo = 'Búsqueda de tipos de comprobante';
285 focaModalService.modal(columnas, query, titulo, 'md').then( 291 focaModalService.modal(columnas, query, titulo, 'md').then(
286 function(tipoComprobante) { 292 function(tipoComprobante) {
287 $scope.cliente.tipoComprobante = tipoComprobante; 293 $scope.cliente.tipoComprobante = tipoComprobante;
288 $timeout(function() { 294 $timeout(function() {
289 $scope.focused = 12; 295 $scope.focused = 13;
290 }); 296 });
291 }, function() { 297 }, function() {
292 // funcion ejecutada cuando se cancela el modal 298 // funcion ejecutada cuando se cancela el modal
293 }); 299 });
294 } 300 }
295 }; 301 };
296 $scope.seleccionarFormaPago = function(key) { 302 $scope.seleccionarFormaPago = function(key) {
297 if(key === 13) { 303 if(key === 13) {
298 var query = '/forma-pago'; 304 var query = '/forma-pago';
299 var columnas = { 305 var columnas = {
300 nombre: ['Código', 'Nombre'], 306 nombre: ['Código', 'Nombre'],
301 propiedad: ['ID', 'NOMBRE',] 307 propiedad: ['ID', 'NOMBRE',]
302 }; 308 };
303 var titulo = 'Búsqueda de formas de pago'; 309 var titulo = 'Búsqueda de formas de pago';
304 focaModalService.modal(columnas, query, titulo, 'md').then( 310 focaModalService.modal(columnas, query, titulo, 'md').then(
305 function(formaPago) { 311 function(formaPago) {
306 $scope.cliente.formaPago = formaPago; 312 $scope.cliente.formaPago = formaPago;
307 }, function() { 313 }, function() {
308 // funcion ejecutada cuando se cancela el modal 314 // funcion ejecutada cuando se cancela el modal
309 }); 315 });
310 } 316 }
311 }; 317 };
318 $scope.seleccionarCobrador = function(key) {
319 if(key === 13) {
320 var query = '/cobrador';
321 var columnas = {
322 nombre: ['Código', 'Nombre'],
323 propiedad: ['CodVen', 'NomVen',]
324 };
325 var titulo = 'Búsqueda de cobradores';
326 focaModalService.modal(columnas, query, titulo, 'md').then(
327 function(cobrador) {
328 $scope.cliente.cobrador = cobrador;
329 }, function() {
330 // funcion ejecutada cuando se cancela el modal
331 });
332 }
333 };
312 334
313 $scope.guardar = function() { 335 $scope.guardar = function() {
314 336
315 $scope.cliente.PCX = $scope.cliente.provincia.ID; 337 $scope.cliente.PCX = $scope.cliente.provincia.ID;
316 $scope.cliente.LOX = $scope.cliente.localidad.ID; 338 $scope.cliente.LOX = $scope.cliente.localidad.ID;
317 $scope.cliente.IVA = $scope.cliente.iva.ID; 339 $scope.cliente.IVA = $scope.cliente.iva.ID;
318 $scope.cliente.ACT = $scope.cliente.actividad.ID; 340 $scope.cliente.ACT = $scope.cliente.actividad.ID;
319 $scope.cliente.ZON = $scope.cliente.zona.ID; 341 $scope.cliente.ZON = $scope.cliente.zona.ID;
320 $scope.cliente.TIP = $scope.cliente.tipoFactura.ID; 342 $scope.cliente.TIP = $scope.cliente.tipoFactura.ID;
321 $scope.cliente.TCO = $scope.cliente.tipoComprobante.ID; 343 $scope.cliente.TCO = $scope.cliente.tipoComprobante.ID;
322 $scope.cliente.FPA = $scope.cliente.formaPago.ID; 344 $scope.cliente.FPA = $scope.cliente.formaPago.ID;
323 $scope.cliente.VEN = $scope.vendedor.CodVen; 345 $scope.cliente.VEN = $scope.vendedor.CodVen;
346 $scope.cliente.idCobrador = $scope.cliente.cobrador.CodVen;
324 347
325 delete $scope.cliente.provincia; 348 delete $scope.cliente.provincia;
326 delete $scope.cliente.localidad; 349 delete $scope.cliente.localidad;
327 delete $scope.cliente.iva; 350 delete $scope.cliente.iva;
328 delete $scope.cliente.actividad; 351 delete $scope.cliente.actividad;
329 delete $scope.cliente.zona; 352 delete $scope.cliente.zona;
330 delete $scope.cliente.tipoFactura; 353 delete $scope.cliente.tipoFactura;
331 delete $scope.cliente.tipoComprobante; 354 delete $scope.cliente.tipoComprobante;
332 delete $scope.cliente.formaPago; 355 delete $scope.cliente.formaPago;
356 delete $scope.cliente.cobrador;
333 357
334 focaBusquedaClienteService 358 focaBusquedaClienteService
335 .guardarCliente($scope.cliente) 359 .guardarCliente($scope.cliente)
336 .then(function(res) { 360 .then(function(res) {
337 var cliente = { 361 var cliente = {
338 cod: res.data.COD, 362 cod: res.data.COD,
339 cuit: res.data.CUIT, 363 cuit: res.data.CUIT,
340 esNuevo: res.data.esNuevo, 364 esNuevo: res.data.esNuevo,
341 nom: res.data.NOM 365 nom: res.data.NOM
342 }; 366 };
343 $scope.select(cliente, true); 367 $scope.select(cliente, true);
344 }); 368 });
345 }; 369 };
346 370
347 function calcularPages(paginaActual) { 371 function calcularPages(paginaActual) {
348 var paginas = []; 372 var paginas = [];
349 paginas.push(paginaActual); 373 paginas.push(paginaActual);
350 374
351 if (paginaActual - 1 > 1) { 375 if (paginaActual - 1 > 1) {
352 376
353 paginas.unshift(paginaActual - 1); 377 paginas.unshift(paginaActual - 1);
354 if (paginaActual - 2 > 1) { 378 if (paginaActual - 2 > 1) {
355 paginas.unshift(paginaActual - 2); 379 paginas.unshift(paginaActual - 2);
356 } 380 }
357 } 381 }
358 382
359 if (paginaActual + 1 < $scope.lastPage) { 383 if (paginaActual + 1 < $scope.lastPage) {
360 paginas.push(paginaActual + 1); 384 paginas.push(paginaActual + 1);
361 if (paginaActual + 2 < $scope.lastPage) { 385 if (paginaActual + 2 < $scope.lastPage) {
362 paginas.push(paginaActual + 2); 386 paginas.push(paginaActual + 2);
363 } 387 }
364 } 388 }
365 389
366 if (paginaActual !== 1) { 390 if (paginaActual !== 1) {
367 paginas.unshift(1); 391 paginas.unshift(1);
368 } 392 }
369 393
370 if (paginaActual !== $scope.lastPage) { 394 if (paginaActual !== $scope.lastPage) {
371 paginas.push($scope.lastPage); 395 paginas.push($scope.lastPage);
372 } 396 }
373 397
374 return paginas; 398 return paginas;
375 } 399 }
376 400
377 function primera() { 401 function primera() {
378 $scope.selectedClientes = 0; 402 $scope.selectedClientes = 0;
379 } 403 }
380 404
381 function anterior() { 405 function anterior() {
382 if ($scope.selectedClientes === 0 && $scope.currentPage > 1) { 406 if ($scope.selectedClientes === 0 && $scope.currentPage > 1) {
383 retrocederPagina(); 407 retrocederPagina();
384 } else { 408 } else {
385 $scope.selectedClientes--; 409 $scope.selectedClientes--;
386 } 410 }
387 } 411 }
388 412
389 function siguiente() { 413 function siguiente() {
390 if ($scope.selectedClientes < $scope.currentPageClientes.length - 1 ) { 414 if ($scope.selectedClientes < $scope.currentPageClientes.length - 1 ) {
391 $scope.selectedClientes++; 415 $scope.selectedClientes++;
392 } else { 416 } else {
393 avanzarPagina(); 417 avanzarPagina();
394 } 418 }
395 } 419 }
396 420
397 function retrocederPagina() { 421 function retrocederPagina() {
398 if ($scope.currentPage > 1) { 422 if ($scope.currentPage > 1) {
399 $scope.selectPage($scope.currentPage - 1); 423 $scope.selectPage($scope.currentPage - 1);
400 $scope.selectedClientes = $scope.numPerPage - 1; 424 $scope.selectedClientes = $scope.numPerPage - 1;
401 } 425 }
402 } 426 }
403 427
404 function avanzarPagina() { 428 function avanzarPagina() {
405 if ($scope.currentPage < $scope.lastPage) { 429 if ($scope.currentPage < $scope.lastPage) {
406 $scope.selectPage($scope.currentPage + 1); 430 $scope.selectPage($scope.currentPage + 1);
407 $scope.selectedClientes = 0; 431 $scope.selectedClientes = 0;
408 } 432 }
409 } 433 }
410 } 434 }
411 ]); 435 ]);
412 436
src/views/foca-busqueda-cliente-modal.html
1 <div class="modal-header py-1"> 1 <div class="modal-header py-1">
2 <div class="row w-100"> 2 <div class="row w-100">
3 <div class="col-lg-4 col-7"> 3 <div class="col-lg-4 col-7">
4 <h5 class="modal-title my-1" ng-hide="ingreso">Búsqueda de Cliente</h5> 4 <h5 class="modal-title my-1" ng-hide="ingreso">Búsqueda de Cliente</h5>
5 <h5 class="modal-title my-1" ng-show="ingreso">Crear Cliente</h5> 5 <h5 class="modal-title my-1" ng-show="ingreso">Crear Cliente</h5>
6 </div> 6 </div>
7 <div ng-show="ingreso" class="col-lg-6 col-5 front-index"> 7 <div ng-show="ingreso" class="col-lg-6 col-5 front-index">
8 <div class="custom-control custom-checkbox mt-2"> 8 <div class="custom-control custom-checkbox mt-2">
9 <input 9 <input
10 type="checkbox" 10 type="checkbox"
11 class="custom-control-input" 11 class="custom-control-input"
12 id="checkProspecto" 12 id="checkProspecto"
13 ng-model="cliente.ES_PROS"> 13 ng-model="cliente.ES_PROS">
14 <label class="custom-control-label" for="checkProspecto">¿Es prospecto?</label> 14 <label class="custom-control-label" for="checkProspecto">¿Es prospecto?</label>
15 </div> 15 </div>
16 </div> 16 </div>
17 <div class="input-group col-lg-6 offset-lg-2 pr-0 my-2"> 17 <div class="input-group col-lg-6 offset-lg-2 pr-0 my-2">
18 <button 18 <button
19 class="btn btn-outline-primary mr-2" 19 class="btn btn-outline-primary mr-2"
20 ng-click="ingreso = true" 20 ng-click="ingreso = true"
21 ng-show="!ingreso" 21 ng-show="!ingreso"
22 title="Nuevo"> 22 title="Nuevo">
23 <i class="fa fa-plus" aria-hidden="true"></i> 23 <i class="fa fa-plus" aria-hidden="true"></i>
24 </button> 24 </button>
25 <input 25 <input
26 ladda="searchLoading" 26 ladda="searchLoading"
27 type="text" 27 type="text"
28 class="form-control form-control-sm" 28 class="form-control form-control-sm"
29 id="search" 29 id="search"
30 placeholder="Busqueda" 30 placeholder="Busqueda"
31 ng-model="filters" 31 ng-model="filters"
32 ng-change="search()" 32 ng-change="search()"
33 ng-keydown="busquedaDown($event.keyCode)" 33 ng-keydown="busquedaDown($event.keyCode)"
34 ng-keypress="busquedaPress($event.keyCode)" 34 ng-keypress="busquedaPress($event.keyCode)"
35 foca-focus="selectedClientes == -1" 35 foca-focus="selectedClientes == -1"
36 ng-focus="selectedClientes = -1" 36 ng-focus="selectedClientes = -1"
37 teclado-virtual 37 teclado-virtual
38 ng-hide="ingreso" 38 ng-hide="ingreso"
39 > 39 >
40 <div class="input-group-append" ng-hide="ingreso"> 40 <div class="input-group-append" ng-hide="ingreso">
41 <button 41 <button
42 ladda="searchLoading" 42 ladda="searchLoading"
43 data-spinner-color="#FF0000" 43 data-spinner-color="#FF0000"
44 class="btn btn-outline-secondary" 44 class="btn btn-outline-secondary"
45 type="button" 45 type="button"
46 ng-click="busquedaPress(13)"> 46 ng-click="busquedaPress(13)">
47 <i class="fa fa-search" aria-hidden="true"></i> 47 <i class="fa fa-search" aria-hidden="true"></i>
48 </button> 48 </button>
49 </div> 49 </div>
50 </div> 50 </div>
51 </div> 51 </div>
52 </div> 52 </div>
53 <div class="modal-body" id="modal-body"> 53 <div class="modal-body" id="modal-body">
54 54
55 <div ng-show="!primerBusqueda && !ingreso"> 55 <div ng-show="!primerBusqueda && !ingreso">
56 Debe realizar una primer búsqueda. 56 Debe realizar una primer búsqueda.
57 </div> 57 </div>
58 58
59 <table ng-show="primerBusqueda && !ingreso" class="table table-striped table-sm"> 59 <table ng-show="primerBusqueda && !ingreso" class="table table-striped table-sm">
60 <thead> 60 <thead>
61 <tr> 61 <tr>
62 <th>Código</th> 62 <th>Código</th>
63 <th>Nombre</th> 63 <th>Nombre</th>
64 <th>CUIT</th> 64 <th>CUIT</th>
65 <th></th> 65 <th></th>
66 </tr> 66 </tr>
67 </thead> 67 </thead>
68 <tbody> 68 <tbody>
69 <tr ng-show="currentPageClientes.length == 0 && primerBusqueda"> 69 <tr ng-show="currentPageClientes.length == 0 && primerBusqueda">
70 <td colspan="4"> 70 <td colspan="4">
71 No se encontraron resultados. 71 No se encontraron resultados.
72 </td> 72 </td>
73 </tr> 73 </tr>
74 <tr 74 <tr
75 class="selectable" 75 class="selectable"
76 ng-repeat="(key, cliente) in currentPageClientes" 76 ng-repeat="(key, cliente) in currentPageClientes"
77 ng-click="select(cliente)"> 77 ng-click="select(cliente)">
78 <td ng-bind="('00000'+cliente.cod).slice(-5)"></td> 78 <td ng-bind="('00000'+cliente.cod).slice(-5)"></td>
79 <td ng-bind="cliente.nom"></td> 79 <td ng-bind="cliente.nom"></td>
80 <td ng-bind="cliente.cuit"></td> 80 <td ng-bind="cliente.cuit"></td>
81 <td> 81 <td>
82 <button 82 <button
83 type="button" 83 type="button"
84 class="btn btn-xs p-1 float-right" 84 class="btn btn-xs p-1 float-right"
85 ng-class="{ 85 ng-class="{
86 'btn-secondary': selectedClientes != key, 86 'btn-secondary': selectedClientes != key,
87 'btn-primary': selectedClientes == key 87 'btn-primary': selectedClientes == key
88 }" 88 }"
89 ng-click="select(cliente)" 89 ng-click="select(cliente)"
90 foca-focus="selectedClientes == {{key}}" 90 foca-focus="selectedClientes == {{key}}"
91 ng-keydown="itemCliente($event.keyCode)" 91 ng-keydown="itemCliente($event.keyCode)"
92 > 92 >
93 <i class="fa fa-circle-thin" aria-hidden="true"></i> 93 <i class="fa fa-circle-thin" aria-hidden="true"></i>
94 </button> 94 </button>
95 </td> 95 </td>
96 </tr> 96 </tr>
97 </tbody> 97 </tbody>
98 </table> 98 </table>
99 99
100 <form name="formCliente"> 100 <form name="formCliente">
101 <uib-tabset class="tabs-right" ng-show="ingreso"> 101 <uib-tabset class="tabs-right" ng-show="ingreso">
102 <uib-tab heading="Datos clientes"> 102 <uib-tab heading="Datos cliente">
103 <div class="row"> 103 <div class="row">
104 <div class="col-3"> 104 <div class="col-3">
105 <label>Código</label> 105 <label>Código</label>
106 <input 106 <input
107 type="text" 107 type="text"
108 class="form-control form-control-sm" 108 class="form-control form-control-sm"
109 ng-model="cliente.codigo" 109 ng-model="cliente.codigo"
110 readonly 110 readonly
111 /> 111 />
112 </div> 112 </div>
113 <div class="col-9"> 113 <div class="col-9">
114 <label>Nombre</label> 114 <label>Nombre</label>
115 <input 115 <input
116 type="text" 116 type="text"
117 class="form-control form-control-sm" 117 class="form-control form-control-sm"
118 ng-model="cliente.NOM" 118 ng-model="cliente.NOM"
119 teclado-virtual 119 teclado-virtual
120 placeholder="Ingrese nombre" 120 placeholder="Ingrese nombre"
121 ng-required="true" 121 ng-required="true"
122 foca-focus="focused == 1 || ingreso" 122 foca-focus="focused == 1 || ingreso"
123 ng-focus="focus(1)" 123 ng-focus="focus(1)"
124 ng-keypress="next($event.keyCode)" 124 ng-keypress="next($event.keyCode)"
125 /> 125 />
126 </div> 126 </div>
127 </div> 127 </div>
128 <div class="row"> 128 <div class="row">
129 <div class="col-md-9 col-12"> 129 <div class="col-md-9 col-12">
130 <label>Domicilio</label> 130 <label>Domicilio</label>
131 <input 131 <input
132 type="text" 132 type="text"
133 class="form-control form-control-sm" 133 class="form-control form-control-sm"
134 ng-model="cliente.DOM" 134 ng-model="cliente.DOM"
135 teclado-virtual 135 teclado-virtual
136 placeholder="Ingrese domicilio" 136 placeholder="Ingrese domicilio"
137 ng-required="true" 137 ng-required="true"
138 ng-focus="focus(2)" 138 ng-focus="focus(2)"
139 foca-focus="focused == 2" 139 foca-focus="focused == 2"
140 ng-keypress="next($event.keyCode)" 140 ng-keypress="next($event.keyCode)"
141 /> 141 />
142 </div> 142 </div>
143 <div class="col-md-3 col-12"> 143 <div class="col-md-3 col-12">
144 <label>Código postal</label> 144 <label>Código postal</label>
145 <input 145 <input
146 type="text" 146 type="text"
147 class="form-control form-control-sm" 147 class="form-control form-control-sm"
148 ng-model="cliente.CPO" 148 ng-model="cliente.CPO"
149 placeholder="Ingrese CP" 149 placeholder="Ingrese CP"
150 ng-required="true" 150 ng-required="true"
151 ng-focus="focus(3)" 151 ng-focus="focus(3)"
152 foca-focus="focused == 3" 152 foca-focus="focused == 3"
153 ng-keypress="next($event.keyCode)" 153 ng-keypress="next($event.keyCode)"
154 teclado-virtual 154 teclado-virtual
155 /> 155 />
156 </div> 156 </div>
157 </div> 157 </div>
158 <div class="row"> 158 <div class="row">
159 <div class="col-md-6 col-12"> 159 <div class="col-md-6 col-12">
160 <label>Provincia</label> 160 <label>Provincia</label>
161 <div class="input-group"> 161 <div class="input-group">
162 <input 162 <input
163 type="text" 163 type="text"
164 class="form-control form-control-sm" 164 class="form-control form-control-sm"
165 ng-model="cliente.provincia.NOMBRE" 165 ng-model="cliente.provincia.NOMBRE"
166 ng-keypress="seleccionarProvincia($event.keyCode)" 166 ng-keypress="seleccionarProvincia($event.keyCode)"
167 placeholder="Ingrese provincia" 167 placeholder="Ingrese provincia"
168 ng-required="true" 168 ng-required="true"
169 ng-focus="focus(4)" 169 ng-focus="focus(4)"
170 foca-focus="focused == 4" 170 foca-focus="focused == 4"
171 teclado-virtual 171 teclado-virtual
172 /> 172 />
173 <div class="input-group-append"> 173 <div class="input-group-append">
174 <button 174 <button
175 ladda="searchLoading" 175 ladda="searchLoading"
176 class="btn btn-outline-secondary form-control-sm" 176 class="btn btn-outline-secondary form-control-sm"
177 type="button" 177 type="button"
178 ng-click="seleccionarProvincia(13)" 178 ng-click="seleccionarProvincia(13)"
179 > 179 >
180 <i class="fa fa-search" aria-hidden="true"></i> 180 <i class="fa fa-search" aria-hidden="true"></i>
181 </button> 181 </button>
182 </div> 182 </div>
183 </div> 183 </div>
184 </div> 184 </div>
185 <div class="col-md-6 col-12"> 185 <div class="col-md-6 col-12">
186 <label>Localidad</label> 186 <label>Localidad</label>
187 <div class="input-group"> 187 <div class="input-group">
188 <input 188 <input
189 type="text" 189 type="text"
190 class="form-control form-control-sm" 190 class="form-control form-control-sm"
191 ng-model="cliente.localidad.NOMBRE" 191 ng-model="cliente.localidad.NOMBRE"
192 ng-keypress="seleccionarLocalidad($event.keyCode)" 192 ng-keypress="seleccionarLocalidad($event.keyCode)"
193 placeholder="Ingrese localidad" 193 placeholder="Ingrese localidad"
194 ng-required="true" 194 ng-required="true"
195 foca-focus="focused == 5" 195 foca-focus="focused == 5"
196 ng-focus="focus(5)" 196 ng-focus="focus(5)"
197 teclado-virtual 197 teclado-virtual
198 /> 198 />
199 <div class="input-group-append"> 199 <div class="input-group-append">
200 <button 200 <button
201 ladda="searchLoading" 201 ladda="searchLoading"
202 class="btn btn-outline-secondary form-control-sm" 202 class="btn btn-outline-secondary form-control-sm"
203 type="button" 203 type="button"
204 ng-click="seleccionarLocalidad(13)" 204 ng-click="seleccionarLocalidad(13)"
205 > 205 >
206 <i class="fa fa-search" aria-hidden="true"></i> 206 <i class="fa fa-search" aria-hidden="true"></i>
207 </button> 207 </button>
208 </div> 208 </div>
209 </div> 209 </div>
210 </div> 210 </div>
211 </div> 211 </div>
212 <div class="row"> 212 <div class="row">
213 <div class="col-md-6 col-12"> 213 <div class="col-md-6 col-12">
214 <label>Zona</label> 214 <label>Zona</label>
215 <div class="input-group"> 215 <div class="input-group">
216 <input 216 <input
217 type="text" 217 type="text"
218 class="form-control form-control-sm" 218 class="form-control form-control-sm"
219 ng-model="cliente.zona.NOM" 219 ng-model="cliente.zona.NOM"
220 ng-keypress="seleccionarZona($event.keyCode)" 220 ng-keypress="seleccionarZona($event.keyCode)"
221 placeholder="Ingrese zona" 221 placeholder="Ingrese zona"
222 ng-required="true" 222 ng-required="true"
223 ng-focus="focus(6)" 223 ng-focus="focus(6)"
224 foca-focus="focused == 6" 224 foca-focus="focused == 6"
225 teclado-virtual 225 teclado-virtual
226 /> 226 />
227 <div class="input-group-append"> 227 <div class="input-group-append">
228 <button 228 <button
229 ladda="searchLoading" 229 ladda="searchLoading"
230 class="btn btn-outline-secondary form-control-sm" 230 class="btn btn-outline-secondary form-control-sm"
231 type="button" 231 type="button"
232 ng-click="seleccionarZona(13)" 232 ng-click="seleccionarZona(13)"
233 > 233 >
234 <i class="fa fa-search" aria-hidden="true"></i> 234 <i class="fa fa-search" aria-hidden="true"></i>
235 </button> 235 </button>
236 </div> 236 </div>
237 </div> 237 </div>
238 </div> 238 </div>
239 <div class="col-md-6 col-12"> 239 <div class="col-md-6 col-12">
240 <label>Actividad</label> 240 <label>Actividad</label>
241 <div class="input-group"> 241 <div class="input-group">
242 <input 242 <input
243 type="text" 243 type="text"
244 class="form-control form-control-sm" 244 class="form-control form-control-sm"
245 ng-model="cliente.actividad.NOM" 245 ng-model="cliente.actividad.NOM"
246 ng-keypress="seleccionarActividad($event.keyCode)" 246 ng-keypress="seleccionarActividad($event.keyCode)"
247 placeholder="Ingrese actividad" 247 placeholder="Ingrese actividad"
248 ng-required="true" 248 ng-required="true"
249 ng-focus="focus(7)" 249 ng-focus="focus(7)"
250 foca-focus="focused == 7" 250 foca-focus="focused == 7"
251 teclado-virtual 251 teclado-virtual
252 /> 252 />
253 <div class="input-group-append"> 253 <div class="input-group-append">
254 <button 254 <button
255 ladda="searchLoading" 255 ladda="searchLoading"
256 class="btn btn-outline-secondary form-control-sm" 256 class="btn btn-outline-secondary form-control-sm"
257 type="button" 257 type="button"
258 ng-click="seleccionarActividad(13)" 258 ng-click="seleccionarActividad(13)"
259 > 259 >
260 <i class="fa fa-search" aria-hidden="true"></i> 260 <i class="fa fa-search" aria-hidden="true"></i>
261 </button> 261 </button>
262 </div> 262 </div>
263 </div> 263 </div>
264 </div> 264 </div>
265 </div> 265 </div>
266 <div class="row"> 266 <div class="row">
267 <div class="col-md-6 col-12"> 267 <div class="col-md-6 col-12">
268 <label>Cobrador</label>
269 <div class="input-group">
270 <input
271 type="text"
272 class="form-control form-control-sm"
273 ng-model="cliente.cobrador.NomVen"
274 ng-keypress="seleccionarCobrador($event.keyCode)"
275 placeholder="Ingrese cobrador"
276 ng-focus="focus(8)"
277 foca-focus="focused == 8"
278 teclado-virtual
279 />
280 <div class="input-group-append">
281 <button
282 ladda="searchLoading"
283 class="btn btn-outline-secondary form-control-sm"
284 type="button"
285 ng-click="seleccionarCobrador(13)"
286 >
287 <i class="fa fa-search" aria-hidden="true"></i>
288 </button>
289 </div>
290 </div>
291 </div>
292 <div class="col-md-6 col-12">
268 <label>Vendedor</label> 293 <label>Vendedor</label>
269 <div class="input-group"> 294 <div class="input-group">
270 <input 295 <input
271 type="text" 296 type="text"
272 class="form-control form-control-sm" 297 class="form-control form-control-sm"
273 ng-model="vendedor.NomVen" 298 ng-model="vendedor.NomVen"
274 disabled="true" 299 disabled="true"
275 /> 300 />
276 </div> 301 </div>
277 </div> 302 </div>
303 </div>
304 <div class="row">
278 <div class="col-6 d-flex"> 305 <div class="col-6 d-flex">
279 <div class="custom-control custom-checkbox mt-auto"> 306 <div class="custom-control custom-checkbox mt-auto">
280 <input 307 <input
281 type="checkbox" 308 type="checkbox"
282 class="custom-control-input" 309 class="custom-control-input"
283 id="checkDistribuidor" 310 id="checkDistribuidor"
284 ng-model="cliente.ES_MAY" 311 ng-model="cliente.ES_MAY"
285 checked 312 checked
286 disabled="disabled"> 313 disabled="disabled">
287 <label class="custom-control-label" for="checkDistribuidor">¿Este cliente es distribuidor?</label> 314 <label class="custom-control-label" for="checkDistribuidor">¿Este cliente es distribuidor?</label>
288 </div> 315 </div>
289 </div> 316 </div>
290 </div> 317 </div>
291 </uib-tab> 318 </uib-tab>
292 <uib-tab heading="Datos impositivos"> 319 <uib-tab heading="Datos impositivos">
293 <div class="row"> 320 <div class="row">
294 <div class="col-md-7 col-12"> 321 <div class="col-md-7 col-12">
295 <label>Responsabilidad ante el IVA</label> 322 <label>Responsabilidad ante el IVA</label>
296 <div class="input-group"> 323 <div class="input-group">
297 <input 324 <input
298 type="text" 325 type="text"
299 class="form-control form-control-sm" 326 class="form-control form-control-sm"
300 ng-model="cliente.iva.NOMBRE" 327 ng-model="cliente.iva.NOMBRE"
301 ng-keypress="seleccionarIva($event.keyCode)" 328 ng-keypress="seleccionarIva($event.keyCode)"
302 ng-required="true" 329 ng-required="true"
303 ng-focus="focus(8)" 330 ng-focus="focus(9)"
304 foca-focus="focused == 8" 331 foca-focus="focused == 9"
305 teclado-virtual 332 teclado-virtual
306 /> 333 />
307 <div class="input-group-append"> 334 <div class="input-group-append">
308 <button 335 <button
309 ladda="searchLoading" 336 ladda="searchLoading"
310 class="btn btn-outline-secondary form-control-sm" 337 class="btn btn-outline-secondary form-control-sm"
311 type="button" 338 type="button"
312 ng-click="seleccionarIva(13)" 339 ng-click="seleccionarIva(13)"
313 > 340 >
314 <i class="fa fa-search" aria-hidden="true"></i> 341 <i class="fa fa-search" aria-hidden="true"></i>
315 </button> 342 </button>
316 </div> 343 </div>
317 </div> 344 </div>
318 </div> 345 </div>
319 <div class="col-md-5 col-12"> 346 <div class="col-md-5 col-12">
320 <label>Factura que emite</label> 347 <label>Factura que emite</label>
321 <div class="input-group"> 348 <div class="input-group">
322 <input 349 <input
323 type="text" 350 type="text"
324 class="form-control form-control-sm" 351 class="form-control form-control-sm"
325 placeholder="Ingrese factura que emite" 352 placeholder="Ingrese factura que emite"
326 ng-model="cliente.tipoFactura.NOMBRE" 353 ng-model="cliente.tipoFactura.NOMBRE"
327 ng-required="true" 354 ng-required="true"
328 ng-keypress="seleccionarTipoFactura(13)" 355 ng-keypress="seleccionarTipoFactura(13)"
329 ng-focus="focus(9)" 356 ng-focus="focus(10)"
330 foca-focus="focused == 9" 357 foca-focus="focused == 10"
331 teclado-virtual> 358 teclado-virtual>
332 <div class="input-group-append"> 359 <div class="input-group-append">
333 <button 360 <button
334 ladda="searchLoading" 361 ladda="searchLoading"
335 class="btn btn-outline-secondary form-control-sm" 362 class="btn btn-outline-secondary form-control-sm"
336 type="button" 363 type="button"
337 ng-click="seleccionarTipoFactura(13)" 364 ng-click="seleccionarTipoFactura(13)"
338 > 365 >
339 <i class="fa fa-search" aria-hidden="true"></i> 366 <i class="fa fa-search" aria-hidden="true"></i>
340 </button> 367 </button>
341 </div> 368 </div>
342 </div> 369 </div>
343 </div> 370 </div>
344 </div> 371 </div>
345 <div class="row"> 372 <div class="row">
346 <div class="col-md-4 col-12"> 373 <div class="col-md-4 col-12">
347 <label>CUIT</label> 374 <label>CUIT</label>
348 <div class="input-group"> 375 <div class="input-group">
349 <input 376 <input
350 type="text" 377 type="text"
351 class="form-control form-control-sm" 378 class="form-control form-control-sm"
352 placeholder="Ingrese CUIT" 379 placeholder="Ingrese CUIT"
353 ng-model="cliente.CUIT" 380 ng-model="cliente.CUIT"
354 ng-required="true" 381 ng-required="true"
355 ng-pattern="regexCuit" 382 ng-pattern="regexCuit"
356 ng-maxlength="13" 383 ng-maxlength="13"
357 ng-keypress="next($event.keyCode)" 384 ng-keypress="next($event.keyCode)"
358 ng-focus="focus(10)" 385 ng-focus="focus(11)"
359 foca-focus="focused == 10" 386 foca-focus="focused == 11"
360 teclado-virtual> 387 teclado-virtual>
361 </div> 388 </div>
362 </div> 389 </div>
363 <div class="col-md-4 col-12"> 390 <div class="col-md-4 col-12">
364 <label>Clase de comprobante</label> 391 <label>Clase de comprobante</label>
365 <div class="input-group"> 392 <div class="input-group">
366 <input 393 <input
367 type="text" 394 type="text"
368 class="form-control form-control-sm" 395 class="form-control form-control-sm"
369 placeholder="Ingrese clase de comprobante" 396 placeholder="Ingrese clase de comprobante"
370 ng-keypress="seleccionarTipoComprobante($event.keyCode)" 397 ng-keypress="seleccionarTipoComprobante($event.keyCode)"
371 ng-model="cliente.tipoComprobante.NOMBRE" 398 ng-model="cliente.tipoComprobante.NOMBRE"
372 ng-required="true" 399 ng-required="true"
373 ng-focus="focus(11)" 400 ng-focus="focus(12)"
374 foca-focus="focused == 11" 401 foca-focus="focused == 12"
375 teclado-virtual> 402 teclado-virtual>
376 <div class="input-group-append"> 403 <div class="input-group-append">
377 <button 404 <button
378 ladda="searchLoading" 405 ladda="searchLoading"
379 class="btn btn-outline-secondary form-control-sm" 406 class="btn btn-outline-secondary form-control-sm"
380 type="button" 407 type="button"
381 ng-click="seleccionarTipoComprobante(13)" 408 ng-click="seleccionarTipoComprobante(13)"
382 > 409 >
383 <i class="fa fa-search" aria-hidden="true"></i> 410 <i class="fa fa-search" aria-hidden="true"></i>
384 </button> 411 </button>
385 </div> 412 </div>
386 </div> 413 </div>
387 </div> 414 </div>
388 <div class="col-md-4 col-12"> 415 <div class="col-md-4 col-12">
389 <label>Forma de pago</label> 416 <label>Forma de pago</label>
390 <div class="input-group"> 417 <div class="input-group">
391 <input 418 <input
392 type="text" 419 type="text"
393 class="form-control form-control-sm" 420 class="form-control form-control-sm"
394 placeholder="Ingrese forma de pago" 421 placeholder="Ingrese forma de pago"
395 ng-model="cliente.formaPago.NOMBRE" 422 ng-model="cliente.formaPago.NOMBRE"
396 ng-required="true" 423 ng-required="true"
397 ng-keypress="seleccionarFormaPago($event.keyCode)" 424 ng-keypress="seleccionarFormaPago($event.keyCode)"
398 ng-focus="focus(12)" 425 ng-focus="focus(13)"
399 foca-focus="focused == 12" 426 foca-focus="focused == 13"
400 teclado-virtual> 427 teclado-virtual>
401 <div class="input-group-append"> 428 <div class="input-group-append">
402 <button 429 <button
403 ladda="searchLoading" 430 ladda="searchLoading"
404 class="btn btn-outline-secondary form-control-sm" 431 class="btn btn-outline-secondary form-control-sm"
405 type="button" 432 type="button"
406 ng-click="seleccionarFormaPago(13)" 433 ng-click="seleccionarFormaPago(13)"
407 > 434 >
408 <i class="fa fa-search" aria-hidden="true"></i> 435 <i class="fa fa-search" aria-hidden="true"></i>
409 </button> 436 </button>
410 </div> 437 </div>
411 </div> 438 </div>
412 </div> 439 </div>
413 </div> 440 </div>
414 </uib-tab> 441 </uib-tab>
415 </uib-tabset> 442 </uib-tabset>
416 </form> 443 </form>
417 </div> 444 </div>
418 <div class="modal-footer py-1"> 445 <div class="modal-footer py-1">
419 <nav ng-show="currentPageClientes.length > 0 && primerBusqueda && !ingreso" class="mr-auto"> 446 <nav ng-show="currentPageClientes.length > 0 && primerBusqueda && !ingreso" class="mr-auto">
420 <ul class="pagination pagination-sm mb-0"> 447 <ul class="pagination pagination-sm mb-0">
421 <li class="page-item" ng-class="{'disabled': currentPage == 1}"> 448 <li class="page-item" ng-class="{'disabled': currentPage == 1}">
422 <a class="page-link" href="javascript:void()" ng-click="selectPage(currentPage - 1)"> 449 <a class="page-link" href="javascript:void()" ng-click="selectPage(currentPage - 1)">
423 <span aria-hidden="true">&laquo;</span> 450 <span aria-hidden="true">&laquo;</span>
424 <span class="sr-only">Anterior</span> 451 <span class="sr-only">Anterior</span>
425 </a> 452 </a>
426 </li> 453 </li>
427 <li 454 <li
428 class="page-item" 455 class="page-item"
429 ng-repeat="pagina in paginas" 456 ng-repeat="pagina in paginas"
430 ng-class="{'active': pagina == currentPage}" 457 ng-class="{'active': pagina == currentPage}"
431 > 458 >
432 <a 459 <a
433 class="page-link" 460 class="page-link"
434 href="javascript:void()" 461 href="javascript:void()"
435 ng-click="selectPage(pagina)" 462 ng-click="selectPage(pagina)"
436 ng-bind="pagina" 463 ng-bind="pagina"
437 ></a> 464 ></a>
438 </li> 465 </li>
439 <li class="page-item" ng-class="{'disabled': currentPage == lastPage}"> 466 <li class="page-item" ng-class="{'disabled': currentPage == lastPage}">
440 <a class="page-link" href="javascript:void()" ng-click="selectPage(currentPage + 1)"> 467 <a class="page-link" href="javascript:void()" ng-click="selectPage(currentPage + 1)">
441 <span aria-hidden="true">&raquo;</span> 468 <span aria-hidden="true">&raquo;</span>
442 <span class="sr-only">Siguiente</span> 469 <span class="sr-only">Siguiente</span>
443 </a> 470 </a>
444 </li> 471 </li>
445 </ul> 472 </ul>
446 </nav> 473 </nav>
447 <button class="btn btn-sm btn-secondary" type="button" ng-click="cancel()">Cancelar</button> 474 <button class="btn btn-sm btn-secondary" type="button" ng-click="cancel()">Cancelar</button>
448 <button 475 <button
449 class="btn btn-sm btn-primary" 476 class="btn btn-sm btn-primary"
450 type="button" 477 type="button"
451 ng-show="ingreso" 478 ng-show="ingreso"
452 ng-click="guardar()" 479 ng-click="guardar()"
453 ng-disabled="!formCliente.$valid">Guardar</button> 480 ng-disabled="!formCliente.$valid">Guardar</button>
454 </div> 481 </div>
455 482