Commit f1084d43f3b4b419809c25453f3394a0141dc31d
1 parent
2bc44e6eae
Exists in
master
cobrar por detalle
Showing
2 changed files
with
72 additions
and
14 deletions
Show diff stats
src/js/controller.js
... | ... | @@ -123,6 +123,8 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', |
123 | 123 | var cobranza = {}; |
124 | 124 | var cheques = []; |
125 | 125 | var cuerpos = []; |
126 | + var imgs = []; | |
127 | + var observacion; | |
126 | 128 | //TODO: habilitar edición |
127 | 129 | $scope.editando = false; |
128 | 130 | focaBotoneraLateralService.startGuardar(); |
... | ... | @@ -145,11 +147,12 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', |
145 | 147 | NCU: $scope.facturaTabla[i].NCU |
146 | 148 | }; |
147 | 149 | cuerpos.push(cuerpoFactura); |
150 | + | |
148 | 151 | } |
149 | 152 | |
150 | 153 | for (var j = 0; j < $scope.cobrosTabla.length; j++) { |
151 | 154 | |
152 | - var efectivo = $scope.cobrosTabla[j].tipo === 'Efectivo' ? true : false; | |
155 | + var efectivo = $scope.cobrosTabla[j].tipo === 'Efectivo'; | |
153 | 156 | var cuerpoCobros = { |
154 | 157 | CYV: 'V', |
155 | 158 | TIP: 'C', |
... | ... | @@ -157,10 +160,9 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', |
157 | 160 | PVE: $scope.puntoVenta, |
158 | 161 | NCO: $scope.comprobante, |
159 | 162 | LOP: 'P', |
160 | - TIL: 'EF', | |
161 | - COM: efectivo ? 'ef(COBRO EN EFECTIVO)' : 'ch(' + | |
162 | - $scope.cobrosTabla[j].numero + ')' + $scope.cobrosTabla[j].banco.desbco, | |
163 | - FEC: efectivo ? | |
163 | + TIL: $scope.cobrosTabla[j].til, | |
164 | + COM: efectivo ? 'ef(COBRO EN EFECTIVO)' : $scope.cobrosTabla[j].tipo, | |
165 | + FEC: !$scope.cobrosTabla[j].fechaPresentacion ? | |
164 | 166 | $scope.cobrosTabla[j].fecha |
165 | 167 | .toISOString().slice(0, 19).replace('T', ' ') : |
166 | 168 | $scope.cobrosTabla[j].fechaPresentacion |
... | ... | @@ -171,7 +173,10 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', |
171 | 173 | }; |
172 | 174 | cuerpos.push(cuerpoCobros); |
173 | 175 | |
174 | - if(!efectivo) { | |
176 | + if($scope.cobrosTabla[j].observacion) | |
177 | + observacion = $scope.cobrosTabla[j].observacion; | |
178 | + | |
179 | + if($scope.cobrosTabla[j].banco) { | |
175 | 180 | var cheque = { |
176 | 181 | BCO: $scope.cobrosTabla[j].banco.ID, |
177 | 182 | NUM: $scope.comprobante, |
... | ... | @@ -217,6 +222,8 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', |
217 | 222 | }; |
218 | 223 | cheques.push(cheque); |
219 | 224 | } |
225 | + if ($scope.cobrosTabla[j].imgs) imgs = $scope.cobrosTabla[j].imgs; | |
226 | + | |
220 | 227 | } |
221 | 228 | |
222 | 229 | cobranza = { |
... | ... | @@ -267,7 +274,9 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', |
267 | 274 | DAT1: 'C', |
268 | 275 | CLI: $scope.cobranza.cliente.COD |
269 | 276 | }, |
270 | - cliente: $scope.cobranza.cliente | |
277 | + cliente: $scope.cobranza.cliente, | |
278 | + imgs: imgs, | |
279 | + observacion: observacion | |
271 | 280 | }; |
272 | 281 | //COPIO cobranzaMail Y A cobranza LE ELIMINO EL VALOR NCU DE LOS CUERPOS |
273 | 282 | var cobranzaMail = angular.copy(cobranza); |
... | ... | @@ -276,7 +285,6 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', |
276 | 285 | return c; |
277 | 286 | }); |
278 | 287 | |
279 | - | |
280 | 288 | focaCrearCobranzaService |
281 | 289 | .guardarCobranza(cobranza) |
282 | 290 | .then( |
... | ... | @@ -444,7 +452,7 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', |
444 | 452 | modalInstance.result.then( |
445 | 453 | function(cheque) { |
446 | 454 | var cobro = { |
447 | - tipo: 'Ch' + '(' + cheque.numero + ')' + ' ' + cheque.banco.desbco, | |
455 | + tipo: 'ch' + '(' + cheque.numero + ')' + ' ' + cheque.banco.desbco, | |
448 | 456 | numero: cheque.numero, |
449 | 457 | banco: cheque.banco, |
450 | 458 | fecha: cheque.fechaEmision.toLocaleDateString() + '-' + |
... | ... | @@ -455,7 +463,8 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', |
455 | 463 | localidad: cheque.localidad, |
456 | 464 | librador: cheque.librador, |
457 | 465 | provincia: cheque.provincia, |
458 | - observaciones: cheque.observaciones | |
466 | + observaciones: cheque.observaciones, | |
467 | + til: 'EF' | |
459 | 468 | }; |
460 | 469 | $scope.cobrosTabla.push(cobro); |
461 | 470 | }, function() { |
... | ... | @@ -484,7 +493,8 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', |
484 | 493 | var cobro = { |
485 | 494 | tipo: 'Efectivo', |
486 | 495 | fecha: new Date(), |
487 | - importe: efectivo * $scope.cobranza.cotizacion.VENDEDOR | |
496 | + importe: efectivo * $scope.cobranza.cotizacion.VENDEDOR, | |
497 | + til: 'EF' | |
488 | 498 | }; |
489 | 499 | $scope.cobrosTabla = $scope.cobrosTabla.filter(function(a) { |
490 | 500 | return a.tipo !== 'Efectivo'; |
... | ... | @@ -496,6 +506,47 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', |
496 | 506 | ); |
497 | 507 | }; |
498 | 508 | |
509 | + $scope.seleccionarDetalles = function() { | |
510 | + var modalInstance = $uibModal.open( | |
511 | + { | |
512 | + ariaLabelledBy: 'Carga de detalles', | |
513 | + templateUrl: 'modal-detalles.html', | |
514 | + controller: 'focaModalDetallesController', | |
515 | + size: 'lg', | |
516 | + resolve: { | |
517 | + sugerido: function() { | |
518 | + var sugerido = $scope.getTotalDeuda() + $scope.getTotalCobrado(); | |
519 | + return sugerido < 0 ? sugerido : null; | |
520 | + } | |
521 | + } | |
522 | + } | |
523 | + ); | |
524 | + modalInstance.result.then( | |
525 | + function(detalles) { | |
526 | + var cobro = { | |
527 | + tipo: 'de(COBRO POR DETALLES)', | |
528 | + fecha: new Date(), | |
529 | + importe: detalles.monto * $scope.cobranza.cotizacion.VENDEDOR, | |
530 | + imgs: detalles.imgs, | |
531 | + til: 'DE', | |
532 | + observacion: detalles.observacion | |
533 | + }; | |
534 | + var existe = false; | |
535 | + | |
536 | + $scope.cobrosTabla.forEach(function(c, idx) { | |
537 | + if (c.til === 'DE') { | |
538 | + $scope.cobrosTabla[idx] = cobro; | |
539 | + existe = true; | |
540 | + } | |
541 | + }); | |
542 | + if (!existe) { | |
543 | + $scope.cobrosTabla.push(cobro); | |
544 | + } | |
545 | + console.log('$scope.cobrosTabla', $scope.cobrosTabla); | |
546 | + }, function() {} | |
547 | + ); | |
548 | + }; | |
549 | + | |
499 | 550 | $scope.seleccionarMoneda = function() { |
500 | 551 | var parametrosModal = { |
501 | 552 | titulo: 'Búsqueda de monedas', |
... | ... | @@ -568,8 +619,9 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', |
568 | 619 | nombre: 'Codigo', |
569 | 620 | filtro: { |
570 | 621 | nombre: 'rellenarDigitos', |
571 | - parametro: 3} | |
572 | - }, | |
622 | + parametro: 3 | |
623 | + } | |
624 | + }, | |
573 | 625 | { |
574 | 626 | propiedad: 'NOM', |
575 | 627 | nombre: 'Nombre' |
... | ... | @@ -608,7 +660,7 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', |
608 | 660 | }; |
609 | 661 | |
610 | 662 | $scope.getSubTotal = function() { |
611 | - if($scope.articuloACargar) { | |
663 | + if ($scope.articuloACargar) { | |
612 | 664 | return $scope.articuloACargar.precio * $scope.articuloACargar.cantidad; |
613 | 665 | } |
614 | 666 | }; |
src/views/cobranza.html
... | ... | @@ -174,6 +174,12 @@ |
174 | 174 | ng-click="seleccionarEfectivo()" |
175 | 175 | >Efectivo</a> |
176 | 176 | </td> |
177 | + <td class="col-2 border-top-0"> | |
178 | + <a | |
179 | + class="form-control form-control-sm btn btn-secondary" | |
180 | + ng-click="seleccionarDetalles()" | |
181 | + >Detalle</a> | |
182 | + </td> | |
177 | 183 | </tr> |
178 | 184 | <tr class="d-flex"> |
179 | 185 | <td class="col-auto px-1 border-top-0"> |