diff --git a/src/js/controller.js b/src/js/controller.js index 7944d98..94e9337 100644 --- a/src/js/controller.js +++ b/src/js/controller.js @@ -1,9 +1,9 @@ angular.module('focaActivarHojaRuta') .controller('focaActivarHojaRutaController', [ - '$scope', 'focaActivarHojaRutaService', '$location', 'focaModalService', - '$uibModal', 'focaBotoneraLateralService', '$timeout', - function($scope, focaActivarHojaRutaService, $location, focaModalService, - $uibModal, focaBotoneraLateralService, $timeout) { + '$scope', 'focaActivarHojaRutaService', 'focaModalService', 'focaBotoneraLateralService', + '$filter', + function($scope, focaActivarHojaRutaService, focaModalService, focaBotoneraLateralService, + $filter) { config(); //METODOS @@ -65,19 +65,50 @@ angular.module('focaActivarHojaRuta') }); $scope.hojasRuta = hojasRutas.data; - }) - }, function() { + }); + }, function() {} + ); + }; + + $scope.activarHojaRuta = function(hoja_ruta) { + validarChoferDisponible().then(function(hojaRutaAsignada) { + if (hojaRutaAsignada) { + var texto = 'El chofer tiene asignada la Hoja de Ruta Nº ' + + $filter('comprobante')([hojaRutaAsignada.sucursal, + hojaRutaAsignada.numeroHojaRuta]) + + ', ¿desea reemplazarla por esta?'; + + focaModalService + .confirm(texto) + .then(function(res) { + if (res) activar(); + }); + } else { + activar(); } - ); + + function activar() { + focaActivarHojaRutaService + .activarHojaRuta(hoja_ruta.id, $scope.chofer) + .then(function(hojaRuta) { + init(); + focaModalService.alert('Hoja de ruta activada'); + }); + } + + }); }; - $scope.activarHojaRuta = function(hoja_ruta_id) { - focaActivarHojaRutaService.activarHojaRuta(hoja_ruta_id, $scope.chofer) - .then(function(hojaRuta) { - init(); - focaModalService.alert('Hoja de ruta activada'); - }) + function validarChoferDisponible() { + return new Promise(function(resolve, reject) { + focaActivarHojaRutaService + .getHojaRutaByIdChofer($scope.chofer) + .then(function(res) { + resolve(res.data); + }) + .catch(reject); + }); } diff --git a/src/js/service.js b/src/js/service.js index 5bedb33..4573463 100644 --- a/src/js/service.js +++ b/src/js/service.js @@ -6,6 +6,9 @@ angular.module('focaActivarHojaRuta') }, activarHojaRuta: function(hoja_ruta, chofer) { return $http.get(API_ENDPOINT.URL + '/hoja-ruta/activar/' + hoja_ruta + '/' + chofer); + }, + getHojaRutaByIdChofer: function(chofer) { + return $http.get(API_ENDPOINT.URL + '/hoja-ruta/chofer/' + chofer); } }; }]); diff --git a/src/views/activar-hoja-ruta.html b/src/views/activar-hoja-ruta.html index 207f58c..8a5ebde 100644 --- a/src/views/activar-hoja-ruta.html +++ b/src/views/activar-hoja-ruta.html @@ -34,13 +34,13 @@ - +