diff --git a/src/js/controller.js b/src/js/controller.js index 9512046..92a180c 100644 --- a/src/js/controller.js +++ b/src/js/controller.js @@ -51,7 +51,7 @@ angular.module('focaCrearRemito').controller('remitoController', function init() { $scope.$broadcast('cleanCabecera'); - + $scope.remitoIsDirty = false; $scope.remito = { id: 0, estado: 0, @@ -109,6 +109,7 @@ angular.module('focaCrearRemito').controller('remitoController', modalInstance.result.then( function (notaPedido) { //añado cabeceras + $scope.remitoIsDirty = true; $scope.notaPedido.id = notaPedido.id; $scope.$broadcast('removeCabecera', 'Bomba:'); $scope.$broadcast('removeCabecera', 'Kilometros:'); @@ -221,6 +222,16 @@ angular.module('focaCrearRemito').controller('remitoController', }; $scope.seleccionarRemito = function () { + if ($scope.remitoIsDirty) { + focaModalService.confirm("¿Desea continuar? Se perderan los cambios") + .then(function () { + $scope.getRemitoModal(); + }); + } else { + $scope.getRemitoModal() + } + }; + $scope.getRemitoModal = function () { var modalInstance = $uibModal.open( { ariaLabelledBy: 'Busqueda de Remito', @@ -235,8 +246,7 @@ angular.module('focaCrearRemito').controller('remitoController', // funcion ejecutada cuando se cancela el modal } ); - }; - + } //validacion por domicilio y por plazo pago $scope.crearRemito = function () { if (!$scope.remito.vendedor.NUM) { @@ -483,6 +493,7 @@ angular.module('focaCrearRemito').controller('remitoController', }; focaModalService.modal(parametrosModal).then( function (vendedor) { + $scope.remitoIsDirty = true; $scope.$broadcast('addCabecera', { label: 'Vendedor:', valor: $filter('rellenarDigitos')(vendedor.NUM, 3) + ' - ' + @@ -723,7 +734,7 @@ angular.module('focaCrearRemito').controller('remitoController', ); modalInstance.result.then( function (datos) { - + $scope.remitoIsDirty = true; $scope.remito.proveedor = proveedor; $scope.remito.idProveedor = proveedor.COD; $scope.$broadcast('addCabecera', { @@ -815,6 +826,7 @@ angular.module('focaCrearRemito').controller('remitoController', ); modalInstance.result.then( function (cotizacion) { + $scope.remitoIsDirty = true; var articulosTablaTemp = $scope.remito.articulosRemito; for (var i = 0; i < articulosTablaTemp.length; i++) { articulosTablaTemp[i].precio = articulosTablaTemp[i].precio * @@ -1079,6 +1091,7 @@ angular.module('focaCrearRemito').controller('remitoController', valor: $filter('rellenarDigitos')(getCabeceraPuntoDescarga(puntosDescarga)) }); } + $scope.remitoIsDirty = false; addArrayCabecera(cabeceras); }