controller.js 4.3 KB
angular.module('focaActivarHojaRuta')
    .controller('focaActivarHojaRutaController', [
        '$scope', 'focaActivarHojaRutaService', 'focaModalService',
        'focaBotoneraLateralService', '$filter', '$uibModal',
        function ($scope, focaActivarHojaRutaService, focaModalService,
            focaBotoneraLateralService, $filter, $uibModal) {
            config();

            //METODOS
            function config() {
                $scope.botonera = [{
                    label: 'Chofer',
                    image: 'cliente.png'
                }];
                //SETEO BOTONERA LATERAL
                focaBotoneraLateralService.showSalir(true);
                focaBotoneraLateralService.showPausar(false);
                focaBotoneraLateralService.showCancelar(false);
                focaBotoneraLateralService.showGuardar(false);

                init();
            }

            function init() {
                $scope.now = new Date();
                $scope.hojasRuta = [];
                $scope.$broadcast('removeCabecera', 'Chofer:');
            }

            $scope.seleccionarChofer = function () {
                var parametrosModal = {
                    titulo: 'Búsqueda de Chofer',
                    query: '/chofer',
                    columnas: [
                        {
                            propiedad: 'id',
                            nombre: 'Código',
                            filtro: {
                                nombre: 'rellenarDigitos',
                                parametro: 3
                            }
                        },
                        {
                            propiedad: 'nombre',
                            nombre: 'Nombre'
                        },
                        {
                            propiedad: 'dni',
                            nombre: 'DNI'
                        },
                        {
                            propiedad: 'telefono',
                            nombre: 'Teléfono'
                        }
                    ]
                };
                focaModalService.modal(parametrosModal).then(
                    function (chofer) {
                        $scope.chofer = chofer.id;
                        focaActivarHojaRutaService.getHojasRutas($scope.chofer)
                            .then(function (hojasRutas) {
                                $scope.$broadcast('addCabecera', {
                                    label: 'Chofer:',
                                    valor: $scope.chofer + ' - ' + chofer.nombre
                                });

                                $scope.hojasRuta = hojasRutas.data;
                            });
                    }, function () { }
                );
            };

            $scope.mostrarRemitos = function (hojasRutas) {
                $uibModal.open(
                    {
                        ariaLabelledBy: '',
                        templateUrl: 'modal-remitos.html',
                        controller: 'focaModalRemitosHojaRutaController',
                        resolve: {
                            hojasRutas: function () { return hojasRutas; },
                        },
                        size: 'lg',
                    }
                );
            };

            $scope.setearEstado = function (estado) {
                var texto = '';
                switch (estado) {
                    case 0:
                        texto = 'Disponible';
                        break;
                    case 1:
                        texto = 'Activada';
                        break;
                    case 2:
                        texto = 'Terminada';
                        break;
                    default:
                        break;
                }
                return texto;
            };

            $scope.activarHojaRuta = function (hojaRuta) {
                focaActivarHojaRutaService
                    .activarHojaRuta(hojaRuta.id, $scope.chofer)
                    .then(function () {
                        hojaRuta.estado = hojaRuta.estado === 0 ? 1 : 0;
                        focaModalService
                            .alert(hojaRuta.estado === 1 ?
                                'Hoja de ruta activada' : 'Hoja de ruta desactivada');
                    });
            };
        }
    ]);