angular.module('focaHojaRuta') .controller('listaHojaRutaCtrl', [ '$scope', '$location', '$filter', '$uibModal', 'hojaRutaService', 'focaSeguimientoService', 'focaLoginService', 'focaModalService', function( $scope, $location, $filter, $uibModal, hojaRutaService, focaSeguimientoService, focaLoginService, focaModalService ) { var loginData = focaLoginService.getLoginData(); hojaRutaService.getHojasRuta(loginData.chofer).then(function(res) { if (res.data) { var hojaRuta = res.data; $scope.hojasRuta = hojaRuta; $scope.puntoVenta = hojaRuta.sucursal; $scope.comprobante = hojaRuta.numeroHojaRuta; addCabecera('Transportista:', hojaRuta.transportista.NOM); addCabecera('Chofer:', hojaRuta.chofer.nombre); addCabecera('Vehículo:', hojaRuta.vehiculo.tractor); } else { focaModalService.alert('Sin hoja de ruta asignada'); $location.path('/'); } }); $scope.cabecera = []; $scope.showCabecera = true; $scope.now = new Date(); $scope.puntoVenta = '0000'; $scope.comprobante = '00000000'; $scope.verDetalle = function(remito) { var modalInstance = $uibModal.open( { ariaLabelledBy: 'Detalle hoja ruta', templateUrl: 'modal-detalle-hoja-ruta.html', controller: 'focaModalDetalleHojaRutaController', resolve: { remito : function() {return remito;} }, size: 'lg' } ); modalInstance.result.then(function(remito) { // Al guardar los datos del producto entregado logueamos la // actividad para su seguimiento. console.log(remito); focaSeguimientoService.guardarPosicion( 'Entrega de producto', remito.id, remito.observaciones ); //hojaRutaService.postMovimientoHojaRuta(remito).then(function(movimiento){ // focaModalService.alert('descarga realizada con éxito'); // }); }); }; function addCabecera(label, valor) { var propiedad = $filter('filter')($scope.cabecera, {label: label}, true); if(propiedad.length === 1) { propiedad[0].valor = valor; } else { $scope.cabecera.push({label: label, valor: valor}); } } //TODO Descomentar cuando se use // function removeCabecera(label) { // var propiedad = $filter('filter')($scope.cabecera, {label: label}, true); // if(propiedad.length === 1) { // $scope.cabecera.splice($scope.cabecera.indexOf(propiedad[0]), 1); // } // } $scope.rellenar = function(relleno, longitud) { relleno = '' + relleno; while (relleno.length < longitud) { relleno = '0' + relleno; } return relleno; }; $scope.salir = function() { $location.path('/'); }; $scope.terminarHojaRuta = function() { hojaRutaService.terminarHojaRuta($scope.hojasRuta.id).then( function() { focaModalService.alert( 'Hoja de ruta ' + $filter('comprobante')([$scope.puntoVenta, $scope.comprobante]) + ' cerrada con éxito' ); $location.path('/'); } ); }; } ]);