Commit 0399af9f05032c0089e30b2e3ed0e2654d3d6ad5
1 parent
e5491961e5
Exists in
master
and in
1 other branch
siguiente con enter, boton modal lat lng
Showing
4 changed files
with
86 additions
and
2 deletions
Show diff stats
gulpfile.js
... | ... | @@ -40,7 +40,7 @@ gulp.task('uglify', ['templates'], function() { |
40 | 40 | ]), |
41 | 41 | concat('foca-modal-domicilios.js'), |
42 | 42 | replace('src/views/', ''), |
43 | - replace("['ui.bootstrap', 'focaDirectivas']", '[]'), | |
43 | + replace("['ui.bootstrap', 'focaDirectivas', 'focaModal']", '[]'), | |
44 | 44 | gulp.dest(paths.tmp), |
45 | 45 | rename('foca-modal-domicilios.min.js'), |
46 | 46 | uglify(), |
package.json
src/js/controller.js
... | ... | @@ -35,6 +35,7 @@ angular.module('focaModalDomicilio') |
35 | 35 | $scope.filteredDomicilios = []; |
36 | 36 | $scope.currentPageDomicilios = []; |
37 | 37 | $scope.selectedDomicilio = -1; |
38 | + $scope.focused = 1; | |
38 | 39 | var puntosDescarga = []; |
39 | 40 | |
40 | 41 | //METODOS |
... | ... | @@ -141,6 +142,18 @@ angular.module('focaModalDomicilio') |
141 | 142 | dato: $scope.domicilio.provincia |
142 | 143 | }); |
143 | 144 | } |
145 | + if($scope.domicilio.latitud) { | |
146 | + $scope.domicilio.valores.push({ | |
147 | + ID_ADAC_1: 23, | |
148 | + dato: $scope.domicilio.latitud | |
149 | + }); | |
150 | + } | |
151 | + if($scope.domicilio.longitud) { | |
152 | + $scope.domicilio.valores.push({ | |
153 | + ID_ADAC_1: 24, | |
154 | + dato: $scope.domicilio.longitud | |
155 | + }); | |
156 | + } | |
144 | 157 | //domicilios de entrega corresponden al 1 |
145 | 158 | focaModalDomicilioService |
146 | 159 | .obtenerUltimoPorNivelPadre(1) |
... | ... | @@ -182,6 +195,39 @@ angular.module('focaModalDomicilio') |
182 | 195 | }); |
183 | 196 | }; |
184 | 197 | |
198 | + $scope.localizarDomicilio = function(localizar) { | |
199 | + var direccion = null; | |
200 | + if(localizar) { | |
201 | + direccion = { | |
202 | + calle: $scope.domicilio.calle, | |
203 | + numero: $scope.domicilio.numeroCalle, | |
204 | + localidad: $scope.domicilio.localidad, | |
205 | + provincia: $scope.domicilio.provincia | |
206 | + }; | |
207 | + } | |
208 | + var modalInstance = $uibModal.open( | |
209 | + { | |
210 | + ariaLabelledBy: 'Buscar domicilio', | |
211 | + templateUrl: 'modal-localizar.html', | |
212 | + controller: 'focaModalLocalizarController', | |
213 | + size: 'lg', | |
214 | + resolve: { | |
215 | + direccion: direccion | |
216 | + } | |
217 | + } | |
218 | + ); | |
219 | + modalInstance.result.then(function(res) { | |
220 | + $scope.domicilio.latitud = res.latitud; | |
221 | + $scope.domicilio.longitud = res.longitud; | |
222 | + }, function() { | |
223 | + //TODO: función llamada cuando cancela el modal | |
224 | + }); | |
225 | + }; | |
226 | + | |
227 | + $scope.next = function(key) { | |
228 | + if(key === 13) $scope.focused++; | |
229 | + }; | |
230 | + | |
185 | 231 | function calcularPages(paginaActual) { |
186 | 232 | var paginas = []; |
187 | 233 | paginas.push(paginaActual); |
src/views/modal-domicilio.html
... | ... | @@ -115,6 +115,14 @@ |
115 | 115 | </table> |
116 | 116 | </div> |
117 | 117 | <form name="formDomicilio" ng-show="ingreso"> |
118 | + <input | |
119 | + type="hidden" | |
120 | + ng-model="domicilio.latitud" | |
121 | + ng-required="true"> | |
122 | + <input | |
123 | + type="hidden" | |
124 | + ng-model="domicilio.longitud" | |
125 | + ng-required="true"> | |
118 | 126 | <div class="row"> |
119 | 127 | <div class="col-4"> |
120 | 128 | <label>Tipo</label> |
... | ... | @@ -134,6 +142,9 @@ |
134 | 142 | ng-model="domicilio.titulo" |
135 | 143 | placeholder="Ingrese título" |
136 | 144 | ng-required="true" |
145 | + ng-keypress="next($event.keyCode)" | |
146 | + ng-focus="focused = 1" | |
147 | + foca-focus="focused == 1" | |
137 | 148 | teclado-virtual |
138 | 149 | /> |
139 | 150 | </div> |
... | ... | @@ -145,6 +156,10 @@ |
145 | 156 | ng-model="domicilio.calle" |
146 | 157 | placeholder="Ingrese calle" |
147 | 158 | ng-required="true" |
159 | + ng-keypress="next($event.keyCode)" | |
160 | + ng-focus="focused = 2" | |
161 | + foca-focus="focused == 2" | |
162 | + teclado-virtual | |
148 | 163 | /> |
149 | 164 | </div> |
150 | 165 | <div class="col-3"> |
... | ... | @@ -155,6 +170,9 @@ |
155 | 170 | ng-model="domicilio.numeroCalle" |
156 | 171 | placeholder="Ingrese Numero" |
157 | 172 | ng-required="true" |
173 | + ng-keypress="next($event.keyCode)" | |
174 | + ng-focus="focused = 3" | |
175 | + foca-focus="focused == 3" | |
158 | 176 | teclado-virtual |
159 | 177 | /> |
160 | 178 | </div> |
... | ... | @@ -166,6 +184,9 @@ |
166 | 184 | ng-model="domicilio.localidad" |
167 | 185 | placeholder="Ingrese localidad" |
168 | 186 | ng-required="true" |
187 | + ng-keypress="next($event.keyCode)" | |
188 | + ng-focus="focused = 4" | |
189 | + foca-focus="focused == 4" | |
169 | 190 | teclado-virtual |
170 | 191 | /> |
171 | 192 | </div> |
... | ... | @@ -177,9 +198,26 @@ |
177 | 198 | ng-model="domicilio.provincia" |
178 | 199 | placeholder="Ingrese provincia" |
179 | 200 | ng-required="true" |
201 | + ng-keypress="next($event.keyCode)" | |
202 | + ng-focus="focused = 5" | |
203 | + foca-focus="focused == 5" | |
204 | + teclado-virtual | |
180 | 205 | /> |
181 | 206 | </div> |
182 | 207 | </div> |
208 | + <div class="row mt-3"> | |
209 | + <div class="col-12"> | |
210 | + <button | |
211 | + type="button" | |
212 | + class="btn btn-primary float-right ml-3" | |
213 | + ng-click="localizarDomicilio()">Buscar</button> | |
214 | + <button | |
215 | + type="button" | |
216 | + class="btn btn-primary float-right" | |
217 | + ng-disabled="!domicilio.calle || !domicilio.numeroCalle || !domicilio.localidad || !domicilio.provincia" | |
218 | + ng-click="localizarDomicilio(true)">Localizar</button> | |
219 | + </div> | |
220 | + </div> | |
183 | 221 | </form> |
184 | 222 | </div> |
185 | 223 | <div class="modal-footer"> |