Commit 9dc146b10055286a3a48d2c8eddeb4a85c124404

Authored by Luigi
1 parent 9ca0f26bc9
Exists in master and in 2 other branches develop, lab

Espacio

Showing 1 changed file with 1 additions and 1 deletions   Show diff stats
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 .getCodigoVendedores() 52 .getCodigoVendedores()
53 .then(function (res){ 53 .then(function (res) {
54 $scope.vendedorCobrador.NUM = res.data.proximoCodigo; 54 $scope.vendedorCobrador.NUM = res.data.proximoCodigo;
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 var cobradorComision = parseFloat($scope.vendedorCobrador.comisionCobrador); 67 var cobradorComision = parseFloat($scope.vendedorCobrador.comisionCobrador);
68 var vendedorComision = parseFloat($scope.vendedorCobrador.comisionVendedor); 68 var vendedorComision = parseFloat($scope.vendedorCobrador.comisionVendedor);
69 69
70 if (!$scope.vendedorCobrador.NOM) { 70 if (!$scope.vendedorCobrador.NOM) {
71 focaModalService.alert('Ingrese nombre'); 71 focaModalService.alert('Ingrese nombre');
72 return; 72 return;
73 } else if (!$scope.vendedorCobrador.domicilio) { 73 } else if (!$scope.vendedorCobrador.domicilio) {
74 focaModalService.alert('Ingrese domicilio'); 74 focaModalService.alert('Ingrese domicilio');
75 return; 75 return;
76 } else if (!$scope.vendedorCobrador.codigoPostal) { 76 } else if (!$scope.vendedorCobrador.codigoPostal) {
77 focaModalService.alert('Ingrese código postal'); 77 focaModalService.alert('Ingrese código postal');
78 return; 78 return;
79 } else if (!$scope.vendedorCobrador.dni) { 79 } else if (!$scope.vendedorCobrador.dni) {
80 focaModalService.alert('Ingrese dni'); 80 focaModalService.alert('Ingrese dni');
81 return; 81 return;
82 } else if (!$scope.vendedorCobrador.rol) { 82 } else if (!$scope.vendedorCobrador.rol) {
83 focaModalService.alert('Seleccione tipo'); 83 focaModalService.alert('Seleccione tipo');
84 return; 84 return;
85 } else if (!$scope.vendedorCobrador.provincia.NOMBRE) { 85 } else if (!$scope.vendedorCobrador.provincia.NOMBRE) {
86 focaModalService.alert('Seleccione una provincia'); 86 focaModalService.alert('Seleccione una provincia');
87 return; 87 return;
88 } else if (!$scope.vendedorCobrador.localidad.NOMBRE) { 88 } else if (!$scope.vendedorCobrador.localidad.NOMBRE) {
89 focaModalService.alert('Seleccione una localidad'); 89 focaModalService.alert('Seleccione una localidad');
90 return; 90 return;
91 } else if (($scope.vendedorCobrador.rol === 2 && isNaN(cobradorComision)) || 91 } else if (($scope.vendedorCobrador.rol === 2 && isNaN(cobradorComision)) ||
92 (($scope.vendedorCobrador.rol === 3) && isNaN(cobradorComision))) { 92 (($scope.vendedorCobrador.rol === 3) && isNaN(cobradorComision))) {
93 focaModalService.alert('Ingrese una comision cobrador válida'); 93 focaModalService.alert('Ingrese una comision cobrador válida');
94 return; 94 return;
95 } else if (($scope.vendedorCobrador.rol === 1 && isNaN(vendedorComision)) || 95 } else if (($scope.vendedorCobrador.rol === 1 && isNaN(vendedorComision)) ||
96 ($scope.vendedorCobrador.rol === 3 && isNaN(vendedorComision))) { 96 ($scope.vendedorCobrador.rol === 3 && isNaN(vendedorComision))) {
97 focaModalService.alert('Ingrese una comision vendedor válida'); 97 focaModalService.alert('Ingrese una comision vendedor válida');
98 return; 98 return;
99 } 99 }
100 100
101 if ($scope.guardado) { 101 if ($scope.guardado) {
102 $scope.cambiarPassword(); 102 $scope.cambiarPassword();
103 } else { 103 } else {
104 104
105 var vendedorCobrador = angular.copy($scope.vendedorCobrador); 105 var vendedorCobrador = angular.copy($scope.vendedorCobrador);
106 106
107 vendedorCobrador.idProvincia = vendedorCobrador.provincia.ID; 107 vendedorCobrador.idProvincia = vendedorCobrador.provincia.ID;
108 vendedorCobrador.idLocalidad = vendedorCobrador.localidad.ID; 108 vendedorCobrador.idLocalidad = vendedorCobrador.localidad.ID;
109 109
110 delete vendedorCobrador.provincia; 110 delete vendedorCobrador.provincia;
111 delete vendedorCobrador.localidad; 111 delete vendedorCobrador.localidad;
112 if (vendedorCobrador.rol === 1) { 112 if (vendedorCobrador.rol === 1) {
113 delete vendedorCobrador.comisionCobrador; 113 delete vendedorCobrador.comisionCobrador;
114 } else if (vendedorCobrador.rol === 2) { 114 } else if (vendedorCobrador.rol === 2) {
115 delete vendedorCobrador.comisionVendedor; 115 delete vendedorCobrador.comisionVendedor;
116 } 116 }
117 vendedorCobrador.metodo = ($routeParams.id === '0') ? 'crear' : 'actualizar'; 117 vendedorCobrador.metodo = ($routeParams.id === '0') ? 'crear' : 'actualizar';
118 118
119 focaAbmVendedorCobradorService 119 focaAbmVendedorCobradorService
120 .guardarVendedorCobrador(vendedorCobrador) 120 .guardarVendedorCobrador(vendedorCobrador)
121 .then(function(res) { 121 .then(function(res) {
122 if ($scope.edicion) { 122 if ($scope.edicion) {
123 $location.path('/vendedor-cobrador'); 123 $location.path('/vendedor-cobrador');
124 } else { 124 } else {
125 $scope.vendedorCobrador = res.data; 125 $scope.vendedorCobrador = res.data;
126 $scope.cambiarPassword(); 126 $scope.cambiarPassword();
127 $scope.guardado = true; 127 $scope.guardado = true;
128 } 128 }
129 }) 129 })
130 .catch(function(err) { 130 .catch(function(err) {
131 if (err.status === 409) { 131 if (err.status === 409) {
132 focaModalService.alert(err.data); 132 focaModalService.alert(err.data);
133 } 133 }
134 }); 134 });
135 } 135 }
136 }; 136 };
137 137
138 $scope.seleccionarProvincia = function(key) { 138 $scope.seleccionarProvincia = function(key) {
139 if (key === 13) { 139 if (key === 13) {
140 var parametrosModal = { 140 var parametrosModal = {
141 searchText: $scope.vendedorCobrador.provincia.NOMBRE, 141 searchText: $scope.vendedorCobrador.provincia.NOMBRE,
142 query: '/provincia', 142 query: '/provincia',
143 columnas: [ 143 columnas: [
144 { 144 {
145 propiedad: 'ID', 145 propiedad: 'ID',
146 nombre: 'Codigo', 146 nombre: 'Codigo',
147 filtro: { 147 filtro: {
148 nombre: 'rellenarDigitos', 148 nombre: 'rellenarDigitos',
149 parametro: 3 149 parametro: 3
150 } 150 }
151 }, 151 },
152 { 152 {
153 propiedad: 'NOMBRE', 153 propiedad: 'NOMBRE',
154 nombre: 'Nombre' 154 nombre: 'Nombre'
155 } 155 }
156 ], 156 ],
157 titulo: 'Búsqueda de provincias', 157 titulo: 'Búsqueda de provincias',
158 size: 'md' 158 size: 'md'
159 }; 159 };
160 focaModalService.modal(parametrosModal).then(function(provincia) { 160 focaModalService.modal(parametrosModal).then(function(provincia) {
161 $scope.vendedorCobrador.provincia = provincia; 161 $scope.vendedorCobrador.provincia = provincia;
162 $timeout(function() { 162 $timeout(function() {
163 $scope.focused = 5; 163 $scope.focused = 5;
164 }); 164 });
165 }, function() { 165 }, function() {
166 //TODO: función llamada cuando cancela el modal 166 //TODO: función llamada cuando cancela el modal
167 }); 167 });
168 } 168 }
169 }; 169 };
170 170
171 $scope.seleccionarLocalidad = function(key) { 171 $scope.seleccionarLocalidad = function(key) {
172 if (!$scope.vendedorCobrador.provincia.ID) { 172 if (!$scope.vendedorCobrador.provincia.ID) {
173 focaModalService.alert('Seleccione una provincia'); 173 focaModalService.alert('Seleccione una provincia');
174 return; 174 return;
175 } 175 }
176 if (key === 13) { 176 if (key === 13) {
177 var parametrosModal = { 177 var parametrosModal = {
178 searchText: $scope.vendedorCobrador.localidad.NOMBRE, 178 searchText: $scope.vendedorCobrador.localidad.NOMBRE,
179 query: '/localidad/' + $scope.vendedorCobrador.provincia.ID, 179 query: '/localidad/' + $scope.vendedorCobrador.provincia.ID,
180 columnas: [ 180 columnas: [
181 { 181 {
182 propiedad: 'ID', 182 propiedad: 'ID',
183 nombre: 'Código', 183 nombre: 'Código',
184 filtro: { 184 filtro: {
185 nombre: 'rellenarDigitos', 185 nombre: 'rellenarDigitos',
186 parametro: 3 186 parametro: 3
187 } 187 }
188 }, 188 },
189 { 189 {
190 propiedad: 'NOMBRE', 190 propiedad: 'NOMBRE',
191 nombre: 'Nombre' 191 nombre: 'Nombre'
192 } 192 }
193 ], 193 ],
194 titulo: 'Búsqueda de localidades', 194 titulo: 'Búsqueda de localidades',
195 size: 'md' 195 size: 'md'
196 }; 196 };
197 focaModalService.modal(parametrosModal).then(function(localidad) { 197 focaModalService.modal(parametrosModal).then(function(localidad) {
198 $scope.vendedorCobrador.localidad = localidad; 198 $scope.vendedorCobrador.localidad = localidad;
199 $timeout(function() { 199 $timeout(function() {
200 $scope.focused = 6; 200 $scope.focused = 6;
201 }); 201 });
202 }, function() { 202 }, function() {
203 //TODO: función llamada cuando cancela el modal 203 //TODO: función llamada cuando cancela el modal
204 }); 204 });
205 } 205 }
206 }; 206 };
207 207
208 $scope.$watch('vendedorCobrador', function(newValue) { 208 $scope.$watch('vendedorCobrador', function(newValue) {
209 focaBotoneraLateralService.setPausarData({ 209 focaBotoneraLateralService.setPausarData({
210 label:'vendedorCobrador', 210 label:'vendedorCobrador',
211 val: newValue 211 val: newValue
212 }); 212 });
213 }, true); 213 }, true);
214 214
215 function getLSVendedor() { 215 function getLSVendedor() {
216 var vendedorCobrador = JSON.parse($localStorage.vendedorCobrador || null); 216 var vendedorCobrador = JSON.parse($localStorage.vendedorCobrador || null);
217 if (vendedorCobrador) { 217 if (vendedorCobrador) {
218 setearVendedor(vendedorCobrador); 218 setearVendedor(vendedorCobrador);
219 delete $localStorage.vendedorCobrador; 219 delete $localStorage.vendedorCobrador;
220 } 220 }
221 } 221 }
222 222
223 function setearVendedor(vendedorCobrador) { 223 function setearVendedor(vendedorCobrador) {
224 $scope.vendedorCobrador = vendedorCobrador; 224 $scope.vendedorCobrador = vendedorCobrador;
225 $scope.$broadcast('addCabecera', { 225 $scope.$broadcast('addCabecera', {
226 label: 'Vendedor / Cobrador:', 226 label: 'Vendedor / Cobrador:',
227 valor: $filter('rellenarDigitos')(vendedorCobrador.NUM, 2) + 227 valor: $filter('rellenarDigitos')(vendedorCobrador.NUM, 2) +
228 ' - ' + vendedorCobrador.NOM 228 ' - ' + vendedorCobrador.NOM
229 }); 229 });
230 } 230 }
231 231
232 $scope.cancelar = function() { 232 $scope.cancelar = function() {
233 if (!$scope.formVendedorCobrador.$pristine) { 233 if (!$scope.formVendedorCobrador.$pristine) {
234 234
235 focaModalService.confirm('¿Está seguro de que desea salir? ' + 235 focaModalService.confirm('¿Está seguro de que desea salir? ' +
236 'Se perderán todos los datos cargados.') 236 'Se perderán todos los datos cargados.')
237 .then(function(confirmed) { 237 .then(function(confirmed) {
238 if (confirmed && $scope.guardado && !$scope.edicion) { 238 if (confirmed && $scope.guardado && !$scope.edicion) {
239 239
240 focaAbmVendedorCobradorService 240 focaAbmVendedorCobradorService
241 .destroyVendedorCobrador($scope.vendedorCobrador.id) 241 .destroyVendedorCobrador($scope.vendedorCobrador.id)
242 .then(function() { 242 .then(function() {
243 $location.path('/vendedor-cobrador'); 243 $location.path('/vendedor-cobrador');
244 }); 244 });
245 245
246 } else if (confirmed) { 246 } else if (confirmed) {
247 $location.path('/vendedor-cobrador'); 247 $location.path('/vendedor-cobrador');
248 } 248 }
249 }); 249 });
250 250
251 } else { 251 } else {
252 $location.path('/vendedor-cobrador'); 252 $location.path('/vendedor-cobrador');
253 } 253 }
254 }; 254 };
255 255
256 $scope.next = function(key) { 256 $scope.next = function(key) {
257 if (key === 13) $scope.focused++; 257 if (key === 13) $scope.focused++;
258 }; 258 };
259 259
260 $scope.cambiarPassword = function() { 260 $scope.cambiarPassword = function() {
261 var vendedorCobrador = angular.copy($scope.vendedorCobrador); 261 var vendedorCobrador = angular.copy($scope.vendedorCobrador);
262 vendedorCobrador.nombre = vendedorCobrador.NOM; 262 vendedorCobrador.nombre = vendedorCobrador.NOM;
263 vendedorCobrador.codigo = vendedorCobrador.NUM; 263 vendedorCobrador.codigo = vendedorCobrador.NUM;
264 264
265 var parametros = { 265 var parametros = {
266 cuenta: vendedorCobrador, 266 cuenta: vendedorCobrador,
267 tipo: ($scope.vendedorCobrador.rol === 2) ? 'Cobradores' : 'Vendedores' 267 tipo: ($scope.vendedorCobrador.rol === 2) ? 'Cobradores' : 'Vendedores'
268 }; 268 };
269 269
270 var modalInstance = $uibModal.open( 270 var modalInstance = $uibModal.open(
271 { 271 {
272 ariaLabelledBy: 'Configuracion de Logueo', 272 ariaLabelledBy: 'Configuracion de Logueo',
273 templateUrl: 'modal-login.html', 273 templateUrl: 'modal-login.html',
274 controller: 'focaModalLoginController', 274 controller: 'focaModalLoginController',
275 size: 'md', 275 size: 'md',
276 resolve: { 276 resolve: {
277 parametros: function() { 277 parametros: function() {
278 return parametros; 278 return parametros;
279 } 279 }
280 } 280 }
281 } 281 }
282 ); 282 );
283 283
284 modalInstance.result.then(function() { 284 modalInstance.result.then(function() {
285 if (!$scope.edicion) $location.path('/vendedor-cobrador'); 285 if (!$scope.edicion) $location.path('/vendedor-cobrador');
286 }); 286 });
287 287
288 }; 288 };
289 } 289 }
290 ]); 290 ]);
291 291