diff --git a/src/js/controller.js b/src/js/controller.js index f8dccdb..cee0983 100644 --- a/src/js/controller.js +++ b/src/js/controller.js @@ -50,6 +50,13 @@ angular.module('focaModalPuntoDescarga') .then(function() { actualizarTabla(); $scope.ingreso = false; + $scope.puntoDescarga = { + id: 0, + id_cliente: filters.idCliente, + id_da_config_0: filters.idDomicilio, + latitud: -32.89214159952345, + longitud: -68.84572999101856 + }; }); }; @@ -75,36 +82,40 @@ angular.module('focaModalPuntoDescarga') } }; - $scope.agregarArticulo = function(punto) { - var articulo = $scope.articulos[$scope.articuloSeleccionado], + $scope.agregarArticulo = function(punto, key) { + key = (typeof key === 'undefined') ? 13 : key; + + if(key === 13){ + var articulo = $scope.articulos[$scope.articuloSeleccionado], cantidadRestante = articulo.restante - punto.cantidadACargar; - if(cantidadRestante < 0) { - focaModalService.alert('La cantidad a cargar debe ser menor o igual al restante'); - }else if(punto.cantidadACargar <= 0) { - focaModalService.alert('La cantidad a cargar debe ser mayor que cero'); - }else { - punto.cargado += parseInt(punto.cantidadACargar); - articulo.restante = cantidadRestante; - var existeArticulo = punto.articulosAgregados.filter( - function (articuloAAgregar) { - return articuloAAgregar.id === articulo.id; - }); - //Si el articulo ya fue agregado - if(existeArticulo.length) { - //Solo sumo cantidad - var total = parseInt(existeArticulo[0].cantidad) + parseInt(punto.cantidadACargar); - existeArticulo[0].cantidad = total; + if(cantidadRestante < 0) { + focaModalService.alert('La cantidad a cargar debe ser menor o igual al restante'); + }else if(punto.cantidadACargar <= 0) { + focaModalService.alert('La cantidad a cargar debe ser mayor que cero'); }else { - //Agrego el articulo con la cantidad - punto.articulosAgregados.push({ - id: articulo.id, - descripcion: articulo.descripcion, - cantidad: punto.cantidadACargar, - index: $scope.articuloSeleccionado - }); + punto.cargado += parseInt(punto.cantidadACargar); + articulo.restante = cantidadRestante; + var existeArticulo = punto.articulosAgregados.filter( + function (articuloAAgregar) { + return articuloAAgregar.id === articulo.idArticulo; + }); + //Si el articulo ya fue agregado + if(existeArticulo.length) { + //Solo sumo cantidad + var total = parseInt(existeArticulo[0].cantidad) + parseInt(punto.cantidadACargar); + existeArticulo[0].cantidad = total; + }else { + //Agrego el articulo con la cantidad + punto.articulosAgregados.push({ + id: articulo.idArticulo, + descripcion: articulo.descripcion, + cantidad: punto.cantidadACargar, + index: $scope.articuloSeleccionado + }); + } + punto.cantidadACargar = 0; } - punto.cantidadACargar = 0; } }; @@ -156,7 +167,7 @@ angular.module('focaModalPuntoDescarga') //Recorro los articulos cargados en cada punto punto.articulosAgregados.forEach(function(articulo) { var articuloARestar = $scope.articulos.filter(function(art) { - return art.id == articulo.id; + return art.idArticulo == articulo.id; }); articuloARestar[0].restante -= articulo.cantidad; }); diff --git a/src/views/modal-punto-descarga.html b/src/views/modal-punto-descarga.html index 99f341a..5666ce5 100644 --- a/src/views/modal-punto-descarga.html +++ b/src/views/modal-punto-descarga.html @@ -122,6 +122,7 @@ id="inputCantidad" placeholder="A cargar" ng-model="punto.cantidadACargar" + ng-keypress="agregarArticulo(punto, $event.keyCode)" >