diff --git a/tienda_ilusion/don_confiao/models.py b/tienda_ilusion/don_confiao/models.py index 911f943..ada1cdc 100644 --- a/tienda_ilusion/don_confiao/models.py +++ b/tienda_ilusion/don_confiao/models.py @@ -70,24 +70,6 @@ class ReconciliationJar(models.Model): cash_taken = models.DecimalField(max_digits=9, decimal_places=2) cash_discrepancy = models.DecimalField(max_digits=9, decimal_places=2) - def clean(self): - if not self.is_valid: - payments = Payment.get_reconciliation_jar_summary().payments - else: - payments = self.payment_set.all() - - payments_amount = Decimal(sum([p.amount for p in payments])) - reconciliation_ammount = Decimal(sum([ - self.cash_taken, - self.cash_discrepancy, - ])) - - equal_ammounts = reconciliation_ammount.compare(payments_amount) == Decimal('0') - if not equal_ammounts: - raise ValidationError( - {"cash_taken": _("The taken ammount has discrepancy.")} - ) - def add_payments(self, payments): for payment in payments: self.payment_set.add(payment) diff --git a/tienda_ilusion/don_confiao/templates/don_confiao/menu.html b/tienda_ilusion/don_confiao/templates/don_confiao/menu.html index b5b21d7..7b60ddc 100644 --- a/tienda_ilusion/don_confiao/templates/don_confiao/menu.html +++ b/tienda_ilusion/don_confiao/templates/don_confiao/menu.html @@ -10,7 +10,6 @@
  • Productos
  • Importar Productos
  • Importar Terceros
  • -
  • Cuadrar tarro
  • Don Confiao - Tienda la Ilusión

    diff --git a/tienda_ilusion/don_confiao/templates/don_confiao/reconciliate_jar.html b/tienda_ilusion/don_confiao/templates/don_confiao/reconciliate_jar.html deleted file mode 100644 index 74a47d3..0000000 --- a/tienda_ilusion/don_confiao/templates/don_confiao/reconciliate_jar.html +++ /dev/null @@ -1,34 +0,0 @@ -{% extends 'don_confiao/base.html' %} -{% block content %} - -{% if summary.total %} -
    -

    Pagos No reconciliados

    - - - - - - {% for payment in summary.payments %} - - {% endfor %} - - - - -
    FechaMonto
    {{ payment.date_time }}{{ payment.amount }}
    Total{{ summary.total }}
    -
    -
    - - {% csrf_token %} - {{ form.as_table }} -
    -
    -
    -{% else %} -
    -

    No hay pagos registrados.

    -
    -{% endif %} - -{% endblock %} diff --git a/tienda_ilusion/don_confiao/tests/test_billing.py b/tienda_ilusion/don_confiao/tests/test_billing.py deleted file mode 100644 index 69f6047..0000000 --- a/tienda_ilusion/don_confiao/tests/test_billing.py +++ /dev/null @@ -1,88 +0,0 @@ -from django.test import TestCase -from django.core.exceptions import ValidationError -from ..models import Payment, ReconciliationJar - - -class TestBilling(TestCase): - - def test_reconciliation_jar_summary(self): - cash_payment1, cash_payment2 = self._create_two_cash_payments() - jar_summary = Payment.get_reconciliation_jar_summary() - self.assertEqual(164000, jar_summary.total) - self.assertSetEqual( - {cash_payment1, cash_payment2}, - set(jar_summary.payments) - ) - - def test_reconciliation_jar_summary_use_only_cash(self): - cash_payment1, cash_payment2 = self._create_two_cash_payments() - - confiar_payment = Payment() - confiar_payment.date_time = '2024-07-07 16:00:00' - confiar_payment.type_payment = 'CONFIAR' - confiar_payment.amount = 85000 - confiar_payment.save() - - bancolombia_payment = Payment() - bancolombia_payment.date_time = '2024-07-07 12:30:00' - bancolombia_payment.type_payment = 'BANCOLOMBIA' - bancolombia_payment.amount = 12000 - bancolombia_payment.save() - - jar_summary = Payment.get_reconciliation_jar_summary() - self.assertEqual(164000, jar_summary.total) - self.assertSetEqual( - {cash_payment1, cash_payment2}, - set(jar_summary.payments) - ) - - def test_fail_validate_reconciliation_jar_with_discrepancy_values(self): - cash_payment1, cash_payment2 = self._create_two_cash_payments() - - jar_summary = Payment.get_reconciliation_jar_summary() - - reconciliation_jar = ReconciliationJar() - reconciliation_jar.date_time = '2024-07-13 13:02:00' - reconciliation_jar.description = "test reconcialiation jar" - reconciliation_jar.reconcilier = 'Jorge' - reconciliation_jar.cash_float = 0 - reconciliation_jar.cash_taken = 0 - reconciliation_jar.cash_discrepancy = 0 - reconciliation_jar.save() - - reconciliation_jar.add_payments(jar_summary.payments) - with self.assertRaises(ValidationError): - reconciliation_jar.clean() - - def test_validate_reconciliation_jar_with_cash_float(self): - cash_payment1, cash_payment2 = self._create_two_cash_payments() - jar_summary = Payment.get_reconciliation_jar_summary() - - reconciliation_jar = ReconciliationJar() - reconciliation_jar.date_time = '2024-07-13 13:02:00' - reconciliation_jar.description = "test reconcialiation jar" - reconciliation_jar.reconcilier = 'Jorge' - reconciliation_jar.cash_taken = jar_summary.total - reconciliation_jar.cash_discrepancy = 0 - reconciliation_jar.save() - - reconciliation_jar.add_payments(jar_summary.payments) - reconciliation_jar.clean() - reconciliation_jar.save() - self.assertTrue(reconciliation_jar.is_valid) - - def _create_two_cash_payments(self): - cash_payment1 = Payment() - cash_payment1.date_time = '2024-07-07 12:00:00' - cash_payment1.type_payment = 'CASH' - cash_payment1.amount = 132000 - cash_payment1.description = 'Saldo en compra' - cash_payment1.save() - - cash_payment2 = Payment() - cash_payment2.date_time = '2024-07-07 13:05:00' - cash_payment2.type_payment = 'CASH' - cash_payment2.amount = 32000 - cash_payment2.save() - - return [cash_payment1, cash_payment2] diff --git a/tienda_ilusion/don_confiao/tests/test_reconciliation_jar_client.py b/tienda_ilusion/don_confiao/tests/test_reconciliation_jar_client.py deleted file mode 100644 index 5deb698..0000000 --- a/tienda_ilusion/don_confiao/tests/test_reconciliation_jar_client.py +++ /dev/null @@ -1,44 +0,0 @@ -from django.test import Client, TestCase -from django.contrib.auth.models import AnonymousUser, User - -from ..models import Payment - - -class TestReconciliationJarClient(TestCase): - def setUp(self): - self.client = Client() - - def test_get_summary_info_on_view(self): - self._generate_two_cash_payments() - response = self.client.get("/don_confiao/cuadrar_tarro") - self.assertEqual(response.status_code, 200) - self.assertEqual(response.context["summary"].total, 160000) - self.assertIn('160000', response.content.decode('utf-8')) - - def test_create_reconciliation_jar(self): - self._generate_two_cash_payments() - response = self.client.post( - "/don_confiao/cuadrar_tarro", - { - "date_time": "2024-07-20T00:00", - "description": "Cuadre de prueba", - "reconcilier": "Jorge", - "cash_taken": "100000", - "cash_discrepancy": "60000", - } - ) - self.assertRedirects(response, '/don_confiao/cuadres') - - def _generate_two_cash_payments(self): - cash_payment1 = Payment() - cash_payment1.date_time = '2024-07-07 12:00:00' - cash_payment1.type_payment = 'CASH' - cash_payment1.amount = 130000 - cash_payment1.description = 'Saldo en compra' - cash_payment1.save() - - cash_payment2 = Payment() - cash_payment2.date_time = '2024-07-07 13:05:00' - cash_payment2.type_payment = 'CASH' - cash_payment2.amount = 30000 - cash_payment2.save() diff --git a/tienda_ilusion/don_confiao/urls.py b/tienda_ilusion/don_confiao/urls.py index 997f3f0..c874c4e 100644 --- a/tienda_ilusion/don_confiao/urls.py +++ b/tienda_ilusion/don_confiao/urls.py @@ -24,7 +24,6 @@ urlpatterns = [ views.exportar_ventas_para_tryton, name="exportar_ventas_para_tryton"), path("cuadrar_tarro", views.reconciliate_jar, name="reconciliate_jar"), - path("cuadres", views.reconciliate_jar, name="reconciliations"), path("resumen_compra/", views.purchase_summary, name="purchase_summary"), path("resumen_compra_json/", views.purchase_json_summary, name="purchase_json_summary"), path("payment_methods/all/select_format", views.payment_methods_to_select, name="payment_methods_to_select"), diff --git a/tienda_ilusion/don_confiao/views.py b/tienda_ilusion/don_confiao/views.py index ca494f6..7fd7329 100644 --- a/tienda_ilusion/don_confiao/views.py +++ b/tienda_ilusion/don_confiao/views.py @@ -10,7 +10,6 @@ from .forms import ( ImportCustomersForm, PurchaseForm, SaleLineFormSet, - ReconciliationJarForm, PurchaseSummaryForm) import csv @@ -110,22 +109,7 @@ def import_customers(request): ) def reconciliate_jar(request): - summary = Payment.get_reconciliation_jar_summary() - if request.method == 'POST': - form = ReconciliationJarForm(request.POST) - if form.is_valid(): - reconciliation = form.save() - reconciliation.add_payments(summary.payments) - reconciliation.clean() - reconciliation.save() - return HttpResponseRedirect('cuadres') - else: - form = ReconciliationJarForm() - return render( - request, - "don_confiao/reconciliate_jar.html", - {'summary': summary, 'form': form} - ) + pass def reconciliations(request):