angular.module('focaLogisticaPedidoRuta') .controller('focaModalCerrarVehiculo', [ '$scope', '$uibModalInstance', '$uibModal', 'focaLogisticaPedidoRutaService', 'idVehiculo', 'focaModalService', '$filter', 'fechaReparto', function($scope, $uibModalInstance, $uibModal, focaLogisticaPedidoRutaService, idVehiculo, focaModalService, $filter, fechaReparto) { $scope.vehiculo = {}; $scope.remitos = []; $scope.now = fechaReparto; focaLogisticaPedidoRutaService.obtenerVehiculoById(idVehiculo).then(function(res) { $scope.vehiculo = res.data; }); focaLogisticaPedidoRutaService.getRemitosByIdVehiculo(idVehiculo, 1, 1).then( function(res) { $scope.remitos = res.data; }); focaLogisticaPedidoRutaService.numeroHojaRuta().then(function(res) { $scope.sucursal = res.data.sucursal; $scope.numero = res.data.numeroHojaRuta; }); $scope.cancelar = function() { $uibModalInstance.close(); }; $scope.aceptar = function() { var idsRemito = []; $scope.remitos.forEach(function(remito) { idsRemito.push(remito.id); }); var cierreDistribuicion = { idsRemito: idsRemito, fechaReparto: focaLogisticaPedidoRutaService.fecha }; focaLogisticaPedidoRutaService.cerrarDistribuicion(cierreDistribuicion) .then(function() { focaModalService.alert('Vehículo cerrado con éxito'); } ); }; $scope.seleccionarChofer = function() { var modalInstance = $uibModal.open( { ariaLabelledBy: 'Busqueda de Chofer', templateUrl: 'modal-chofer.html', controller: 'focaModalChoferController', size: 'lg' } ); modalInstance.result.then( function(chofer) { $scope.chofer = chofer; }, function() { // funcion ejecutada cuando se cancela el modal } ); }; $scope.eliminarRemitos = function() { var remitosDel = $filter('filter')($scope.remitos, {checked: true}); focaModalService.alert('¿Seguro que desea desasociar estos remitos del vehículo?') .then(function() { eliminarRemitos(remitosDel); } ); }; $scope.minimoUnoChecked = function() { var remitosChequeados = $filter('filter')($scope.remitos, {checked: true}); return !remitosChequeados.length; }; function eliminarRemitos(remitosDel) { var nuevosRemitos = $filter('filter')($scope.remitos, {checked: !true}); focaLogisticaPedidoRutaService.desasociarRemitos(remitosDel, $scope.vehiculo.id, nuevosRemitos ? true : false).then(function() { focaModalService.alert('Remitos desasociados con éxito'); $scope.remitos = nuevosRemitos; }); } }]);