From 271c5e3efaf62fe84ba73fd23e52782c10c11c50 Mon Sep 17 00:00:00 2001 From: Gregory Trullemans Date: Fri, 16 Sep 2022 14:47:55 +0200 Subject: [PATCH] Update fields lenght, add URL tests and update billing url --- ..._alter_prestation_total_amount_and_more.py | 33 +++++++++++++++++++ billing/models.py | 8 ++--- billing/tests_urls.py | 22 +++++++++++++ billing/urls.py | 32 ++++++++---------- comptaClub/urls.py | 4 +-- 5 files changed, 74 insertions(+), 25 deletions(-) create mode 100644 billing/migrations/0011_alter_contract_advance_alter_prestation_total_amount_and_more.py create mode 100644 billing/tests_urls.py diff --git a/billing/migrations/0011_alter_contract_advance_alter_prestation_total_amount_and_more.py b/billing/migrations/0011_alter_contract_advance_alter_prestation_total_amount_and_more.py new file mode 100644 index 0000000..62580e2 --- /dev/null +++ b/billing/migrations/0011_alter_contract_advance_alter_prestation_total_amount_and_more.py @@ -0,0 +1,33 @@ +# Generated by Django 4.0.1 on 2022-09-16 12:47 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('billing', '0010_alter_prestation_total_amount_alter_prestation_unit_and_more'), + ] + + operations = [ + migrations.AlterField( + model_name='contract', + name='advance', + field=models.DecimalField(blank=True, decimal_places=2, default=0, max_digits=7, verbose_name='Acompte'), + ), + migrations.AlterField( + model_name='prestation', + name='total_amount', + field=models.DecimalField(blank=True, decimal_places=2, default=0, max_digits=8, verbose_name='Prix'), + ), + migrations.AlterField( + model_name='prestation', + name='unit', + field=models.DecimalField(decimal_places=2, default=1, max_digits=7, verbose_name='Unité'), + ), + migrations.AlterField( + model_name='prestation', + name='unit_price', + field=models.DecimalField(decimal_places=2, default='12,5', max_digits=7, verbose_name='Prix unitaire'), + ), + ] diff --git a/billing/models.py b/billing/models.py index 13fcd61..e891562 100644 --- a/billing/models.py +++ b/billing/models.py @@ -28,7 +28,7 @@ class Contract(models.Model): Client, related_name="contracts", on_delete=models.CASCADE ) advance = models.DecimalField( - max_digits=6, decimal_places=2, blank=True, verbose_name="Acompte", default=0 + max_digits=7, decimal_places=2, blank=True, verbose_name="Acompte", default=0 ) reference = models.CharField( max_length=255, verbose_name="Référence", blank=True, null=True, unique=True @@ -73,13 +73,13 @@ class Prestation(models.Model): date = models.DateField() label = models.CharField(max_length=255, verbose_name="Libellé") unit = models.DecimalField( - max_digits=6, decimal_places=2, verbose_name="Unité", default=1 + max_digits=7, decimal_places=2, verbose_name="Unité", default=1 ) unit_price = models.DecimalField( - max_digits=6, decimal_places=2, verbose_name="Prix unitaire", default="12,5" + max_digits=7, decimal_places=2, verbose_name="Prix unitaire", default="12,5" ) total_amount = models.DecimalField( - max_digits=7, decimal_places=2, blank=True, verbose_name="Prix", default=0 + max_digits=8, decimal_places=2, blank=True, verbose_name="Prix", default=0 ) def __compute_total_amount(self): diff --git a/billing/tests_urls.py b/billing/tests_urls.py new file mode 100644 index 0000000..7f78c39 --- /dev/null +++ b/billing/tests_urls.py @@ -0,0 +1,22 @@ +from django.test import TestCase +from django.urls import resolve + + +class URLTestCase(TestCase): + + def test_billing_url(self): + self.assertEqual(resolve("/billing/client/").view_name, 'client_listing') + self.assertEqual(resolve("/billing/client/lookup/").view_name, 'client_lookup') + self.assertEqual(resolve("/billing/client/create/").view_name, 'client_create') + self.assertEqual(resolve("/billing/client/1/").view_name, 'client_details') + self.assertEqual(resolve("/billing/client/update/1/").view_name, 'client_update') + + self.assertEqual(resolve("/billing/contract/lookup/").view_name, 'contract_lookup') + self.assertEqual(resolve("/billing/contract/create/").view_name, 'contract_create') + self.assertEqual(resolve("/billing/contract/1/").view_name, 'contract_detail') + self.assertEqual(resolve("/billing/contract/update/1/").view_name, 'contract_update') + self.assertEqual(resolve("/billing/contract/pdf/1/").view_name, 'contract_export') + self.assertEqual(resolve("/billing/contract/").view_name, 'contract_listing') + + self.assertEqual(resolve("/billing/prestation/create/").view_name, 'prestation_create') + self.assertEqual(resolve("/billing/prestation/update/1/").view_name, 'prestation_update') diff --git a/billing/urls.py b/billing/urls.py index dab0bea..85ffee9 100644 --- a/billing/urls.py +++ b/billing/urls.py @@ -15,24 +15,20 @@ from .views import ( app_name = "billing" -client_urlpatterns = [ - path(r"lookup/", client_lookup, name="client_lookup"), - path(r"", client_listing, name="client_listing"), - path(r"/", client_details, name="client_details"), - path(r"create/", client_create_or_update, name="client_create"), - path(r"update//", client_create_or_update, name="client_update"), -] +urlpatterns = [ + path(r"client/", client_listing, name="client_listing"), + path(r"client/lookup/", client_lookup, name="client_lookup"), + path(r"client/create/", client_create_or_update, name="client_create"), + path(r"client//", client_details, name="client_details"), + path(r"client/update//", client_create_or_update, name="client_update"), -contract_urlpatterns = [ - path(r"lookup/", contract_lookup, name="contract_lookup"), - path(r"", contract_listing, name="contract_listing"), - path(r"/", contract_detail, name="contract_detail"), - path(r"create/", contract_create_or_update, name="contract_create"), - path(r"update//", contract_create_or_update, name="contract_update"), - path(r"pdf//", contract_export, name="contract_export",), -] + path(r"contract/", contract_listing, name="contract_listing"), + path(r"contract/lookup/", contract_lookup, name="contract_lookup"), + path(r"contract/create/", contract_create_or_update, name="contract_create"), + path(r"contract//", contract_detail, name="contract_detail"), + path(r"contract/update//", contract_create_or_update, name="contract_update"), + path(r"contract/pdf//", contract_export, name="contract_export",), -prestation_urlpatterns = [ - path(r"create/", prestation_create_or_update, name="prestation_create"), - path(r"update//", prestation_create_or_update, name="prestation_update"), + path(r"prestation/create/", prestation_create_or_update, name="prestation_create"), + path(r"prestation/update//", prestation_create_or_update, name="prestation_update"), ] diff --git a/comptaClub/urls.py b/comptaClub/urls.py index e5b79bb..8364e45 100644 --- a/comptaClub/urls.py +++ b/comptaClub/urls.py @@ -39,9 +39,7 @@ urlpatterns = [ ), # Billing - path(r"billing/client/", include(billing.urls.client_urlpatterns)), - path(r"billing/contract/", include(billing.urls.contract_urlpatterns)), - path(r"billing/prestation/", include(billing.urls.prestation_urlpatterns)), + path(r"billing/", include(billing.urls.urlpatterns)), # Home path(r"", year_listing),