Commit f4a293e881efb1574b2b7e73e79b773041515c7c

Authored by Eric Fernandez
1 parent 75f41d3ad3
Exists in master and in 2 other branches develop, lab

agrego código de vendedor al formulario

1 const templateCache = require('gulp-angular-templatecache'); 1 const templateCache = require('gulp-angular-templatecache');
2 const concat = require('gulp-concat'); 2 const concat = require('gulp-concat');
3 const htmlmin = require('gulp-htmlmin'); 3 const htmlmin = require('gulp-htmlmin');
4 const rename = require('gulp-rename'); 4 const rename = require('gulp-rename');
5 const uglify = require('gulp-uglify-es').default; 5 const uglify = require('gulp-uglify-es').default;
6 const gulp = require('gulp'); 6 const gulp = require('gulp');
7 const pump = require('pump'); 7 const pump = require('pump');
8 const jshint = require('gulp-jshint'); 8 const jshint = require('gulp-jshint');
9 const replace = require('gulp-replace'); 9 const replace = require('gulp-replace');
10 const connect = require('gulp-connect'); 10 const connect = require('gulp-connect');
11 const clean = require('gulp-clean'); 11 const clean = require('gulp-clean');
12 12
13 var paths = { 13 var paths = {
14 srcJS: 'src/js/*.js', 14 srcJS: 'src/js/*.js',
15 srcViews: 'src/views/*.html', 15 srcViews: 'src/views/*.html',
16 tmp: 'tmp', 16 tmp: 'tmp',
17 dist: 'dist/' 17 dist: 'dist/'
18 }; 18 };
19 19
20 gulp.task('templates', function() { 20 gulp.task('templates', function() {
21 return pump( 21 return pump(
22 [ 22 [
23 gulp.src(paths.srcViews), 23 gulp.src(paths.srcViews),
24 replace('views/', ''), 24 replace('views/', ''),
25 htmlmin(), 25 htmlmin(),
26 templateCache('views.js', { 26 templateCache('views.js', {
27 module: 'focaAbmVendedorCobrador', 27 module: 'focaAbmVendedorCobrador',
28 root: '' 28 root: ''
29 }), 29 }),
30 gulp.dest(paths.tmp) 30 gulp.dest(paths.tmp)
31 ] 31 ]
32 ); 32 );
33 }); 33 });
34 34
35 gulp.task('uglify', ['templates'], function() { 35 gulp.task('uglify', ['templates'], function() {
36 return pump( 36 return pump(
37 [ 37 [
38 gulp.src([ 38 gulp.src([
39 paths.srcJS, 39 paths.srcJS,
40 'tmp/views.js' 40 'tmp/views.js'
41 ]), 41 ]),
42 concat('foca-abm-vendedor-cobrador.js'), 42 concat('foca-abm-vendedor-cobrador.js'),
43 replace("['ngRoute', 'focaModal', 'ui.bootstrap', 'focaBotoneraLateral', 'focaModal']", '[]'),
44 replace("src/views/", ''), 43 replace("src/views/", ''),
45 gulp.dest(paths.tmp), 44 gulp.dest(paths.tmp),
46 rename('foca-abm-vendedor-cobrador.min.js'), 45 rename('foca-abm-vendedor-cobrador.min.js'),
47 uglify(), 46 uglify(),
48 gulp.dest(paths.dist) 47 gulp.dest(paths.dist)
49 ] 48 ]
50 ); 49 );
51 }); 50 });
52 51
53 gulp.task('clean', function() { 52 gulp.task('clean', function() {
54 return gulp.src(['tmp', 'dist'], {read: false}) 53 return gulp.src(['tmp', 'dist'], {read: false})
55 .pipe(clean()); 54 .pipe(clean());
56 }); 55 });
57 56
58 gulp.task('pre-commit', function() { 57 gulp.task('pre-commit', function() {
59 pump( 58 pump(
60 [ 59 [
61 gulp.src(paths.srcJS), 60 gulp.src(paths.srcJS),
62 jshint('.jshintrc'), 61 jshint('.jshintrc'),
63 jshint.reporter('default'), 62 jshint.reporter('default'),
64 jshint.reporter('fail') 63 jshint.reporter('fail')
65 ] 64 ]
66 ); 65 );
67 66
68 gulp.start('uglify'); 67 gulp.start('uglify');
69 }); 68 });
70 69
71 gulp.task('clean-post-install', function() { 70 gulp.task('clean-post-install', function() {
72 return gulp.src(['src', 'tmp', '.jshintrc','readme.md', '.gitignore', 'gulpfile.js', 71 return gulp.src(['src', 'tmp', '.jshintrc','readme.md', '.gitignore', 'gulpfile.js',
73 'index.html'], {read: false}) 72 'index.html'], {read: false})
74 .pipe(clean()); 73 .pipe(clean());
75 }); 74 });
76 75
77 gulp.task('compile', ['templates', 'uglify']); 76 gulp.task('compile', ['templates', 'uglify']);
78 77
79 gulp.task('watch', function() { 78 gulp.task('watch', function() {
80 gulp.watch([paths.srcJS, paths.srcViews], ['uglify']); 79 gulp.watch([paths.srcJS, paths.srcViews], ['uglify']);
81 }); 80 });
82 81
83 gulp.task('webserver', function() { 82 gulp.task('webserver', function() {
84 pump [ 83 pump [
85 connect.server({port: 3000}) 84 connect.server({port: 3000})
86 ] 85 ]
87 }); 86 });
88 87
89 gulp.task('default', ['webserver']); 88 gulp.task('default', ['webserver']);
90 89
1 angular.module('focaAbmVendedorCobrador', [ 1 angular.module('focaAbmVendedorCobrador', []);
2 'ngRoute',
3 'focaModal',
4 'ui.bootstrap',
5 'focaBotoneraLateral',
6 'focaModal'
7 ]);
8 2
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',
5 function($scope, focaAbmVendedorCobradorService, $location, $filter, 5 function($scope, focaAbmVendedorCobradorService, $location, $filter,
6 focaBotoneraLateralService, focaModalService) { 6 focaBotoneraLateralService, focaModalService) {
7 7
8 $scope.now = new Date(); 8 $scope.now = new Date();
9 $scope.vendedoresCobradores = []; 9 $scope.vendedoresCobradores = [];
10 $scope.filters = ''; 10 $scope.filters = '';
11 $scope.numPerPage = 10; 11 $scope.numPerPage = 10;
12 $scope.currentPageVendedoresCobradores = []; 12 $scope.currentPageVendedoresCobradores = [];
13 $scope.vendedoresCobradores = []; 13 $scope.vendedoresCobradores = [];
14 14
15 //SETEO BOTONERA LATERAL 15 //SETEO BOTONERA LATERAL
16 focaBotoneraLateralService.showSalir(true); 16 focaBotoneraLateralService.showSalir(true);
17 focaBotoneraLateralService.showPausar(false); 17 focaBotoneraLateralService.showPausar(false);
18 focaBotoneraLateralService.showCancelar(false); 18 focaBotoneraLateralService.showCancelar(false);
19 focaBotoneraLateralService.showGuardar(false); 19 focaBotoneraLateralService.showGuardar(false);
20 20
21 $scope.editar = function(id) { 21 $scope.editar = function(id) {
22 $location.path('/vendedor-cobrador/' + id); 22 $location.path('/vendedor-cobrador/' + id);
23 }; 23 };
24 24
25 $scope.eliminar = function(vendedorCobrador) { 25 $scope.eliminar = function(vendedorCobrador) {
26 var tipo = vendedorCobrador.ES_COBRADOR ? 'cobrador' : 'vendedor'; 26 var tipo = vendedorCobrador.ES_COBRADOR ? 'cobrador' : 'vendedor';
27 focaModalService.confirm('¿Está seguro que desea borrar el ' + tipo + 27 focaModalService.confirm('¿Está seguro que desea borrar el ' + tipo +
28 ' ' + vendedorCobrador.NomVen + '?') 28 ' ' + vendedorCobrador.NomVen + '?')
29 .then(function(data) { 29 .then(function(data) {
30 if(data) { 30 if(data) {
31 focaAbmVendedorCobradorService 31 focaAbmVendedorCobradorService
32 .eliminarVendedorCobrador(vendedorCobrador.CodVen) 32 .eliminarVendedorCobrador(vendedorCobrador.CodVen)
33 .then(function() { 33 .then(function() {
34 $scope.search(13); 34 $scope.search(13);
35 }); 35 });
36 } 36 }
37 }); 37 });
38 }; 38 };
39 39
40 $scope.selectPage = function(page) { 40 $scope.selectPage = function(page) {
41 var start = (page - 1) * $scope.numPerPage; 41 var start = (page - 1) * $scope.numPerPage;
42 var end = start + $scope.numPerPage; 42 var end = start + $scope.numPerPage;
43 $scope.paginas = []; 43 $scope.paginas = [];
44 $scope.paginas = calcularPages(page); 44 $scope.paginas = calcularPages(page);
45 $scope.currentPageVendedoresCobradores = 45 $scope.currentPageVendedoresCobradores =
46 $scope.vendedoresCobradores.slice(start, end); 46 $scope.vendedoresCobradores.slice(start, end);
47 $scope.currentPage = page; 47 $scope.currentPage = page;
48 }; 48 };
49 49
50 $scope.resetPage = function() { 50 $scope.resetPage = function() {
51 $scope.currentPage = 1; 51 $scope.currentPage = 1;
52 $scope.selectPage(1); 52 $scope.selectPage(1);
53 }; 53 };
54 54
55 $scope.search = function(key) { 55 $scope.search = function(key) {
56 if(key !== 13) return; 56 if(key !== 13) return;
57 57
58 focaAbmVendedorCobradorService 58 focaAbmVendedorCobradorService
59 .getVendedoresCobradores($scope.filters) 59 .getVendedoresCobradores($scope.filters)
60 .then(function(res) { 60 .then(function(res) {
61 $scope.vendedoresCobradores = res.data; 61 $scope.vendedoresCobradores = res.data;
62 62
63 $scope.lastPage = Math.ceil( 63 $scope.lastPage = Math.ceil(
64 $scope.vendedoresCobradores.length / $scope.numPerPage 64 $scope.vendedoresCobradores.length / $scope.numPerPage
65 ); 65 );
66 66
67 $scope.resetPage(); 67 $scope.resetPage();
68 }); 68 });
69 }; 69 };
70 70
71 function calcularPages(paginaActual) { 71 function calcularPages(paginaActual) {
72 var paginas = []; 72 var paginas = [];
73 paginas.push(paginaActual); 73 paginas.push(paginaActual);
74 74
75 if(paginaActual - 1 > 1) { 75 if(paginaActual - 1 > 1) {
76 76
77 paginas.unshift(paginaActual - 1); 77 paginas.unshift(paginaActual - 1);
78 if(paginaActual - 2 > 1) { 78 if(paginaActual - 2 > 1) {
79 paginas.unshift(paginaActual - 2); 79 paginas.unshift(paginaActual - 2);
80 } 80 }
81 } 81 }
82 82
83 if(paginaActual + 1 < $scope.lastPage) { 83 if(paginaActual + 1 < $scope.lastPage) {
84 paginas.push(paginaActual + 1); 84 paginas.push(paginaActual + 1);
85 if(paginaActual + 2 < $scope.lastPage) { 85 if(paginaActual + 2 < $scope.lastPage) {
86 paginas.push(paginaActual + 2); 86 paginas.push(paginaActual + 2);
87 } 87 }
88 } 88 }
89 89
90 if(paginaActual !== 1) { 90 if(paginaActual !== 1) {
91 paginas.unshift(1); 91 paginas.unshift(1);
92 } 92 }
93 93
94 if(paginaActual !== $scope.lastPage) { 94 if(paginaActual !== $scope.lastPage) {
95 paginas.push($scope.lastPage); 95 paginas.push($scope.lastPage);
96 } 96 }
97 97
98 return paginas; 98 return paginas;
99 } 99 }
100 100
101 function primera() { 101 function primera() {
102 $scope.selectedClientes = 0; 102 $scope.selectedClientes = 0;
103 } 103 }
104 104
105 function anterior() { 105 function anterior() {
106 if ($scope.selectedClientes === 0 && $scope.currentPage > 1) { 106 if ($scope.selectedClientes === 0 && $scope.currentPage > 1) {
107 retrocederPagina(); 107 retrocederPagina();
108 } else { 108 } else {
109 $scope.selectedClientes--; 109 $scope.selectedClientes--;
110 } 110 }
111 } 111 }
112 112
113 function siguiente() { 113 function siguiente() {
114 if ($scope.selectedClientes < $scope.currentPageVendedoresCobradores.length - 1 ) { 114 if ($scope.selectedClientes < $scope.currentPageVendedoresCobradores.length - 1 ) {
115 $scope.selectedClientes++; 115 $scope.selectedClientes++;
116 } else { 116 } else {
117 avanzarPagina(); 117 avanzarPagina();
118 } 118 }
119 } 119 }
120 120
121 function retrocederPagina() { 121 function retrocederPagina() {
122 if ($scope.currentPage > 1) { 122 if ($scope.currentPage > 1) {
123 $scope.selectPage($scope.currentPage - 1); 123 $scope.selectPage($scope.currentPage - 1);
124 $scope.selectedClientes = $scope.numPerPage - 1; 124 $scope.selectedClientes = $scope.numPerPage - 1;
125 } 125 }
126 } 126 }
127 127
128 function avanzarPagina() { 128 function avanzarPagina() {
129 if ($scope.currentPage < $scope.lastPage) { 129 if ($scope.currentPage < $scope.lastPage) {
130 $scope.selectPage($scope.currentPage + 1); 130 $scope.selectPage($scope.currentPage + 1);
131 $scope.selectedClientes = 0; 131 $scope.selectedClientes = 0;
132 } 132 }
133 } 133 }
134 } 134 }
135 ])
136 .controller('focaAbmVendedorCobradorController', [
137 '$scope', 'focaAbmVendedorCobradorService', '$routeParams', 'focaBotoneraLateralService',
138 '$timeout', '$uibModal', '$location', 'focaModalService',
139 function($scope, focaAbmVendedorCobradorService, $routeParams, focaBotoneraLateralService,
140 $timeout, $uibModal, $location, focaModalService) {
141
142 $scope.now = new Date();
143 $scope.focused = 0;
144 $scope.vendedorCobrador = {
145 CodVen: 0,
146 ES_COBRADOR: false,
147 DNI: ' ',
148 ClaVen: '',
149 ComVen: '0.00',
150 comisionCobrador: '0.00',
151 provincia: {
152 NOMBRE: ''
153 },
154 localidad: {
155 NOMBRE: ' '
156 }
157 };
158 $scope.options = [
159 {
160 label: 'Vendedor',
161 value: 1
162 },
163 {
164 label: 'Cobrador',
165 value: 2
166 },
167 {
168 label: 'Vendedor y cobrador',
169 value: 3
170 }
171 ];
172 //SETEO BOTONERA LATERAL
173 $timeout(function() {
174 focaBotoneraLateralService.showSalir(false);
175 focaBotoneraLateralService.showPausar(true);
176 focaBotoneraLateralService.showCancelar(false);
177 focaBotoneraLateralService.showGuardar(true, $scope.guardar);
178 focaBotoneraLateralService.addCustomButton('Salir', $scope.cancelar);
179 });
180
181 focaAbmVendedorCobradorService
182 .getVendedorCobradorById($routeParams.id)
183 .then(function(res) {
184 if(res.data){
185 $scope.vendedorCobrador = res.data;
186 delete $scope.vendedorCobrador.FCVEN;
187 delete $scope.vendedorCobrador.FEC;
188 }
189 });
190
191 $scope.guardar = function() {
192 if($scope.vendedorCobrador.ClaVen !== $scope.vendedorCobrador.ClaVen2) {
193 focaModalService.alert('Las contraseñas deben coincidir');
194 return;
195 }
196 $scope.vendedorCobrador.PciVen = $scope.vendedorCobrador.provincia.ID;
197 $scope.vendedorCobrador.LocVen = $scope.vendedorCobrador.localidad.ID;
198
199 delete $scope.vendedorCobrador.provincia;
200 delete $scope.vendedorCobrador.localidad;
201 delete $scope.vendedorCobrador.ClaVen2;
202 if($scope.vendedorCobrador.rol == 1) {
203 delete $scope.vendedorCobrador.comisionCobrador;
204 }else if($scope.vendedorCobrador.rol == 2) {
205 delete $scope.vendedorCobrador.ComVen;
206 }
207
208 focaAbmVendedorCobradorService
209 .guardarVendedorCobrador($scope.vendedorCobrador)
210 .then(function() {
211 $location.path('/vendedor-cobrador');
212 });
213 };
214
215 $scope.seleccionarProvincia = function(key) {
216 if(key === 13) {
217 var modalInstance = $uibModal.open(
218 {
219 ariaLabelledBy: 'Búsqueda de provincias',
220 templateUrl: 'modal-provincias.html',
221 controller: 'focaModalProvinciaController',
222 size: 'md',
223 resolve: {
224 filters: function() {
225 return $scope.vendedorCobrador.provincia.NOMBRE;
226 }
227 }
228 }
229 );
230 modalInstance.result.then(function(provincia) {
231 $scope.vendedorCobrador.provincia = provincia;
232 $timeout(function() {
233 $scope.focused = 5;
234 });
235 }, function() {
236 //TODO: función llamada cuando cancela el modal
237 });
238 }
239 };
240 $scope.seleccionarLocalidad = function(key) {
241 if(!$scope.vendedorCobrador.provincia.ID) {
242 focaModalService.alert('Seleccione una provincia');
243 return;
244 }
245 if(key === 13) {
246 var modalInstance = $uibModal.open(
247 {
248 ariaLabelledBy: 'Búsqueda de localidades',
249 templateUrl: 'modal-localidades.html',
250 controller: 'focaModalLocalidadController',
251 size: 'md',
252 resolve: {
253 filters: {
254 idProvincia: $scope.vendedorCobrador.provincia.ID,
255 busqueda: $scope.vendedorCobrador.localidad.NOMBRE
256 }
257 }
258 }
259 );
260 modalInstance.result.then(function(localidad) {
261 $scope.vendedorCobrador.localidad = localidad;
262 $timeout(function() {
263 $scope.focused = 6;
264 });
265 }, function() {
266 //TODO: función llamada cuando cancela el modal
267 });
268 }
269 };
270
271 $scope.cancelar = function() {
272 $location.path('/vendedor-cobrador');
273 };
274
275 $scope.next = function(key) {
276 if(key === 13) $scope.focused++;
277 };
278 }
279 ]); 135 ]);
280 136
1 angular.module('focaAbmVendedorCobrador') 1 angular.module('focaAbmVendedorCobrador')
2 .factory('focaAbmVendedorCobradorService', ['$http', 'API_ENDPOINT', function($http, API_ENDPOINT) { 2 .factory('focaAbmVendedorCobradorService', ['$http', 'API_ENDPOINT', function($http, API_ENDPOINT) {
3 return { 3 return {
4 getVendedoresCobradores: function(nombre) { 4 getVendedoresCobradores: function(nombre) {
5 return $http.post(API_ENDPOINT.URL + '/vendedor-cobrador/list', {nombre: nombre}); 5 return $http.post(API_ENDPOINT.URL + '/vendedor-cobrador/list', {nombre: nombre});
6 }, 6 },
7 getVendedorCobradorById: function(id) { 7 getVendedorCobradorById: function(id) {
8 return $http.get(API_ENDPOINT.URL + '/vendedor-cobrador/' + id); 8 return $http.get(API_ENDPOINT.URL + '/vendedor-cobrador/' + id);
9 }, 9 },
10 guardarVendedorCobrador: function(vendedorCobrador) { 10 guardarVendedorCobrador: function(vendedorCobrador) {
11 return $http.post(API_ENDPOINT.URL + '/vendedor-cobrador', 11 return $http.post(API_ENDPOINT.URL + '/vendedor-cobrador',
12 {vendedorCobrador: vendedorCobrador}); 12 {vendedorCobrador: vendedorCobrador});
13 }, 13 },
14 eliminarVendedorCobrador: function(id) { 14 eliminarVendedorCobrador: function(id) {
15 return $http.delete(API_ENDPOINT.URL + '/vendedor-cobrador/' + id); 15 return $http.delete(API_ENDPOINT.URL + '/vendedor-cobrador/' + id);
16 },
17 getCodigoSiguiente: function() {
18 return $http.get(API_ENDPOINT.URL + '/vendedor-cobrador/obtener/siguiente-codigo');
16 } 19 }
17 }; 20 };
18 }]); 21 }]);
19 22
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>
14 <div class="col-md-8 pl-0">
15 <input
16 class="form-control form-control-sm"
17 ng-model="vendedorCobrador.CodVen"
18 readonly/>
19 </div>
20 </div>
21 <div class="form-group d-flex mb-2 col-md-6">
13 <label class="col-form-label col-md-4">Tipo</label> 22 <label class="col-form-label col-md-4">Tipo</label>
14 <div class="col-md-8 pl-0"> 23 <div class="col-md-8 pl-0">
15 <select 24 <select
16 class="form-control form-control-sm" 25 class="form-control form-control-sm"
17 ng-model="vendedorCobrador.rol" 26 ng-model="vendedorCobrador.rol"
18 ng-options="option.value as option.label for option in options" 27 ng-options="option.value as option.label for option in options"
19 foca-focus="focused == 0" 28 foca-focus="focused == 0"
20 ng-focus="focused = 0"> 29 ng-focus="focused = 0">
21 </select> 30 </select>
22 </div> 31 </div>
23 </div> 32 </div>
24 <div class="form-group d-flex mb-2 col-md-6"> 33 <div class="form-group d-flex mb-2 col-md-6">
25 <label class="col-form-label col-md-4">Nombre</label> 34 <label class="col-form-label col-md-4">Nombre</label>
26 <div class="input-group col-md-8 pl-0"> 35 <div class="input-group col-md-8 pl-0">
27 <input 36 <input
28 class="form-control form-control-sm" 37 class="form-control form-control-sm"
29 type="text" 38 type="text"
30 teclado-virtual 39 teclado-virtual
31 ng-model="vendedorCobrador.NomVen" 40 ng-model="vendedorCobrador.NomVen"
32 foca-focus="focused == 1" 41 foca-focus="focused == 1"
33 ng-focus="focused = 1" 42 ng-focus="focused = 1"
34 ng-keypress="next($event.keyCode)" 43 ng-keypress="next($event.keyCode)"
35 autocomplete="off" 44 autocomplete="off"
36 uppercase-only 45 uppercase-only
37 /> 46 />
38 </div> 47 </div>
39 </div> 48 </div>
40 <div class="form-group d-flex mb-2 col-md-6"> 49 <div class="form-group d-flex mb-2 col-md-6">
41 <label class="col-form-label col-md-4">Domicilio</label> 50 <label class="col-form-label col-md-4">Domicilio</label>
42 <div class="input-group col-md-8 pl-0"> 51 <div class="input-group col-md-8 pl-0">
43 <input 52 <input
44 class="form-control form-control-sm" 53 class="form-control form-control-sm"
45 type="text" 54 type="text"
46 teclado-virtual 55 teclado-virtual
47 ng-model="vendedorCobrador.DomVen" 56 ng-model="vendedorCobrador.DomVen"
48 ng-required="true" 57 ng-required="true"
49 foca-focus="focused == 2" 58 foca-focus="focused == 2"
50 ng-focus="focused = 2" 59 ng-focus="focused = 2"
51 ng-keypress="next($event.keyCode)" 60 ng-keypress="next($event.keyCode)"
52 autocomplete="off" 61 autocomplete="off"
53 uppercase-only 62 uppercase-only
54 /> 63 />
55 </div> 64 </div>
56 </div> 65 </div>
57 <div class="form-group d-flex mb-2 col-md-6"> 66 <div class="form-group d-flex mb-2 col-md-6">
58 <label class="col-form-label col-md-4">Código postal</label> 67 <label class="col-form-label col-md-4">Código postal</label>
59 <div class="input-group col-md-8 pl-0"> 68 <div class="input-group col-md-8 pl-0">
60 <input 69 <input
61 class="form-control form-control-sm" 70 class="form-control form-control-sm"
62 foca-tipo-input 71 foca-tipo-input
63 teclado-virtual 72 teclado-virtual
64 ng-model="vendedorCobrador.CPoVen" 73 ng-model="vendedorCobrador.CPoVen"
65 ng-required="true" 74 ng-required="true"
66 foca-focus="focused == 3" 75 foca-focus="focused == 3"
67 ng-focus="focused = 3" 76 ng-focus="focused = 3"
68 ng-keypress="next($event.keyCode)" 77 ng-keypress="next($event.keyCode)"
69 autocomplete="off" 78 autocomplete="off"
70 string-to-number 79 string-to-number
71 /> 80 />
72 </div> 81 </div>
73 </div> 82 </div>
74 <div class="form-group d-flex mb-2 col-md-6"> 83 <div class="form-group d-flex mb-2 col-md-6">
75 <label class="col-form-label col-md-4">Provincia</label> 84 <label class="col-form-label col-md-4">Provincia</label>
76 <div class="input-group col-md-8 pl-0"> 85 <div class="input-group col-md-8 pl-0">
77 <input 86 <input
78 type="text" 87 type="text"
79 class="form-control form-control-sm" 88 class="form-control form-control-sm"
80 ng-model="vendedorCobrador.provincia.NOMBRE" 89 ng-model="vendedorCobrador.provincia.NOMBRE"
81 ng-keypress="seleccionarProvincia($event.keyCode)" 90 ng-keypress="seleccionarProvincia($event.keyCode)"
82 ng-required="true" 91 ng-required="true"
83 foca-focus="focused == 4" 92 foca-focus="focused == 4"
84 ng-focus="focused = 4" 93 ng-focus="focused = 4"
85 teclado-virtual 94 teclado-virtual
86 /> 95 />
87 <div class="input-group-append"> 96 <div class="input-group-append">
88 <button 97 <button
89 ladda="searchLoading" 98 ladda="searchLoading"
90 class="btn btn-outline-secondary form-control-sm" 99 class="btn btn-outline-secondary form-control-sm"
91 type="button" 100 type="button"
92 ng-click="seleccionarProvincia(13)" 101 ng-click="seleccionarProvincia(13)"
93 > 102 >
94 <i class="fa fa-search" aria-hidden="true"></i> 103 <i class="fa fa-search" aria-hidden="true"></i>
95 </button> 104 </button>
96 </div> 105 </div>
97 </div> 106 </div>
98 </div> 107 </div>
99 <div class="form-group d-flex mb-2 col-md-6"> 108 <div class="form-group d-flex mb-2 col-md-6">
100 <label class="col-form-label col-md-4">Localidad</label> 109 <label class="col-form-label col-md-4">Localidad</label>
101 <div class="input-group col-md-8 pl-0"> 110 <div class="input-group col-md-8 pl-0">
102 <input 111 <input
103 type="text" 112 type="text"
104 class="form-control form-control-sm" 113 class="form-control form-control-sm"
105 ng-model="vendedorCobrador.localidad.NOMBRE" 114 ng-model="vendedorCobrador.localidad.NOMBRE"
106 ng-keypress="seleccionarLocalidad($event.keyCode)" 115 ng-keypress="seleccionarLocalidad($event.keyCode)"
107 ng-required="true" 116 ng-required="true"
108 foca-focus="focused == 5" 117 foca-focus="focused == 5"
109 ng-focus="focused = 5" 118 ng-focus="focused = 5"
110 teclado-virtual 119 teclado-virtual
111 autocomplete="off" 120 autocomplete="off"
112 /> 121 />
113 <div class="input-group-append"> 122 <div class="input-group-append">
114 <button 123 <button
115 ladda="searchLoading" 124 ladda="searchLoading"
116 class="btn btn-outline-secondary form-control-sm" 125 class="btn btn-outline-secondary form-control-sm"
117 type="button" 126 type="button"
118 ng-click="seleccionarLocalidad(13)" 127 ng-click="seleccionarLocalidad(13)"
119 > 128 >
120 <i class="fa fa-search" aria-hidden="true"></i> 129 <i class="fa fa-search" aria-hidden="true"></i>
121 </button> 130 </button>
122 </div> 131 </div>
123 </div> 132 </div>
124 </div> 133 </div>
125 <div class="form-group d-flex mb-2 col-md-6"> 134 <div class="form-group d-flex mb-2 col-md-6">
126 <label class="col-form-label col-md-4">Teléfono</label> 135 <label class="col-form-label col-md-4">Teléfono</label>
127 <div class="input-group col-md-8 pl-0"> 136 <div class="input-group col-md-8 pl-0">
128 <input 137 <input
129 class="form-control form-control-sm" 138 class="form-control form-control-sm"
130 foca-tipo-input 139 foca-tipo-input
131 teclado-virtual 140 teclado-virtual
132 ng-model="vendedorCobrador.TelVen" 141 ng-model="vendedorCobrador.TelVen"
133 ng-required="true" 142 ng-required="true"
134 foca-focus="focused == 6" 143 foca-focus="focused == 6"
135 ng-focus="focused = 6" 144 ng-focus="focused = 6"
136 ng-keypress="next($event.keyCode)" 145 ng-keypress="next($event.keyCode)"
137 autocomplete="off" 146 autocomplete="off"
138 string-to-number 147 string-to-number
139 /> 148 />
140 </div> 149 </div>
141 </div> 150 </div>
142 <div class="form-group d-flex mb-2 col-md-6"> 151 <div class="form-group d-flex mb-2 col-md-6">
143 <label class="col-form-label col-md-4">DNI</label> 152 <label class="col-form-label col-md-4">DNI</label>
144 <div class="input-group col-md-8 pl-0"> 153 <div class="input-group col-md-8 pl-0">
145 <input 154 <input
146 class="form-control form-control-sm" 155 class="form-control form-control-sm"
147 foca-tipo-input 156 foca-tipo-input
148 teclado-virtual 157 teclado-virtual
149 ng-model="vendedorCobrador.DNI" 158 ng-model="vendedorCobrador.DNI"
150 ng-required="true" 159 ng-required="true"
151 foca-focus="focused == 7" 160 foca-focus="focused == 7"
152 ng-focus="focused = 7" 161 ng-focus="focused = 7"
153 ng-keypress="next($event.keyCode)" 162 ng-keypress="next($event.keyCode)"
154 autocomplete="off" 163 autocomplete="off"
155 string-to-number 164 string-to-number
156 /> 165 />
157 </div> 166 </div>
158 </div> 167 </div>
159 <div class="form-group d-flex mb-2 col-md-6"> 168 <div class="form-group d-flex mb-2 col-md-6">
160 <label class="col-form-label col-md-4">Nueva contraseña</label> 169 <label class="col-form-label col-md-4">Nueva contraseña</label>
161 <div class="input-group col-md-8 pl-0"> 170 <div class="input-group col-md-8 pl-0">
162 <input 171 <input
163 class="form-control form-control-sm" 172 class="form-control form-control-sm"
164 type="password" 173 type="password"
165 teclado-virtual 174 teclado-virtual
166 ng-model="vendedorCobrador.ClaVen" 175 ng-model="vendedorCobrador.ClaVen"
167 ng-required="true" 176 ng-required="true"
168 foca-focus="focused == 8" 177 foca-focus="focused == 8"
169 ng-focus="focused = 8" 178 ng-focus="focused = 8"
170 ng-keypress="next($event.keyCode)" 179 ng-keypress="next($event.keyCode)"
171 autocomplete="off" 180 autocomplete="off"
172 /> 181 />
173 </div> 182 </div>
174 </div> 183 </div>
175 <div class="form-group d-flex mb-2 col-md-6"> 184 <div class="form-group d-flex mb-2 col-md-6">
176 <label class="col-form-label col-md-4">Repita contraseña</label> 185 <label class="col-form-label col-md-4">Repita contraseña</label>
177 <div class="input-group col-md-8 pl-0"> 186 <div class="input-group col-md-8 pl-0">
178 <input 187 <input
179 class="form-control form-control-sm" 188 class="form-control form-control-sm"
180 type="password" 189 type="password"
181 teclado-virtual 190 teclado-virtual
182 ng-model="vendedorCobrador.ClaVen2" 191 ng-model="vendedorCobrador.ClaVen2"
183 ng-required="true" 192 ng-required="true"
184 foca-focus="focused == 9" 193 foca-focus="focused == 9"
185 ng-focus="focused = 9" 194 ng-focus="focused = 9"
186 ng-keypress="next($event.keyCode)" 195 ng-keypress="next($event.keyCode)"
187 autocomplete="off" 196 autocomplete="off"
188 /> 197 />
189 </div> 198 </div>
190 </div> 199 </div>
191 <div class="form-group d-flex mb-2 col-md-6" 200 <div class="form-group d-flex mb-2 col-md-6"
192 ng-show="vendedorCobrador.rol == 1 || vendedorCobrador.rol == 3"> 201 ng-show="vendedorCobrador.rol == 1 || vendedorCobrador.rol == 3">
193 <label class="col-form-label col-md-4">Porcentaje de comisión <span ng-show="vendedorCobrador.rol == 3">vendedor</span></label> 202 <label class="col-form-label col-md-4">Porcentaje de comisión <span ng-show="vendedorCobrador.rol == 3">vendedor</span></label>
194 <div class="input-group col-md-8 pl-0"> 203 <div class="input-group col-md-8 pl-0">
195 <input 204 <input
196 class="form-control form-control-sm" 205 class="form-control form-control-sm"
197 foca-tipo-input 206 foca-tipo-input
198 teclado-virtual 207 teclado-virtual
199 ng-model="vendedorCobrador.ComVen" 208 ng-model="vendedorCobrador.ComVen"
200 ng-required="true" 209 ng-required="true"
201 foca-focus="focused == 10" 210 foca-focus="focused == 10"
202 ng-focus="focused = 10" 211 ng-focus="focused = 10"
203 ng-keypress="next($event.keyCode)" 212 ng-keypress="next($event.keyCode)"
204 autocomplete="off" 213 autocomplete="off"
205 string-to-number 214 string-to-number
206 /> 215 />
207 </div> 216 </div>
208 </div> 217 </div>
209 <div class="form-group d-flex mb-2 col-md-6" 218 <div class="form-group d-flex mb-2 col-md-6"
210 ng-show="vendedorCobrador.rol == 2 || vendedorCobrador.rol == 3"> 219 ng-show="vendedorCobrador.rol == 2 || vendedorCobrador.rol == 3">
211 <label class="col-form-label col-md-4">Porcentaje de comisión <span ng-show="vendedorCobrador.rol == 3">cobrador</span></label> 220 <label class="col-form-label col-md-4">Porcentaje de comisión <span ng-show="vendedorCobrador.rol == 3">cobrador</span></label>
212 <div class="input-group col-md-8 pl-0"> 221 <div class="input-group col-md-8 pl-0">
213 <input 222 <input
214 class="form-control form-control-sm" 223 class="form-control form-control-sm"
215 foca-tipo-input 224 foca-tipo-input
216 teclado-virtual 225 teclado-virtual
217 ng-model="vendedorCobrador.comisionCobrador" 226 ng-model="vendedorCobrador.comisionCobrador"
218 ng-required="true" 227 ng-required="true"
219 foca-focus="focused == 10" 228 foca-focus="focused == 10"
220 ng-focus="focused = 10" 229 ng-focus="focused = 10"
221 ng-keypress="next($event.keyCode)" 230 ng-keypress="next($event.keyCode)"
222 autocomplete="off" 231 autocomplete="off"
223 string-to-number 232 string-to-number
224 /> 233 />
225 </div> 234 </div>
226 </div> 235 </div>
227 </div> 236 </div>
228 </form> 237 </form>
229 </div> 238 </div>
230 </div> 239 </div>
231 240