#69 feat(ReconciliationJar): add purchases to list.

This commit is contained in:
2024-12-13 17:21:29 -05:00
parent f0201a86b2
commit ef721a6b53
2 changed files with 24 additions and 3 deletions

View File

@@ -113,14 +113,25 @@ def reconciliate_jar(request):
date_format = '%Y-%m-%dT%H:%M'
if request.method == 'POST':
content = request.POST.dict()
content['purchases'] = json.loads(content.get('purchases'))#machete por error al codificar el json en el test
reconciliation = ReconciliationJar()
reconciliation.date_time = content.get('date_time')
reconciliation.cashman = content.get('cashman')
reconciliation.total_cash_purchases = float(content.get('total_cash_purchases'))
reconciliation.cash_taken = float(content.get('cash_taken'))
reconciliation.cash_discrepancy = float(content.get('cash_discrepancy'))
purchases = Sale.objects.filter(pk__in=content.get('purchases'))
if reconciliation.total_cash_purchases != sum(p.get_total() for p in purchases):
return JsonResponse(
{'error': 'total_cash_purchases not equal to sum of all purchases.'},
status=400
)
reconciliation.clean()
reconciliation.save()
for purchase in purchases:
purchase.reconciliation = reconciliation
purchase.clean()
purchase.save()
return JsonResponse(
{'id': reconciliation.id},
safe=False