From cd2f24f5f8a090bdcf19e1c6a7eb09fe7d06e9ba Mon Sep 17 00:00:00 2001 From: efernandez Date: Wed, 31 Oct 2018 17:50:47 -0300 Subject: [PATCH] precio editable cuando precios-condiciones ingresa plazo manual --- src/js/controller.js | 33 ++++++++++++++++++++------------- src/views/nota-pedido.html | 43 ++++++++++++++++++++++++++++++++++--------- 2 files changed, 54 insertions(+), 22 deletions(-) diff --git a/src/js/controller.js b/src/js/controller.js index ff9a226..0e098cb 100644 --- a/src/js/controller.js +++ b/src/js/controller.js @@ -41,7 +41,7 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', $scope.comprobante = Math.round(Math.random() * 1000000); $scope.articulosTabla = []; - var idLista; + $scope.idLista = undefined; var notaPedidoTemp = crearNotaPedidoService.getNotaPedido(); crearNotaPedidoService.getPrecioCondicion().then( function(res) { @@ -53,7 +53,7 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', $scope.notaPedido = notaPedidoTemp; $scope.notaPedido.flete = ($scope.notaPedido.flete).toString(); $scope.notaPedido.bomba = ($scope.notaPedido.bomba).toString(); - idLista = $scope.notaPedido.precioCondicion; + $scope.idLista = $scope.notaPedido.precioCondicion; crearNotaPedidoService .getArticulosByIdNotaPedido($scope.notaPedido.id).then( function(res) { @@ -71,7 +71,7 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', $scope.notaPedido.fechaCarga = new Date(); $scope.notaPedido.bomba = '0'; $scope.notaPedido.flete = '0'; - idLista = undefined; + $scope.idLista = undefined; } //TO DO - FUNCIONES PARA MULTIPLES DOMICILIOS NO IMPLEMENTADAS EN ESTA DEMO // $scope.addNewDom = function() { @@ -121,7 +121,8 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', } var articulosNotaPedido = $scope.articulosTabla; for(var i = 0; i < articulosNotaPedido.length; i++) { - delete articulosNotaPedido[i].edit; + delete articulosNotaPedido[i].editCantidad; + delete articulosNotaPedido[i].editPrecio; articulosNotaPedido[i].idNotaPedido = data.data.id; crearNotaPedidoService .crearArticulosParaNotaPedido(articulosNotaPedido[i]); @@ -141,7 +142,7 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', }; $scope.seleccionarArticulo = function() { - if (idLista === undefined) { + if ($scope.idLista === undefined) { focaModalService.alert( 'Primero seleccione una lista de precio y condicion'); return; @@ -151,7 +152,7 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', ariaLabelledBy: 'Busqueda de Productos', templateUrl: 'modal-busqueda-productos.html', controller: 'modalBusquedaProductosCtrl', - resolve: { idLista: function() { return idLista; } }, + resolve: { idLista: function() { return $scope.idLista; } }, size: 'lg' } ); @@ -166,9 +167,10 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', descripcion: producto.descripcion, item: $scope.articulosTabla.length + 1, nombre: producto.descripcion, - precio: producto.precio.toFixed(2), + precio: parseFloat(producto.precio.toFixed(2)), costoUnitario: producto.costo, - edit: false + editCantidad: false, + editPrecio: false }; $scope.articuloACargar = newArt; $scope.cargando = false; @@ -313,13 +315,13 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', var plazosConcat = ''; if(!Array.isArray(precioCondicion)) { $scope.plazosPagos = precioCondicion.plazoPago; - idLista = precioCondicion.idListaPrecio; + $scope.idLista = precioCondicion.idListaPrecio; for(var i = 0; i < precioCondicion.plazoPago.length; i++) { plazosConcat += precioCondicion.plazoPago[i].dias + ' '; } cabecera = precioCondicion.nombre + ' ' + plazosConcat.trim(); } else { //Cuando se ingresan los plazos manualmente - idLista = -1; //-1, el modal productos busca todos los productos + $scope.idLista = -1; //-1, el modal productos busca todos los productos $scope.plazosPagos = precioCondicion; for(var j = 0; j < precioCondicion.length; j++) { plazosConcat += precioCondicion[j].dias + ' '; @@ -422,12 +424,17 @@ angular.module('focaCrearNotaPedido') .controller('notaPedidoCtrl', focaModalService.alert('El valor debe ser al menos 1'); return; } - articulo.edit = false; + articulo.editCantidad = false; + articulo.editPrecio = false; } }; - $scope.cambioEdit = function(articulo) { - articulo.edit = true; + $scope.cambioEdit = function(articulo, propiedad) { + if(propiedad === 'cantidad') { + articulo.editCantidad = true; + } else if(propiedad === 'precio') { + articulo.editPrecio = true; + } }; $scope.limpiarFlete = function() { diff --git a/src/views/nota-pedido.html b/src/views/nota-pedido.html index 18e16fd..f68af15 100644 --- a/src/views/nota-pedido.html +++ b/src/views/nota-pedido.html @@ -125,28 +125,43 @@ class="col-4" ng-bind="articulo.descripcion" > - + - + + + + + @@ -196,8 +211,18 @@ +