diff --git a/tienda_ilusion/don_confiao/models.py b/tienda_ilusion/don_confiao/models.py index eb7d0a9..1c50852 100644 --- a/tienda_ilusion/don_confiao/models.py +++ b/tienda_ilusion/don_confiao/models.py @@ -43,6 +43,7 @@ class Product(models.Model): all_products = cls.objects.all() for product in all_products: rproduct = { + "id": product.id, "name": product.name, "price_list": product.price, "uom": product.measuring_unit, diff --git a/tienda_ilusion/don_confiao/static/js/buy_general.js b/tienda_ilusion/don_confiao/static/js/buy_general.js new file mode 100644 index 0000000..b910945 --- /dev/null +++ b/tienda_ilusion/don_confiao/static/js/buy_general.js @@ -0,0 +1,25 @@ +setPriceListeners(); + +function setPriceListeners() { + document.querySelectorAll('select[id^="id_saleline_set-"][id$="-product"]').forEach((input) => { + console.log('setPriceListenersForeach'); + console.log(input.id); + input.addEventListener('change', (e) => setLinePrice(e)); + }); +} + +function setLinePrice(e) { + console.log('setLinePrice'); + let input = e.target; + const idLine = input.id.split('-')[1]; + const productId = input.value; + const priceInput = document.getElementById(`id_saleline_set-${idLine}-unit_price`); + + const product = listProducts.find((product) => product.id == productId); + if (product) { + priceInput.value = product.price_list; + } else { + priceInput.value = ''; + } +} + diff --git a/tienda_ilusion/don_confiao/templates/don_confiao/purchase.html b/tienda_ilusion/don_confiao/templates/don_confiao/purchase.html index 0a23b0e..8fa028d 100644 --- a/tienda_ilusion/don_confiao/templates/don_confiao/purchase.html +++ b/tienda_ilusion/don_confiao/templates/don_confiao/purchase.html @@ -32,6 +32,7 @@ +