This commit is contained in:
gitea 2025-01-21 12:09:22 +00:00
parent 8e6e87a098
commit 43e1c7640f

View File

@ -3099,13 +3099,16 @@ def bill_mark_as_paid(request,pk):
def bill_create(request):
dealer = get_user_type(request)
entity = dealer.entity
if request.method == "POST":
data = json.loads(request.body)
vendor_id = data.get("vendor")
terms = data.get("terms")
vendor = entity.get_vendors().filter(pk=vendor_id).first()
items = data.get("item", [])
quantities = data.get("quantity", [])
if not all([items, quantities]):
return JsonResponse(
{"status": "error", "message": "Items and Quantities are required"},
@ -3121,6 +3124,7 @@ def bill_create(request):
return JsonResponse(
{"status": "error", "message": "Quantity must be greater than zero"}
)
bill = entity.create_bill(vendor_model=vendor, terms=terms)
if isinstance(items, list):
item_quantity_map = {}
@ -3131,6 +3135,7 @@ def bill_create(request):
item_quantity_map[item] = int(quantity)
item_list = list(item_quantity_map.keys())
quantity_list = list(item_quantity_map.values())
items_list = [
{"item_id": item_list[i], "quantity": quantity_list[i]}
for i in range(len(item_list))
@ -3148,6 +3153,7 @@ def bill_create(request):
"total_amount": car.finances.cost_price * quantity,
}
)
bill_itemtxs = {
item.get("item_number"): {
"unit_cost": item.get("unit_cost"),
@ -3166,11 +3172,13 @@ def bill_create(request):
"total_amount": instance.finances.cost_price * Decimal(quantities),
}
}
bill_itemtxs = bill.migrate_itemtxs(
itemtxs=bill_itemtxs,
commit=True,
operation=BillModel.ITEMIZE_APPEND,
)
url = reverse("bill_detail", kwargs={"pk": bill.pk})
return JsonResponse(
{
@ -3179,6 +3187,7 @@ def bill_create(request):
"url": f"{url}",
}
)
form = forms.BillModelCreateForm(entity_model=entity)
form.initial.update(
{
@ -3204,6 +3213,7 @@ def bill_create(request):
for x in car_list
],
}
return render(request, "ledger/bills/bill_form.html", context)
def BillDeleteView(request, pk):