Commit 988af492f809e0eb91b9af8de4f14695aa1c81f9
Exists in
master
Merge remote-tracking branch 'upstream/master'
Showing
4 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/controller.js
1 | angular.module('focaAbmVendedorCobrador') | 1 | angular.module('focaAbmVendedorCobrador') |
2 | .controller('focaAbmVendedoresCobradoresController', [ | 2 | .controller('focaAbmVendedoresCobradoresController', [ |
3 | '$scope', 'focaAbmVendedorCobradorService', '$location', '$filter', | 3 | '$scope', 'focaAbmVendedorCobradorService', '$location', '$filter', |
4 | 'focaBotoneraLateralService', 'focaModalService', | 4 | 'focaBotoneraLateralService', 'focaModalService', '$localStorage', |
5 | function($scope, focaAbmVendedorCobradorService, $location, $filter, | 5 | function($scope, focaAbmVendedorCobradorService, $location, $filter, |
6 | focaBotoneraLateralService, focaModalService) { | 6 | focaBotoneraLateralService, focaModalService, $localStorage) { |
7 | $scope.now = new Date(); | 7 | $scope.now = new Date(); |
8 | $scope.vendedoresCobradores = []; | 8 | $scope.vendedoresCobradores = []; |
9 | $scope.filters = ''; | 9 | $scope.filters = ''; |
10 | $scope.numPerPage = 10; | 10 | $scope.numPerPage = 10; |
11 | $scope.currentPageVendedoresCobradores = []; | 11 | $scope.currentPageVendedoresCobradores = []; |
12 | $scope.vendedoresCobradores = []; | 12 | $scope.vendedoresCobradores = []; |
13 | 13 | ||
14 | //SETEO BOTONERA LATERAL | 14 | //SETEO BOTONERA LATERAL |
15 | focaBotoneraLateralService.showSalir(true); | 15 | focaBotoneraLateralService.showSalir(true); |
16 | focaBotoneraLateralService.showPausar(false); | 16 | focaBotoneraLateralService.showPausar(false); |
17 | focaBotoneraLateralService.showCancelar(false); | 17 | focaBotoneraLateralService.showCancelar(false); |
18 | focaBotoneraLateralService.showGuardar(false); | 18 | focaBotoneraLateralService.showGuardar(false); |
19 | 19 | ||
20 | |||
21 | |||
20 | $scope.editar = function(id) { | 22 | $scope.editar = function(id) { |
21 | $location.path('/vendedor-cobrador/' + id); | 23 | $location.path('/vendedor-cobrador/' + id); |
22 | }; | 24 | }; |
23 | 25 | ||
24 | $scope.eliminar = function(vendedorCobrador) { | 26 | $scope.eliminar = function(vendedorCobrador) { |
25 | var tipo = !!(vendedorCobrador.rol | 2) ? 'cobrador' : 'vendedor'; | 27 | var tipo = !!(vendedorCobrador.rol | 2) ? 'cobrador' : 'vendedor'; |
26 | focaModalService.confirm('¿Está seguro que desea borrar el ' + tipo + | 28 | focaModalService.confirm('¿Está seguro que desea borrar el ' + tipo + |
27 | ' ' + vendedorCobrador.NOM + '?') | 29 | ' ' + vendedorCobrador.NOM + '?') |
28 | .then(function(data) { | 30 | .then(function(data) { |
29 | if(data) { | 31 | if (data) { |
30 | focaAbmVendedorCobradorService | 32 | focaAbmVendedorCobradorService |
31 | .eliminarVendedorCobrador(vendedorCobrador.id) | 33 | .eliminarVendedorCobrador(vendedorCobrador.id) |
32 | .then(function() { | 34 | .then(function() { |
33 | $scope.search(13); | 35 | $scope.search(13); |
34 | }); | 36 | }); |
35 | } | 37 | } |
36 | }); | 38 | }); |
37 | }; | 39 | }; |
38 | 40 | ||
39 | $scope.selectPage = function(page) { | 41 | $scope.selectPage = function(page) { |
40 | var start = (page - 1) * $scope.numPerPage; | 42 | var start = (page - 1) * $scope.numPerPage; |
41 | var end = start + $scope.numPerPage; | 43 | var end = start + $scope.numPerPage; |
42 | $scope.paginas = []; | 44 | $scope.paginas = []; |
43 | $scope.paginas = calcularPages(page); | 45 | $scope.paginas = calcularPages(page); |
44 | $scope.currentPageVendedoresCobradores = | 46 | $scope.currentPageVendedoresCobradores = |
45 | $scope.vendedoresCobradores.slice(start, end); | 47 | $scope.vendedoresCobradores.slice(start, end); |
46 | $scope.currentPage = page; | 48 | $scope.currentPage = page; |
47 | }; | 49 | }; |
48 | 50 | ||
49 | $scope.resetPage = function() { | 51 | $scope.resetPage = function() { |
50 | $scope.currentPage = 1; | 52 | $scope.currentPage = 1; |
51 | $scope.selectPage(1); | 53 | $scope.selectPage(1); |
52 | }; | 54 | }; |
53 | 55 | ||
54 | $scope.search = function(key) { | 56 | $scope.search = function(key) { |
55 | if(key !== 13) return; | 57 | if (key !== 13) return; |
56 | 58 | ||
57 | focaAbmVendedorCobradorService | 59 | focaAbmVendedorCobradorService |
58 | .getVendedoresCobradores($scope.filters) | 60 | .getVendedoresCobradores($scope.filters) |
59 | .then(function(res) { | 61 | .then(function(res) { |
60 | $scope.vendedoresCobradores = res.data; | 62 | $scope.vendedoresCobradores = res.data; |
61 | 63 | ||
62 | $scope.lastPage = Math.ceil( | 64 | $scope.lastPage = Math.ceil( |
63 | $scope.vendedoresCobradores.length / $scope.numPerPage | 65 | $scope.vendedoresCobradores.length / $scope.numPerPage |
64 | ); | 66 | ); |
65 | 67 | ||
66 | $scope.resetPage(); | 68 | $scope.resetPage(); |
67 | }); | 69 | }); |
68 | }; | 70 | }; |
69 | 71 | ||
72 | if ($localStorage.vendedorCobrador) { | ||
73 | var vendedorCobrador = JSON.parse($localStorage.vendedorCobrador); | ||
74 | $location.path('/vendedor-cobrador/' + vendedorCobrador.NUM); | ||
75 | } | ||
76 | |||
70 | function calcularPages(paginaActual) { | 77 | function calcularPages(paginaActual) { |
71 | var paginas = []; | 78 | var paginas = []; |
72 | paginas.push(paginaActual); | 79 | paginas.push(paginaActual); |
73 | 80 | ||
74 | if(paginaActual - 1 > 1) { | 81 | if (paginaActual - 1 > 1) { |
75 | 82 | ||
76 | paginas.unshift(paginaActual - 1); | 83 | paginas.unshift(paginaActual - 1); |
77 | if(paginaActual - 2 > 1) { | 84 | if (paginaActual - 2 > 1) { |
78 | paginas.unshift(paginaActual - 2); | 85 | paginas.unshift(paginaActual - 2); |
79 | } | 86 | } |
80 | } | 87 | } |
81 | 88 | ||
82 | if(paginaActual + 1 < $scope.lastPage) { | 89 | if (paginaActual + 1 < $scope.lastPage) { |
83 | paginas.push(paginaActual + 1); | 90 | paginas.push(paginaActual + 1); |
84 | if(paginaActual + 2 < $scope.lastPage) { | 91 | if (paginaActual + 2 < $scope.lastPage) { |
85 | paginas.push(paginaActual + 2); | 92 | paginas.push(paginaActual + 2); |
86 | } | 93 | } |
87 | } | 94 | } |
88 | 95 | ||
89 | if(paginaActual !== 1) { | 96 | if (paginaActual !== 1) { |
90 | paginas.unshift(1); | 97 | paginas.unshift(1); |
91 | } | 98 | } |
92 | 99 | ||
93 | if(paginaActual !== $scope.lastPage) { | 100 | if (paginaActual !== $scope.lastPage) { |
94 | paginas.push($scope.lastPage); | 101 | paginas.push($scope.lastPage); |
95 | } | 102 | } |
96 | |||
97 | return paginas; | 103 | return paginas; |
98 | } | 104 | } |
105 | |||
99 | // TODO: descomentar cuando se use | 106 | // TODO: descomentar cuando se use |
100 | // function primera() { | 107 | // function primera() { |
101 | // $scope.selectedClientes = 0; | 108 | // $scope.selectedClientes = 0; |
102 | // } | 109 | // } |
103 | 110 | ||
104 | // function anterior() { | 111 | // function anterior() { |
105 | // if ($scope.selectedClientes === 0 && $scope.currentPage > 1) { | 112 | // if ($scope.selectedClientes === 0 && $scope.currentPage > 1) { |
106 | // retrocederPagina(); | 113 | // retrocederPagina(); |
107 | // } else { | 114 | // } else { |
108 | // $scope.selectedClientes--; | 115 | // $scope.selectedClientes--; |
109 | // } | 116 | // } |
110 | // } | 117 | // } |
111 | 118 | ||
112 | // function siguiente() { | 119 | // function siguiente() { |
113 | // if ($scope.selectedClientes < $scope.currentPageVendedoresCobradores.length - 1 ) | 120 | // if ($scope.selectedClientes < $scope.currentPageVendedoresCobradores.length - 1 ) |
114 | //{ | 121 | //{ |
115 | // $scope.selectedClientes++; | 122 | // $scope.selectedClientes++; |
116 | // } else { | 123 | // } else { |
117 | // avanzarPagina(); | 124 | // avanzarPagina(); |
118 | // } | 125 | // } |
119 | // } | 126 | // } |
120 | 127 | ||
121 | // function retrocederPagina() { | 128 | // function retrocederPagina() { |
122 | // if ($scope.currentPage > 1) { | 129 | // if ($scope.currentPage > 1) { |
123 | // $scope.selectPage($scope.currentPage - 1); | 130 | // $scope.selectPage($scope.currentPage - 1); |
124 | // $scope.selectedClientes = $scope.numPerPage - 1; | 131 | // $scope.selectedClientes = $scope.numPerPage - 1; |
125 | // } | 132 | // } |
126 | // } | 133 | // } |
127 | 134 | ||
128 | // function avanzarPagina() { | 135 | // function avanzarPagina() { |
129 | // if ($scope.currentPage < $scope.lastPage) { | 136 | // if ($scope.currentPage < $scope.lastPage) { |
130 | // $scope.selectPage($scope.currentPage + 1); | 137 | // $scope.selectPage($scope.currentPage + 1); |
131 | // $scope.selectedClientes = 0; | 138 | // $scope.selectedClientes = 0; |
132 | // } | 139 | // } |
133 | // } | 140 | // } |
134 | } | 141 | } |
135 | ]); | 142 | ]); |
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', | 4 | '$timeout', '$uibModal', '$location', 'focaModalService', '$localStorage', '$filter', |
5 | function($scope, focaAbmVendedorCobradorService, $routeParams, focaBotoneraLateralService, | 5 | function($scope, focaAbmVendedorCobradorService, $routeParams, focaBotoneraLateralService, |
6 | $timeout, $uibModal, $location, focaModalService) { | 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 | }; | 25 | }; |
25 | $scope.options = [ | 26 | $scope.options = [ |
26 | { | 27 | { |
27 | label: 'Vendedor', | 28 | label: 'Vendedor', |
28 | value: 1 | 29 | value: 1 |
29 | }, | 30 | }, |
30 | { | 31 | { |
31 | label: 'Cobrador', | 32 | label: 'Cobrador', |
32 | value: 2 | 33 | value: 2 |
33 | }, | 34 | }, |
34 | { | 35 | { |
35 | label: 'Vendedor y cobrador', | 36 | label: 'Vendedor y cobrador', |
36 | value: 3 | 37 | value: 3 |
37 | } | 38 | } |
38 | ]; | 39 | ]; |
39 | //SETEO BOTONERA LATERAL | 40 | //SETEO BOTONERA LATERAL |
40 | $timeout(function() { | 41 | $timeout(function() { |
41 | focaBotoneraLateralService.showSalir(false); | 42 | focaBotoneraLateralService.showSalir(false); |
42 | focaBotoneraLateralService.showPausar(true); | 43 | focaBotoneraLateralService.showPausar(true); |
43 | focaBotoneraLateralService.showCancelar(false); | 44 | focaBotoneraLateralService.showCancelar(false); |
44 | focaBotoneraLateralService.showGuardar(true, $scope.guardar); | 45 | focaBotoneraLateralService.showGuardar(true, $scope.guardar); |
45 | focaBotoneraLateralService.addCustomButton('Salir', $scope.cancelar); | 46 | focaBotoneraLateralService.addCustomButton('Salir', $scope.cancelar); |
46 | }); | 47 | }); |
48 | |||
49 | $timeout(function() {getLSVendedor();}); | ||
50 | |||
47 | focaAbmVendedorCobradorService | 51 | focaAbmVendedorCobradorService |
48 | .getCodigoSiguiente() | 52 | .getCodigoSiguiente() |
49 | .then(function(res) { | 53 | .then(function(res) { |
50 | $scope.vendedorCobrador.NUM = res.data.mayor; | 54 | $scope.vendedorCobrador.NUM = res.data.mayor; |
51 | }); | 55 | }); |
52 | 56 | ||
53 | focaAbmVendedorCobradorService | 57 | focaAbmVendedorCobradorService |
54 | .getVendedorCobradorById($routeParams.id) | 58 | .getVendedorCobradorById($routeParams.id) |
55 | .then(function(res) { | 59 | .then(function(res) { |
56 | if (res.data) { | 60 | if (res.data) { |
57 | $scope.edicion = true; | 61 | $scope.edicion = true; |
58 | $scope.vendedorCobrador = res.data; | 62 | $scope.vendedorCobrador = res.data; |
59 | } | 63 | } |
60 | }); | 64 | }); |
65 | |||
66 | $scope.guardar = function() { | ||
67 | |||
68 | if (!$scope.vendedorCobrador.NOM) { | ||
69 | focaModalService.alert('Ingrese nombre'); | ||
70 | return; | ||
71 | } else if (!$scope.vendedorCobrador.domicilio) { | ||
72 | focaModalService.alert('Ingrese domicilio'); | ||
73 | return; | ||
74 | } else if (!$scope.vendedorCobrador.codigoPostal) { | ||
75 | focaModalService.alert('Ingrese código postal'); | ||
76 | return; | ||
77 | } else if (!$scope.vendedorCobrador.dni) { | ||
78 | focaModalService.alert('Ingrese dni'); | ||
79 | return; | ||
80 | } else if (!$scope.vendedorCobrador.rol) { | ||
81 | focaModalService.alert('Seleccione tipo'); | ||
82 | return; | ||
83 | } else if (!$scope.vendedorCobrador.provincia.NOMBRE) { | ||
84 | focaModalService.alert('Seleccione una provincia'); | ||
85 | return; | ||
86 | } else if (!$scope.vendedorCobrador.localidad.NOMBRE) { | ||
87 | focaModalService.alert('Seleccione una localidad'); | ||
88 | return; | ||
89 | } else if (!isNaN($scope.vendedorCobrador.comisionCobrador) || | ||
90 | !isNaN($scope.vendedorCobrador.comisionVendedor)) { | ||
91 | focaModalService.alert('Ingrese una comision válida'); | ||
92 | return; | ||
93 | } | ||
61 | 94 | ||
62 | $scope.guardar = function() { | ||
63 | if ($scope.guardado) { | 95 | if ($scope.guardado) { |
64 | $scope.cambiarPassword(); | 96 | $scope.cambiarPassword(); |
65 | } else { | 97 | } else { |
66 | 98 | ||
67 | var vendedorCobrador = angular.copy($scope.vendedorCobrador); | 99 | var vendedorCobrador = angular.copy($scope.vendedorCobrador); |
68 | 100 | ||
69 | vendedorCobrador.idProvincia = vendedorCobrador.provincia.ID; | 101 | vendedorCobrador.idProvincia = vendedorCobrador.provincia.ID; |
70 | vendedorCobrador.idLocalidad = vendedorCobrador.localidad.ID; | 102 | vendedorCobrador.idLocalidad = vendedorCobrador.localidad.ID; |
71 | 103 | ||
72 | delete vendedorCobrador.provincia; | 104 | delete vendedorCobrador.provincia; |
73 | delete vendedorCobrador.localidad; | 105 | delete vendedorCobrador.localidad; |
74 | if (vendedorCobrador.rol == 1) { | 106 | if (vendedorCobrador.rol == 1) { |
75 | delete vendedorCobrador.comisionCobrador; | 107 | delete vendedorCobrador.comisionCobrador; |
76 | } else if (vendedorCobrador.rol == 2) { | 108 | } else if (vendedorCobrador.rol == 2) { |
77 | delete vendedorCobrador.comisionVendedor; | 109 | delete vendedorCobrador.comisionVendedor; |
78 | } | 110 | } |
79 | vendedorCobrador.metodo = ($routeParams.id === '0') ? 'crear' : 'actualizar'; | 111 | vendedorCobrador.metodo = ($routeParams.id === '0') ? 'crear' : 'actualizar'; |
80 | 112 | ||
81 | focaAbmVendedorCobradorService | 113 | focaAbmVendedorCobradorService |
82 | .guardarVendedorCobrador(vendedorCobrador) | 114 | .guardarVendedorCobrador(vendedorCobrador) |
83 | .then(function(res) { | 115 | .then(function(res) { |
84 | if ($scope.edicion) { | 116 | if ($scope.edicion) { |
85 | $location.path('/vendedor-cobrador'); | 117 | $location.path('/vendedor-cobrador'); |
86 | } else { | 118 | } else { |
87 | $scope.vendedorCobrador = res.data; | 119 | $scope.vendedorCobrador = res.data; |
88 | $scope.cambiarPassword(); | 120 | $scope.cambiarPassword(); |
89 | $scope.guardado = true; | 121 | $scope.guardado = true; |
90 | } | 122 | } |
91 | }) | 123 | }) |
92 | .catch(function(err) { | 124 | .catch(function(err) { |
93 | if (err.status === 409) { | 125 | if (err.status === 409) { |
94 | focaModalService.alert(err.data); | 126 | focaModalService.alert(err.data); |
95 | } | 127 | } |
96 | }); | 128 | }); |
97 | } | 129 | } |
98 | }; | 130 | }; |
99 | 131 | ||
100 | $scope.seleccionarProvincia = function(key) { | 132 | $scope.seleccionarProvincia = function(key) { |
101 | if(key === 13) { | 133 | if (key === 13) { |
102 | var parametrosModal = { | 134 | var parametrosModal = { |
135 | searchText: $scope.vendedorCobrador.provincia.NOMBRE, | ||
103 | query: '/provincia', | 136 | query: '/provincia', |
104 | columnas: [ | 137 | columnas: [ |
105 | { | 138 | { |
106 | propiedad: 'ID', | 139 | propiedad: 'ID', |
107 | nombre: 'Codigo', | 140 | nombre: 'Codigo', |
108 | filtro: { | 141 | filtro: { |
109 | nombre: 'rellenarDigitos', | 142 | nombre: 'rellenarDigitos', |
110 | parametro: 3} | 143 | parametro: 3 |
111 | }, | 144 | } |
145 | }, | ||
112 | { | 146 | { |
113 | propiedad: 'NOMBRE', | 147 | propiedad: 'NOMBRE', |
114 | nombre: 'Nombre' | 148 | nombre: 'Nombre' |
115 | } | 149 | } |
116 | ], | 150 | ], |
117 | titulo:'Búsqueda de provincias', | 151 | titulo: 'Búsqueda de provincias', |
118 | size: 'md' | 152 | size: 'md' |
119 | }; | 153 | }; |
120 | focaModalService.modal(parametrosModal).then(function(provincia) { | 154 | focaModalService.modal(parametrosModal).then(function(provincia) { |
121 | $scope.vendedorCobrador.provincia = provincia; | 155 | $scope.vendedorCobrador.provincia = provincia; |
122 | $timeout(function() { | 156 | $timeout(function() { |
123 | $scope.focused = 5; | 157 | $scope.focused = 5; |
124 | }); | 158 | }); |
125 | }, function() { | 159 | }, function() { |
126 | //TODO: función llamada cuando cancela el modal | 160 | //TODO: función llamada cuando cancela el modal |
127 | }); | 161 | }); |
128 | } | 162 | } |
129 | }; | 163 | }; |
164 | |||
130 | $scope.seleccionarLocalidad = function(key) { | 165 | $scope.seleccionarLocalidad = function(key) { |
131 | if(!$scope.vendedorCobrador.provincia.ID) { | 166 | if (!$scope.vendedorCobrador.provincia.ID) { |
132 | focaModalService.alert('Seleccione una provincia'); | 167 | focaModalService.alert('Seleccione una provincia'); |
133 | return; | 168 | return; |
134 | } | 169 | } |
135 | if(key === 13) { | 170 | if (key === 13) { |
136 | var parametrosModal = { | 171 | var parametrosModal = { |
172 | searchText: $scope.vendedorCobrador.localidad.NOMBRE, | ||
137 | query: '/localidad/' + $scope.vendedorCobrador.provincia.ID, | 173 | query: '/localidad/' + $scope.vendedorCobrador.provincia.ID, |
138 | columnas: [ | 174 | columnas: [ |
139 | { | 175 | { |
140 | propiedad: 'ID', | 176 | propiedad: 'ID', |
141 | nombre: 'Código', | 177 | nombre: 'Código', |
142 | filtro: { | 178 | filtro: { |
143 | nombre: 'rellenarDigitos', | 179 | nombre: 'rellenarDigitos', |
144 | parametro: 3 | 180 | parametro: 3 |
145 | } | 181 | } |
146 | }, | 182 | }, |
147 | { | 183 | { |
148 | propiedad: 'NOMBRE', | 184 | propiedad: 'NOMBRE', |
149 | nombre: 'Nombre' | 185 | nombre: 'Nombre' |
150 | } | 186 | } |
151 | ], | 187 | ], |
152 | titulo:'Búsqueda de localidades', | 188 | titulo: 'Búsqueda de localidades', |
153 | size: 'md' | 189 | size: 'md' |
154 | }; | 190 | }; |
155 | focaModalService.modal(parametrosModal).then(function(localidad) { | 191 | focaModalService.modal(parametrosModal).then(function(localidad) { |
156 | $scope.vendedorCobrador.localidad = localidad; | 192 | $scope.vendedorCobrador.localidad = localidad; |
157 | $timeout(function() { | 193 | $timeout(function() { |
158 | $scope.focused = 6; | 194 | $scope.focused = 6; |
159 | }); | 195 | }); |
160 | }, function() { | 196 | }, function() { |
161 | //TODO: función llamada cuando cancela el modal | 197 | //TODO: función llamada cuando cancela el modal |
162 | }); | 198 | }); |
163 | } | 199 | } |
164 | }; | 200 | }; |
165 | 201 | ||
202 | $scope.$watch('vendedorCobrador', function(newValue) { | ||
203 | focaBotoneraLateralService.setPausarData({ | ||
204 | label:'vendedorCobrador', | ||
205 | val: newValue | ||
206 | }); | ||
207 | }, true); | ||
208 | |||
209 | function getLSVendedor() { | ||
210 | var vendedorCobrador = JSON.parse($localStorage.vendedorCobrador || null); | ||
211 | if (vendedorCobrador) { | ||
212 | setearVendedor(vendedorCobrador); | ||
213 | delete $localStorage.vendedorCobrador; | ||
214 | } | ||
215 | } | ||
216 | |||
217 | function setearVendedor(vendedorCobrador) { | ||
218 | $scope.vendedorCobrador = vendedorCobrador; | ||
219 | $scope.$broadcast('addCabecera', { | ||
220 | label: 'Vendedor / Cobrador:', | ||
221 | valor: $filter('rellenarDigitos')(vendedorCobrador.NUM, 2) + ' - ' + vendedorCobrador.NOM | ||
222 | }); | ||
223 | } | ||
224 | |||
166 | $scope.cancelar = function() { | 225 | $scope.cancelar = function() { |
167 | if(!$scope.formVendedorCobrador.$pristine) { | 226 | if (!$scope.formVendedorCobrador.$pristine) { |
168 | 227 | ||
169 | focaModalService.confirm('¿Está seguro de que desea salir?' + | 228 | focaModalService.confirm('¿Está seguro de que desea salir?' + |
170 | 'Se perderán todos los datos cargados.') | 229 | 'Se perderán todos los datos cargados.') |
171 | .then(function(confirmed) { | 230 | .then(function(confirmed) { |
172 | if(confirmed && $scope.guardado && !$scope.edicion) { | 231 | if (confirmed && $scope.guardado && !$scope.edicion) { |
173 | 232 | ||
174 | focaAbmVendedorCobradorService | 233 | focaAbmVendedorCobradorService |
175 | .destroyVendedorCobrador($scope.vendedorCobrador.id) | 234 | .destroyVendedorCobrador($scope.vendedorCobrador.id) |
176 | .then(function() { | 235 | .then(function() { |
177 | $location.path('/vendedor-cobrador'); | 236 | $location.path('/vendedor-cobrador'); |
178 | }); | 237 | }); |
179 | 238 | ||
180 | } else if (confirmed) { | 239 | } else if (confirmed) { |
181 | $location.path('/vendedor-cobrador'); | 240 | $location.path('/vendedor-cobrador'); |
182 | } | 241 | } |
183 | }); | 242 | }); |
184 | 243 | ||
185 | } else { | 244 | } else { |
186 | $location.path('/vendedor-cobrador'); | 245 | $location.path('/vendedor-cobrador'); |
187 | } | 246 | } |
188 | }; | 247 | }; |
189 | 248 | ||
190 | $scope.next = function(key) { | 249 | $scope.next = function(key) { |
191 | if(key === 13) $scope.focused++; | 250 | if (key === 13) $scope.focused++; |
192 | }; | 251 | }; |
193 | 252 | ||
194 | $scope.cambiarPassword = function() { | 253 | $scope.cambiarPassword = function() { |
195 | var vendedorCobrador = angular.copy($scope.vendedorCobrador); | 254 | var vendedorCobrador = angular.copy($scope.vendedorCobrador); |
196 | vendedorCobrador.nombre = vendedorCobrador.NOM; | 255 | vendedorCobrador.nombre = vendedorCobrador.NOM; |
197 | vendedorCobrador.codigo = vendedorCobrador.NUM; | 256 | vendedorCobrador.codigo = vendedorCobrador.NUM; |
198 | 257 | ||
199 | var parametros = { | 258 | var parametros = { |
200 | cuenta: vendedorCobrador, | 259 | cuenta: vendedorCobrador, |
201 | tipo: ($scope.vendedorCobrador.rol === 2) ? 'Cobradores' : 'Vendedores', | 260 | tipo: ($scope.vendedorCobrador.rol === 2) ? 'Cobradores' : 'Vendedores', |
202 | btnAceptar: true | 261 | btnAceptar: true |
203 | }; | 262 | }; |
204 | 263 | ||
205 | var modalInstance = $uibModal.open( | 264 | var modalInstance = $uibModal.open( |
206 | { | 265 | { |
207 | ariaLabelledBy: 'Configuracion de Logueo', | 266 | ariaLabelledBy: 'Configuracion de Logueo', |
208 | templateUrl: 'modal-login.html', | 267 | templateUrl: 'modal-login.html', |
209 | controller: 'focaModalLoginController', | 268 | controller: 'focaModalLoginController', |
210 | size: 'md', | 269 | size: 'md', |
211 | resolve: { | 270 | resolve: { |
212 | parametros: function() { | 271 | parametros: function() { |
213 | return parametros; | 272 | return parametros; |
214 | } | 273 | } |
215 | } | 274 | } |
216 | } | 275 | } |
217 | ); | 276 | ); |
218 | 277 | ||
219 | modalInstance.result.then(function() { | 278 | modalInstance.result.then(function() { |
220 | if (!$scope.edicion) $location.path('/vendedor-cobrador'); | 279 | if (!$scope.edicion) $location.path('/vendedor-cobrador'); |
221 | }); | 280 | }); |
222 | 281 | ||
223 | }; | 282 | }; |
224 | } | 283 | } |
225 | ]); | 284 | ]); |
src/views/foca-abm-vendedor-cobrador-item.html
1 | <div class="row"> | 1 | <div class="row"> |
2 | <foca-cabecera-facturador | 2 | <foca-cabecera-facturador |
3 | titulo="'Vendedores / Cobradores'" | 3 | titulo="'Vendedores / Cobradores'" |
4 | fecha="now" | 4 | fecha="now" |
5 | class="mb-0 col-lg-12" | 5 | class="mb-0 col-lg-12" |
6 | ></foca-cabecera-facturador> | 6 | ></foca-cabecera-facturador> |
7 | </div> | 7 | </div> |
8 | <div class="row"> | 8 | <div class="row"> |
9 | <div class="col-12 col-md-10 p-0 mt-4 border border-white rounded"> | 9 | <div class="col-12 col-md-10 p-0 mt-4 border border-white rounded"> |
10 | <form name="formVendedorCobrador" class="px-3" autocomplete="off"> | 10 | <form name="formVendedorCobrador" class="px-3" autocomplete="off"> |
11 | <div class="row mt-3"> | 11 | <div class="row mt-3"> |
12 | <div class="form-group d-flex mb-2 col-md-6"> | 12 | <div class="form-group d-flex mb-2 col-md-6"> |
13 | <label class="col-form-label col-md-4">Código</label> | 13 | <label class="col-form-label col-md-4">Código</label> |
14 | <div class="col-md-8 pl-0"> | 14 | <div class="col-md-8 pl-0"> |
15 | <input | 15 | <input |
16 | class="form-control form-control-sm" | 16 | class="form-control form-control-sm" |
17 | ng-model="vendedorCobrador.NUM" | 17 | ng-model="vendedorCobrador.NUM" |
18 | ng-disabled="edicion"/> | 18 | ng-disabled="edicion"/> |
19 | </div> | 19 | </div> |
20 | </div> | 20 | </div> |
21 | <div class="form-group d-flex mb-2 col-md-6"> | 21 | <div class="form-group d-flex mb-2 col-md-6"> |
22 | <label class="col-form-label col-md-4">Tipo</label> | 22 | <label class="col-form-label col-md-4">Tipo</label> |
23 | <div class="col-md-8 pl-0"> | 23 | <div class="col-md-8 pl-0"> |
24 | <select | 24 | <select |
25 | class="form-control form-control-sm" | 25 | class="form-control form-control-sm" |
26 | ng-model="vendedorCobrador.rol" | 26 | ng-model="vendedorCobrador.rol" |
27 | ng-options="option.value as option.label for option in options" | 27 | ng-options="option.value as option.label for option in options" |
28 | foca-focus="focused == 0" | 28 | foca-focus="focused == 0" |
29 | ng-focus="focused = 0"> | 29 | ng-focus="focused = 0"> |
30 | </select> | 30 | </select> |
31 | </div> | 31 | </div> |
32 | </div> | 32 | </div> |
33 | <div class="form-group d-flex mb-2 col-md-6"> | 33 | <div class="form-group d-flex mb-2 col-md-6"> |
34 | <label class="col-form-label col-md-4">Nombre</label> | 34 | <label class="col-form-label col-md-4">Nombre</label> |
35 | <div class="input-group col-md-8 pl-0"> | 35 | <div class="input-group col-md-8 pl-0"> |
36 | <input | 36 | <input |
37 | class="form-control form-control-sm" | 37 | class="form-control form-control-sm" |
38 | type="text" | 38 | type="text" |
39 | teclado-virtual | 39 | teclado-virtual |
40 | ng-model="vendedorCobrador.NOM" | 40 | ng-model="vendedorCobrador.NOM" |
41 | foca-focus="focused == 1" | 41 | foca-focus="focused == 1" |
42 | ng-focus="focused = 1" | 42 | ng-focus="focused = 1" |
43 | ng-keypress="next($event.keyCode)" | 43 | ng-keypress="next($event.keyCode)" |
44 | autocomplete="off" | 44 | autocomplete="off" |
45 | uppercase-only | 45 | uppercase-only |
46 | |||
46 | /> | 47 | /> |
47 | </div> | 48 | </div> |
48 | </div> | 49 | </div> |
49 | <div class="form-group d-flex mb-2 col-md-6"> | 50 | <div class="form-group d-flex mb-2 col-md-6"> |
50 | <label class="col-form-label col-md-4">Domicilio</label> | 51 | <label class="col-form-label col-md-4">Domicilio</label> |
51 | <div class="input-group col-md-8 pl-0"> | 52 | <div class="input-group col-md-8 pl-0"> |
52 | <input | 53 | <input |
53 | class="form-control form-control-sm" | 54 | class="form-control form-control-sm" |
54 | type="text" | 55 | type="text" |
55 | teclado-virtual | 56 | teclado-virtual |
56 | ng-model="vendedorCobrador.domicilio" | 57 | ng-model="vendedorCobrador.domicilio" |
57 | ng-required="true" | 58 | ng-required="true" |
58 | foca-focus="focused == 2" | 59 | foca-focus="focused == 2" |
59 | ng-focus="focused = 2" | 60 | ng-focus="focused = 2" |
60 | ng-keypress="next($event.keyCode)" | 61 | ng-keypress="next($event.keyCode)" |
61 | autocomplete="off" | 62 | autocomplete="off" |
62 | uppercase-only | 63 | uppercase-only |
63 | /> | 64 | /> |
64 | </div> | 65 | </div> |
65 | </div> | 66 | </div> |
66 | <div class="form-group d-flex mb-2 col-md-6"> | 67 | <div class="form-group d-flex mb-2 col-md-6"> |
67 | <label class="col-form-label col-md-4">Código postal</label> | 68 | <label class="col-form-label col-md-4">Código postal</label> |
68 | <div class="input-group col-md-8 pl-0"> | 69 | <div class="input-group col-md-8 pl-0"> |
69 | <input | 70 | <input |
70 | class="form-control form-control-sm" | 71 | class="form-control form-control-sm" |
71 | foca-tipo-input | 72 | foca-tipo-input |
72 | teclado-virtual | 73 | teclado-virtual |
73 | ng-model="vendedorCobrador.codigoPostal" | 74 | ng-model="vendedorCobrador.codigoPostal" |
74 | ng-required="true" | 75 | ng-required="true" |
75 | foca-focus="focused == 3" | 76 | foca-focus="focused == 3" |
76 | ng-focus="focused = 3" | 77 | ng-focus="focused = 3" |
77 | ng-keypress="next($event.keyCode)" | 78 | ng-keypress="next($event.keyCode)" |
78 | autocomplete="off" | 79 | autocomplete="off" |
79 | string-to-number | 80 | string-to-number |
80 | /> | 81 | /> |
81 | </div> | 82 | </div> |
82 | </div> | 83 | </div> |
83 | <div class="form-group d-flex mb-2 col-md-6"> | 84 | <div class="form-group d-flex mb-2 col-md-6"> |
84 | <label class="col-form-label col-md-4">Provincia</label> | 85 | <label class="col-form-label col-md-4">Provincia</label> |
85 | <div class="input-group col-md-8 pl-0"> | 86 | <div class="input-group col-md-8 pl-0"> |
86 | <input | 87 | <input |
87 | type="text" | 88 | type="text" |
88 | class="form-control form-control-sm" | 89 | class="form-control form-control-sm" |
89 | ng-model="vendedorCobrador.provincia.NOMBRE" | 90 | ng-model="vendedorCobrador.provincia.NOMBRE" |
90 | ng-keypress="seleccionarProvincia($event.keyCode)" | 91 | ng-keypress="seleccionarProvincia($event.keyCode)" |
91 | ng-required="true" | 92 | ng-required="true" |
92 | foca-focus="focused == 4" | 93 | foca-focus="focused == 4" |
93 | ng-focus="focused = 4" | 94 | ng-focus="focused = 4" |
94 | teclado-virtual | 95 | teclado-virtual |
95 | /> | 96 | /> |
96 | <div class="input-group-append"> | 97 | <div class="input-group-append"> |
97 | <button | 98 | <button |
98 | ladda="searchLoading" | 99 | ladda="searchLoading" |
99 | class="btn btn-outline-secondary form-control-sm" | 100 | class="btn btn-outline-secondary form-control-sm" |
100 | type="button" | 101 | type="button" |
101 | ng-click="seleccionarProvincia(13)" | 102 | ng-click="seleccionarProvincia(13)" |
102 | > | 103 | > |
103 | <i class="fa fa-search" aria-hidden="true"></i> | 104 | <i class="fa fa-search" aria-hidden="true"></i> |
104 | </button> | 105 | </button> |
105 | </div> | 106 | </div> |
106 | </div> | 107 | </div> |
107 | </div> | 108 | </div> |
108 | <div class="form-group d-flex mb-2 col-md-6"> | 109 | <div class="form-group d-flex mb-2 col-md-6"> |
109 | <label class="col-form-label col-md-4">Localidad</label> | 110 | <label class="col-form-label col-md-4">Localidad</label> |
110 | <div class="input-group col-md-8 pl-0"> | 111 | <div class="input-group col-md-8 pl-0"> |
111 | <input | 112 | <input |
112 | type="text" | 113 | type="text" |
113 | class="form-control form-control-sm" | 114 | class="form-control form-control-sm" |
114 | ng-model="vendedorCobrador.localidad.NOMBRE" | 115 | ng-model="vendedorCobrador.localidad.NOMBRE" |
115 | ng-keypress="seleccionarLocalidad($event.keyCode)" | 116 | ng-keypress="seleccionarLocalidad($event.keyCode)" |
116 | ng-required="true" | 117 | ng-required="true" |
117 | foca-focus="focused == 5" | 118 | foca-focus="focused == 5" |
118 | ng-focus="focused = 5" | 119 | ng-focus="focused = 5" |
119 | teclado-virtual | 120 | teclado-virtual |
120 | autocomplete="off" | 121 | autocomplete="off" |
121 | /> | 122 | /> |
122 | <div class="input-group-append"> | 123 | <div class="input-group-append"> |
123 | <button | 124 | <button |
124 | ladda="searchLoading" | 125 | ladda="searchLoading" |
125 | class="btn btn-outline-secondary form-control-sm" | 126 | class="btn btn-outline-secondary form-control-sm" |
126 | type="button" | 127 | type="button" |
127 | ng-click="seleccionarLocalidad(13)" | 128 | ng-click="seleccionarLocalidad(13)" |
128 | > | 129 | > |
129 | <i class="fa fa-search" aria-hidden="true"></i> | 130 | <i class="fa fa-search" aria-hidden="true"></i> |
130 | </button> | 131 | </button> |
131 | </div> | 132 | </div> |
132 | </div> | 133 | </div> |
133 | </div> | 134 | </div> |
134 | <div class="form-group d-flex mb-2 col-md-6"> | 135 | <div class="form-group d-flex mb-2 col-md-6"> |
135 | <label class="col-form-label col-md-4">Teléfono</label> | 136 | <label class="col-form-label col-md-4">Teléfono</label> |
136 | <div class="input-group col-md-8 pl-0"> | 137 | <div class="input-group col-md-8 pl-0"> |
137 | <input | 138 | <input |
138 | class="form-control form-control-sm" | 139 | class="form-control form-control-sm" |
139 | foca-tipo-input | 140 | foca-tipo-input |
140 | teclado-virtual | 141 | teclado-virtual |
141 | ng-model="vendedorCobrador.telefono" | 142 | ng-model="vendedorCobrador.telefono" |
142 | ng-required="true" | 143 | ng-required="true" |
143 | foca-focus="focused == 6" | 144 | foca-focus="focused == 6" |
144 | ng-focus="focused = 6" | 145 | ng-focus="focused = 6" |
145 | ng-keypress="next($event.keyCode)" | 146 | ng-keypress="next($event.keyCode)" |
146 | autocomplete="off" | 147 | autocomplete="off" |
147 | string-to-number | 148 | string-to-number |
148 | /> | 149 | /> |
149 | </div> | 150 | </div> |
150 | </div> | 151 | </div> |
151 | <div class="form-group d-flex mb-2 col-md-6"> | 152 | <div class="form-group d-flex mb-2 col-md-6"> |
152 | <label class="col-form-label col-md-4">DNI</label> | 153 | <label class="col-form-label col-md-4">DNI</label> |
153 | <div class="input-group col-md-8 pl-0"> | 154 | <div class="input-group col-md-8 pl-0"> |
154 | <input | 155 | <input |
155 | class="form-control form-control-sm" | 156 | class="form-control form-control-sm" |
156 | foca-tipo-input | 157 | foca-tipo-input |
157 | teclado-virtual | 158 | teclado-virtual |
158 | ng-model="vendedorCobrador.dni" | 159 | ng-model="vendedorCobrador.dni" |
159 | ng-required="true" | 160 | ng-required="true" |
160 | foca-focus="focused == 7" | 161 | foca-focus="focused == 7" |
161 | ng-focus="focused = 7" | 162 | ng-focus="focused = 7" |
162 | ng-keypress="next($event.keyCode)" | 163 | ng-keypress="next($event.keyCode)" |
163 | autocomplete="off" | 164 | autocomplete="off" |
164 | string-to-number | 165 | string-to-number |
165 | /> | 166 | /> |
166 | </div> | 167 | </div> |
167 | </div> | 168 | </div> |
168 | <div class="form-group d-flex mb-2 col-md-6" | 169 | <div class="form-group d-flex mb-2 col-md-6" |
169 | ng-show="vendedorCobrador.rol == 1 || vendedorCobrador.rol == 3"> | 170 | ng-show="vendedorCobrador.rol == 1 || vendedorCobrador.rol == 3"> |
170 | <label class="col-form-label col-md-4">Porcentaje de comisión <span ng-show="vendedorCobrador.rol == 3">vendedor</span></label> | 171 | <label class="col-form-label col-md-4">Porcentaje de comisión <span ng-show="vendedorCobrador.rol == 3">vendedor</span></label> |
171 | <div class="input-group col-md-8 pl-0"> | 172 | <div class="input-group col-md-8 pl-0"> |
172 | <input | 173 | <input |
173 | class="form-control form-control-sm" | 174 | class="form-control form-control-sm" |
174 | foca-tipo-input | 175 | foca-tipo-input |
175 | teclado-virtual | 176 | teclado-virtual |
176 | ng-model="vendedorCobrador.comisionVendedor" | 177 | ng-model="vendedorCobrador.comisionVendedor" |
177 | ng-required="true" | 178 | ng-required="true" |
178 | foca-focus="focused == 10" | 179 | foca-focus="focused == 10" |
179 | ng-focus="focused = 10" | 180 | ng-focus="focused = 10" |
180 | ng-keypress="next($event.keyCode)" | 181 | ng-keypress="next($event.keyCode)" |
181 | autocomplete="off" | 182 | autocomplete="off" |
182 | string-to-number | 183 | string-to-number |
184 | solo-positivo | ||
183 | /> | 185 | /> |
184 | </div> | 186 | </div> |
185 | </div> | 187 | </div> |
186 | <div class="form-group d-flex mb-2 col-md-6" | 188 | <div class="form-group d-flex mb-2 col-md-6" |
187 | ng-show="vendedorCobrador.rol == 2 || vendedorCobrador.rol == 3"> | 189 | ng-show="vendedorCobrador.rol == 2 || vendedorCobrador.rol == 3"> |
188 | <label class="col-form-label col-md-4">Porcentaje de comisión <span ng-show="vendedorCobrador.rol == 3">cobrador</span></label> | 190 | <label class="col-form-label col-md-4">Porcentaje de comisión <span ng-show="vendedorCobrador.rol == 3">cobrador</span></label> |
189 | <div class="input-group col-md-8 pl-0"> | 191 | <div class="input-group col-md-8 pl-0"> |
190 | <input | 192 | <input |
191 | class="form-control form-control-sm" | 193 | class="form-control form-control-sm" |
192 | foca-tipo-input | 194 | foca-tipo-input |
193 | teclado-virtual | 195 | teclado-virtual |
194 | ng-model="vendedorCobrador.comisionCobrador" | 196 | ng-model="vendedorCobrador.comisionCobrador" |
195 | ng-required="true" | 197 | ng-required="true" |
196 | foca-focus="focused == 10" | 198 | foca-focus="focused == 10" |
197 | ng-focus="focused = 10" | 199 | ng-focus="focused = 10" |
198 | ng-keypress="next($event.keyCode)" | 200 | ng-keypress="next($event.keyCode)" |
199 | autocomplete="off" | 201 | autocomplete="off" |
200 | string-to-number | 202 | string-to-number |
203 | solo-positivo | ||
201 | /> | 204 | /> |
202 | </div> | 205 | </div> |
203 | </div> | 206 | </div> |
204 | <div class="ml-auto w-50"> | 207 | <div class="ml-auto w-50"> |
205 | <button | 208 | <button |
206 | class="btn btn-primary float-right mr-3" | 209 | class="btn btn-primary float-right mr-3" |
207 | type="button" | 210 | type="button" |
208 | ng-click="cambiarPassword()" | 211 | ng-click="cambiarPassword()" |
209 | ng-show="edicion" | 212 | ng-show="edicion" |
210 | >Cambiar contraseña</button> | 213 | >Cambiar contraseña</button> |
211 | </div> | 214 | </div> |
212 | </div> | 215 | </div> |
213 | </form> | 216 | </form> |
214 | </div> | 217 | </div> |
215 | </div> | 218 | </div> |
216 | 219 |