Commit 5b9112a293fb3d8fe8f5213db2e0c01ef84ac9be

Authored by Luigi
1 parent 72c0063c55
Exists in master

Cambio en comisión - Arreglo en el Test

Showing 2 changed files with 118 additions and 21 deletions   Show diff stats
spec/controllerSpec.js
1 describe('Controladores abm vendedor cobrador', function() { 1 describe('Controladores abm vendedor cobrador', function() {
2 2
3 var $controller; 3 var $controller;
4 4
5 beforeEach(function() { 5 beforeEach(function() {
6 module('focaAbmVendedorCobrador'); 6 module('focaAbmVendedorCobrador');
7 inject(function(_$controller_) { 7 inject(function(_$controller_) {
8 $controller = _$controller_; 8 $controller = _$controller_;
9 }); 9 });
10 }); 10 });
11 describe('controlador focaAbmVendedoresCobradoresController', function() { 11 describe('controlador focaAbmVendedoresCobradoresController', function() {
12 12
13 var focaBotoneraLateralService = { 13 var focaBotoneraLateralService = {
14 showSalir: function() { }, 14 showSalir: function() { },
15 showPausar: function() { }, 15 showPausar: function() { },
16 showCancelar: function() { }, 16 showCancelar: function() { },
17 showGuardar: function() { } 17 showGuardar: function() { }
18 }; 18 };
19 19
20 it('existe el controlador focaAbmVendedoresCobradoresController', function() { 20 it('existe el controlador focaAbmVendedoresCobradoresController', function() {
21 //act 21 //act
22 var controlador = $controller('focaAbmVendedoresCobradoresController', { 22 var controlador = $controller('focaAbmVendedoresCobradoresController', {
23 $scope: {}, 23 $scope: {},
24 focaAbmVendedorCobradorService: {}, 24 focaAbmVendedorCobradorService: {},
25 $location: {}, 25 $location: {},
26 $localStorage: {},
26 $filter: {}, 27 $filter: {},
27 focaBotoneraLateralService: focaBotoneraLateralService, 28 focaBotoneraLateralService: focaBotoneraLateralService,
28 focaModalService: {} 29 focaModalService: {}
29 }); 30 });
30 31
31 //arrange 32 //arrange
32 expect(typeof controlador).toEqual('object'); 33 expect(typeof controlador).toEqual('object');
33 }); 34 });
34 35
35 it('la función $scope.editar llama a la url correcta', function() { 36 it('la función $scope.editar llama a la url correcta', function() {
36 inject(function($location) { 37 inject(function($location) {
37 38
38 //arrange 39 //arrange
39 var scope = {}; 40 var scope = {};
40 $controller('focaAbmVendedoresCobradoresController', { 41 $controller('focaAbmVendedoresCobradoresController', {
41 $scope: scope, 42 $scope: scope,
42 focaAbmVendedorCobradorService: {}, 43 focaAbmVendedorCobradorService: {},
43 $location: $location, 44 $location: $location,
45 $localStorage: {},
44 $filter: {}, 46 $filter: {},
45 focaBotoneraLateralService: focaBotoneraLateralService, 47 focaBotoneraLateralService: focaBotoneraLateralService,
46 focaModalService: {} 48 focaModalService: {}
47 }); 49 });
48 var paramFake = 1; 50 var paramFake = 1;
49 51
50 //act 52 //act
51 scope.editar(paramFake); 53 scope.editar(paramFake);
52 //arrange 54 //arrange
53 expect($location.url()).toEqual('/vendedor-cobrador/' + paramFake); 55 expect($location.url()).toEqual('/vendedor-cobrador/' + paramFake);
54 }); 56 });
55 }); 57 });
56 58
57 it('la función $scope.eliminar llama a modal confirmar', function() { 59 it('la función $scope.eliminar llama a modal confirmar', function() {
58 inject(function($location) { 60 inject(function($location) {
59 61
60 //arrange 62 //arrange
61 var scope = {}; 63 var scope = {};
62 var focaModalService = { 64 var focaModalService = {
63 confirm: function() { } 65 confirm: function() { }
64 }; 66 };
65 $controller('focaAbmVendedoresCobradoresController', { 67 $controller('focaAbmVendedoresCobradoresController', {
66 $scope: scope, 68 $scope: scope,
67 focaAbmVendedorCobradorService: {}, 69 focaAbmVendedorCobradorService: {},
68 $location: $location, 70 $location: $location,
71 $localStorage: {},
69 $filter: {}, 72 $filter: {},
70 focaBotoneraLateralService: focaBotoneraLateralService, 73 focaBotoneraLateralService: focaBotoneraLateralService,
71 focaModalService: focaModalService 74 focaModalService: focaModalService
72 }); 75 });
73 var paramFake = 1; 76 var paramFake = 1;
74 77
75 //act 78 //act
76 spyOn(focaModalService, 'confirm').and.returnValue({ then: function() { } }); 79 spyOn(focaModalService, 'confirm').and.returnValue({ then: function() { } });
77 scope.eliminar(paramFake); 80 scope.eliminar(paramFake);
78 81
79 //arrange 82 //arrange
80 expect(focaModalService.confirm).toHaveBeenCalled(); 83 expect(focaModalService.confirm).toHaveBeenCalled();
81 }); 84 });
82 }); 85 });
83 86
84 it('función $scope.eliminar llama eliminarVendedorCobrador al confirm ok', function(done) { 87 it('función $scope.eliminar llama eliminarVendedorCobrador al confirm ok', function(done) {
85 inject(function($location) { 88 inject(function($location) {
86 89
87 //arrange 90 //arrange
88 var scope = {}; 91 var scope = {};
89 var focaModalService = { 92 var focaModalService = {
90 confirm: function() { } 93 confirm: function() { }
91 }; 94 };
92 var focaAbmVendedorCobradorService = { 95 var focaAbmVendedorCobradorService = {
93 eliminarVendedorCobrador: function() { } 96 eliminarVendedorCobrador: function() { }
94 }; 97 };
95 $controller('focaAbmVendedoresCobradoresController', { 98 $controller('focaAbmVendedoresCobradoresController', {
96 $scope: scope, 99 $scope: scope,
97 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, 100 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService,
98 $location: $location, 101 $location: $location,
102 $localStorage: {},
99 $filter: {}, 103 $filter: {},
100 focaBotoneraLateralService: focaBotoneraLateralService, 104 focaBotoneraLateralService: focaBotoneraLateralService,
101 focaModalService: focaModalService 105 focaModalService: focaModalService
102 }); 106 });
103 var paramFake = 1; 107 var paramFake = 1;
104 var promesaConfirmar = Promise.resolve(true); 108 var promesaConfirmar = Promise.resolve(true);
105 109
106 //act 110 //act
107 spyOn(focaModalService, 'confirm').and.returnValue(promesaConfirmar); 111 spyOn(focaModalService, 'confirm').and.returnValue(promesaConfirmar);
108 spyOn(focaAbmVendedorCobradorService, 'eliminarVendedorCobrador') 112 spyOn(focaAbmVendedorCobradorService, 'eliminarVendedorCobrador')
109 .and.returnValue({ then: function() { } }); 113 .and.returnValue({ then: function() { } });
110 scope.eliminar(paramFake); 114 scope.eliminar(paramFake);
111 115
112 //arrange 116 //arrange
113 promesaConfirmar.then(function() { 117 promesaConfirmar.then(function() {
114 expect(focaAbmVendedorCobradorService.eliminarVendedorCobrador) 118 expect(focaAbmVendedorCobradorService.eliminarVendedorCobrador)
115 .toHaveBeenCalled(); 119 .toHaveBeenCalled();
116 done(); 120 done();
117 }); 121 });
118 }); 122 });
119 }); 123 });
120 124
121 it('función $scope.resetPage llama a $scope.selectPage', function() { 125 it('función $scope.resetPage llama a $scope.selectPage', function() {
122 126
123 //arrange 127 //arrange
124 var scope = {}; 128 var scope = {};
125 $controller('focaAbmVendedoresCobradoresController', { 129 $controller('focaAbmVendedoresCobradoresController', {
126 $scope: scope, 130 $scope: scope,
127 focaAbmVendedorCobradorService: {}, 131 focaAbmVendedorCobradorService: {},
128 $location: {}, 132 $location: {},
133 $localStorage: {},
129 $filter: {}, 134 $filter: {},
130 focaBotoneraLateralService: focaBotoneraLateralService, 135 focaBotoneraLateralService: focaBotoneraLateralService,
131 focaModalService: {} 136 focaModalService: {}
132 }); 137 });
133 138
134 //act 139 //act
135 spyOn(scope, 'selectPage'); 140 spyOn(scope, 'selectPage');
136 scope.resetPage(); 141 scope.resetPage();
137 142
138 //arrange 143 //arrange
139 expect(scope.selectPage).toHaveBeenCalled(); 144 expect(scope.selectPage).toHaveBeenCalled();
140 }); 145 });
141 146
142 it('función $scope.search llama a getVendedoresCobradores', function() { 147 it('función $scope.search llama a getVendedoresCobradores', function() {
143 148
144 //arrange 149 //arrange
145 var scope = {}; 150 var scope = {};
146 var focaAbmVendedorCobradorService = { 151 var focaAbmVendedorCobradorService = {
147 getVendedoresCobradores: function() { } 152 getVendedoresCobradores: function() { }
148 }; 153 };
149 $controller('focaAbmVendedoresCobradoresController', { 154 $controller('focaAbmVendedoresCobradoresController', {
150 $scope: scope, 155 $scope: scope,
151 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, 156 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService,
152 $location: {}, 157 $location: {},
158 $localStorage: {},
153 $filter: {}, 159 $filter: {},
154 focaBotoneraLateralService: focaBotoneraLateralService, 160 focaBotoneraLateralService: focaBotoneraLateralService,
155 focaModalService: {} 161 focaModalService: {}
156 }); 162 });
157 163
158 //act 164 //act
159 spyOn(focaAbmVendedorCobradorService, 'getVendedoresCobradores') 165 spyOn(focaAbmVendedorCobradorService, 'getVendedoresCobradores')
160 .and.returnValue({ then: function() { } }); 166 .and.returnValue({ then: function() { } });
161 scope.search(13); 167 scope.search(13);
162 168
163 //arrange 169 //arrange
164 expect(focaAbmVendedorCobradorService.getVendedoresCobradores).toHaveBeenCalled(); 170 expect(focaAbmVendedorCobradorService.getVendedoresCobradores).toHaveBeenCalled();
165 }); 171 });
166 172
167 it('función scope.search llama getVendedoresCobradores y llama resetPage', function(done) { 173 it('función scope.search llama getVendedoresCobradores y llama resetPage', function(done) {
168 174
169 //arrange 175 //arrange
170 var scope = {}; 176 var scope = {};
171 var focaAbmVendedorCobradorService = { 177 var focaAbmVendedorCobradorService = {
172 getVendedoresCobradores: function() { } 178 getVendedoresCobradores: function() { }
173 }; 179 };
174 $controller('focaAbmVendedoresCobradoresController', { 180 $controller('focaAbmVendedoresCobradoresController', {
175 $scope: scope, 181 $scope: scope,
176 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, 182 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService,
177 $location: {}, 183 $location: {},
184 $localStorage: {},
178 $filter: {}, 185 $filter: {},
179 focaBotoneraLateralService: focaBotoneraLateralService, 186 focaBotoneraLateralService: focaBotoneraLateralService,
180 focaModalService: {} 187 focaModalService: {}
181 }); 188 });
182 var promesaVendedores = Promise.resolve({ data: [] }); 189 var promesaVendedores = Promise.resolve({ data: [] });
183 190
184 //act 191 //act
185 spyOn(focaAbmVendedorCobradorService, 'getVendedoresCobradores') 192 spyOn(focaAbmVendedorCobradorService, 'getVendedoresCobradores')
186 .and.returnValue(promesaVendedores); 193 .and.returnValue(promesaVendedores);
187 spyOn(scope, 'resetPage'); 194 spyOn(scope, 'resetPage');
188 scope.vendedoresCobradores = []; 195 scope.vendedoresCobradores = [];
189 scope.search(13); 196 scope.search(13);
190 197
191 //arrange 198 //arrange
192 promesaVendedores.then(function() { 199 promesaVendedores.then(function() {
193 expect(scope.resetPage).toHaveBeenCalled(); 200 expect(scope.resetPage).toHaveBeenCalled();
194 done(); 201 done();
195 }); 202 });
196 }); 203 });
197 }); 204 });
198 205
199 describe('Controlador focaAbmVendedorCobradorController', function() { 206 describe('Controlador focaAbmVendedorCobradorController', function() {
200 207
201 var timeout; 208 var timeout;
202 209
203 beforeEach(function() { 210 beforeEach(function() {
204 inject(function($timeout) { 211 inject(function($timeout) {
205 timeout = $timeout; 212 timeout = $timeout;
206 }); 213 });
207 }); 214 });
208 215
209 it('existe el controlador focaAbmVendedorCobradorController', function() { 216 it('existe el controlador focaAbmVendedorCobradorController', function() {
210 217
211 //act 218 //act
212 var controlador = $controller('focaAbmVendedorCobradorController', { 219 var controlador = $controller('focaAbmVendedorCobradorController', {
213 $scope: {}, 220 $scope: {
221 $watch: function() {}
222 },
214 focaAbmVendedorCobradorService: { 223 focaAbmVendedorCobradorService: {
215 getCodigoSiguiente: function() { 224 getCodigoSiguiente: function() {
216 return { 225 return {
217 then: function() { } 226 then: function() { }
218 }; 227 };
219 }, 228 },
220 getVendedorCobradorById: function() { 229 getVendedorCobradorById: function() {
221 return { 230 return {
222 then: function() { } 231 then: function() { }
223 }; 232 };
224 } 233 }
225 }, 234 },
226 $routeParams: {}, 235 $routeParams: {},
227 focaBotoneraLateralService: {}, 236 focaBotoneraLateralService: {},
228 $timeout: timeout, 237 $timeout: timeout,
229 $uibModal: {}, 238 $uibModal: {},
230 $location: {}, 239 $location: {},
231 focaModalService: {} 240 $localStorage: {},
241 focaModalService: {
242
243 }
232 }); 244 });
233 245
234 //assert 246 //assert
235 expect(typeof controlador).toEqual('object'); 247 expect(typeof controlador).toEqual('object');
236 }); 248 });
237 249
238 it('la función $scope.guardar llama a guardaVendedorCobrador del servicio', function() { 250 it('la función $scope.guardar llama a guardaVendedorCobrador del servicio', function() {
239 //arrange 251 //arrange
240 var scope= {}; 252 var scope = {
253 $watch: function() {},
254
255 };
241 var focaAbmVendedorCobradorService = { 256 var focaAbmVendedorCobradorService = {
242 getCodigoSiguiente: function() { 257 getCodigoSiguiente: function() {
243 return { 258 return {
244 then: function() { } 259 then: function() { }
245 }; 260 };
246 }, 261 },
247 getVendedorCobradorById: function() { 262 getVendedorCobradorById: function() {
248 return { 263 return {
249 then: function() { } 264 then: function() { }
250 }; 265 };
251 }, 266 },
252 guardarVendedorCobrador: function() { } 267 guardarVendedorCobrador: function() { }
253 }; 268 };
254 $controller('focaAbmVendedorCobradorController', { 269 $controller('focaAbmVendedorCobradorController', {
255 $scope: scope, 270 $scope: scope,
256 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, 271 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService,
257 $routeParams: {}, 272 $routeParams: {},
258 focaBotoneraLateralService: {}, 273 focaBotoneraLateralService: {},
259 $timeout: timeout, 274 $timeout: timeout,
260 $uibModal: {}, 275 $uibModal: {},
261 $location: {}, 276 $location: {},
262 focaModalService: {} 277 $localStorage: {},
278 guardarVendedorCobrador: {},
279 focaModalService: {
280 alert: function() {}
281 }
263 }); 282 });
264 var responseFake = { 283 var responseFake = {
265 then: function() { 284 then: function() {
266 return { 285 return {
267 catch: function() { } 286 catch: function() { }
268 }; 287 };
269 } 288 }
270 }; 289 };
290 scope.vendedorCobrador = {
291 NOM: true,
292 domicilio: true,
293 codigoPostal: true,
294 dni: true,
295 rol: true,
296 provincia: {
297 NOMBRE: true
298 },
299 localidad: {
300 NOMBRE: true
301 },
302 };
271 303
272 //act 304 //act
273 spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') 305 spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador')
274 .and.returnValue(responseFake); 306 .and.returnValue(responseFake);
275 scope.guardar(); 307 scope.guardar();
276 308
277 //assert 309 //assert
278 expect(focaAbmVendedorCobradorService.guardarVendedorCobrador).toHaveBeenCalled(); 310 expect(focaAbmVendedorCobradorService.guardarVendedorCobrador).toHaveBeenCalled();
279 }); 311 });
280 312
281 it('la función $scope.guardar llama a guardaVendedorCobrador y edicion true' + 313 it('la función $scope.guardar llama a guardaVendedorCobrador y edicion true ' +
282 'llama a $location.path', function(done) 314 'llama a $location.path', function(done)
283 { 315 {
284 inject(function($location) { 316 inject(function($location) {
285 317
286 //arrange 318 //arrange
287 var scope= {}; 319 var scope= {
320 $watch: function(){},
321 };
288 var focaAbmVendedorCobradorService = { 322 var focaAbmVendedorCobradorService = {
289 getCodigoSiguiente: function() { 323 getCodigoSiguiente: function() {
290 return { 324 return {
291 then: function() { } 325 then: function() { }
292 }; 326 };
293 }, 327 },
294 getVendedorCobradorById: function() { 328 getVendedorCobradorById: function() {
295 return { 329 return {
296 then: function() { } 330 then: function() { }
297 }; 331 };
298 }, 332 },
299 guardarVendedorCobrador: function() { } 333 guardarVendedorCobrador: function() { }
300 }; 334 };
301 $controller('focaAbmVendedorCobradorController', { 335 $controller('focaAbmVendedorCobradorController', {
302 $scope: scope, 336 $scope: scope,
303 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, 337 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService,
304 $routeParams: {}, 338 $routeParams: {},
305 focaBotoneraLateralService: {}, 339 focaBotoneraLateralService: {},
306 $timeout: timeout, 340 $timeout: timeout,
307 $uibModal: {}, 341 $uibModal: {},
308 $location: $location, 342 $location: $location,
309 focaModalService: {} 343 $localStorage: {},
344 focaModalService: {
345 alert: function() {}
346 }
310 }); 347 });
311 var promiseFake = Promise.resolve(true, false); 348 var promiseFake = Promise.resolve(true, false);
312 349
350 scope.vendedorCobrador = {
351 NOM: true,
352 domicilio: true,
353 codigoPostal: true,
354 dni: true,
355 rol: true,
356 provincia: {
357 NOMBRE: true
358 },
359 localidad: {
360 NOMBRE: true
361 },
362 };
363
313 //act 364 //act
314 spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') 365 spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador')
315 .and.returnValue(promiseFake); 366 .and.returnValue(promiseFake);
316 scope.edicion = true; 367 scope.edicion = true;
317 scope.guardar(); 368 scope.guardar();
318 369
319 //assert 370 //assert
320 promiseFake.then(function() { 371 promiseFake.then(function() {
321 expect($location.url()).toEqual('/vendedor-cobrador'); 372 expect($location.url()).toEqual('/vendedor-cobrador');
322 done(); 373 done();
323 }); 374 });
324 }); 375 });
325 }); 376 });
326 377
327 it('la función $scope.guardar llama a guardaVendedorCobrador y scope.edicion false' + 378 it('la función $scope.guardar llama a guardaVendedorCobrador y scope.edicion false ' +
328 'llama a scope.cambiarContraseña', function(done) 379 'llama a scope.cambiarContraseña', function(done)
329 { 380 {
330 //arrange 381 //arrange
331 var scope= {}; 382 var scope= {
383 $watch: function() {}
384 };
332 var focaAbmVendedorCobradorService = { 385 var focaAbmVendedorCobradorService = {
333 getCodigoSiguiente: function() { 386 getCodigoSiguiente: function() {
334 return { 387 return {
335 then: function() { } 388 then: function() { }
336 }; 389 };
337 }, 390 },
338 getVendedorCobradorById: function() { 391 getVendedorCobradorById: function() {
339 return { 392 return {
340 then: function() { } 393 then: function() { }
341 }; 394 };
342 }, 395 },
343 guardarVendedorCobrador: function() { } 396 guardarVendedorCobrador: function() { }
344 }; 397 };
345 $controller('focaAbmVendedorCobradorController', { 398 $controller('focaAbmVendedorCobradorController', {
346 $scope: scope, 399 $scope: scope,
347 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, 400 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService,
348 $routeParams: {}, 401 $routeParams: {},
349 focaBotoneraLateralService: {}, 402 focaBotoneraLateralService: {},
350 $timeout: timeout, 403 $timeout: timeout,
351 $uibModal: {}, 404 $uibModal: {},
352 $location: {}, 405 $location: {},
353 focaModalService: {} 406 $localStorage: {},
407 focaModalService: {
408 alert: function(){}
409 }
354 }); 410 });
355 var promiseFake = Promise.resolve(true, false); 411 var promiseFake = Promise.resolve(true, false);
356 412
413 scope.vendedorCobrador = {
414 NOM: true,
415 domicilio: true,
416 codigoPostal: true,
417 dni: true,
418 rol: true,
419 provincia: {
420 NOMBRE: true
421 },
422 localidad: {
423 NOMBRE: true
424 },
425 };
426
357 //act 427 //act
358 spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') 428 spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador')
359 .and.returnValue(promiseFake); 429 .and.returnValue(promiseFake);
360 spyOn(scope, 'cambiarPassword'); 430 spyOn(scope, 'cambiarPassword');
361 scope.edicion = false; 431 scope.edicion = false;
362 scope.guardar(); 432 scope.guardar();
363 433
364 //assert 434 //assert
365 promiseFake.then(function() { 435 promiseFake.then(function() {
366 expect(scope.cambiarPassword).toHaveBeenCalled(); 436 expect(scope.cambiarPassword).toHaveBeenCalled();
367 done(); 437 done();
368 }); 438 });
369 }); 439 });
370 440
371 it('la función $scope.guardar llama a guardaVendedorCobrador y llama foca modal alert' + 441 it('la función $scope.guardar llama a guardaVendedorCobrador y llama foca modal alert' +
372 'cuando la promsa es rechazada y el error es 409', function(done) 442 'cuando la promesa es rechazada y el error es 409', function(done)
373 { 443 {
374 //arrange 444 //arrange
375 var scope= {}; 445 var scope= {
446 $watch: function() {}
447 };
376 var focaAbmVendedorCobradorService = { 448 var focaAbmVendedorCobradorService = {
377 getCodigoSiguiente: function() { 449 getCodigoSiguiente: function() {
378 return { 450 return {
379 then: function() { } 451 then: function() { }
380 }; 452 };
381 }, 453 },
382 getVendedorCobradorById: function() { 454 getVendedorCobradorById: function() {
383 return { 455 return {
384 then: function() { } 456 then: function() { }
385 }; 457 };
386 }, 458 },
387 guardarVendedorCobrador: function() { } 459 guardarVendedorCobrador: function() { }
388 }; 460 };
389 var focaModalService = { 461 var focaModalService = {
390 alert: function() { } 462 alert: function() { }
391 }; 463 };
392 $controller('focaAbmVendedorCobradorController', { 464 $controller('focaAbmVendedorCobradorController', {
393 $scope: scope, 465 $scope: scope,
394 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, 466 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService,
395 $routeParams: {}, 467 $routeParams: {},
396 focaBotoneraLateralService: {}, 468 focaBotoneraLateralService: {},
397 $timeout: timeout, 469 $timeout: timeout,
398 $uibModal: {}, 470 $uibModal: {},
399 $location: {}, 471 $location: {},
472 $localStorage: {},
400 focaModalService: focaModalService 473 focaModalService: focaModalService
401 }); 474 });
402 var promiseFake = Promise.reject({ status: 409 }); 475 var promiseFake = Promise.reject({ status: 409 });
403 476
404 //act 477 //act
405 spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') 478 spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador')
406 .and.returnValue(promiseFake); 479 .and.returnValue(promiseFake);
407 spyOn(focaModalService, 'alert'); 480 spyOn(focaModalService, 'alert');
408 scope.guardar(); 481 scope.guardar();
409 482
410 //assert 483 //assert
411 promiseFake.catch(function() { 484 promiseFake.catch(function() {
412 setTimeout(function() { 485 setTimeout(function() {
413 expect(focaModalService.alert).toHaveBeenCalled(); 486 expect(focaModalService.alert).toHaveBeenCalled();
414 done(); 487 done();
415 }, 100); 488 }, 100);
416 }); 489 });
417 }); 490 });
418 491
419 it('la función $scope.seleccionarProvincia llama a foca Modal', function() { 492 it('la función $scope.seleccionarProvincia llama a foca Modal', function() {
420 //arrange 493 //arrange
421 var scope= {}; 494 var scope= {
495 $watch: function() {}
496 };
422 var focaAbmVendedorCobradorService = { 497 var focaAbmVendedorCobradorService = {
423 getCodigoSiguiente: function() { 498 getCodigoSiguiente: function() {
424 return { 499 return {
425 then: function() { } 500 then: function() { }
426 }; 501 };
427 }, 502 },
428 getVendedorCobradorById: function() { 503 getVendedorCobradorById: function() {
429 return { 504 return {
430 then: function() { } 505 then: function() { }
431 }; 506 };
432 }, 507 },
433 }; 508 };
434 var focaModalService = { 509 var focaModalService = {
435 modal: function() { } 510 modal: function() { }
436 }; 511 };
437 $controller('focaAbmVendedorCobradorController', { 512 $controller('focaAbmVendedorCobradorController', {
438 $scope: scope, 513 $scope: scope,
439 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, 514 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService,
440 $routeParams: {}, 515 $routeParams: {},
441 focaBotoneraLateralService: {}, 516 focaBotoneraLateralService: {},
442 $timeout: timeout, 517 $timeout: timeout,
443 $uibModal: {}, 518 $uibModal: {},
444 $location: {}, 519 $location: {},
520 $localStorage: {},
445 focaModalService: focaModalService 521 focaModalService: focaModalService
446 }); 522 });
447 523
448 //act 524 //act
449 spyOn(focaModalService, 'modal').and.returnValue({ then: function() { } }); 525 spyOn(focaModalService, 'modal').and.returnValue({ then: function() { } });
450 scope.seleccionarProvincia(13); 526 scope.seleccionarProvincia(13);
451 527
452 //assert 528 //assert
453 expect(focaModalService.modal).toHaveBeenCalled(); 529 expect(focaModalService.modal).toHaveBeenCalled();
454 }); 530 });
455 531
456 it('función $scope.seleccionarLocalidad llama foca alert si no hay provincia', function() { 532 it('función $scope.seleccionarLocalidad llama foca alert si no hay provincia', function() {
457 //arrange 533 //arrange
458 var scope= {}; 534 var scope = {
535 $watch: function() {}
536 };
459 var focaAbmVendedorCobradorService = { 537 var focaAbmVendedorCobradorService = {
460 getCodigoSiguiente: function() { 538 getCodigoSiguiente: function() {
461 return { 539 return {
462 then: function() { } 540 then: function() { }
463 }; 541 };
464 }, 542 },
465 getVendedorCobradorById: function() { 543 getVendedorCobradorById: function() {
466 return { 544 return {
467 then: function() { } 545 then: function() { }
468 }; 546 };
469 }, 547 },
470 }; 548 };
471 var focaModalService = { 549 var focaModalService = {
472 alert: function() { } 550 alert: function() { }
473 }; 551 };
474 $controller('focaAbmVendedorCobradorController', { 552 $controller('focaAbmVendedorCobradorController', {
475 $scope: scope, 553 $scope: scope,
476 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, 554 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService,
477 $routeParams: {}, 555 $routeParams: {},
478 focaBotoneraLateralService: {}, 556 focaBotoneraLateralService: {},
479 $timeout: timeout, 557 $timeout: timeout,
480 $uibModal: {}, 558 $uibModal: {},
481 $location: {}, 559 $location: {},
560 $localStorage: {},
482 focaModalService: focaModalService 561 focaModalService: focaModalService
483 }); 562 });
484 563
485 //act 564 //act
486 spyOn(focaModalService, 'alert'); 565 spyOn(focaModalService, 'alert');
487 scope.vendedorCobrador.provincia.ID = false; 566 scope.vendedorCobrador.provincia.ID = false;
488 scope.seleccionarLocalidad(); 567 scope.seleccionarLocalidad();
489 568
490 //assert 569 //assert
491 expect(focaModalService.alert).toHaveBeenCalled(); 570 expect(focaModalService.alert).toHaveBeenCalled();
492 }); 571 });
493 572
494 it('función $scope.seleccionarLocalidad llama foca modal', function() { 573 it('función $scope.seleccionarLocalidad llama foca modal', function() {
495 //arrange 574 //arrange
496 var scope= {}; 575 var scope= {
576 $watch: function() {}
577 };
497 var focaAbmVendedorCobradorService = { 578 var focaAbmVendedorCobradorService = {
498 getCodigoSiguiente: function() { 579 getCodigoSiguiente: function() {
499 return { 580 return {
500 then: function() { } 581 then: function() { }
501 }; 582 };
502 }, 583 },
503 getVendedorCobradorById: function() { 584 getVendedorCobradorById: function() {
504 return { 585 return {
505 then: function() { } 586 then: function() { }
506 }; 587 };
507 }, 588 },
508 }; 589 };
509 var focaModalService = { 590 var focaModalService = {
510 modal: function() { } 591 modal: function() { }
511 }; 592 };
512 $controller('focaAbmVendedorCobradorController', { 593 $controller('focaAbmVendedorCobradorController', {
513 $scope: scope, 594 $scope: scope,
514 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, 595 focaAbmVendedorCobradorService: focaAbmVendedorCobradorService,
515 $routeParams: {}, 596 $routeParams: {},
516 focaBotoneraLateralService: {}, 597 focaBotoneraLateralService: {},
517 $timeout: timeout, 598 $timeout: timeout,
518 $uibModal: {}, 599 $uibModal: {},
519 $location: {}, 600 $location: {},
601 $localStorage: {},
520 focaModalService: focaModalService 602 focaModalService: focaModalService
521 }); 603 });
522 604
523 //act 605 //act
524 spyOn(focaModalService, 'modal').and.returnValue({ then: function() { } }); 606 spyOn(focaModalService, 'modal').and.returnValue({ then: function() { } });
525 scope.vendedorCobrador.provincia.ID = true; 607 scope.vendedorCobrador.provincia.ID = true;
526 scope.seleccionarLocalidad(13); 608 scope.seleccionarLocalidad(13);
527 609
528 //assert 610 //assert
529 expect(focaModalService.modal).toHaveBeenCalled(); 611 expect(focaModalService.modal).toHaveBeenCalled();
530 }); 612 });
531 613
532 it('la función scope.cancelar lleva a location correcte', function() { 614 it('la función scope.cancelar lleva a location correcte', function() {
533 615
534 inject(function($location) { 616 inject(function($location) {
535 //arrange 617 //arrange
536 var scope = {}; 618 var scope = {
619 $watch: function() {}
620 };
537 $controller('focaAbmVendedorCobradorController', { 621 $controller('focaAbmVendedorCobradorController', {
538 $scope: scope, 622 $scope: scope,
539 focaAbmVendedorCobradorService: { 623 focaAbmVendedorCobradorService: {
540 getCodigoSiguiente: function() { 624 getCodigoSiguiente: function() {
541 return { 625 return {
542 then: function() { } 626 then: function() { }
543 }; 627 };
544 }, 628 },
545 getVendedorCobradorById: function() { 629 getVendedorCobradorById: function() {
546 return { 630 return {
547 then: function() { } 631 then: function() { }
548 }; 632 };
549 } 633 }
550 }, 634 },
551 $routeParams: {}, 635 $routeParams: {},
552 focaBotoneraLateralService: {}, 636 focaBotoneraLateralService: {},
553 $timeout: timeout, 637 $timeout: timeout,
554 $uibModal: {}, 638 $uibModal: {},
555 $location: $location, 639 $location: $location,
640 $localStorage: {},
556 focaModalService: {} 641 focaModalService: {}
557 }); 642 });
558 643
559 //act 644 //act
560 scope.formVendedorCobrador = { 645 scope.formVendedorCobrador = {
561 $pristine: true 646 $pristine: true
562 }; 647 };
563 scope.cancelar(); 648 scope.cancelar();
564 649
565 //assert 650 //assert
566 expect($location.url()).toEqual('/vendedor-cobrador'); 651 expect($location.url()).toEqual('/vendedor-cobrador');
567 }); 652 });
568 }); 653 });
569 654
570 it('la funcion scope.next suma uno a scope.focused', function() { 655 it('la funcion scope.next suma uno a scope.focused', function() {
571 656
572 //arrange 657 //arrange
573 var scope = {}; 658 var scope = {
659 $watch: function() {}
660 };
574 $controller('focaAbmVendedorCobradorController', { 661 $controller('focaAbmVendedorCobradorController', {
575 $scope: scope, 662 $scope: scope,
576 focaAbmVendedorCobradorService: { 663 focaAbmVendedorCobradorService: {
577 getCodigoSiguiente: function() { 664 getCodigoSiguiente: function() {
578 return { 665 return {
579 then: function() { } 666 then: function() { }
580 }; 667 };
581 }, 668 },
582 getVendedorCobradorById: function() { 669 getVendedorCobradorById: function() {
583 return { 670 return {
584 then: function() { } 671 then: function() { }
585 }; 672 };
586 } 673 }
587 }, 674 },
588 $routeParams: {}, 675 $routeParams: {},
589 focaBotoneraLateralService: {}, 676 focaBotoneraLateralService: {},
590 $timeout: timeout, 677 $timeout: timeout,
591 $uibModal: {}, 678 $uibModal: {},
592 $location: {}, 679 $location: {},
680 $localStorage: {},
593 focaModalService: {} 681 focaModalService: {}
594 }); 682 });
595 683
596 //act 684 //act
597 var esperado = scope.focused + 1; 685 var esperado = scope.focused + 1;
598 scope.next(13); 686 scope.next(13);
599 687
600 //assert 688 //assert
601 expect(scope.focused).toEqual(esperado); 689 expect(scope.focused).toEqual(esperado);
602 }); 690 });
603 691
604 it('la funcion scope.cambiarPassword abre modal', function() { 692 it('la funcion scope.cambiarPassword abre modal', function() {
605 693
606 //arrange 694 //arrange
607 var scope = {}; 695 var scope = {
696 $watch: function() {}
697 };
608 var uibModal = { 698 var uibModal = {
609 open: function() { } 699 open: function() { }
610 }; 700 };
611 $controller('focaAbmVendedorCobradorController', { 701 $controller('focaAbmVendedorCobradorController', {
612 $scope: scope, 702 $scope: scope,
613 focaAbmVendedorCobradorService: { 703 focaAbmVendedorCobradorService: {
614 getCodigoSiguiente: function() { 704 getCodigoSiguiente: function() {
615 return { 705 return {
616 then: function() { } 706 then: function() { }
617 }; 707 };
618 }, 708 },
619 getVendedorCobradorById: function() { 709 getVendedorCobradorById: function() {
620 return { 710 return {
621 then: function() { } 711 then: function() { }
622 }; 712 };
623 } 713 }
624 }, 714 },
625 $routeParams: {}, 715 $routeParams: {},
626 focaBotoneraLateralService: {}, 716 focaBotoneraLateralService: {},
627 $timeout: timeout, 717 $timeout: timeout,
628 $uibModal: uibModal, 718 $uibModal: uibModal,
629 $location: {}, 719 $location: {},
720 $localStorage: {},
630 focaModalService: {} 721 focaModalService: {}
631 }); 722 });
632 var responseFake = { 723 var responseFake = {
633 result: { 724 result: {
634 then: function() { } 725 then: function() { }
635 } 726 }
636 }; 727 };
637 728
638 //act 729 //act
639 spyOn(uibModal, 'open').and.returnValue(responseFake); 730 spyOn(uibModal, 'open').and.returnValue(responseFake);
640 scope.cambiarPassword(); 731 scope.cambiarPassword();
641 732
642 //assert 733 //assert
643 expect(uibModal.open).toHaveBeenCalled(); 734 expect(uibModal.open).toHaveBeenCalled();
644 }); 735 });
645 736
646 it('la funcion scope.cambiarPassword abre modal y llama a location cuando edicion es ' + 737 it('la funcion scope.cambiarPassword abre modal y llama a location cuando edicion es ' +
647 'falso', function(done) 738 'falso', function(done)
648 { 739 {
649 inject(function($location) { 740 inject(function($location) {
650 741
651 //arrange 742 //arrange
652 var scope = {}; 743 var scope = {
744 $watch: function() {}
745 };
653 var uibModal = { 746 var uibModal = {
654 open: function() { } 747 open: function() { }
655 }; 748 };
656 $controller('focaAbmVendedorCobradorController', { 749 $controller('focaAbmVendedorCobradorController', {
657 $scope: scope, 750 $scope: scope,
658 focaAbmVendedorCobradorService: { 751 focaAbmVendedorCobradorService: {
659 getCodigoSiguiente: function() { 752 getCodigoSiguiente: function() {
660 return { 753 return {
661 then: function() { } 754 then: function() { }
662 }; 755 };
663 }, 756 },
664 getVendedorCobradorById: function() { 757 getVendedorCobradorById: function() {
665 return { 758 return {
666 then: function() { } 759 then: function() { }
667 }; 760 };
668 } 761 }
669 }, 762 },
670 $routeParams: {}, 763 $routeParams: {},
671 focaBotoneraLateralService: {}, 764 focaBotoneraLateralService: {},
672 $timeout: timeout, 765 $timeout: timeout,
673 $uibModal: uibModal, 766 $uibModal: uibModal,
674 $location: $location, 767 $location: $location,
768 $localStorage: {},
675 focaModalService: {} 769 focaModalService: {}
676 }); 770 });
677 var responseFake = { 771 var responseFake = {
678 result: Promise.resolve(true) 772 result: Promise.resolve(true)
679 }; 773 };
680 774
681 //act 775 //act
682 spyOn(uibModal, 'open').and.returnValue(responseFake); 776 spyOn(uibModal, 'open').and.returnValue(responseFake);
683 scope.edicion = false; 777 scope.edicion = false;
684 scope.cambiarPassword(); 778 scope.cambiarPassword();
685 779
686 //assert 780 //assert
687 responseFake.result.then(function() { 781 responseFake.result.then(function() {
688 expect($location.url()).toEqual('/vendedor-cobrador'); 782 expect($location.url()).toEqual('/vendedor-cobrador');
689 done(); 783 done();
690 }); 784 });
691 }); 785 });
692 }); 786 });
693 }); 787 });
694 }); 788 });
695 789
src/js/controllerItem.js
1 angular.module('focaAbmVendedorCobrador') 1 angular.module('focaAbmVendedorCobrador')
2 .controller('focaAbmVendedorCobradorController', [ 2 .controller('focaAbmVendedorCobradorController', [
3 '$scope', 'focaAbmVendedorCobradorService', '$routeParams', 'focaBotoneraLateralService', 3 '$scope', 'focaAbmVendedorCobradorService', '$routeParams', 'focaBotoneraLateralService',
4 '$timeout', '$uibModal', '$location', 'focaModalService', '$localStorage', '$filter', 4 '$timeout', '$uibModal', '$location', 'focaModalService', '$localStorage', '$filter',
5 function($scope, focaAbmVendedorCobradorService, $routeParams, focaBotoneraLateralService, 5 function($scope, focaAbmVendedorCobradorService, $routeParams, focaBotoneraLateralService,
6 $timeout, $uibModal, $location, focaModalService, $localStorage, $filter) { 6 $timeout, $uibModal, $location, focaModalService, $localStorage, $filter) {
7 7
8 $scope.guardado = false; 8 $scope.guardado = false;
9 $scope.now = new Date(); 9 $scope.now = new Date();
10 $scope.focused = 0; 10 $scope.focused = 0;
11 $scope.vendedorCobrador = { 11 $scope.vendedorCobrador = {
12 dni: '', 12 dni: '',
13 CNET: '0', 13 CNET: '0',
14 CFIN: '0', 14 CFIN: '0',
15 CCOB: '0', 15 CCOB: '0',
16 comisionVendedor: '0.00', 16 comisionVendedor: '0.00',
17 comisionCobrador: '0.00', 17 comisionCobrador: '0.00',
18 provincia: { 18 provincia: {
19 NOMBRE: '' 19 NOMBRE: ''
20 }, 20 },
21 localidad: { 21 localidad: {
22 NOMBRE: '' 22 NOMBRE: ''
23 }, 23 },
24 rol: '' 24 rol: ''
25 }; 25 };
26 $scope.options = [ 26 $scope.options = [
27 { 27 {
28 label: 'Vendedor', 28 label: 'Vendedor',
29 value: 1 29 value: 1
30 }, 30 },
31 { 31 {
32 label: 'Cobrador', 32 label: 'Cobrador',
33 value: 2 33 value: 2
34 }, 34 },
35 { 35 {
36 label: 'Vendedor y cobrador', 36 label: 'Vendedor y cobrador',
37 value: 3 37 value: 3
38 } 38 }
39 ]; 39 ];
40 //SETEO BOTONERA LATERAL 40 //SETEO BOTONERA LATERAL
41 $timeout(function() { 41 $timeout(function() {
42 focaBotoneraLateralService.showSalir(false); 42 focaBotoneraLateralService.showSalir(false);
43 focaBotoneraLateralService.showPausar(true); 43 focaBotoneraLateralService.showPausar(true);
44 focaBotoneraLateralService.showCancelar(false); 44 focaBotoneraLateralService.showCancelar(false);
45 focaBotoneraLateralService.showGuardar(true, $scope.guardar); 45 focaBotoneraLateralService.showGuardar(true, $scope.guardar);
46 focaBotoneraLateralService.addCustomButton('Salir', $scope.cancelar); 46 focaBotoneraLateralService.addCustomButton('Salir', $scope.cancelar);
47 }); 47 });
48 48
49 $timeout(function() {getLSVendedor();}); 49 $timeout(function() {getLSVendedor();});
50 50
51 focaAbmVendedorCobradorService 51 focaAbmVendedorCobradorService
52 .getCodigoSiguiente() 52 .getCodigoSiguiente()
53 .then(function(res) { 53 .then(function(res) {
54 $scope.vendedorCobrador.NUM = res.data.mayor; 54 $scope.vendedorCobrador.NUM = res.data.mayor;
55 }); 55 });
56 56
57 focaAbmVendedorCobradorService 57 focaAbmVendedorCobradorService
58 .getVendedorCobradorById($routeParams.id) 58 .getVendedorCobradorById($routeParams.id)
59 .then(function(res) { 59 .then(function(res) {
60 if (res.data) { 60 if (res.data) {
61 $scope.edicion = true; 61 $scope.edicion = true;
62 $scope.vendedorCobrador = res.data; 62 $scope.vendedorCobrador = res.data;
63 } 63 }
64 }); 64 });
65 65
66 $scope.guardar = function() { 66 $scope.guardar = function() {
67 67
68 if (!$scope.vendedorCobrador.NOM) { 68 if (!$scope.vendedorCobrador.NOM) {
69 focaModalService.alert('Ingrese nombre'); 69 focaModalService.alert('Ingrese nombre');
70 return; 70 return;
71 } else if (!$scope.vendedorCobrador.domicilio) { 71 } else if (!$scope.vendedorCobrador.domicilio) {
72 focaModalService.alert('Ingrese domicilio'); 72 focaModalService.alert('Ingrese domicilio');
73 return; 73 return;
74 } else if (!$scope.vendedorCobrador.codigoPostal) { 74 } else if (!$scope.vendedorCobrador.codigoPostal) {
75 focaModalService.alert('Ingrese código postal'); 75 focaModalService.alert('Ingrese código postal');
76 return; 76 return;
77 } else if (!$scope.vendedorCobrador.dni) { 77 } else if (!$scope.vendedorCobrador.dni) {
78 focaModalService.alert('Ingrese dni'); 78 focaModalService.alert('Ingrese dni');
79 return; 79 return;
80 } else if (!$scope.vendedorCobrador.rol) { 80 } else if (!$scope.vendedorCobrador.rol) {
81 focaModalService.alert('Seleccione tipo'); 81 focaModalService.alert('Seleccione tipo');
82 return; 82 return;
83 } else if (!$scope.vendedorCobrador.provincia.NOMBRE) { 83 } else if (!$scope.vendedorCobrador.provincia.NOMBRE) {
84 focaModalService.alert('Seleccione una Provincia'); 84 focaModalService.alert('Seleccione una Provincia');
85 return; 85 return;
86 } else if (!$scope.vendedorCobrador.localidad.NOMBRE) { 86 } else if (!$scope.vendedorCobrador.localidad.NOMBRE) {
87 focaModalService.alert('Seleccione una Localidad'); 87 focaModalService.alert('Seleccione una Localidad');
88 return; 88 return;
89 } 89 } else if ($scope.vendedorCobrador.comisionCobrador < 0 || $scope.vendedorCobrador.comisionVendedor < 0){
90 focaModalService.alert('Ingrese un numero superior a 0 en porcentaje de comision');
91 return;
92 }
90 93
91 if ($scope.guardado) { 94 if ($scope.guardado) {
92 $scope.cambiarPassword(); 95 $scope.cambiarPassword();
93 } else { 96 } else {
94 97
95 var vendedorCobrador = angular.copy($scope.vendedorCobrador); 98 var vendedorCobrador = angular.copy($scope.vendedorCobrador);
96 99
97 vendedorCobrador.idProvincia = vendedorCobrador.provincia.ID; 100 vendedorCobrador.idProvincia = vendedorCobrador.provincia.ID;
98 vendedorCobrador.idLocalidad = vendedorCobrador.localidad.ID; 101 vendedorCobrador.idLocalidad = vendedorCobrador.localidad.ID;
99 102
100 delete vendedorCobrador.provincia; 103 delete vendedorCobrador.provincia;
101 delete vendedorCobrador.localidad; 104 delete vendedorCobrador.localidad;
102 if (vendedorCobrador.rol == 1) { 105 if (vendedorCobrador.rol == 1) {
103 delete vendedorCobrador.comisionCobrador; 106 delete vendedorCobrador.comisionCobrador;
104 } else if (vendedorCobrador.rol == 2) { 107 } else if (vendedorCobrador.rol == 2) {
105 delete vendedorCobrador.comisionVendedor; 108 delete vendedorCobrador.comisionVendedor;
106 } 109 }
107 vendedorCobrador.metodo = ($routeParams.id === '0') ? 'crear' : 'actualizar'; 110 vendedorCobrador.metodo = ($routeParams.id === '0') ? 'crear' : 'actualizar';
108 111
109 focaAbmVendedorCobradorService 112 focaAbmVendedorCobradorService
110 .guardarVendedorCobrador(vendedorCobrador) 113 .guardarVendedorCobrador(vendedorCobrador)
111 .then(function(res) { 114 .then(function(res) {
112 if ($scope.edicion) { 115 if ($scope.edicion) {
113 $location.path('/vendedor-cobrador'); 116 $location.path('/vendedor-cobrador');
114 } else { 117 } else {
115 $scope.vendedorCobrador = res.data; 118 $scope.vendedorCobrador = res.data;
116 $scope.cambiarPassword(); 119 $scope.cambiarPassword();
117 $scope.guardado = true; 120 $scope.guardado = true;
118 } 121 }
119 }) 122 })
120 .catch(function(err) { 123 .catch(function(err) {
121 if (err.status === 409) { 124 if (err.status === 409) {
122 focaModalService.alert(err.data); 125 focaModalService.alert(err.data);
123 } 126 }
124 }); 127 });
125 } 128 }
126 }; 129 };
127 130
128 $scope.seleccionarProvincia = function(key) { 131 $scope.seleccionarProvincia = function(key) {
129 if (key === 13) { 132 if (key === 13) {
130 var parametrosModal = { 133 var parametrosModal = {
131 query: '/provincia', 134 query: '/provincia',
132 columnas: [ 135 columnas: [
133 { 136 {
134 propiedad: 'ID', 137 propiedad: 'ID',
135 nombre: 'Codigo', 138 nombre: 'Codigo',
136 filtro: { 139 filtro: {
137 nombre: 'rellenarDigitos', 140 nombre: 'rellenarDigitos',
138 parametro: 3 141 parametro: 3
139 } 142 }
140 }, 143 },
141 { 144 {
142 propiedad: 'NOMBRE', 145 propiedad: 'NOMBRE',
143 nombre: 'Nombre' 146 nombre: 'Nombre'
144 } 147 }
145 ], 148 ],
146 titulo: 'Búsqueda de provincias', 149 titulo: 'Búsqueda de provincias',
147 size: 'md' 150 size: 'md'
148 }; 151 };
149 focaModalService.modal(parametrosModal).then(function(provincia) { 152 focaModalService.modal(parametrosModal).then(function(provincia) {
150 $scope.vendedorCobrador.provincia = provincia; 153 $scope.vendedorCobrador.provincia = provincia;
151 $timeout(function() { 154 $timeout(function() {
152 $scope.focused = 5; 155 $scope.focused = 5;
153 }); 156 });
154 }, function() { 157 }, function() {
155 //TODO: función llamada cuando cancela el modal 158 //TODO: función llamada cuando cancela el modal
156 }); 159 });
157 } 160 }
158 }; 161 };
159 162
160 $scope.seleccionarLocalidad = function(key) { 163 $scope.seleccionarLocalidad = function(key) {
161 if (!$scope.vendedorCobrador.provincia.ID) { 164 if (!$scope.vendedorCobrador.provincia.ID) {
162 focaModalService.alert('Seleccione una provincia'); 165 focaModalService.alert('Seleccione una provincia');
163 return; 166 return;
164 } 167 }
165 if (key === 13) { 168 if (key === 13) {
166 var parametrosModal = { 169 var parametrosModal = {
167 query: '/localidad/' + $scope.vendedorCobrador.provincia.ID, 170 query: '/localidad/' + $scope.vendedorCobrador.provincia.ID,
168 columnas: [ 171 columnas: [
169 { 172 {
170 propiedad: 'ID', 173 propiedad: 'ID',
171 nombre: 'Código', 174 nombre: 'Código',
172 filtro: { 175 filtro: {
173 nombre: 'rellenarDigitos', 176 nombre: 'rellenarDigitos',
174 parametro: 3 177 parametro: 3
175 } 178 }
176 }, 179 },
177 { 180 {
178 propiedad: 'NOMBRE', 181 propiedad: 'NOMBRE',
179 nombre: 'Nombre' 182 nombre: 'Nombre'
180 } 183 }
181 ], 184 ],
182 titulo: 'Búsqueda de localidades', 185 titulo: 'Búsqueda de localidades',
183 size: 'md' 186 size: 'md'
184 }; 187 };
185 focaModalService.modal(parametrosModal).then(function(localidad) { 188 focaModalService.modal(parametrosModal).then(function(localidad) {
186 $scope.vendedorCobrador.localidad = localidad; 189 $scope.vendedorCobrador.localidad = localidad;
187 $timeout(function() { 190 $timeout(function() {
188 $scope.focused = 6; 191 $scope.focused = 6;
189 }); 192 });
190 }, function() { 193 }, function() {
191 //TODO: función llamada cuando cancela el modal 194 //TODO: función llamada cuando cancela el modal
192 }); 195 });
193 } 196 }
194 }; 197 };
195 198
196 $scope.$watch('vendedorCobrador', function(newValue) { 199 $scope.$watch('vendedorCobrador', function(newValue) {
197 focaBotoneraLateralService.setPausarData({ 200 focaBotoneraLateralService.setPausarData({
198 label:'vendedorCobrador', 201 label:'vendedorCobrador',
199 val: newValue 202 val: newValue
200 }); 203 });
201 }, true); 204 }, true);
202 205
203 function getLSVendedor() { 206 function getLSVendedor() {
204 var vendedorCobrador = JSON.parse($localStorage.vendedorCobrador || null); 207 var vendedorCobrador = JSON.parse($localStorage.vendedorCobrador || null);
205 if (vendedorCobrador) { 208 if (vendedorCobrador) {
206 setearVendedor(vendedorCobrador); 209 setearVendedor(vendedorCobrador);
207 delete $localStorage.vendedorCobrador; 210 delete $localStorage.vendedorCobrador;
208 } 211 }
209 } 212 }
210 213
211 function setearVendedor(vendedorCobrador) { 214 function setearVendedor(vendedorCobrador) {
212 $scope.vendedorCobrador = vendedorCobrador; 215 $scope.vendedorCobrador = vendedorCobrador;
213 $scope.$broadcast('addCabecera', { 216 $scope.$broadcast('addCabecera', {
214 label: 'Vendedor / Cobrador:', 217 label: 'Vendedor / Cobrador:',
215 valor: $filter('rellenarDigitos')(vendedorCobrador.NUM, 2) + ' - ' + vendedorCobrador.NOM 218 valor: $filter('rellenarDigitos')(vendedorCobrador.NUM, 2) + ' - ' + vendedorCobrador.NOM
216 }); 219 });
217 } 220 }
218 221
219 $scope.cancelar = function() { 222 $scope.cancelar = function() {
220 if (!$scope.formVendedorCobrador.$pristine) { 223 if (!$scope.formVendedorCobrador.$pristine) {
221 224
222 focaModalService.confirm('¿Está seguro de que desea salir?' + 225 focaModalService.confirm('¿Está seguro de que desea salir?' +
223 'Se perderán todos los datos cargados.') 226 'Se perderán todos los datos cargados.')
224 .then(function(confirmed) { 227 .then(function(confirmed) {
225 if (confirmed && $scope.guardado && !$scope.edicion) { 228 if (confirmed && $scope.guardado && !$scope.edicion) {
226 229
227 focaAbmVendedorCobradorService 230 focaAbmVendedorCobradorService
228 .destroyVendedorCobrador($scope.vendedorCobrador.id) 231 .destroyVendedorCobrador($scope.vendedorCobrador.id)
229 .then(function() { 232 .then(function() {
230 $location.path('/vendedor-cobrador'); 233 $location.path('/vendedor-cobrador');
231 }); 234 });
232 235
233 } else if (confirmed) { 236 } else if (confirmed) {
234 $location.path('/vendedor-cobrador'); 237 $location.path('/vendedor-cobrador');
235 } 238 }
236 }); 239 });
237 240
238 } else { 241 } else {
239 $location.path('/vendedor-cobrador'); 242 $location.path('/vendedor-cobrador');
240 } 243 }
241 }; 244 };
242 245
243 $scope.next = function(key) { 246 $scope.next = function(key) {
244 if (key === 13) $scope.focused++; 247 if (key === 13) $scope.focused++;
245 }; 248 };
246 249
247 $scope.cambiarPassword = function() { 250 $scope.cambiarPassword = function() {
248 var vendedorCobrador = angular.copy($scope.vendedorCobrador); 251 var vendedorCobrador = angular.copy($scope.vendedorCobrador);
249 vendedorCobrador.nombre = vendedorCobrador.NOM; 252 vendedorCobrador.nombre = vendedorCobrador.NOM;
250 vendedorCobrador.codigo = vendedorCobrador.NUM; 253 vendedorCobrador.codigo = vendedorCobrador.NUM;
251 254
252 var parametros = { 255 var parametros = {
253 cuenta: vendedorCobrador, 256 cuenta: vendedorCobrador,
254 tipo: ($scope.vendedorCobrador.rol === 2) ? 'Cobradores' : 'Vendedores' 257 tipo: ($scope.vendedorCobrador.rol === 2) ? 'Cobradores' : 'Vendedores'
255 }; 258 };
256 259
257 var modalInstance = $uibModal.open( 260 var modalInstance = $uibModal.open(
258 { 261 {
259 ariaLabelledBy: 'Configuracion de Logueo', 262 ariaLabelledBy: 'Configuracion de Logueo',
260 templateUrl: 'modal-login.html', 263 templateUrl: 'modal-login.html',
261 controller: 'focaModalLoginController', 264 controller: 'focaModalLoginController',
262 size: 'md', 265 size: 'md',
263 resolve: { 266 resolve: {
264 parametros: function() { 267 parametros: function() {
265 return parametros; 268 return parametros;
266 } 269 }
267 } 270 }
268 } 271 }
269 ); 272 );
270 273
271 modalInstance.result.then(function() { 274 modalInstance.result.then(function() {
272 if (!$scope.edicion) $location.path('/vendedor-cobrador'); 275 if (!$scope.edicion) $location.path('/vendedor-cobrador');
273 }); 276 });
274 277
275 }; 278 };
276 } 279 }
277 ]); 280 ]);
278 281