Commit 5b2034ac429af2a8d1b4340a0cfd7f1ba9027c00

Authored by Luigi
1 parent 8b7191751b
Exists in master and in 2 other branches develop, lab

Limitacion de numeros en DNI - Telefono

spec/controllerSpec.js
... ... @@ -19,6 +19,7 @@ describe('Controladores de abm chofer', function() {
19 19 transportistaSeleccionado: function() { return; }
20 20 },
21 21 $location: {},
  22 + $localStorage: {},
22 23 $uibModal: {},
23 24 focaModalService: {},
24 25 focaBotoneraLateralService: {},
... ... @@ -42,6 +43,7 @@ describe('Controladores de abm chofer', function() {
42 43 transportistaSeleccionado: function() { return; }
43 44 },
44 45 $location: {},
  46 + $localStorage: {},
45 47 $uibModal: {},
46 48 focaModalService: focaModalService,
47 49 focaBotoneraLateralService: {},
... ... @@ -75,6 +77,7 @@ describe('Controladores de abm chofer', function() {
75 77 $scope: scope,
76 78 focaAbmChoferService: focaAbmChoferService,
77 79 $location: {},
  80 + $localStorage: {},
78 81 $uibModal: {},
79 82 focaModalService: focaModalService,
80 83 focaBotoneraLateralService: {},
... ... @@ -108,6 +111,7 @@ describe('Controladores de abm chofer', function() {
108 111 transportistaSeleccionado: function() { }
109 112 },
110 113 $location: {},
  114 + $localStorage: {},
111 115 $uibModal: {},
112 116 focaModalService: focaModalService,
113 117 focaBotoneraLateralService: {},
... ... @@ -129,7 +133,9 @@ describe('Controladores de abm chofer', function() {
129 133 it('Existe el controlador focaAbmChoferController', function() {
130 134 //arrange
131 135 var controlador = $controller('focaAbmChoferController', {
132   - $scope: {},
  136 + $scope: {
  137 + $watch: function() {}
  138 + },
133 139 focaAbmChoferService: {
134 140 getTiposDocumento: function() {
135 141 return {
... ... @@ -149,6 +155,7 @@ describe('Controladores de abm chofer', function() {
149 155 },
150 156 $routeParams: {},
151 157 $location: {},
  158 + $localStorage: {},
152 159 focaBotoneraLateralService: {},
153 160 $timeout: function() { return; },
154 161 focaModalService: {}
... ... @@ -161,7 +168,9 @@ describe('Controladores de abm chofer', function() {
161 168 it('$scope.cancelar lleva a la ruta correcta', function() {
162 169 inject(function($location) {
163 170 //arrange
164   - var scope = {};
  171 + var scope = {
  172 + $watch: function() {}
  173 + };
165 174 var controlador = $controller('focaAbmChoferController', {
166 175 $scope: scope,
167 176 focaAbmChoferService: {
... ... @@ -183,6 +192,7 @@ describe('Controladores de abm chofer', function() {
183 192 },
184 193 $routeParams: {},
185 194 $location: $location,
  195 + $localStorage: {},
186 196 focaBotoneraLateralService: {},
187 197 $timeout: function() { return; },
188 198 focaModalService: {}
... ... @@ -200,7 +210,10 @@ describe('Controladores de abm chofer', function() {
200 210 it('$scope.guardar guarda chofer al validarDNI() da ok', function(done) {
201 211  
202 212 //arrange
203   - var scope = {};
  213 + var scope = {
  214 + $watch: function(){},
  215 + chofer: {}
  216 + };
204 217 var focaAbmChoferService = {
205 218 getTiposDocumento: function() {
206 219 return {
... ... @@ -225,14 +238,19 @@ describe('Controladores de abm chofer', function() {
225 238 focaAbmChoferService: focaAbmChoferService,
226 239 $routeParams: {},
227 240 $location: {},
  241 + $localStorage: {},
228 242 focaBotoneraLateralService: {},
229 243 $timeout: function() { return; },
230   - focaModalService: {}
  244 + focaModalService: {
  245 + alert: function() {}
  246 + }
231 247 });
232 248 console.info(controlador);
233 249 var resolveFake = { data: false };
234 250 var promesaChoferPorDni = Promise.resolve(resolveFake);
235   -
  251 + scope.chofer.nombre = true;
  252 + scope.chofer.idTipoDocumento = true;
  253 + scope.chofer.dni = true;
236 254 //act
237 255 spyOn(focaAbmChoferService, 'guardarChofer').and.returnValue({ then: function() { }});
238 256 spyOn(focaAbmChoferService, 'getChoferPorDni').and.returnValue(promesaChoferPorDni);
... ... @@ -250,7 +268,9 @@ describe('Controladores de abm chofer', function() {
250 268 it('$scope.guardar da alerta chofer al validarDNI() da reject', function(done) {
251 269  
252 270 //arrange
253   - var scope = {};
  271 + var scope = {
  272 + $watch: function() {}
  273 + };
254 274 var focaModalService = {
255 275 alert: function() { }
256 276 };
... ... @@ -277,6 +297,7 @@ describe('Controladores de abm chofer', function() {
277 297 focaAbmChoferService: focaAbmChoferService,
278 298 $routeParams: {},
279 299 $location: {},
  300 + $localStorage: {},
280 301 focaBotoneraLateralService: {},
281 302 $timeout: function() { return; },
282 303 focaModalService: focaModalService
src/js/controller.js
... ... @@ -20,13 +20,13 @@ angular.module('focaAbmChofer')
20 20 focaBotoneraLateralService.showCancelar(false);
21 21 focaBotoneraLateralService.showGuardar(false);
22 22 focaBotoneraLateralService.addCustomButton('Salir', salir);
23   - });
  23 + });
24 24  
25 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  
... ... @@ -89,7 +89,7 @@ angular.module('focaAbmChofer')
89 89 focaAbmChoferService.transportistaSeleccionado = {};
90 90 $location.path('/');
91 91 }
92   -
  92 +
93 93 if ($localStorage.chofer) {
94 94 var chofer = JSON.parse($localStorage.chofer);
95 95 if (!chofer.id) { chofer.id = 0; }
... ... @@ -127,7 +127,7 @@ angular.module('focaAbmChofer')
127 127 });
128 128  
129 129 $timeout(function() {getLSChofer();});
130   -
  130 +
131 131 if ($scope.nuevo) {
132 132 focaAbmChoferService
133 133 .getTransportistaPorId($routeParams.idTransportista)
... ... @@ -158,15 +158,15 @@ angular.module('focaAbmChofer')
158 158 });
159 159  
160 160 function setearChofer(chofer) {
161   - $scope.chofer = chofer;
  161 + $scope.chofer = chofer;
162 162 $scope.$broadcast('addCabecera', {
163 163 label: 'Transportista:',
164 164 valor: $filter('rellenarDigitos')(chofer.idTransportista.chofer, 2) + ' - '
165   - });
  165 + });
166 166 }
167 167 function getLSChofer() {
168 168 var chofer = JSON.parse($localStorage.chofer || null);
169   -
  169 +
170 170 if (chofer) {
171 171 setearChofer(chofer);
172 172 delete $localStorage.chofer;
... ... @@ -179,19 +179,23 @@ angular.module('focaAbmChofer')
179 179  
180 180 $scope.guardar = function(key) {
181 181  
182   - if (!$scope.chofer.nombre) {
183   - focaModalService.alert('Ingrese nombre');
184   - return;
185   - } else if (!$scope.chofer.idTipoDocumento) {
186   - focaModalService.alert('Seleccione tipo de documento');
187   - return;
188   - } else if (!$scope.chofer.dni) {
189   - focaModalService.alert('Ingrese DNI');
190   - return;
191   - }
192   -
193 182 key = (typeof key === 'undefined') ? 13 : key;
194 183 if (key === 13) {
  184 + console.log('Datos: ', $scope.chofer);
  185 + if (!$scope.chofer.nombre) {
  186 + focaModalService.alert('Ingrese nombre');
  187 + return;
  188 + } else if (!$scope.chofer.idTipoDocumento) {
  189 + focaModalService.alert('Seleccione tipo de documento');
  190 + return;
  191 + } else if (!$scope.chofer.dni) {
  192 + focaModalService.alert('Ingrese DNI');
  193 + return;
  194 + } else if (!$scope.chofer.telefono) {
  195 + focaModalService.alert('Ingrese número de teléfono');
  196 + return;
  197 + }
  198 +
195 199 validaDni().then(function() {
196 200 $scope.chofer.idTransportista = $routeParams.idTransportista;
197 201 delete $scope.chofer.transportista;
... ... @@ -203,7 +207,7 @@ angular.module('focaAbmChofer')
203 207 });
204 208 }
205 209 };
206   -
  210 +
207 211 $scope.$watch('chofer', function(newValue) {
208 212 focaBotoneraLateralService.setPausarData({
209 213 label: 'chofer',
src/views/foca-abm-choferes-item.html
... ... @@ -38,14 +38,17 @@
38 38 <div class="col-sm-4">
39 39 <input
40 40 class="form-control"
41   - type="text"
  41 + foca-tipo-input
42 42 teclado-virtual
  43 + solo-positivos
  44 + limite-numeros-max="15"
43 45 ng-model="chofer.dni"
44 46 ng-required="true"
45 47 ng-keypress="next($event.keyCode)"
46 48 foca-focus="focused == 2"
47 49 ng-focus="focused = 2"
48 50 ng-disabled="!nuevo"
  51 + string-toNumber
49 52 />
50 53 </div>
51 54 </div>
... ... @@ -54,13 +57,16 @@
54 57 <div class="col-sm-4">
55 58 <input
56 59 class="form-control"
57   - type="text"
  60 + foca-tipo-input
58 61 teclado-virtual
  62 + solo-positivos
  63 + limite-numeros-max="15"
59 64 ng-model="chofer.telefono"
60 65 ng-required="true"
61 66 ng-keypress="guardar($event.keyCode)"
62 67 foca-focus="focused == 3"
63 68 ng-focus="focused = 3"
  69 + string-toNumber
64 70 />
65 71 </div>
66 72 </div>