Commit e046c6ff0295172e97fa2295364f70b99523e991

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

Validacion de campos

Showing 1 changed file with 22 additions and 24 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', 4 '$timeout', '$uibModal', '$location', 'focaModalService',
5 function ($scope, focaAbmVendedorCobradorService, $routeParams, focaBotoneraLateralService, 5 function($scope, focaAbmVendedorCobradorService, $routeParams, focaBotoneraLateralService,
6 $timeout, $uibModal, $location, focaModalService) { 6 $timeout, $uibModal, $location, focaModalService) {
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 focaAbmVendedorCobradorService 48 focaAbmVendedorCobradorService
49 .getCodigoSiguiente() 49 .getCodigoSiguiente()
50 .then(function (res) { 50 .then(function(res) {
51 $scope.vendedorCobrador.NUM = res.data.mayor; 51 $scope.vendedorCobrador.NUM = res.data.mayor;
52 }); 52 });
53 53
54 focaAbmVendedorCobradorService 54 focaAbmVendedorCobradorService
55 .getVendedorCobradorById($routeParams.id) 55 .getVendedorCobradorById($routeParams.id)
56 .then(function (res) { 56 .then(function(res) {
57 if (res.data) { 57 if (res.data) {
58 $scope.edicion = true; 58 $scope.edicion = true;
59 $scope.vendedorCobrador = res.data; 59 $scope.vendedorCobrador = res.data;
60 } 60 }
61 }); 61 });
62 62
63 $scope.guardar = function () { 63 $scope.guardar = function() {
64
65 console.log($scope.vendedorCobrador);
66 64
67 if(!$scope.vendedorCobrador.NOM) { 65 if(!$scope.vendedorCobrador.NOM) {
68 focaModalService.alert('Ingrese nombre'); 66 focaModalService.alert('Ingrese nombre');
69 return; 67 return;
70 }else if (!$scope.vendedorCobrador.domicilio) { 68 }else if (!$scope.vendedorCobrador.domicilio) {
71 focaModalService.alert('Ingrese domicilio'); 69 focaModalService.alert('Ingrese domicilio');
72 return; 70 return;
73 }else if (!$scope.vendedorCobrador.codigoPostal) { 71 }else if (!$scope.vendedorCobrador.codigoPostal) {
74 focaModalService.alert('Ingrese código postal'); 72 focaModalService.alert('Ingrese código postal');
75 return; 73 return;
76 }else if (!$scope.vendedorCobrador.dni) { 74 }else if (!$scope.vendedorCobrador.dni) {
77 focaModalService.alert('Ingrese dni'); 75 focaModalService.alert('Ingrese dni');
78 return; 76 return;
79 }else if (!$scope.vendedorCobrador.rol){ 77 }else if (!$scope.vendedorCobrador.rol){
80 focaModalService.alert('Seleccione tipo'); 78 focaModalService.alert('Seleccione tipo');
81 return; 79 return;
82 }else if(!$scope.vendedorCobrador.provincia.NOMBRE){ 80 }else if(!$scope.vendedorCobrador.provincia.NOMBRE){
83 focaModalService.alert('Seleccione una Provincia'); 81 focaModalService.alert('Seleccione una Provincia');
84 return; 82 return;
85 }else if(!$scope.vendedorCobrador.localidad.NOMBRE){ 83 }else if(!$scope.vendedorCobrador.localidad.NOMBRE){
86 focaModalService.alert('Seleccione una Localidad'); 84 focaModalService.alert('Seleccione una Localidad');
87 return; 85 return;
88 } 86 }
89 87
90 if ($scope.guardado) { 88 if ($scope.guardado) {
91 $scope.cambiarPassword(); 89 $scope.cambiarPassword();
92 } else { 90 } else {
93 91
94 var vendedorCobrador = angular.copy($scope.vendedorCobrador); 92 var vendedorCobrador = angular.copy($scope.vendedorCobrador);
95 93
96 vendedorCobrador.idProvincia = vendedorCobrador.provincia.ID; 94 vendedorCobrador.idProvincia = vendedorCobrador.provincia.ID;
97 vendedorCobrador.idLocalidad = vendedorCobrador.localidad.ID; 95 vendedorCobrador.idLocalidad = vendedorCobrador.localidad.ID;
98 96
99 delete vendedorCobrador.provincia; 97 delete vendedorCobrador.provincia;
100 delete vendedorCobrador.localidad; 98 delete vendedorCobrador.localidad;
101 if (vendedorCobrador.rol == 1) { 99 if (vendedorCobrador.rol == 1) {
102 delete vendedorCobrador.comisionCobrador; 100 delete vendedorCobrador.comisionCobrador;
103 } else if (vendedorCobrador.rol == 2) { 101 } else if (vendedorCobrador.rol == 2) {
104 delete vendedorCobrador.comisionVendedor; 102 delete vendedorCobrador.comisionVendedor;
105 } 103 }
106 vendedorCobrador.metodo = ($routeParams.id === '0') ? 'crear' : 'actualizar'; 104 vendedorCobrador.metodo = ($routeParams.id === '0') ? 'crear' : 'actualizar';
107 105
108 focaAbmVendedorCobradorService 106 focaAbmVendedorCobradorService
109 .guardarVendedorCobrador(vendedorCobrador) 107 .guardarVendedorCobrador(vendedorCobrador)
110 .then(function (res) { 108 .then(function(res) {
111 if ($scope.edicion) { 109 if ($scope.edicion) {
112 $location.path('/vendedor-cobrador'); 110 $location.path('/vendedor-cobrador');
113 } else { 111 } else {
114 $scope.vendedorCobrador = res.data; 112 $scope.vendedorCobrador = res.data;
115 $scope.cambiarPassword(); 113 $scope.cambiarPassword();
116 $scope.guardado = true; 114 $scope.guardado = true;
117 } 115 }
118 }) 116 })
119 .catch(function (err) { 117 .catch(function(err) {
120 if (err.status === 409) { 118 if (err.status === 409) {
121 focaModalService.alert(err.data); 119 focaModalService.alert(err.data);
122 } 120 }
123 }); 121 });
124 } 122 }
125 }; 123 };
126 124
127 $scope.seleccionarProvincia = function (key) { 125 $scope.seleccionarProvincia = function(key) {
128 if (key === 13) { 126 if (key === 13) {
129 var parametrosModal = { 127 var parametrosModal = {
130 query: '/provincia', 128 query: '/provincia',
131 columnas: [ 129 columnas: [
132 { 130 {
133 propiedad: 'ID', 131 propiedad: 'ID',
134 nombre: 'Codigo', 132 nombre: 'Codigo',
135 filtro: { 133 filtro: {
136 nombre: 'rellenarDigitos', 134 nombre: 'rellenarDigitos',
137 parametro: 3 135 parametro: 3
138 } 136 }
139 }, 137 },
140 { 138 {
141 propiedad: 'NOMBRE', 139 propiedad: 'NOMBRE',
142 nombre: 'Nombre' 140 nombre: 'Nombre'
143 } 141 }
144 ], 142 ],
145 titulo: 'Búsqueda de provincias', 143 titulo: 'Búsqueda de provincias',
146 size: 'md' 144 size: 'md'
147 }; 145 };
148 focaModalService.modal(parametrosModal).then(function (provincia) { 146 focaModalService.modal(parametrosModal).then(function(provincia) {
149 $scope.vendedorCobrador.provincia = provincia; 147 $scope.vendedorCobrador.provincia = provincia;
150 $timeout(function () { 148 $timeout(function() {
151 $scope.focused = 5; 149 $scope.focused = 5;
152 }); 150 });
153 }, function () { 151 }, function() {
154 //TODO: función llamada cuando cancela el modal 152 //TODO: función llamada cuando cancela el modal
155 }); 153 });
156 } 154 }
157 }; 155 };
158 $scope.seleccionarLocalidad = function (key) { 156 $scope.seleccionarLocalidad = function(key) {
159 if (!$scope.vendedorCobrador.provincia.ID) { 157 if (!$scope.vendedorCobrador.provincia.ID) {
160 focaModalService.alert('Seleccione una provincia'); 158 focaModalService.alert('Seleccione una provincia');
161 return; 159 return;
162 } 160 }
163 if (key === 13) { 161 if (key === 13) {
164 var parametrosModal = { 162 var parametrosModal = {
165 query: '/localidad/' + $scope.vendedorCobrador.provincia.ID, 163 query: '/localidad/' + $scope.vendedorCobrador.provincia.ID,
166 columnas: [ 164 columnas: [
167 { 165 {
168 propiedad: 'ID', 166 propiedad: 'ID',
169 nombre: 'Código', 167 nombre: 'Código',
170 filtro: { 168 filtro: {
171 nombre: 'rellenarDigitos', 169 nombre: 'rellenarDigitos',
172 parametro: 3 170 parametro: 3
173 } 171 }
174 }, 172 },
175 { 173 {
176 propiedad: 'NOMBRE', 174 propiedad: 'NOMBRE',
177 nombre: 'Nombre' 175 nombre: 'Nombre'
178 } 176 }
179 ], 177 ],
180 titulo: 'Búsqueda de localidades', 178 titulo: 'Búsqueda de localidades',
181 size: 'md' 179 size: 'md'
182 }; 180 };
183 focaModalService.modal(parametrosModal).then(function (localidad) { 181 focaModalService.modal(parametrosModal).then(function(localidad) {
184 $scope.vendedorCobrador.localidad = localidad; 182 $scope.vendedorCobrador.localidad = localidad;
185 $timeout(function () { 183 $timeout(function() {
186 $scope.focused = 6; 184 $scope.focused = 6;
187 }); 185 });
188 }, function () { 186 }, function() {
189 //TODO: función llamada cuando cancela el modal 187 //TODO: función llamada cuando cancela el modal
190 }); 188 });
191 } 189 }
192 }; 190 };
193 191
194 $scope.cancelar = function () { 192 $scope.cancelar = function() {
195 if (!$scope.formVendedorCobrador.$pristine) { 193 if (!$scope.formVendedorCobrador.$pristine) {
196 194
197 focaModalService.confirm('¿Está seguro de que desea salir?' + 195 focaModalService.confirm('¿Está seguro de que desea salir?' +
198 'Se perderán todos los datos cargados.') 196 'Se perderán todos los datos cargados.')
199 .then(function (confirmed) { 197 .then(function(confirmed) {
200 if (confirmed && $scope.guardado && !$scope.edicion) { 198 if (confirmed && $scope.guardado && !$scope.edicion) {
201 199
202 focaAbmVendedorCobradorService 200 focaAbmVendedorCobradorService
203 .destroyVendedorCobrador($scope.vendedorCobrador.id) 201 .destroyVendedorCobrador($scope.vendedorCobrador.id)
204 .then(function () { 202 .then(function() {
205 $location.path('/vendedor-cobrador'); 203 $location.path('/vendedor-cobrador');
206 }); 204 });
207 205
208 } else if (confirmed) { 206 } else if (confirmed) {
209 $location.path('/vendedor-cobrador'); 207 $location.path('/vendedor-cobrador');
210 } 208 }
211 }); 209 });
212 210
213 } else { 211 } else {
214 $location.path('/vendedor-cobrador'); 212 $location.path('/vendedor-cobrador');
215 } 213 }
216 }; 214 };
217 215
218 $scope.next = function (key) { 216 $scope.next = function(key) {
219 if (key === 13) $scope.focused++; 217 if (key === 13) $scope.focused++;
220 }; 218 };
221 219
222 $scope.cambiarPassword = function () { 220 $scope.cambiarPassword = function() {
223 var vendedorCobrador = angular.copy($scope.vendedorCobrador); 221 var vendedorCobrador = angular.copy($scope.vendedorCobrador);
224 vendedorCobrador.nombre = vendedorCobrador.NOM; 222 vendedorCobrador.nombre = vendedorCobrador.NOM;
225 vendedorCobrador.codigo = vendedorCobrador.NUM; 223 vendedorCobrador.codigo = vendedorCobrador.NUM;
226 224
227 var parametros = { 225 var parametros = {
228 cuenta: vendedorCobrador, 226 cuenta: vendedorCobrador,
229 tipo: ($scope.vendedorCobrador.rol === 2) ? 'Cobradores' : 'Vendedores' 227 tipo: ($scope.vendedorCobrador.rol === 2) ? 'Cobradores' : 'Vendedores'
230 }; 228 };
231 229
232 var modalInstance = $uibModal.open( 230 var modalInstance = $uibModal.open(
233 { 231 {
234 ariaLabelledBy: 'Configuracion de Logueo', 232 ariaLabelledBy: 'Configuracion de Logueo',
235 templateUrl: 'modal-login.html', 233 templateUrl: 'modal-login.html',
236 controller: 'focaModalLoginController', 234 controller: 'focaModalLoginController',
237 size: 'md', 235 size: 'md',
238 resolve: { 236 resolve: {
239 parametros: function () { 237 parametros: function() {
240 return parametros; 238 return parametros;
241 } 239 }
242 } 240 }
243 } 241 }
244 ); 242 );
245 243
246 modalInstance.result.then(function () { 244 modalInstance.result.then(function() {
247 if (!$scope.edicion) $location.path('/vendedor-cobrador'); 245 if (!$scope.edicion) $location.path('/vendedor-cobrador');
248 }); 246 });
249 247
250 }; 248 };
251 } 249 }
252 ]); 250 ]);
253 251