Commit e4c7dbde847799888fe3f000b7678cc7808d1285

Authored by Eric Fernandez
1 parent 528ca995dc
Exists in master and in 1 other branch develop

refactor de acuerdo a peticiones

src/js/controller.js
... ... @@ -4,20 +4,86 @@ angular.module('focaModalCheque')
4 4 '$filter',
5 5 '$scope',
6 6 '$uibModalInstance',
7   - 'focaModalChequeService',
8   - function($filter, $scope, $uibModalInstance, focaModalChequeService) {
9   - focaModalChequeService.getBancos().then(function(res) {
10   - $scope.bancos = res.data;
11   - });
12   - focaModalChequeService.getProvincias().then(function(res) {
13   - $scope.provincias = res.data;
14   - });
15   - focaModalChequeService.getVendedores().then(function(res) {
16   - $scope.vendedores = res.data;
17   - });
  7 + '$uibModal',
  8 + function($filter, $scope, $uibModalInstance, $uibModal) {
  9 + $scope.cheque = {
  10 + banco: '',
  11 + provincia: ''
  12 + };
  13 +
  14 + $scope.seleccionarBanco = function(key) {
  15 + if(key === 13) {
  16 + var modalInstance = $uibModal.open(
  17 + {
  18 + ariaLabelledBy: 'Busqueda de Bancos',
  19 + templateUrl: 'modal-bancos.html',
  20 + controller: 'focaModalBancoController',
  21 + size: 'md',
  22 + resolve: {filters: function() {return $scope.cheque.banco;}}
  23 + }
  24 + );
  25 + modalInstance.result.then(function(banco) {
  26 + $scope.cheque.banco = (banco.ID + ' ' + banco.desbco).trim();
  27 + }, function() {
  28 + //TODO: función llamada cuando cancela el modal
  29 + });
  30 + }
  31 + };
  32 +
  33 + $scope.seleccionarProvincia = function(key) {
  34 + if(key === 13) {
  35 + var modalInstance = $uibModal.open(
  36 + {
  37 + ariaLabelledBy: 'Busqueda de Provincias',
  38 + templateUrl: 'modal-provincias.html',
  39 + controller: 'focaModalProvinciaController',
  40 + size: 'md',
  41 + resolve: {filters: function() {return $scope.cheque.provincia;}}
  42 + }
  43 + );
  44 + modalInstance.result.then(function(provincia) {
  45 + $scope.cheque.provincia = (provincia.ID +
  46 + ' ' + provincia.NOMBRE).trim();
  47 + $scope.cheque.idProvincia = provincia.ID;
  48 + }, function() {
  49 + //TODO: función llamada cuando cancela el modal
  50 + });
  51 + }
  52 + };
  53 +
  54 + $scope.seleccionarLocalidad = function(key) {
  55 + if(!$scope.cheque.idProvincia) {
  56 + //TODO: Poner modal alert de foca
  57 + alert('Seleccione una provincia');
  58 + return;
  59 + }
  60 + if(key === 13) {
  61 + var modalInstance = $uibModal.open(
  62 + {
  63 + ariaLabelledBy: 'Busqueda de Localidades',
  64 + templateUrl: 'modal-localidades.html',
  65 + controller: 'focaModalLocalidadController',
  66 + size: 'md',
  67 + resolve: {
  68 + filters: {
  69 + idProvincia: $scope.cheque.idProvincia,
  70 + busqueda: $scope.cheque.localidad
  71 + }
  72 + }
  73 + }
  74 + );
  75 + modalInstance.result.then(function(localidad) {
  76 + $scope.cheque.localidad = (localidad.ID +
  77 + ' ' + localidad.NOMBRE).trim();
  78 + }, function() {
  79 + //TODO: función llamada cuando cancela el modal
  80 + });
  81 + }
  82 + };
18 83  
19 84 $scope.aceptar = function() {
20 85 delete $scope.cheque.provincia.localidades;
  86 + //TODO: al enviar el importe con punto se pone como mil, no como decimal
21 87 $scope.cheque.importe = parseFloat($scope.cheque.importe);
22 88 $uibModalInstance.close($scope.cheque);
23 89 };
src/js/service.js
... ... @@ -1,18 +0,0 @@
1   -angular.module('focaModalCheque')
2   - .factory('focaModalChequeService', [
3   - '$http',
4   - 'API_ENDPOINT',
5   - function($http, API_ENDPOINT) {
6   - return {
7   - getBancos: function() {
8   - return $http.get(API_ENDPOINT.URL + '/banco');
9   - },
10   - getProvincias: function() {
11   - return $http.get(API_ENDPOINT.URL + '/provincia');
12   - },
13   - getVendedores: function() {
14   - return $http.post(API_ENDPOINT.URL + '/vendedores', {nombre:''} )
15   - }
16   - };
17   - }
18   - ]);
src/views/modal-cheque.html
... ... @@ -7,61 +7,90 @@
7 7 <div class="col-12 col-md-2">
8 8 <label class="form-control-sm">Banco:</label>
9 9 </div>
10   - <div class="col-12 col-md-4">
  10 + <div class="col-12 col-md-10 input-group">
11 11 <input
12 12 type="text"
13 13 foca-focus="true"
14 14 teclado-virtual
15 15 class="form-control form-control-sm"
16   - placeholder="Nombre del banco o Código"
  16 + placeholder="Nombre del banco o código"
17 17 ng-model="cheque.banco"
18 18 ng-required="true"
19   - uib-typeahead="banco as banco.ID +' '+ banco.desbco for banco in bancos | filter:$viewValue"
  19 + ng-keypress="seleccionarBanco($event.keyCode)"
20 20 />
  21 + <div class="input-group-append">
  22 + <button
  23 + ladda="searchLoading"
  24 + class="btn btn-outline-secondary form-control-sm"
  25 + type="button"
  26 + ng-click="seleccionarBanco(13)"
  27 + >
  28 + <i class="fa fa-search" aria-hidden="true"></i>
  29 + </button>
  30 + </div>
21 31 </div>
22 32 <div class="col-12 col-md-2">
23   - <label class="form-control-sm">Librador:</label>
  33 + <label class="form-control-sm">Provincia:</label>
24 34 </div>
25   - <div class="col-12 col-md-4">
  35 + <div class="col-12 col-md-5 input-group">
26 36 <input
27 37 type="text"
28 38 teclado-virtual
29 39 class="form-control form-control-sm"
30   - placeholder="Librador"
31   - ng-model="cheque.librador"
32   - ng-required="true"/>
  40 + placeholder="Nombre o Código de Provincia "
  41 + ng-model="cheque.provincia"
  42 + ng-required="true"
  43 + ng-keypress="seleccionarProvincia($event.keyCode)"/>
  44 + <div class="input-group-append">
  45 + <button
  46 + ladda="searchLoading"
  47 + class="btn btn-outline-secondary form-control-sm"
  48 + type="button"
  49 + ng-click="seleccionarProvincia(13)"
  50 + >
  51 + <i class="fa fa-search" aria-hidden="true"></i>
  52 + </button>
  53 + </div>
33 54 </div>
34   - <div class="col-12 col-md-2">
35   - <label class="form-control-sm">Provincia:</label>
  55 + <div class="col-12 col-md-1">
  56 + <label class="form-control-sm">Lugar:</label>
36 57 </div>
37   - <div class="col-12 col-md-4">
  58 + <div class="col-12 col-md-4 input-group">
38 59 <input
39 60 type="text"
40 61 teclado-virtual
41 62 class="form-control form-control-sm"
42   - placeholder="Nombre de Provincia o Código"
43   - ng-model="cheque.provincia"
  63 + placeholder="Nombre o código del lugar"
  64 + ng-model="cheque.localidad"
44 65 ng-required="true"
45   - uib-typeahead="provincia as provincia.ID +' '+ provincia.NOMBRE for provincia in provincias | filter:$viewValue"/>
  66 + ng-keypress="seleccionarLocalidad($event.keyCode)"/>
  67 + <div class="input-group-append">
  68 + <button
  69 + ladda="searchLoading"
  70 + class="btn btn-outline-secondary form-control-sm"
  71 + type="button"
  72 + ng-click="seleccionarLocalidad(13)"
  73 + >
  74 + <i class="fa fa-search" aria-hidden="true"></i>
  75 + </button>
  76 + </div>
46 77 </div>
47 78 <div class="col-12 col-md-2">
48   - <label class="form-control-sm">Lugar:</label>
  79 + <label class="form-control-sm">Librador:</label>
49 80 </div>
50   - <div class="col-12 col-md-4">
  81 + <div class="col-12 col-md-10">
51 82 <input
52 83 type="text"
53 84 teclado-virtual
54 85 class="form-control form-control-sm"
55   - placeholder="Nombre o código del lugar"
56   - ng-model="cheque.lugar"
57   - ng-required="true"
58   - uib-typeahead="lugar as lugar.ID +' '+ lugar.NOMBRE for lugar in cheque.provincia.localidades | filter:$viewValue"
59   - typeahead-min-length="2"/>
  86 + placeholder="Librador"
  87 + ng-model="cheque.librador"
  88 + ng-required="true"/>
60 89 </div>
61 90 <div class="col-12 col-md-2">
62 91 <label class="form-control-sm">Cheque:</label>
63 92 </div>
64   - <div class="col-6 col-md-2">
  93 + <div class="col-6 col-md-3">
65 94 <input
66 95 foca-tipo-input
67 96 teclado-virtual
... ... @@ -70,7 +99,7 @@
70 99 ng-model="cheque.numero"
71 100 ng-required="true"/>
72 101 </div>
73   - <div class="col-6 col-md-4 input-group mb-2">
  102 + <div class="col-6 col-md-7 input-group mb-2">
74 103 <div class="input-group-prepend">
75 104 <div class="input-group-text form-control form-control-sm">$</div>
76 105 </div>
... ... @@ -81,7 +110,10 @@
81 110 placeholder="Importe"
82 111 ng-model="cheque.importe"
83 112 ng-required="true"/>
84   - </div>
  113 + </div>
  114 + <div class="col-12 col-md-2">
  115 + <label class="form-control-sm">Emisión:</label>
  116 + </div>
85 117 <div class="col-12 col-md-4 input-group">
86 118 <div class="input-group-prepend">
87 119 <div class="input-group-text form-control form-control-sm">
... ... @@ -92,21 +124,24 @@
92 124 type="date"
93 125 class="form-control form-control-sm"
94 126 placeholder="Fecha"
95   - ng-model="cheque.fechaValor"
  127 + ng-model="cheque.fechaEmision"
96 128 ng-required="true"/>
97 129 </div>
98 130 <div class="col-12 col-md-2">
99   - <label class="form-control-sm">Vendedor:</label>
  131 + <label class="form-control-sm">Presentación:</label>
100 132 </div>
101   - <div class="col-12 col-md-10">
  133 + <div class="col-12 col-md-4 input-group">
  134 + <div class="input-group-prepend">
  135 + <div class="input-group-text form-control form-control-sm">
  136 + <i class="fa fa-calendar"></i>
  137 + </div>
  138 + </div>
102 139 <input
103   - type="text"
104   - teclado-virtual
  140 + type="date"
105 141 class="form-control form-control-sm"
106   - placeholder="Nombre del vendedor o código"
107   - ng-model="cheque.vendedor"
108   - ng-required="true"
109   - uib-typeahead="vendedor as vendedor.CodVen +' '+ vendedor.NomVen for vendedor in vendedores | filter:$viewValue"/>
  142 + placeholder="Fecha"
  143 + ng-model="cheque.fechaPresentacion"
  144 + ng-required="true"/>
110 145 </div>
111 146 <div class="col-12 col-md-2">
112 147 <label class="form-control-sm">Observaciones:</label>