diff --git a/src/js/controller.js b/src/js/controller.js index a11711b..1cf6147 100644 --- a/src/js/controller.js +++ b/src/js/controller.js @@ -123,6 +123,8 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', var cobranza = {}; var cheques = []; var cuerpos = []; + var imgs = []; + var observacion; //TODO: habilitar edición $scope.editando = false; focaBotoneraLateralService.startGuardar(); @@ -145,11 +147,12 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', NCU: $scope.facturaTabla[i].NCU }; cuerpos.push(cuerpoFactura); + } for (var j = 0; j < $scope.cobrosTabla.length; j++) { - var efectivo = $scope.cobrosTabla[j].tipo === 'Efectivo' ? true : false; + var efectivo = $scope.cobrosTabla[j].tipo === 'Efectivo'; var cuerpoCobros = { CYV: 'V', TIP: 'C', @@ -157,10 +160,9 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', PVE: $scope.puntoVenta, NCO: $scope.comprobante, LOP: 'P', - TIL: 'EF', - COM: efectivo ? 'ef(COBRO EN EFECTIVO)' : 'ch(' + - $scope.cobrosTabla[j].numero + ')' + $scope.cobrosTabla[j].banco.desbco, - FEC: efectivo ? + TIL: $scope.cobrosTabla[j].til, + COM: efectivo ? 'ef(COBRO EN EFECTIVO)' : $scope.cobrosTabla[j].tipo, + FEC: !$scope.cobrosTabla[j].fechaPresentacion ? $scope.cobrosTabla[j].fecha .toISOString().slice(0, 19).replace('T', ' ') : $scope.cobrosTabla[j].fechaPresentacion @@ -171,7 +173,10 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', }; cuerpos.push(cuerpoCobros); - if(!efectivo) { + if($scope.cobrosTabla[j].observacion) + observacion = $scope.cobrosTabla[j].observacion; + + if($scope.cobrosTabla[j].banco) { var cheque = { BCO: $scope.cobrosTabla[j].banco.ID, NUM: $scope.comprobante, @@ -217,6 +222,8 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', }; cheques.push(cheque); } + if ($scope.cobrosTabla[j].imgs) imgs = $scope.cobrosTabla[j].imgs; + } cobranza = { @@ -267,7 +274,9 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', DAT1: 'C', CLI: $scope.cobranza.cliente.COD }, - cliente: $scope.cobranza.cliente + cliente: $scope.cobranza.cliente, + imgs: imgs, + observacion: observacion }; //COPIO cobranzaMail Y A cobranza LE ELIMINO EL VALOR NCU DE LOS CUERPOS var cobranzaMail = angular.copy(cobranza); @@ -276,7 +285,6 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', return c; }); - focaCrearCobranzaService .guardarCobranza(cobranza) .then( @@ -444,7 +452,7 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', modalInstance.result.then( function(cheque) { var cobro = { - tipo: 'Ch' + '(' + cheque.numero + ')' + ' ' + cheque.banco.desbco, + tipo: 'ch' + '(' + cheque.numero + ')' + ' ' + cheque.banco.desbco, numero: cheque.numero, banco: cheque.banco, fecha: cheque.fechaEmision.toLocaleDateString() + '-' + @@ -455,7 +463,8 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', localidad: cheque.localidad, librador: cheque.librador, provincia: cheque.provincia, - observaciones: cheque.observaciones + observaciones: cheque.observaciones, + til: 'EF' }; $scope.cobrosTabla.push(cobro); }, function() { @@ -484,7 +493,8 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', var cobro = { tipo: 'Efectivo', fecha: new Date(), - importe: efectivo * $scope.cobranza.cotizacion.VENDEDOR + importe: efectivo * $scope.cobranza.cotizacion.VENDEDOR, + til: 'EF' }; $scope.cobrosTabla = $scope.cobrosTabla.filter(function(a) { return a.tipo !== 'Efectivo'; @@ -496,6 +506,47 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', ); }; + $scope.seleccionarDetalles = function() { + var modalInstance = $uibModal.open( + { + ariaLabelledBy: 'Carga de detalles', + templateUrl: 'modal-detalles.html', + controller: 'focaModalDetallesController', + size: 'lg', + resolve: { + sugerido: function() { + var sugerido = $scope.getTotalDeuda() + $scope.getTotalCobrado(); + return sugerido < 0 ? sugerido : null; + } + } + } + ); + modalInstance.result.then( + function(detalles) { + var cobro = { + tipo: 'de(COBRO POR DETALLES)', + fecha: new Date(), + importe: detalles.monto * $scope.cobranza.cotizacion.VENDEDOR, + imgs: detalles.imgs, + til: 'DE', + observacion: detalles.observacion + }; + var existe = false; + + $scope.cobrosTabla.forEach(function(c, idx) { + if (c.til === 'DE') { + $scope.cobrosTabla[idx] = cobro; + existe = true; + } + }); + if (!existe) { + $scope.cobrosTabla.push(cobro); + } + console.log('$scope.cobrosTabla', $scope.cobrosTabla); + }, function() {} + ); + }; + $scope.seleccionarMoneda = function() { var parametrosModal = { titulo: 'Búsqueda de monedas', @@ -568,8 +619,9 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', nombre: 'Codigo', filtro: { nombre: 'rellenarDigitos', - parametro: 3} - }, + parametro: 3 + } + }, { propiedad: 'NOM', nombre: 'Nombre' @@ -608,7 +660,7 @@ angular.module('focaCrearCobranza') .controller('cobranzaController', }; $scope.getSubTotal = function() { - if($scope.articuloACargar) { + if ($scope.articuloACargar) { return $scope.articuloACargar.precio * $scope.articuloACargar.cantidad; } }; diff --git a/src/views/cobranza.html b/src/views/cobranza.html index be4ac69..f51cade 100644 --- a/src/views/cobranza.html +++ b/src/views/cobranza.html @@ -174,6 +174,12 @@ ng-click="seleccionarEfectivo()" >Efectivo +