From 05d879f7030d7109bfb7e32c597fc619072a3eda Mon Sep 17 00:00:00 2001 From: Jose Pinto Date: Fri, 22 Mar 2019 12:42:18 -0300 Subject: [PATCH] aplico modal mail --- src/js/controller.js | 88 ++++++++++++++++++++++++--------------- src/js/controllerComprobante.js | 61 --------------------------- src/js/service.js | 5 +-- src/views/remito-comprobante.html | 42 ------------------- 4 files changed, 56 insertions(+), 140 deletions(-) delete mode 100644 src/js/controllerComprobante.js delete mode 100644 src/views/remito-comprobante.html diff --git a/src/js/controller.js b/src/js/controller.js index a97247e..5db8bfb 100644 --- a/src/js/controller.js +++ b/src/js/controller.js @@ -91,7 +91,7 @@ angular.module('focaCrearRemito') .controller('remitoController', }, true); $scope.seleccionarNotaPedido = function() { - if(varlidarRemitoFacturado()) { + if (varlidarRemitoFacturado()) { var modalInstance = $uibModal.open( { ariaLabelledBy: 'Busqueda de Nota de Pedido', @@ -202,7 +202,7 @@ angular.module('focaCrearRemito') .controller('remitoController', remitoBusinessService.calcularArticulos($scope.remito.articulosRemito, notaPedido.cotizacion.VENDEDOR); - if(notaPedido.idPrecioCondicion > 0) { + if (notaPedido.idPrecioCondicion > 0) { $scope.idLista = notaPedido.precioCondicion.idListaPrecio; }else { $scope.idLista = -1; @@ -321,7 +321,7 @@ angular.module('focaCrearRemito') .controller('remitoController', $scope.saveLoading = false; //TODO: updatear plazos - if($scope.remito.id === 0) { + if ($scope.remito.id === 0) { var plazos = $scope.remito.remitoPlazo; for(var j = 0; j < plazos.length; j++) { @@ -332,16 +332,10 @@ angular.module('focaCrearRemito') .controller('remitoController', crearRemitoService.crearPlazosParaRemito(json); } } - - $uibModal.open({ - templateUrl: 'remito-comprobante.html', - controller: 'focaRemitoComprobanteController', - resolve: { - parametros: { - idRemito: data.data.id - } - } - }); + abrirModalMail(data.data.id, $scope.remito.cliente, $filter('comprobante')([ + data.data.sucursal, + data.data.numero + ])); init(); @@ -355,7 +349,7 @@ angular.module('focaCrearRemito') .controller('remitoController', }; $scope.seleccionarProductos = function() { - if($scope.idLista === undefined) { + if ($scope.idLista === undefined) { focaModalService.alert( 'Primero seleccione una lista de precio y condicion'); return; @@ -409,7 +403,7 @@ angular.module('focaCrearRemito') .controller('remitoController', }; $scope.seleccionarPuntosDeDescarga = function() { - if(!$scope.remito.cliente.COD || !$scope.remito.domicilio.id) { + if (!$scope.remito.cliente.COD || !$scope.remito.domicilio.id) { focaModalService.alert('Primero seleccione un cliente y un domicilio'); return; }else { @@ -437,7 +431,7 @@ angular.module('focaCrearRemito') .controller('remitoController', var puntosStamp = ''; puntosDescarga.forEach(function(punto, idx, arr) { puntosStamp += punto.descripcion; - if((idx + 1) !== arr.length) puntosStamp += ', '; + if ((idx + 1) !== arr.length) puntosStamp += ', '; }); $scope.$broadcast('addCabecera', { @@ -457,7 +451,7 @@ angular.module('focaCrearRemito') .controller('remitoController', return; } - if(varlidarRemitoFacturado()) { + if (varlidarRemitoFacturado()) { var parametrosModal = { titulo: 'Búsqueda vendedores', query: '/vendedor', @@ -524,7 +518,7 @@ angular.module('focaCrearRemito') .controller('remitoController', }; $scope.seleccionarProveedor = function(callback) { - if(varlidarRemitoFacturado()) { + if (varlidarRemitoFacturado()) { var parametrosModal = { titulo: 'Búsqueda de Proveedor', query: '/proveedor', @@ -604,14 +598,14 @@ angular.module('focaCrearRemito') .controller('remitoController', valor: domicilioStamp }); - if(domicilio.verPuntos) { + if (domicilio.verPuntos) { delete $scope.remito.domicilio.verPuntos; $scope.seleccionarPuntosDeDescarga(); }else { crearRemitoService .getPuntosDescargaByClienDom(domicilio.id, cliente.cod) .then(function(res) { - if(res.data.length) $scope.seleccionarPuntosDeDescarga(); + if (res.data.length) $scope.seleccionarPuntosDeDescarga(); }); } }, function() { @@ -642,7 +636,7 @@ angular.module('focaCrearRemito') .controller('remitoController', }; $scope.getSubTotal = function() { - if($scope.articuloACargar) { + if ($scope.articuloACargar) { return $scope.articuloACargar.precio * $scope.articuloACargar.cantidad; } }; @@ -652,7 +646,7 @@ angular.module('focaCrearRemito') .controller('remitoController', focaModalService.alert('Primero seleccione un cliente'); return; } - if(varlidarRemitoFacturado()) { + if (varlidarRemitoFacturado()) { var modalInstance = $uibModal.open( { ariaLabelledBy: 'Busqueda de Precio Condición', @@ -670,7 +664,7 @@ angular.module('focaCrearRemito') .controller('remitoController', function(precioCondicion) { var cabecera = ''; var plazosConcat = ''; - if(!Array.isArray(precioCondicion)) { + if (!Array.isArray(precioCondicion)) { $scope.remito.idPrecioCondicion = precioCondicion.id; $scope.remito.remitoPlazo = precioCondicion.plazoPago; $scope.idLista = precioCondicion.idListaPrecio; @@ -765,7 +759,7 @@ angular.module('focaCrearRemito') .controller('remitoController', }; $scope.seleccionarMoneda = function() { - if(varlidarRemitoFacturado()) { + if (varlidarRemitoFacturado()) { var parametrosModal = { titulo: 'Búsqueda de monedas', query: '/moneda', @@ -826,7 +820,7 @@ angular.module('focaCrearRemito') .controller('remitoController', $scope.remito.articulosRemito = articulosTablaTemp; $scope.remito.cotizacion.moneda = moneda; $scope.remito.cotizacion = cotizacion; - if(moneda.DETALLE === 'PESOS ARGENTINOS') { + if (moneda.DETALLE === 'PESOS ARGENTINOS') { $scope.$broadcast('removeCabecera', 'Moneda:'); $scope.$broadcast('removeCabecera', 'Fecha cotizacion:'); $scope.$broadcast('removeCabecera', 'Cotizacion:'); @@ -851,8 +845,8 @@ angular.module('focaCrearRemito') .controller('remitoController', }; $scope.agregarATabla = function(key) { - if(key === 13) { - if($scope.articuloACargar.cantidad === undefined || + if (key === 13) { + if ($scope.articuloACargar.cantidad === undefined || $scope.articuloACargar.cantidad === 0 || $scope.articuloACargar.cantidad === null ) { focaModalService.alert('El valor debe ser al menos 1'); @@ -882,9 +876,9 @@ angular.module('focaCrearRemito') .controller('remitoController', }; $scope.cambioEdit = function(articulo, propiedad) { - if(propiedad === 'cantidad') { + if (propiedad === 'cantidad') { articulo.editCantidad = true; - }else if(propiedad === 'precio') { + } else if (propiedad === 'precio') { articulo.editPrecio = true; } }; @@ -917,7 +911,7 @@ angular.module('focaCrearRemito') .controller('remitoController', }; //Recibe aviso si el teclado está en uso $rootScope.$on('usarTeclado', function(event, data) { - if(data) { + if (data) { $scope.mostrarTeclado = true; return; } @@ -926,14 +920,14 @@ angular.module('focaCrearRemito') .controller('remitoController', $scope.selectFocus = function($event) { // Si el teclado esta en uso no selecciona el valor - if($scope.mostrarTeclado) { + if ($scope.mostrarTeclado) { return; } $event.target.select(); }; function addArrayCabecera(array) { - for(var i = 0; i < array.length; i++) { + for (var i = 0; i < array.length; i++) { $scope.$broadcast('addCabecera',{ label: array[i].label, valor: array[i].valor @@ -951,9 +945,9 @@ angular.module('focaCrearRemito') .controller('remitoController', } function varlidarRemitoFacturado() { - if($scope.remito.estado !== 5) { + if ($scope.remito.estado !== 5) { return true; - }else { + } else { focaModalService.alert('No se puede editar un remito facturado'); return false(); } @@ -1104,5 +1098,31 @@ angular.module('focaCrearRemito') .controller('remitoController', $scope.$broadcast('removeCabecera', 'Domicilio:'); $scope.$broadcast('removeCabecera', 'Puntos de descarga:'); } + + function abrirModalMail(id, cliente, numeroRemito) { + focaModalService.mail( + { + titulo: 'Comprobante de remito Nº ' + numeroRemito, + descarga: { + nombre: numeroRemito + '.pdf', + url: '/remito/comprobante', + }, + envio: { + mailCliente: cliente.MAIL, + url: '/remito/mail', + }, + options: { + idRemito: id + } + } + ) + .then(function(res) { + if (res === false) { + abrirModalMail(id); + focaModalService.alert('Descarga o envíe su remito ' + + 'antes de cerrar esta ventana'); + } + }); + } } ]); diff --git a/src/js/controllerComprobante.js b/src/js/controllerComprobante.js deleted file mode 100644 index 3ab0224..0000000 --- a/src/js/controllerComprobante.js +++ /dev/null @@ -1,61 +0,0 @@ -angular.module('focaCrearRemito') - .controller('focaRemitoComprobanteController', [ - '$scope', - '$uibModalInstance', - 'crearRemitoService', - '$filter', - 'parametros', - 'FileSaver', - 'Blob', - function( - $scope, $uibModalInstance, crearRemitoService, $filter, - parametros, FileSaver, Blob - ) { - crearRemitoService.getRemitoById(parametros.idRemito).then(function(res) { - - $scope.remito = res.data; - }); - $scope.correoEnviado = false; - $scope.correoNoEnviado = false; - $scope.esperando = false; - - $scope.aceptar = function() { - $uibModalInstance.close(); - }; - - $scope.imprimir = function () { - $scope.esperando = true; - crearRemitoService.imprimirRemitoByIdRemito($scope.remito.id).then( - function(res) { - var data = new Blob([res.data], {type: 'application/pdf'}); - - FileSaver.saveAs( - data, - 'RE-R-' + $filter('comprobante')([ - $scope.remito.sucursal, - $scope.remito.numeroRemito - ]) + '.pdf' - ); - $scope.esperando = false; - } - ); - }; - - $scope.enviarCorreo = function(key) { - if(key !== 13) return; - $scope.esperando = true; - var options = { - para: $scope.remito.cliente.MAIL, - remito: $scope.remito.id - }; - - crearRemitoService.enviarCorreo(options).then(function() { - $scope.correoEnviado = true; - $scope.esperando = false; - }, function() { - $scope.esperando = false; - $scope.correoNoEnviado = true; - }); - }; - } - ]); diff --git a/src/js/service.js b/src/js/service.js index c4b52f7..1e20ba4 100644 --- a/src/js/service.js +++ b/src/js/service.js @@ -60,9 +60,8 @@ angular.module('focaCrearRemito') getNumeroRemito: function() { return $http.get(route + '/remito/numero-siguiente'); }, - imprimirRemitoByIdRemito: function(idRemito, original) { - var tipo = original ? '/original' : ''; - return $http.get(route + '/remito/comprobante/' + idRemito + tipo, { + imprimirRemitoByIdRemito: function(idRemito) { + return $http.get(route + '/remito/comprobante/' + idRemito , { responseType: 'arraybuffer' }); }, diff --git a/src/views/remito-comprobante.html b/src/views/remito-comprobante.html deleted file mode 100644 index 5c3cb84..0000000 --- a/src/views/remito-comprobante.html +++ /dev/null @@ -1,42 +0,0 @@ - - - -- 1.9.1