Commit e1bc85006ac6b1375fcf07274d2a9733529b3b05

Authored by Eric Fernandez
Exists in master and in 2 other branches develop, lab

Merge branch 'develop' into 'master'

Develop

See merge request !14
src/js/controller.js
1 angular.module('focaHojaRuta') 1 angular.module('focaHojaRuta')
2 .controller('listaHojaRutaCtrl', 2 .controller('listaHojaRutaCtrl',
3 [ 3 [
4 '$scope', 4 '$scope',
5 '$location', 5 '$location',
6 '$filter', 6 '$filter',
7 '$uibModal', 7 '$uibModal',
8 'hojaRutaService', 8 'hojaRutaService',
9 'focaLoginService', 9 'focaLoginService',
10 'focaModalService', 10 'focaModalService',
11 '$rootScope',
12 '$localStorage',
11 function( 13 function(
12 $scope, 14 $scope,
13 $location, 15 $location,
14 $filter, 16 $filter,
15 $uibModal, 17 $uibModal,
16 hojaRutaService, 18 hojaRutaService,
17 focaLoginService, 19 focaLoginService,
18 focaModalService 20 focaModalService,
21 $rootScope,
22 $localStorage
19 ) { 23 ) {
24
20 var loginData = focaLoginService.getLoginData(); 25 var loginData = focaLoginService.getLoginData();
21 26
27 config();
28
29 function config() {
30
31 $scope.cabecera = [];
32 $scope.showCabecera = true;
33 $scope.now = new Date();
34 $scope.puntoVenta = '0000';
35 $scope.comprobante = '00000000';
36 }
37
22 hojaRutaService.getHojaRuta(loginData.chofer).then(function(res) { 38 hojaRutaService.getHojaRuta(loginData.chofer).then(function(res) {
39
23 if (res.data) { 40 if (res.data) {
24 var hojaRuta = res.data; 41 var hojaRuta = res.data;
25 $scope.hojaRuta = hojaRuta; 42 $scope.hojaRuta = hojaRuta;
26 $scope.puntoVenta = hojaRuta.sucursal; 43 $scope.puntoVenta = hojaRuta.sucursal;
27 $scope.comprobante = hojaRuta.numeroHojaRuta; 44 $scope.comprobante = hojaRuta.numeroHojaRuta;
28 addCabecera('Transportista:', hojaRuta.transportista.NOM); 45 addCabecera('Transportista:', hojaRuta.transportista.NOM);
29 addCabecera('Chofer:', hojaRuta.chofer.nombre); 46 addCabecera('Chofer:', hojaRuta.chofer.nombre);
30 addCabecera('Vehículo:', hojaRuta.vehiculo.tractor); 47 addCabecera('Vehículo:', hojaRuta.vehiculo.tractor);
31 } else { 48 } else {
32 focaModalService.alert('Sin hoja de ruta asignada'); 49 focaModalService.alert('Sin hoja de ruta asignada');
33 $location.path('/'); 50 $location.path('/');
34 } 51 }
52
53 watch();
54
55 if (!$scope.esatadoRed) {
56 getLSHojaRuta();
57 }
58
35 }); 59 });
36 60
37 $scope.cabecera = []; 61 function watch() {
38 $scope.showCabecera = true; 62
63 $scope.$watch('hojaRuta', function(nuevoValor) {
64 $localStorage.hojaRuta = JSON.stringify(nuevoValor);
65 }, true);
66 }
39 67
40 $scope.now = new Date();
41 $scope.puntoVenta = '0000';
42 $scope.comprobante = '00000000';
43 $scope.verDetalle = function(remito) { 68 $scope.verDetalle = function(remito) {
44 var modalInstance = $uibModal.open( 69 var modalInstance = $uibModal.open(
45 { 70 {
46 ariaLabelledBy: 'Detalle hoja ruta', 71 ariaLabelledBy: 'Detalle hoja ruta',
47 templateUrl: 'modal-detalle-hoja-ruta.html', 72 templateUrl: 'modal-detalle-hoja-ruta.html',
48 controller: 'focaModalDetalleHojaRutaController', 73 controller: 'focaModalDetalleHojaRutaController',
49 resolve: { 74 resolve: {
50 parametros: { 75 parametros: {
51 remito: remito, 76 remito: remito,
52 } 77 }
53 }, 78 },
54 size: 'lg' 79 size: 'lg'
55 } 80 }
56 ); 81 );
57 modalInstance.result.then(function(detalle) { 82 modalInstance.result.then(function() {
58 console.log(detalle); 83 //funcion se ejecuta cuando se carga pantalla
59 //función a ejecutar cuando se carga la cisterna
60 //eliminar console log en produccion cuando sea necesario
61 }); 84 });
62 }; 85 };
63 86
64 function addCabecera(label, valor) { 87 function addCabecera(label, valor) {
65 var propiedad = $filter('filter')($scope.cabecera, {label: label}, true); 88 var propiedad = $filter('filter')($scope.cabecera, {label: label}, true);
66 if(propiedad.length === 1) { 89 if(propiedad.length === 1) {
67 propiedad[0].valor = valor; 90 propiedad[0].valor = valor;
68 } else { 91 } else {
69 $scope.cabecera.push({label: label, valor: valor}); 92 $scope.cabecera.push({label: label, valor: valor});
70 } 93 }
71 } 94 }
72 //TODO Descomentar cuando se use
73 // function removeCabecera(label) {
74 // var propiedad = $filter('filter')($scope.cabecera, {label: label}, true);
75 // if(propiedad.length === 1) {
76 // $scope.cabecera.splice($scope.cabecera.indexOf(propiedad[0]), 1);
77 // }
78 // }
79 95
80 $scope.rellenar = function(relleno, longitud) { 96 $scope.rellenar = function(relleno, longitud) {
81 relleno = '' + relleno; 97 relleno = '' + relleno;
82 while (relleno.length < longitud) { 98 while (relleno.length < longitud) {
83 relleno = '0' + relleno; 99 relleno = '0' + relleno;
84 } 100 }
85 101
86 return relleno; 102 return relleno;
87 }; 103 };
104
88 $scope.salir = function() { 105 $scope.salir = function() {
89 $location.path('/'); 106 $location.path('/');
90 }; 107 };
91 108
92 $scope.terminarHojaRuta = function() { 109 $scope.terminarHojaRuta = function() {
93 focaModalService 110 focaModalService
94 .confirm('¿Desea terminar la hoja de ruta? No podra realizar ninguna ' + 111 .confirm('¿Desea terminar la hoja de ruta? No podra realizar ninguna ' +
95 'otra descarga ni modificación') 112 'otra descarga ni modificación')
96 .then(function() {$scope.datosExtraCierre(terminar);}); 113 .then(function() {$scope.datosExtraCierre(terminar);});
97 function terminar(datosExtraCierre) { 114 function terminar(datosExtraCierre) {
98 $scope.hojaRuta = angular.extend({}, $scope.hojaRuta, datosExtraCierre); 115 $scope.hojaRuta = angular.extend({}, $scope.hojaRuta, datosExtraCierre);
99 //limpio objeto para guardar 116 //limpio objeto para guardar
100 delete $scope.hojaRuta.chofer; 117 delete $scope.hojaRuta.chofer;
101 delete $scope.hojaRuta.remitos; 118 delete $scope.hojaRuta.remitos;
102 delete $scope.hojaRuta.transportista; 119 delete $scope.hojaRuta.transportista;
103 delete $scope.hojaRuta.vehiculo; 120 delete $scope.hojaRuta.vehiculo;
104 121
105 $scope.hojaRuta.fechaCreacion = 122 $scope.hojaRuta.fechaCreacion =
106 $scope.hojaRuta.fechaCreacion.slice(0, 19).replace('T', ' '); 123 $scope.hojaRuta.fechaCreacion.slice(0, 19).replace('T', ' ');
107 $scope.hojaRuta.fechaReparto = 124 $scope.hojaRuta.fechaReparto =
108 $scope.hojaRuta.fechaReparto.slice(0, 19).replace('T', ' '); 125 $scope.hojaRuta.fechaReparto.slice(0, 19).replace('T', ' ');
109 $scope.hojaRuta.estado = 2; 126 $scope.hojaRuta.estado = 2;
110 hojaRutaService.terminarHojaRuta($scope.hojaRuta).then( 127 hojaRutaService.terminarHojaRuta($scope.hojaRuta).then(
111 function() { 128 function() {
112 focaModalService.alert( 129 focaModalService.alert(
113 'Hoja de ruta ' + 130 'Hoja de ruta ' +
114 $filter('comprobante')([$scope.puntoVenta, 131 $filter('comprobante')([$scope.puntoVenta,
115 $scope.comprobante]) + ' cerrada con éxito'); 132 $scope.comprobante]) + ' cerrada con éxito');
116 $location.path('/'); 133 $location.path('/');
117 } 134 }
118 ); 135 );
119 } 136 }
120 }; 137 };
121 138
122 $scope.datosExtraCierre = function(terminar) { 139 $scope.datosExtraCierre = function(terminar) {
123 var modalInstance = $uibModal.open( 140 var modalInstance = $uibModal.open(
124 { 141 {
125 templateUrl: 'focaDatosExtra.html', 142 templateUrl: 'focaDatosExtra.html',
126 controller: 'focaModalDatosExtraCierre', 143 controller: 'focaModalDatosExtraCierre',
127 } 144 }
128 ); 145 );
129 modalInstance.result.then(terminar); 146 modalInstance.result.then(terminar);
130 }; 147 };
148
149 $rootScope.$on('estadoRed', function(event, value) {
150 $scope.esatadoRed = value;
151 });
152
153 function getLSHojaRuta() {