Commit e69f090b57418d7b8a3e3b6cabdb32f2d78bdb5f

Authored by Mauricio Cattafi
Exists in master and in 1 other branch develop

Merge branch 'develop' into 'master'

Develop

See merge request !37
1 { 1 {
2 "name": "foca-abm-vendedor-cobrador", 2 "name": "foca-abm-vendedor-cobrador",
3 "version": "0.0.1", 3 "version": "0.0.1",
4 "description": "Abm de Vendedores/Compradores", 4 "description": "Abm de Vendedores/Compradores",
5 "main": "index.html", 5 "main": "index.html",
6 "scripts": { 6 "scripts": {
7 "refresh": "gulp uglify && cp tmp/foca-abm-vendedor-cobrador.js ../wrapper-demo/node_modules/foca-abm-vendedor-cobrador/dist/foca-abm-vendedor-cobrador.min.js",
7 "test": "test.html", 8 "test": "test.html",
8 "compile": "gulp uglify", 9 "compile": "gulp uglify",
9 "gulp-pre-commit": "gulp pre-commit", 10 "gulp-pre-commit": "gulp pre-commit",
10 "postinstall": "npm run compile && gulp clean-post-install", 11 "postinstall": "npm run compile && gulp clean-post-install",
11 "install-dev": "npm i --ignore-scripts" 12 "install-dev": "npm i --ignore-scripts"
12 }, 13 },
13 "pre-commit": [ 14 "pre-commit": [
14 "gulp-pre-commit" 15 "gulp-pre-commit"
15 ], 16 ],
16 "repository": { 17 "repository": {
17 "type": "git", 18 "type": "git",
18 "url": "http://git.focasoftware.com/npm/foca-abm-vendedor-cobrador.git" 19 "url": "http://git.focasoftware.com/npm/foca-abm-vendedor-cobrador.git"
19 }, 20 },
20 "author": "Foca Software", 21 "author": "Foca Software",
21 "license": "ISC", 22 "license": "ISC",
22 "peerDependencies": { 23 "peerDependencies": {
23 "angular": "^1.7.x", 24 "angular": "^1.7.x",
24 "angular-route": "^1.7.x", 25 "angular-route": "^1.7.x",
25 "bootstrap": "^4.1.x", 26 "bootstrap": "^4.1.x",
26 "jquery": "^3.3.x", 27 "jquery": "^3.3.x",
27 "font-awesome": "^4.7.x", 28 "font-awesome": "^4.7.x",
28 "gulp": "^3.9.x", 29 "gulp": "^3.9.x",
29 "gulp-concat": "2.6.x", 30 "gulp-concat": "2.6.x",
30 "gulp-jshint": "^2.1.x", 31 "gulp-jshint": "^2.1.x",
31 "gulp-rename": "^1.4.x", 32 "gulp-rename": "^1.4.x",
32 "gulp-replace": "^1.0.x", 33 "gulp-replace": "^1.0.x",
33 "gulp-uglify-es": "^1.0.x", 34 "gulp-uglify-es": "^1.0.x",
34 "jshint": "^2.9.x", 35 "jshint": "^2.9.x",
35 "pump": "^3.0.x" 36 "pump": "^3.0.x"
36 }, 37 },
37 "devDependencies": { 38 "devDependencies": {
38 "angular": "^1.7.8", 39 "angular": "^1.7.8",
39 "angular-mocks": "^1.7.8", 40 "angular-mocks": "^1.7.8",
40 "angular-route": "^1.7.8", 41 "angular-route": "^1.7.8",
41 "bootstrap": "^4.1.3", 42 "bootstrap": "^4.1.3",
42 "foca-modal": "git+http://git.focasoftware.com/npm/foca-modal.git", 43 "foca-modal": "git+http://git.focasoftware.com/npm/foca-modal.git",
43 "font-awesome": "^4.7.0", 44 "font-awesome": "^4.7.0",
44 "gulp": "^3.9.1", 45 "gulp": "^3.9.1",
45 "gulp-angular-templatecache": "^2.2.7", 46 "gulp-angular-templatecache": "^2.2.7",
46 "gulp-clean": "^0.4.0", 47 "gulp-clean": "^0.4.0",
47 "gulp-connect": "^5.6.1", 48 "gulp-connect": "^5.6.1",
48 "gulp-htmlmin": "^5.0.1", 49 "gulp-htmlmin": "^5.0.1",
49 "gulp-jshint": "^2.1.0", 50 "gulp-jshint": "^2.1.0",
50 "gulp-rename": "^1.4.0", 51 "gulp-rename": "^1.4.0",
51 "gulp-replace": "^1.0.0", 52 "gulp-replace": "^1.0.0",
52 "gulp-uglify": "^3.0.1", 53 "gulp-uglify": "^3.0.1",
53 "gulp-uglify-es": "^1.0.4", 54 "gulp-uglify-es": "^1.0.4",
54 "jasmine-core": "^3.4.0", 55 "jasmine-core": "^3.4.0",
55 "jquery": "^3.4.1", 56 "jquery": "^3.4.1",
56 "jshint": "^2.10.2", 57 "jshint": "^2.10.2",
57 "pre-commit": "^1.2.2", 58 "pre-commit": "^1.2.2",
58 "pump": "^3.0.0", 59 "pump": "^3.0.0",
59 "ui-bootstrap4": "^3.0.5" 60 "ui-bootstrap4": "^3.0.5"
60 } 61 }
61 } 62 }
62 63
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 btnAceptar: true
268 }; 269 };
269 270
270 var modalInstance = $uibModal.open( 271 var modalInstance = $uibModal.open(
271 { 272 {
272 ariaLabelledBy: 'Configuracion de Logueo', 273 ariaLabelledBy: 'Configuracion de Logueo',
273 templateUrl: 'modal-login.html', 274 templateUrl: 'modal-login.html',
274 controller: 'focaModalLoginController', 275 controller: 'focaModalLoginController',
275 size: 'md', 276 size: 'md',
276 resolve: { 277 resolve: {
277 parametros: function() { 278 parametros: function() {
278 return parametros; 279 return parametros;
279 } 280 }
280 } 281 }
281 } 282 }
282 ); 283 );
283 284
284 modalInstance.result.then(function() { 285 modalInstance.result.then(function() {
285 if (!$scope.edicion) $location.path('/vendedor-cobrador'); 286 if (!$scope.edicion) $location.path('/vendedor-cobrador');
286 }); 287 });
287 288
288 }; 289 };
289 } 290 }
290 ]); 291 ]);
291 292
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 solo-positivos 18 solo-positivos
19 ng-disabled="edicion"/> 19 ng-disabled="edicion"/>
20 </div> 20 </div>
21 </div> 21 </div>
22 <div class="form-group d-flex mb-2 col-md-6"> 22 <div class="form-group d-flex mb-2 col-md-6">
23 <label class="col-form-label col-md-4">Tipo</label> 23 <label class="col-form-label col-md-4">Tipo</label>
24 <div class="col-md-8 pl-0"> 24 <div class="col-md-8 pl-0">
25 <select 25 <select
26 class="form-control form-control-sm" 26 class="form-control form-control-sm"
27 ng-model="vendedorCobrador.rol" 27 ng-model="vendedorCobrador.rol"
28 ng-options="option.value as option.label for option in options" 28 ng-options="option.value as option.label for option in options"
29 foca-focus="focused == 0" 29 foca-focus="focused == 0"
30 ng-focus="focused = 0"> 30 ng-focus="focused = 0">
31 </select> 31 </select>
32 </div> 32 </div>
33 </div> 33 </div>
34 <div class="form-group d-flex mb-2 col-md-6"> 34 <div class="form-group d-flex mb-2 col-md-6">
35 <label class="col-form-label col-md-4">Nombre</label> 35 <label class="col-form-label col-md-4">Nombre</label>
36 <div class="input-group col-md-8 pl-0"> 36 <div class="input-group col-md-8 pl-0">
37 <input 37 <input
38 class="form-control form-control-sm" 38 class="form-control form-control-sm"
39 type="text" 39 type="text"
40 teclado-virtual 40 teclado-virtual
41 ng-model="vendedorCobrador.NOM" 41 ng-model="vendedorCobrador.NOM"
42 foca-focus="focused == 1" 42 foca-focus="focused == 1"
43 ng-focus="focused = 1" 43 ng-focus="focused = 1"
44 ng-keypress="next($event.keyCode)" 44 ng-keypress="next($event.keyCode)"
45 autocomplete="off" 45 autocomplete="off"
46 uppercase-only 46 uppercase-only
47 47
48 /> 48 />
49 </div> 49 </div>
50 </div> 50 </div>
51 <div class="form-group d-flex mb-2 col-md-6"> 51 <div class="form-group d-flex mb-2 col-md-6">
52 <label class="col-form-label col-md-4">Domicilio</label> 52 <label class="col-form-label col-md-4">Domicilio</label>
53 <div class="input-group col-md-8 pl-0"> 53 <div class="input-group col-md-8 pl-0">
54 <input 54 <input
55 class="form-control form-control-sm" 55 class="form-control form-control-sm"
56 type="text" 56 type="text"
57 teclado-virtual 57 teclado-virtual
58 ng-model="vendedorCobrador.domicilio" 58 ng-model="vendedorCobrador.domicilio"
59 ng-required="true" 59 ng-required="true"
60 foca-focus="focused == 2" 60 foca-focus="focused == 2"
61 ng-focus="focused = 2" 61 ng-focus="focused = 2"
62 ng-keypress="next($event.keyCode)" 62 ng-keypress="next($event.keyCode)"
63 autocomplete="off" 63 autocomplete="off"
64 uppercase-only 64 uppercase-only
65 /> 65 />
66 </div> 66 </div>
67 </div> 67 </div>
68 <div class="form-group d-flex mb-2 col-md-6"> 68 <div class="form-group d-flex mb-2 col-md-6">
69 <label class="col-form-label col-md-4">Código postal</label> 69 <label class="col-form-label col-md-4">Código postal</label>
70 <div class="input-group col-md-8 pl-0"> 70 <div class="input-group col-md-8 pl-0">
71 <input 71 <input
72 class="form-control form-control-sm" 72 class="form-control form-control-sm"
73 foca-tipo-input 73 foca-tipo-input
74 teclado-virtual 74 teclado-virtual
75 solo-positivos 75 solo-positivos
76 ng-model="vendedorCobrador.codigoPostal" 76 ng-model="vendedorCobrador.codigoPostal"
77 ng-required="true" 77 ng-required="true"
78 foca-focus="focused == 3" 78 foca-focus="focused == 3"
79 ng-focus="focused = 3" 79 ng-focus="focused = 3"
80 ng-keypress="next($event.keyCode)" 80 ng-keypress="next($event.keyCode)"
81 autocomplete="off" 81 autocomplete="off"
82 string-to-number 82 string-to-number
83 /> 83 />
84 </div> 84 </div>
85 </div> 85 </div>
86 <div class="form-group d-flex mb-2 col-md-6"> 86 <div class="form-group d-flex mb-2 col-md-6">
87 <label class="col-form-label col-md-4">Provincia</label> 87 <label class="col-form-label col-md-4">Provincia</label>
88 <div class="input-group col-md-8 pl-0"> 88 <div class="col-md-8 pl-0">
89 <input 89 <div class="input-group">
90 type="text" 90 <input
91 class="form-control form-control-sm" 91 type="text"
92 ng-model="vendedorCobrador.provincia.NOMBRE" 92 class="form-control form-control-sm"
93 ng-keypress="seleccionarProvincia($event.keyCode)" 93 ng-model="vendedorCobrador.provincia.NOMBRE"
94 ng-required="true" 94 ng-keypress="seleccionarProvincia($event.keyCode)"
95 foca-focus="focused == 4" 95 ng-required="true"
96 ng-focus="focused = 4" 96 foca-focus="focused == 4"
97 teclado-virtual 97 ng-focus="focused = 4"
98 /> 98 teclado-virtual
99 <div class="input-group-append"> 99 />
100 <button 100 <div class="input-group-append">
101 ladda="searchLoading" 101 <button
102 class="btn btn-outline-secondary form-control-sm" 102 ladda="searchLoading"
103 type="button" 103 class="btn btn-outline-secondary"
104 ng-click="seleccionarProvincia(13)" 104 type="button"
105 > 105 ng-click="seleccionarProvincia(13)"
106 <i class="fa fa-search" aria-hidden="true"></i> 106 >
107 </button> 107 <i class="fa fa-search" aria-hidden="true"></i>
108 </button>
109 </div>
108 </div> 110 </div>
109 </div> 111 </div>
110 </div> 112 </div>
111 <div class="form-group d-flex mb-2 col-md-6"> 113 <div class="form-group d-flex mb-2 col-md-6">
112 <label class="col-form-label col-md-4">Localidad</label> 114 <label class="col-form-label col-md-4">Localidad</label>
113 <div class="input-group col-md-8 pl-0"> 115 <div class="col-md-8 pl-0">
114 <input 116 <div class="input-group">
115 type="text" 117 <input
116 class="form-control form-control-sm" 118 type="text"
117 ng-model="vendedorCobrador.localidad.NOMBRE" 119 class="form-control form-control-sm"
118 ng-keypress="seleccionarLocalidad($event.keyCode)" 120 ng-model="vendedorCobrador.localidad.NOMBRE"
119 ng-required="true" 121 ng-keypress="seleccionarLocalidad($event.keyCode)"
120 foca-focus="focused == 5" 122 ng-required="true"
121 ng-focus="focused = 5" 123 foca-focus="focused == 5"
122 teclado-virtual 124 ng-focus="focused = 5"
123 autocomplete="off" 125 teclado-virtual
124 /> 126 autocomplete="off"
125 <div class="input-group-append"> 127 />
126 <button 128 <div class="input-group-append">
127 ladda="searchLoading" 129 <button
128 class="btn btn-outline-secondary form-control-sm" 130 ladda="searchLoading"
129 type="button" 131 class="btn btn-outline-secondary"
130 ng-click="seleccionarLocalidad(13)" 132 type="button"
131 > 133 ng-click="seleccionarLocalidad(13)"
132 <i class="fa fa-search" aria-hidden="true"></i> 134 >
133 </button> 135 <i class="fa fa-search" aria-hidden="true"></i>
136 </button>
137 </div>
134 </div> 138 </div>
135 </div> 139 </div>
136 </div> 140 </div>
137 <div class="form-group d-flex mb-2 col-md-6"> 141 <div class="form-group d-flex mb-2 col-md-6">
138 <label class="col-form-label col-md-4">Teléfono</label> 142 <label class="col-form-label col-md-4">Teléfono</label>
139 <div class="input-group col-md-8 pl-0"> 143 <div class="input-group col-md-8 pl-0">
140 <input 144 <input
141 class="form-control form-control-sm" 145 class="form-control form-control-sm"
142 foca-tipo-input 146 foca-tipo-input
143 teclado-virtual 147 teclado-virtual
144 solo-positivos 148 solo-positivos
145 limite-numeros-max="15" 149 limite-numeros-max="15"
146 ng-model="vendedorCobrador.telefono" 150 ng-model="vendedorCobrador.telefono"
147 ng-required="true" 151 ng-required="true"
148 foca-focus="focused == 6" 152 foca-focus="focused == 6"
149 ng-focus="focused = 6" 153 ng-focus="focused = 6"
150 ng-keypress="next($event.keyCode)" 154 ng-keypress="next($event.keyCode)"
151 autocomplete="off" 155 autocomplete="off"
152 string-to-number 156 string-to-number
153 /> 157 />
154 </div> 158 </div>
155 </div> 159 </div>
156 <div class="form-group d-flex mb-2 col-md-6"> 160 <div class="form-group d-flex mb-2 col-md-6">
157 <label class="col-form-label col-md-4">DNI</label> 161 <label class="col-form-label col-md-4">DNI</label>
158 <div class="input-group col-md-8 pl-0"> 162 <div class="input-group col-md-8 pl-0">
159 <input 163 <input
160 class="form-control form-control-sm" 164 class="form-control form-control-sm"
161 foca-tipo-input 165 foca-tipo-input
162 teclado-virtual 166 teclado-virtual
163 solo-positivos 167 solo-positivos
164 limite-numeros-max="15" 168 limite-numeros-max="15"
165 ng-model="vendedorCobrador.dni" 169 ng-model="vendedorCobrador.dni"
166 ng-required="true" 170 ng-required="true"
167 foca-focus="focused == 7" 171 foca-focus="focused == 7"
168 ng-focus="focused = 7" 172 ng-focus="focused = 7"
169 ng-keypress="next($event.keyCode)" 173 ng-keypress="next($event.keyCode)"
170 autocomplete="off" 174 autocomplete="off"
171 /> 175 />
172 </div> 176 </div>
173 </div> 177 </div>
174 <div class="form-group d-flex mb-2 col-md-6" 178 <div class="form-group d-flex mb-2 col-md-6"
175 ng-show="vendedorCobrador.rol == 1 || vendedorCobrador.rol == 3"> 179 ng-show="vendedorCobrador.rol == 1 || vendedorCobrador.rol == 3">
176 <label class="col-form-label col-md-4">Porcentaje de comisión <span ng-show="vendedorCobrador.rol == 3">vendedor</span></label> 180 <label class="col-form-label col-md-4">Porcentaje de comisión <span ng-show="vendedorCobrador.rol == 3">vendedor</span></label>
177 <div class="input-group col-md-8 pl-0"> 181 <div class="input-group col-md-8 pl-0">
178 <input 182 <input
179 class="form-control form-control-sm" 183 class="form-control form-control-sm"
180 foca-tipo-input 184 foca-tipo-input
181 teclado-virtual 185 teclado-virtual
182 ng-model="vendedorCobrador.comisionVendedor" 186 ng-model="vendedorCobrador.comisionVendedor"
183 ng-required="true" 187 ng-required="true"
184 foca-focus="focused == 10" 188 foca-focus="focused == 10"
185 ng-focus="focused = 10" 189 ng-focus="focused = 10"
186 ng-keypress="next($event.keyCode)" 190 ng-keypress="next($event.keyCode)"
187 autocomplete="off" 191 autocomplete="off"
188 string-to-number 192 string-to-number
189 solo-positivos 193 solo-positivos
190 /> 194 />
191 </div> 195 </div>
192 </div> 196 </div>
193 <div class="form-group d-flex mb-2 col-md-6" 197 <div class="form-group d-flex mb-2 col-md-6"
194 ng-show="vendedorCobrador.rol == 2 || vendedorCobrador.rol == 3"> 198 ng-show="vendedorCobrador.rol == 2 || vendedorCobrador.rol == 3">
195 <label class="col-form-label col-md-4">Porcentaje de comisión <span ng-show="vendedorCobrador.rol == 3">cobrador</span></label> 199 <label class="col-form-label col-md-4">Porcentaje de comisión <span ng-show="vendedorCobrador.rol == 3">cobrador</span></label>
196 <div class="input-group col-md-8 pl-0"> 200 <div class="input-group col-md-8 pl-0">
197 <input 201 <input
198 class="form-control form-control-sm" 202 class="form-control form-control-sm"
199 foca-tipo-input 203 foca-tipo-input
200 teclado-virtual 204 teclado-virtual
201 ng-model="vendedorCobrador.comisionCobrador" 205 ng-model="vendedorCobrador.comisionCobrador"
202 ng-required="true" 206 ng-required="true"
203 foca-focus="focused == 10" 207 foca-focus="focused == 10"
204 ng-focus="focused = 10" 208 ng-focus="focused = 10"
205 ng-keypress="next($event.keyCode)" 209 ng-keypress="next($event.keyCode)"
206 autocomplete="off" 210 autocomplete="off"
207 string-to-number 211 string-to-number
208 solo-positivos 212 solo-positivos
209 /> 213 />
210 </div> 214 </div>
211 </div> 215 </div>
212 <div class="ml-auto w-50"> 216 <div class="ml-auto w-50">
213 <button 217 <button
214 class="btn btn-primary float-right mr-3" 218 class="btn btn-primary float-right mr-3"
215 type="button" 219 type="button"
216 ng-click="cambiarPassword()" 220 ng-click="cambiarPassword()"
217 ng-show="edicion" 221 ng-show="edicion"
218 >Cambiar contraseña</button> 222 >Cambiar contraseña</button>
219 </div> 223 </div>
220 </div> 224 </div>
221 </form> 225 </form>
222 </div> 226 </div>
223 </div> 227 </div>
224 228