feat(view): set price based on product select on first line from purchase.

This commit is contained in:
Mono Mono 2024-08-31 12:04:01 -05:00
parent f1d96467d6
commit 1b1a504bf5
3 changed files with 27 additions and 0 deletions

View File

@ -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,

View File

@ -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 = '';
}
}

View File

@ -32,6 +32,7 @@
</div>
<script src="https://cdn.tailwindcss.com/"></script>
<script src="{% static 'js/buy_general.js' %}"></script>
<script src="{% static 'js/add_line.js' %}"></script>
<script src="{% static 'js/sale_summary.js' %}"></script>
<script src="{% static 'js/calculate_subtotal_line.js' %}"></script>