Commit d01a61a08ee192fc176547b790e0913cdb632aa1
Exists in
master
and in
2 other branches
Merge branch 'master' into 'develop'
Master See merge request !25
Showing
2 changed files
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 | } | ||
232 | }); | 243 | }); |
233 | 244 | ||
234 | //assert | 245 | //assert |
235 | expect(typeof controlador).toEqual('object'); | 246 | expect(typeof controlador).toEqual('object'); |
236 | }); | 247 | }); |
237 | 248 | ||
238 | it('la función $scope.guardar llama a guardaVendedorCobrador del servicio', function() { | 249 | it('la función $scope.guardar llama a guardaVendedorCobrador del servicio', function() { |
239 | //arrange | 250 | //arrange |
240 | var scope= {}; | 251 | var scope = { |
252 | $watch: function() {}, | ||
253 | }; | ||
241 | var focaAbmVendedorCobradorService = { | 254 | var focaAbmVendedorCobradorService = { |
242 | getCodigoSiguiente: function() { | 255 | getCodigoSiguiente: function() { |
243 | return { | 256 | return { |
244 | then: function() { } | 257 | then: function() { } |
245 | }; | 258 | }; |
246 | }, | 259 | }, |
247 | getVendedorCobradorById: function() { | 260 | getVendedorCobradorById: function() { |
248 | return { | 261 | return { |
249 | then: function() { } | 262 | then: function() { } |
250 | }; | 263 | }; |
251 | }, | 264 | }, |
252 | guardarVendedorCobrador: function() { } | 265 | guardarVendedorCobrador: function() { } |
253 | }; | 266 | }; |
254 | $controller('focaAbmVendedorCobradorController', { | 267 | $controller('focaAbmVendedorCobradorController', { |
255 | $scope: scope, | 268 | $scope: scope, |
256 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 269 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
257 | $routeParams: {}, | 270 | $routeParams: {}, |
258 | focaBotoneraLateralService: {}, | 271 | focaBotoneraLateralService: {}, |
259 | $timeout: timeout, | 272 | $timeout: timeout, |
260 | $uibModal: {}, | 273 | $uibModal: {}, |
261 | $location: {}, | 274 | $location: {}, |
262 | focaModalService: {} | 275 | $localStorage: {}, |
276 | guardarVendedorCobrador: {}, | ||
277 | focaModalService: { | ||
278 | alert: function() {} | ||
279 | } | ||
263 | }); | 280 | }); |
264 | var responseFake = { | 281 | var responseFake = { |
265 | then: function() { | 282 | then: function() { |
266 | return { | 283 | return { |
267 | catch: function() { } | 284 | catch: function() { } |
268 | }; | 285 | }; |
269 | } | 286 | } |
270 | }; | 287 | }; |
288 | scope.vendedorCobrador = { | ||
289 | NOM: true, | ||
290 | domicilio: true, | ||
291 | codigoPostal: true, | ||
292 | dni: true, | ||
293 | rol: true, | ||
294 | provincia: { | ||
295 | NOMBRE: true | ||
296 | }, | ||
297 | localidad: { | ||
298 | NOMBRE: true | ||
299 | }, | ||
300 | }; | ||
271 | 301 | ||
272 | //act | 302 | //act |
273 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') | 303 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') |
274 | .and.returnValue(responseFake); | 304 | .and.returnValue(responseFake); |
275 | scope.guardar(); | 305 | scope.guardar(); |
276 | 306 | ||
277 | //assert | 307 | //assert |
278 | expect(focaAbmVendedorCobradorService.guardarVendedorCobrador).toHaveBeenCalled(); | 308 | expect(focaAbmVendedorCobradorService.guardarVendedorCobrador).toHaveBeenCalled(); |
279 | }); | 309 | }); |
280 | 310 | ||
281 | it('la función $scope.guardar llama a guardaVendedorCobrador y edicion true' + | 311 | it('la función $scope.guardar llama a guardaVendedorCobrador y edicion true ' + |
282 | 'llama a $location.path', function(done) | 312 | 'llama a $location.path', function(done) |
283 | { | 313 | { |
284 | inject(function($location) { | 314 | inject(function($location) { |
285 | 315 | ||
286 | //arrange | 316 | //arrange |
287 | var scope= {}; | 317 | var scope= { |
318 | $watch: function(){}, | ||
319 | }; | ||
288 | var focaAbmVendedorCobradorService = { | 320 | var focaAbmVendedorCobradorService = { |
289 | getCodigoSiguiente: function() { | 321 | getCodigoSiguiente: function() { |
290 | return { | 322 | return { |
291 | then: function() { } | 323 | then: function() { } |
292 | }; | 324 | }; |
293 | }, | 325 | }, |
294 | getVendedorCobradorById: function() { | 326 | getVendedorCobradorById: function() { |
295 | return { | 327 | return { |
296 | then: function() { } | 328 | then: function() { } |
297 | }; | 329 | }; |
298 | }, | 330 | }, |
299 | guardarVendedorCobrador: function() { } | 331 | guardarVendedorCobrador: function() { } |
300 | }; | 332 | }; |
301 | $controller('focaAbmVendedorCobradorController', { | 333 | $controller('focaAbmVendedorCobradorController', { |
302 | $scope: scope, | 334 | $scope: scope, |
303 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 335 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
304 | $routeParams: {}, | 336 | $routeParams: {}, |
305 | focaBotoneraLateralService: {}, | 337 | focaBotoneraLateralService: {}, |
306 | $timeout: timeout, | 338 | $timeout: timeout, |
307 | $uibModal: {}, | 339 | $uibModal: {}, |
308 | $location: $location, | 340 | $location: $location, |
309 | focaModalService: {} | 341 | $localStorage: {}, |
342 | focaModalService: { | ||
343 | alert: function() {} | ||
344 | } | ||
310 | }); | 345 | }); |
311 | var promiseFake = Promise.resolve(true, false); | 346 | var promiseFake = Promise.resolve(true, false); |
312 | 347 | ||
348 | scope.vendedorCobrador = { | ||
349 | NOM: true, | ||
350 | domicilio: true, | ||
351 | codigoPostal: true, | ||
352 | dni: true, | ||
353 | rol: true, | ||
354 | provincia: { | ||
355 | NOMBRE: true | ||
356 | }, | ||
357 | localidad: { | ||
358 | NOMBRE: true | ||
359 | }, | ||
360 | }; | ||
361 | |||
313 | //act | 362 | //act |
314 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') | 363 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') |
315 | .and.returnValue(promiseFake); | 364 | .and.returnValue(promiseFake); |
316 | scope.edicion = true; | 365 | scope.edicion = true; |
317 | scope.guardar(); | 366 | scope.guardar(); |
318 | 367 | ||
319 | //assert | 368 | //assert |
320 | promiseFake.then(function() { | 369 | promiseFake.then(function() { |
321 | expect($location.url()).toEqual('/vendedor-cobrador'); | 370 | expect($location.url()).toEqual('/vendedor-cobrador'); |
322 | done(); | 371 | done(); |
323 | }); | 372 | }); |
324 | }); | 373 | }); |
325 | }); | 374 | }); |
326 | 375 | ||
327 | it('la función $scope.guardar llama a guardaVendedorCobrador y scope.edicion false' + | 376 | it('la función $scope.guardar llama a guardaVendedorCobrador y scope.edicion false ' + |
328 | 'llama a scope.cambiarContraseña', function(done) | 377 | 'llama a scope.cambiarContraseña', function(done) |
329 | { | 378 | { |
330 | //arrange | 379 | //arrange |
331 | var scope= {}; | 380 | var scope= { |
381 | $watch: function() {} | ||
382 | }; | ||
332 | var focaAbmVendedorCobradorService = { | 383 | var focaAbmVendedorCobradorService = { |
333 | getCodigoSiguiente: function() { | 384 | getCodigoSiguiente: function() { |
334 | return { | 385 | return { |
335 | then: function() { } | 386 | then: function() { } |
336 | }; | 387 | }; |
337 | }, | 388 | }, |
338 | getVendedorCobradorById: function() { | 389 | getVendedorCobradorById: function() { |
339 | return { | 390 | return { |
340 | then: function() { } | 391 | then: function() { } |
341 | }; | 392 | }; |
342 | }, | 393 | }, |
343 | guardarVendedorCobrador: function() { } | 394 | guardarVendedorCobrador: function() { } |
344 | }; | 395 | }; |
345 | $controller('focaAbmVendedorCobradorController', { | 396 | $controller('focaAbmVendedorCobradorController', { |
346 | $scope: scope, | 397 | $scope: scope, |
347 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 398 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
348 | $routeParams: {}, | 399 | $routeParams: {}, |
349 | focaBotoneraLateralService: {}, | 400 | focaBotoneraLateralService: {}, |
350 | $timeout: timeout, | 401 | $timeout: timeout, |
351 | $uibModal: {}, | 402 | $uibModal: {}, |
352 | $location: {}, | 403 | $location: {}, |
353 | focaModalService: {} | 404 | $localStorage: {}, |
405 | focaModalService: { | ||
406 | alert: function() {} | ||
407 | } | ||
354 | }); | 408 | }); |
355 | var promiseFake = Promise.resolve(true, false); | 409 | var promiseFake = Promise.resolve(true, false); |
356 | 410 | ||
411 | scope.vendedorCobrador = { | ||
412 | NOM: true, | ||
413 | domicilio: true, | ||
414 | codigoPostal: true, | ||
415 | dni: true, | ||
416 | rol: true, | ||
417 | provincia: { | ||
418 | NOMBRE: true | ||
419 | }, | ||
420 | localidad: { | ||
421 | NOMBRE: true | ||
422 | }, | ||
423 | }; | ||
424 | |||
357 | //act | 425 | //act |
358 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') | 426 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') |
359 | .and.returnValue(promiseFake); | 427 | .and.returnValue(promiseFake); |
360 | spyOn(scope, 'cambiarPassword'); | 428 | spyOn(scope, 'cambiarPassword'); |
361 | scope.edicion = false; | 429 | scope.edicion = false; |
362 | scope.guardar(); | 430 | scope.guardar(); |
363 | 431 | ||
364 | //assert | 432 | //assert |
365 | promiseFake.then(function() { | 433 | promiseFake.then(function() { |
366 | expect(scope.cambiarPassword).toHaveBeenCalled(); | 434 | expect(scope.cambiarPassword).toHaveBeenCalled(); |
367 | done(); | 435 | done(); |
368 | }); | 436 | }); |
369 | }); | 437 | }); |
370 | 438 | ||
371 | it('la función $scope.guardar llama a guardaVendedorCobrador y llama foca modal alert' + | 439 | 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) | 440 | 'cuando la promesa es rechazada y el error es 409', function(done) |
373 | { | 441 | { |
374 | //arrange | 442 | //arrange |
375 | var scope= {}; | 443 | var scope= { |
444 | $watch: function() {} | ||
445 | }; | ||
376 | var focaAbmVendedorCobradorService = { | 446 | var focaAbmVendedorCobradorService = { |
377 | getCodigoSiguiente: function() { | 447 | getCodigoSiguiente: function() { |
378 | return { | 448 | return { |
379 | then: function() { } | 449 | then: function() { } |
380 | }; | 450 | }; |
381 | }, | 451 | }, |
382 | getVendedorCobradorById: function() { | 452 | getVendedorCobradorById: function() { |
383 | return { | 453 | return { |
384 | then: function() { } | 454 | then: function() { } |
385 | }; | 455 | }; |
386 | }, | 456 | }, |
387 | guardarVendedorCobrador: function() { } | 457 | guardarVendedorCobrador: function() { } |
388 | }; | 458 | }; |
389 | var focaModalService = { | 459 | var focaModalService = { |
390 | alert: function() { } | 460 | alert: function() { } |
391 | }; | 461 | }; |
392 | $controller('focaAbmVendedorCobradorController', { | 462 | $controller('focaAbmVendedorCobradorController', { |
393 | $scope: scope, | 463 | $scope: scope, |
394 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 464 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
395 | $routeParams: {}, | 465 | $routeParams: {}, |
396 | focaBotoneraLateralService: {}, | 466 | focaBotoneraLateralService: {}, |
397 | $timeout: timeout, | 467 | $timeout: timeout, |
398 | $uibModal: {}, | 468 | $uibModal: {}, |
399 | $location: {}, | 469 | $location: {}, |
470 | $localStorage: {}, | ||
400 | focaModalService: focaModalService | 471 | focaModalService: focaModalService |
401 | }); | 472 | }); |
402 | var promiseFake = Promise.reject({ status: 409 }); | 473 | var promiseFake = Promise.reject({ status: 409 }); |
403 | 474 | ||
404 | //act | 475 | //act |
405 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') | 476 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') |
406 | .and.returnValue(promiseFake); | 477 | .and.returnValue(promiseFake); |
407 | spyOn(focaModalService, 'alert'); | 478 | spyOn(focaModalService, 'alert'); |
408 | scope.guardar(); | 479 | scope.guardar(); |
409 | 480 | ||
410 | //assert | 481 | //assert |
411 | promiseFake.catch(function() { | 482 | promiseFake.catch(function() { |
412 | setTimeout(function() { | 483 | setTimeout(function() { |
413 | expect(focaModalService.alert).toHaveBeenCalled(); | 484 | expect(focaModalService.alert).toHaveBeenCalled(); |
414 | done(); | 485 | done(); |
415 | }, 100); | 486 | }, 100); |
416 | }); | 487 | }); |
417 | }); | 488 | }); |
418 | 489 | ||
419 | it('la función $scope.seleccionarProvincia llama a foca Modal', function() { | 490 | it('la función $scope.seleccionarProvincia llama a foca Modal', function() { |
420 | //arrange | 491 | //arrange |
421 | var scope= {}; | 492 | var scope= { |
493 | $watch: function() {} | ||
494 | }; | ||
422 | var focaAbmVendedorCobradorService = { | 495 | var focaAbmVendedorCobradorService = { |
423 | getCodigoSiguiente: function() { | 496 | getCodigoSiguiente: function() { |
424 | return { | 497 | return { |
425 | then: function() { } | 498 | then: function() { } |
426 | }; | 499 | }; |
427 | }, | 500 | }, |
428 | getVendedorCobradorById: function() { | 501 | getVendedorCobradorById: function() { |
429 | return { | 502 | return { |
430 | then: function() { } | 503 | then: function() { } |
431 | }; | 504 | }; |
432 | }, | 505 | }, |
433 | }; | 506 | }; |
434 | var focaModalService = { | 507 | var focaModalService = { |
435 | modal: function() { } | 508 | modal: function() { } |
436 | }; | 509 | }; |
437 | $controller('focaAbmVendedorCobradorController', { | 510 | $controller('focaAbmVendedorCobradorController', { |
438 | $scope: scope, | 511 | $scope: scope, |
439 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 512 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
440 | $routeParams: {}, | 513 | $routeParams: {}, |
441 | focaBotoneraLateralService: {}, | 514 | focaBotoneraLateralService: {}, |
442 | $timeout: timeout, | 515 | $timeout: timeout, |
443 | $uibModal: {}, | 516 | $uibModal: {}, |
444 | $location: {}, | 517 | $location: {}, |
518 | $localStorage: {}, | ||
445 | focaModalService: focaModalService | 519 | focaModalService: focaModalService |
446 | }); | 520 | }); |
447 | 521 | ||
448 | //act | 522 | //act |
449 | spyOn(focaModalService, 'modal').and.returnValue({ then: function() { } }); | 523 | spyOn(focaModalService, 'modal').and.returnValue({ then: function() { } }); |
450 | scope.seleccionarProvincia(13); | 524 | scope.seleccionarProvincia(13); |
451 | 525 | ||
452 | //assert | 526 | //assert |
453 | expect(focaModalService.modal).toHaveBeenCalled(); | 527 | expect(focaModalService.modal).toHaveBeenCalled(); |
454 | }); | 528 | }); |
455 | 529 | ||
456 | it('función $scope.seleccionarLocalidad llama foca alert si no hay provincia', function() { | 530 | it('función $scope.seleccionarLocalidad llama foca alert si no hay provincia', function() { |
457 | //arrange | 531 | //arrange |
458 | var scope= {}; | 532 | var scope = { |
533 | $watch: function() {} | ||
534 | }; | ||
459 | var focaAbmVendedorCobradorService = { | 535 | var focaAbmVendedorCobradorService = { |
460 | getCodigoSiguiente: function() { | 536 | getCodigoSiguiente: function() { |
461 | return { | 537 | return { |
462 | then: function() { } | 538 | then: function() { } |
463 | }; | 539 | }; |
464 | }, | 540 | }, |
465 | getVendedorCobradorById: function() { | 541 | getVendedorCobradorById: function() { |
466 | return { | 542 | return { |
467 | then: function() { } | 543 | then: function() { } |
468 | }; | 544 | }; |
469 | }, | 545 | }, |
470 | }; | 546 | }; |
471 | var focaModalService = { | 547 | var focaModalService = { |
472 | alert: function() { } | 548 | alert: function() { } |
473 | }; | 549 | }; |
474 | $controller('focaAbmVendedorCobradorController', { | 550 | $controller('focaAbmVendedorCobradorController', { |
475 | $scope: scope, | 551 | $scope: scope, |
476 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 552 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
477 | $routeParams: {}, | 553 | $routeParams: {}, |
478 | focaBotoneraLateralService: {}, | 554 | focaBotoneraLateralService: {}, |
479 | $timeout: timeout, | 555 | $timeout: timeout, |
480 | $uibModal: {}, | 556 | $uibModal: {}, |
481 | $location: {}, | 557 | $location: {}, |
558 | $localStorage: {}, | ||
482 | focaModalService: focaModalService | 559 | focaModalService: focaModalService |
483 | }); | 560 | }); |
484 | 561 | ||
485 | //act | 562 | //act |
486 | spyOn(focaModalService, 'alert'); | 563 | spyOn(focaModalService, 'alert'); |
487 | scope.vendedorCobrador.provincia.ID = false; | 564 | scope.vendedorCobrador.provincia.ID = false; |
488 | scope.seleccionarLocalidad(); | 565 | scope.seleccionarLocalidad(); |
489 | 566 | ||
490 | //assert | 567 | //assert |
491 | expect(focaModalService.alert).toHaveBeenCalled(); | 568 | expect(focaModalService.alert).toHaveBeenCalled(); |
492 | }); | 569 | }); |
493 | 570 | ||
494 | it('función $scope.seleccionarLocalidad llama foca modal', function() { | 571 | it('función $scope.seleccionarLocalidad llama foca modal', function() { |
495 | //arrange | 572 | //arrange |
496 | var scope= {}; | 573 | var scope= { |
574 | $watch: function() {} | ||
575 | }; | ||
497 | var focaAbmVendedorCobradorService = { | 576 | var focaAbmVendedorCobradorService = { |
498 | getCodigoSiguiente: function() { | 577 | getCodigoSiguiente: function() { |
499 | return { | 578 | return { |
500 | then: function() { } | 579 | then: function() { } |
501 | }; | 580 | }; |
502 | }, | 581 | }, |
503 | getVendedorCobradorById: function() { | 582 | getVendedorCobradorById: function() { |
504 | return { | 583 | return { |
505 | then: function() { } | 584 | then: function() { } |
506 | }; | 585 | }; |
507 | }, | 586 | }, |
508 | }; | 587 | }; |
509 | var focaModalService = { | 588 | var focaModalService = { |
510 | modal: function() { } | 589 | modal: function() { } |
511 | }; | 590 | }; |
512 | $controller('focaAbmVendedorCobradorController', { | 591 | $controller('focaAbmVendedorCobradorController', { |
513 | $scope: scope, | 592 | $scope: scope, |
514 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 593 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
515 | $routeParams: {}, | 594 | $routeParams: {}, |
516 | focaBotoneraLateralService: {}, | 595 | focaBotoneraLateralService: {}, |
517 | $timeout: timeout, | 596 | $timeout: timeout, |
518 | $uibModal: {}, | 597 | $uibModal: {}, |
519 | $location: {}, | 598 | $location: {}, |
599 | $localStorage: {}, | ||
520 | focaModalService: focaModalService | 600 | focaModalService: focaModalService |
521 | }); | 601 | }); |
522 | 602 | ||
523 | //act | 603 | //act |
524 | spyOn(focaModalService, 'modal').and.returnValue({ then: function() { } }); | 604 | spyOn(focaModalService, 'modal').and.returnValue({ then: function() { } }); |
525 | scope.vendedorCobrador.provincia.ID = true; | 605 | scope.vendedorCobrador.provincia.ID = true; |
526 | scope.seleccionarLocalidad(13); | 606 | scope.seleccionarLocalidad(13); |
527 | 607 | ||
528 | //assert | 608 | //assert |
529 | expect(focaModalService.modal).toHaveBeenCalled(); | 609 | expect(focaModalService.modal).toHaveBeenCalled(); |
530 | }); | 610 | }); |
531 | 611 | ||
532 | it('la función scope.cancelar lleva a location correcte', function() { | 612 | it('la función scope.cancelar lleva a location correcte', function() { |
533 | 613 | ||
534 | inject(function($location) { | 614 | inject(function($location) { |
535 | //arrange | 615 | //arrange |
536 | var scope = {}; | 616 | var scope = { |
617 | $watch: function() {} | ||
618 | }; | ||
537 | $controller('focaAbmVendedorCobradorController', { | 619 | $controller('focaAbmVendedorCobradorController', { |
538 | $scope: scope, | 620 | $scope: scope, |
539 | focaAbmVendedorCobradorService: { | 621 | focaAbmVendedorCobradorService: { |
540 | getCodigoSiguiente: function() { | 622 | getCodigoSiguiente: function() { |
541 | return { | 623 | return { |
542 | then: function() { } | 624 | then: function() { } |
543 | }; | 625 | }; |
544 | }, | 626 | }, |
545 | getVendedorCobradorById: function() { | 627 | getVendedorCobradorById: function() { |
546 | return { | 628 | return { |
547 | then: function() { } | 629 | then: function() { } |
548 | }; | 630 | }; |
549 | } | 631 | } |
550 | }, | 632 | }, |
551 | $routeParams: {}, | 633 | $routeParams: {}, |
552 | focaBotoneraLateralService: {}, | 634 | focaBotoneraLateralService: {}, |
553 | $timeout: timeout, | 635 | $timeout: timeout, |
554 | $uibModal: {}, | 636 | $uibModal: {}, |
555 | $location: $location, | 637 | $location: $location, |
638 | $localStorage: {}, | ||
556 | focaModalService: {} | 639 | focaModalService: {} |
557 | }); | 640 | }); |
558 | 641 | ||
559 | //act | 642 | //act |
560 | scope.formVendedorCobrador = { | 643 | scope.formVendedorCobrador = { |
561 | $pristine: true | 644 | $pristine: true |
562 | }; | 645 | }; |
563 | scope.cancelar(); | 646 | scope.cancelar(); |
564 | 647 | ||
565 | //assert | 648 | //assert |
566 | expect($location.url()).toEqual('/vendedor-cobrador'); | 649 | expect($location.url()).toEqual('/vendedor-cobrador'); |
567 | }); | 650 | }); |
568 | }); | 651 | }); |
569 | 652 | ||
570 | it('la funcion scope.next suma uno a scope.focused', function() { | 653 | it('la funcion scope.next suma uno a scope.focused', function() { |
571 | 654 | ||
572 | //arrange | 655 | //arrange |
573 | var scope = {}; | 656 | var scope = { |
657 | $watch: function() {} | ||
658 | }; | ||
574 | $controller('focaAbmVendedorCobradorController', { | 659 | $controller('focaAbmVendedorCobradorController', { |
575 | $scope: scope, | 660 | $scope: scope, |
576 | focaAbmVendedorCobradorService: { | 661 | focaAbmVendedorCobradorService: { |
577 | getCodigoSiguiente: function() { | 662 | getCodigoSiguiente: function() { |
578 | return { | 663 | return { |
579 | then: function() { } | 664 | then: function() { } |
580 | }; | 665 | }; |
581 | }, | 666 | }, |
582 | getVendedorCobradorById: function() { | 667 | getVendedorCobradorById: function() { |
583 | return { | 668 | return { |
584 | then: function() { } | 669 | then: function() { } |
585 | }; | 670 | }; |
586 | } | 671 | } |
587 | }, | 672 | }, |
588 | $routeParams: {}, | 673 | $routeParams: {}, |
589 | focaBotoneraLateralService: {}, | 674 | focaBotoneraLateralService: {}, |
590 | $timeout: timeout, | 675 | $timeout: timeout, |
591 | $uibModal: {}, | 676 | $uibModal: {}, |
592 | $location: {}, | 677 | $location: {}, |
678 | $localStorage: {}, | ||
593 | focaModalService: {} | 679 | focaModalService: {} |
594 | }); | 680 | }); |
595 | 681 | ||
596 | //act | 682 | //act |
597 | var esperado = scope.focused + 1; | 683 | var esperado = scope.focused + 1; |
598 | scope.next(13); | 684 | scope.next(13); |
599 | 685 | ||
600 | //assert | 686 | //assert |
601 | expect(scope.focused).toEqual(esperado); | 687 | expect(scope.focused).toEqual(esperado); |
602 | }); | 688 | }); |
603 | 689 | ||
604 | it('la funcion scope.cambiarPassword abre modal', function() { | 690 | it('la funcion scope.cambiarPassword abre modal', function() { |
605 | 691 | ||
606 | //arrange | 692 | //arrange |
607 | var scope = {}; | 693 | var scope = { |
694 | $watch: function() {} | ||
695 | }; | ||
608 | var uibModal = { | 696 | var uibModal = { |
609 | open: function() { } | 697 | open: function() { } |
610 | }; | 698 | }; |
611 | $controller('focaAbmVendedorCobradorController', { | 699 | $controller('focaAbmVendedorCobradorController', { |
612 | $scope: scope, | 700 | $scope: scope, |
613 | focaAbmVendedorCobradorService: { | 701 | focaAbmVendedorCobradorService: { |
614 | getCodigoSiguiente: function() { | 702 | getCodigoSiguiente: function() { |
615 | return { | 703 | return { |
616 | then: function() { } | 704 | then: function() { } |
617 | }; | 705 | }; |
618 | }, | 706 | }, |
619 | getVendedorCobradorById: function() { | 707 | getVendedorCobradorById: function() { |
620 | return { | 708 | return { |
621 | then: function() { } | 709 | then: function() { } |
622 | }; | 710 | }; |
623 | } | 711 | } |
624 | }, | 712 | }, |
625 | $routeParams: {}, | 713 | $routeParams: {}, |
626 | focaBotoneraLateralService: {}, | 714 | focaBotoneraLateralService: {}, |
627 | $timeout: timeout, | 715 | $timeout: timeout, |
628 | $uibModal: uibModal, | 716 | $uibModal: uibModal, |
629 | $location: {}, | 717 | $location: {}, |
718 | $localStorage: {}, | ||
630 | focaModalService: {} | 719 | focaModalService: {} |
631 | }); | 720 | }); |
632 | var responseFake = { | 721 | var responseFake = { |
633 | result: { | 722 | result: { |
634 | then: function() { } | 723 | then: function() { } |
635 | } | 724 | } |
636 | }; | 725 | }; |
637 | 726 | ||
638 | //act | 727 | //act |
639 | spyOn(uibModal, 'open').and.returnValue(responseFake); | 728 | spyOn(uibModal, 'open').and.returnValue(responseFake); |
640 | scope.cambiarPassword(); | 729 | scope.cambiarPassword(); |
641 | 730 | ||
642 | //assert | 731 | //assert |
643 | expect(uibModal.open).toHaveBeenCalled(); | 732 | expect(uibModal.open).toHaveBeenCalled(); |
644 | }); | 733 | }); |
645 | 734 | ||
646 | it('la funcion scope.cambiarPassword abre modal y llama a location cuando edicion es ' + | 735 | it('la funcion scope.cambiarPassword abre modal y llama a location cuando edicion es ' + |
647 | 'falso', function(done) | 736 | 'falso', function(done) |
648 | { | 737 | { |
649 | inject(function($location) { | 738 | inject(function($location) { |
650 | 739 | ||
651 | //arrange | 740 | //arrange |
652 | var scope = {}; | 741 | var scope = { |
742 | $watch: function() {} | ||
743 | }; | ||
653 | var uibModal = { | 744 | var uibModal = { |
654 | open: function() { } | 745 | open: function() { } |
655 | }; | 746 | }; |
656 | $controller('focaAbmVendedorCobradorController', { | 747 | $controller('focaAbmVendedorCobradorController', { |
657 | $scope: scope, | 748 | $scope: scope, |
658 | focaAbmVendedorCobradorService: { | 749 | focaAbmVendedorCobradorService: { |
659 | getCodigoSiguiente: function() { | 750 | getCodigoSiguiente: function() { |
660 | return { | 751 | return { |
661 | then: function() { } | 752 | then: function() { } |
662 | }; | 753 | }; |
663 | }, | 754 | }, |
664 | getVendedorCobradorById: function() { | 755 | getVendedorCobradorById: function() { |
665 | return { | 756 | return { |
666 | then: function() { } | 757 | then: function() { } |
667 | }; | 758 | }; |
668 | } | 759 | } |
669 | }, | 760 | }, |
670 | $routeParams: {}, | 761 | $routeParams: {}, |
671 | focaBotoneraLateralService: {}, | 762 | focaBotoneraLateralService: {}, |
672 | $timeout: timeout, | 763 | $timeout: timeout, |
673 | $uibModal: uibModal, | 764 | $uibModal: uibModal, |
674 | $location: $location, | 765 | $location: $location, |
766 | $localStorage: {}, | ||
675 | focaModalService: {} | 767 | focaModalService: {} |
676 | }); | 768 | }); |
677 | var responseFake = { | 769 | var responseFake = { |
678 | result: Promise.resolve(true) | 770 | result: Promise.resolve(true) |
679 | }; | 771 | }; |
680 | 772 | ||
681 | //act | 773 | //act |
682 | spyOn(uibModal, 'open').and.returnValue(responseFake); | 774 | spyOn(uibModal, 'open').and.returnValue(responseFake); |
683 | scope.edicion = false; | 775 | scope.edicion = false; |
684 | scope.cambiarPassword(); | 776 | scope.cambiarPassword(); |
685 | 777 | ||
686 | //assert | 778 | //assert |
687 | responseFake.result.then(function() { | 779 | responseFake.result.then(function() { |
688 | expect($location.url()).toEqual('/vendedor-cobrador'); | 780 | expect($location.url()).toEqual('/vendedor-cobrador'); |
689 | done(); | 781 | done(); |
690 | }); | 782 | }); |
691 | }); | 783 | }); |
692 | }); | 784 | }); |
693 | }); | 785 | }); |
694 | }); | 786 | }); |
695 | 787 |
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 |