Commit 9247ccf09da98d7178d9d64e841772c043d9e509

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

Merge branch 'master' into 'develop'

Master

See merge request !14
src/js/controller.js
1 1 angular.module('focaAbmChofer')
2 2 .controller('focaAbmChoferesController', [
3 3 '$scope', 'focaAbmChoferService', '$location', '$uibModal',
4   - 'focaModalService', 'focaBotoneraLateralService', '$timeout',
  4 + 'focaModalService', 'focaBotoneraLateralService', '$timeout', '$localStorage',
5 5 function($scope, focaAbmChoferService, $location, $uibModal, focaModalService,
6   - focaBotoneraLateralService, $timeout) {
  6 + focaBotoneraLateralService, $timeout, $localStorage) {
7 7  
8 8 $scope.now = new Date();
9 9 $scope.filters = '';
... ... @@ -20,20 +20,20 @@ angular.module('focaAbmChofer')
20 20 focaBotoneraLateralService.showCancelar(false);
21 21 focaBotoneraLateralService.showGuardar(false);
22 22 focaBotoneraLateralService.addCustomButton('Salir', salir);
23   - });
  23 + });
24 24  
25   - if(focaAbmChoferService.transportistaSeleccionado.COD) {
  25 + if (focaAbmChoferService.transportistaSeleccionado.COD) {
26 26 elegirTransportista(focaAbmChoferService.transportistaSeleccionado);
27 27 }
28 28  
29   - $scope.editar = function(id) {
  29 + $scope.editar = function(id) {
30 30 $location.path('/chofer/' + id + '/' + $scope.idTransportista);
31 31 };
32 32  
33 33 $scope.solicitarConfirmacion = function(chofer) {
34 34 focaModalService.confirm('¿Está seguro que desea borrar el chofer ' +
35 35 chofer.nombre + ' ?').then(function(confirmed) {
36   - if(confirmed) {
  36 + if (confirmed) {
37 37 focaAbmChoferService.deleteChofer(chofer.id);
38 38 $scope.choferes.splice($scope.choferes.indexOf(chofer), 1);
39 39 }
... ... @@ -89,13 +89,19 @@ angular.module('focaAbmChofer')
89 89 focaAbmChoferService.transportistaSeleccionado = {};
90 90 $location.path('/');
91 91 }
  92 +
  93 + if ($localStorage.chofer) {
  94 + var chofer = JSON.parse($localStorage.chofer);
  95 + if (!chofer.id) { chofer.id = 0; }
  96 + $location.path('/chofer/' + chofer.id + '/' + chofer.idTransportista);
  97 + }
92 98 }
93 99 ])
94 100 .controller('focaAbmChoferController', [
95   - '$scope', 'focaAbmChoferService', '$routeParams',
96   - '$location', 'focaBotoneraLateralService', '$timeout', 'focaModalService',
97   - function($scope, focaAbmChoferService, $routeParams,
98   - $location, focaBotoneraLateralService, $timeout, focaModalService) {
  101 + '$scope', 'focaAbmChoferService', '$routeParams', '$localStorage', '$filter',
  102 + '$location', 'focaBotoneraLateralService', '$timeout', 'focaModalService', '$window',
  103 + function($scope, focaAbmChoferService, $routeParams, $localStorage, $filter,
  104 + $location, focaBotoneraLateralService, $timeout, focaModalService){
99 105  
100 106 $scope.focused = 1;
101 107 $scope.nuevo = $routeParams.id === '0';
... ... @@ -118,13 +124,15 @@ angular.module('focaAbmChofer')
118 124 focaBotoneraLateralService.showGuardar(true, $scope.guardar);
119 125 });
120 126  
121   - if($scope.nuevo) {
  127 + $timeout(function() {getLSChofer();});
  128 +
  129 + if ($scope.nuevo) {
122 130 focaAbmChoferService
123 131 .getTransportistaPorId($routeParams.idTransportista)
124   - .then(function(res) {
125   - var codigo = ('00000' + res.data.COD).slice(-5);
126   - $scope.chofer.idTransportista = res.data.COD;
127   - $scope.chofer.transportista = res.data;
  132 + .then(function(res) {
  133 + var codigo = ('00000' + res.data.COD).slice(-5);
  134 + $scope.chofer.idTransportista = res.data.COD;
  135 + $scope.chofer.transportista = res.data;
128 136 $scope.$broadcast('addCabecera', {
129 137 label: 'Transportista:',
130 138 valor: codigo + ' - ' + res.data.NOM
... ... @@ -139,7 +147,7 @@ angular.module('focaAbmChofer')
139 147 $scope.$broadcast('addCabecera', {
140 148 label: 'Transportista:',
141 149 valor: codigo + ' - ' + res.data.transportista.NOM
142   - });
  150 + });
143 151 }
144 152 });
145 153  
... ... @@ -147,8 +155,28 @@ angular.module('focaAbmChofer')
147 155 $scope.transportistas = res.data;
148 156 });
149 157  
150   - $scope.cancelar = function() {
151   - $location.path('/chofer');
  158 + function setearChofer(chofer) {
  159 + $scope.chofer = chofer;
  160 + $scope.$broadcast('addCabecera', {
  161 + label: 'Transportista:',
  162 + valor: $filter('rellenarDigitos')(chofer.idTransportista.chofer, 2) + ' - '
  163 + });
  164 + }
  165 + function getLSChofer() {
  166 + var chofer = JSON.parse($localStorage.chofer || null);
  167 +
  168 + if (chofer) {
  169 + setearChofer(chofer);
  170 + delete $localStorage.chofer;
  171 + }
  172 + }
  173 +
  174 + $scope.cancelar = function() {
  175 + $location.path('/chofer');
  176 + };
  177 +
  178 + $scope.pausar = function() {
  179 + focaBotoneraLateralService.pausar();
152 180 };
153 181  
154 182 $scope.guardar = function(key) {
... ... @@ -159,13 +187,13 @@ angular.module('focaAbmChofer')
159 187 } else if (!$scope.chofer.idTipoDocumento) {
160 188 focaModalService.alert('Seleccione tipo de documento');
161 189 return;
162   - } else if (!$scope.chofer.dni){
  190 + } else if (!$scope.chofer.dni) {
163 191 focaModalService.alert('Ingrese DNI');
164 192 return;
165 193 }
166 194  
167 195 key = (typeof key === 'undefined') ? 13 : key;
168   - if(key === 13) {
  196 + if (key === 13) {
169 197 validaDni().then(function() {
170 198 $scope.chofer.idTransportista = $routeParams.idTransportista;
171 199 delete $scope.chofer.transportista;
... ... @@ -177,6 +205,20 @@ angular.module('focaAbmChofer')
177 205 });
178 206 }
179 207 };
  208 +
  209 + $scope.$watch('chofer', function(newValue) {
  210 + focaBotoneraLateralService.setPausarData({
  211 + label: 'chofer',
  212 + val: {
  213 + dni: newValue.dni,
  214 + idTransportista: newValue.idTransportista,
  215 + nombre: newValue.nombre,
  216 + telefono: newValue.telefono,
  217 + idTipoDocumento: newValue.idTipoDocumento,
  218 + id: newValue.id
  219 + }
  220 + });
  221 + }, true);
180 222  
181 223 function validaDni() {
182 224 return new Promise(function(resolve, reject) {