angular.module('focaEstadoCisterna') .controller('focaEstadoCisternaController', [ '$scope', 'focaEstadoCisternaService', '$location', 'focaModalService', '$uibModal', 'focaBotoneraLateralService', '$timeout', function($scope, focaEstadoCisternaService, $location, focaModalService, $uibModal, focaBotoneraLateralService, $timeout) { $scope.now = new Date(); $scope.fecha = new Date(); $scope.cisternas = []; $scope.botonera = [{ label: 'Transportista', image: 'transportista.png' }, { label: 'Vehiculo', image: 'vehiculos.png' }, { label: 'Fecha', image: 'fechaDeReparto.png' }]; //SETEO BOTONERA LATERAL focaBotoneraLateralService.showSalir(true); focaBotoneraLateralService.showPausar(false); focaBotoneraLateralService.showCancelar(false); focaBotoneraLateralService.showGuardar(false); $timeout(function() { $scope.$broadcast('addCabecera',{ label: 'Fecha:', valor: $scope.fecha.toLocaleDateString() }); }); $scope.seleccionarTransportista = function() { var modalInstance = $uibModal.open( { ariaLabelledBy: 'Busqueda de Transportista', templateUrl: 'modal-proveedor.html', controller: 'focaModalProveedorCtrl', size: 'lg', resolve: { transportista: function() { return true; } } } ); modalInstance.result.then( function(transportista) { elegirTransportista(transportista); }, function() { } ); }; $scope.seleccionarVehiculo = function() { if(!$scope.idTransportista){ focaModalService.alert('Primero seleccione un transportista'); return; } var query = '/vehiculo/transportista/' + $scope.idTransportista; var columnas = { nombre: ['Código', 'tractor', 'Semi', 'Capacidad'], propiedad: ['codigo', 'tractor', 'semi', 'capacidadTotalCisternas'] }; var titulo = 'Búsqueda de vehículos'; focaModalService.modal(columnas, query, titulo).then( function(vehiculo) { $scope.$broadcast('addCabecera', { label: 'Vehículo:', valor: vehiculo.codigo }); $scope.cisternas = vehiculo.cisternas; getEstadosCisternas($scope.cisternas); }, function() { // funcion ejecutada cuando se cancela el modal }); }; $scope.seleccionarFecha = function() { focaModalService.modalFecha('Fecha').then(function(fecha) { $scope.$broadcast('addCabecera',{ label: 'Fecha:', valor: fecha.toLocaleDateString() }); $scope.fecha = fecha; if($scope.cisternas) getEstadosCisternas($scope.cisternas); }); }; function elegirTransportista(transportista) { var codigo = ('00000' + transportista.COD).slice(-5); $scope.idTransportista = transportista.COD; $scope.filtros = transportista.NOM.trim(); $scope.$broadcast('addCabecera', { label: 'Transportista:', valor: codigo + ' - ' + transportista.NOM }); } function getEstadosCisternas(cisternas) { cisternas.forEach(function(cisterna) { focaEstadoCisternaService .getEstadoCisterna(cisterna.id, $scope.fecha) .then(function(res) { cisterna.estado = res.data; }); }); } } ]);