diff --git a/api/filters.py b/api/filters.py index c413c1a0ed74531191942869604679ff2d3a3b2b..404d38684af595ef8d2dedce3c2dafa96fedfc08 100644 --- a/api/filters.py +++ b/api/filters.py @@ -29,8 +29,8 @@ class TransactionFilter(django_filters.FilterSet): 'payment_method', 'transaction_status', 'updated_at_date_range', - 'batch_name' - + 'batch_name', + 'end_date' ] model = models.Transaction diff --git a/api/migrations/0003_transaction_batch_end_date.py b/api/migrations/0003_transaction_batch_end_date.py new file mode 100644 index 0000000000000000000000000000000000000000..d9c82bdc64302b81f3fa53375a2e49d113bbe101 --- /dev/null +++ b/api/migrations/0003_transaction_batch_end_date.py @@ -0,0 +1,18 @@ +# Generated by Django 3.0.7 on 2020-10-12 17:33 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('api', '0002_auto_20201012_2239'), + ] + + operations = [ + migrations.AddField( + model_name='transaction', + name='batch_end_date', + field=models.DateField(blank=True, null=True, verbose_name='batch end date'), + ), + ] diff --git a/api/migrations/0004_auto_20201013_0116.py b/api/migrations/0004_auto_20201013_0116.py new file mode 100644 index 0000000000000000000000000000000000000000..f40ed06b273394c05d4fffd7bbd5fd96354c4e01 --- /dev/null +++ b/api/migrations/0004_auto_20201013_0116.py @@ -0,0 +1,22 @@ +# Generated by Django 3.0.7 on 2020-10-12 18:16 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('api', '0003_transaction_batch_end_date'), + ] + + operations = [ + migrations.RemoveField( + model_name='transaction', + name='batch_end_date', + ), + migrations.AddField( + model_name='transaction', + name='end_date', + field=models.DateField(null=True, verbose_name='batch end date'), + ), + ] diff --git a/api/models.py b/api/models.py index 695dbca7a27678c45a0627dec05079d731a26922..5f5db4808dc7747a2e2fff746bde4f7660a6f893 100644 --- a/api/models.py +++ b/api/models.py @@ -315,6 +315,11 @@ class Transaction(db_models.Model): ) batch_name = db_models.CharField(max_length=200, verbose_name=_('batch name')) + + end_date = db_models.DateField( + null=True, + verbose_name=_('end date') + ) class Meta: ordering = ['-updated_at', '-created_at', 'transaction_number', 'id'] diff --git a/api/serializers.py b/api/serializers.py index 057facdce245d1f8063228290eceb2dd943e0b79..f71bf33ebac928837e483c53c25c0fb9aedc81a8 100644 --- a/api/serializers.py +++ b/api/serializers.py @@ -337,7 +337,7 @@ class TransactionSerializer(serializers.ModelSerializer): 'subtotal', 'batch', 'batch_name', - + 'end_date' ] model = models.Transaction read_only_fields = [ @@ -364,8 +364,8 @@ class TransactionSerializer(serializers.ModelSerializer): 'created_at', 'updated_at', 'batch', - 'batch_name' - + 'batch_name', + 'end_date' ] def get_readable_payment_method(self, obj): # pylint: disable=no-self-use diff --git a/api/signals.py b/api/signals.py index 3d211dbde0168e19aaebb009248ef4f59c718426..4400e1a3703d370319f7c27411e71720bf83dca5 100644 --- a/api/signals.py +++ b/api/signals.py @@ -57,11 +57,12 @@ def fill_dependent_transaction_fields(sender, instance, **_kwargs): instance.created_at=datetime.datetime.now() transaction_batch= utils.get_batch_transaction(instance) instance.batch=transaction_batch - if instance.batch is None: instance.batch_name = None + instance.batch_end_date = None else: instance.batch_name = transaction_batch.batch_name + instance.end_date = transaction_batch.end_date @dispatch.receiver(signals.pre_save, sender=models.TransactionItem) diff --git a/api/tests.py b/api/tests.py index 66e7175ea32ba03d9d8aa88a6dd1f17fd9c1bd7e..b0c2c960f2b983a170b00bbb20633396e61981ba 100644 --- a/api/tests.py +++ b/api/tests.py @@ -439,8 +439,8 @@ class CartTest(rest_framework_test.APITestCase): # pylint: disable=too-many-inst http_authorization=self.user_http_authorization ) self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN) - self.assertEqual(transaction.batch.batch_name,batch.batch_name) - self.assertEqual(transaction.batch.end_date,batch.end_date) + self.assertEqual(transaction.batch.batch_name, batch.batch_name) + self.assertEqual(transaction.batch.end_date, batch.end_date) def test_cart_cancel_transaction(self): @@ -1725,7 +1725,7 @@ class ShipmentConfigTest(rest_framework_test.APITestCase): http_authorization=self.superuser_http_authorization ) self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) - + class CategoryTest(rest_framework_test.APITestCase): def setUp(self): self.superuser = models.User.objects.create_superuser(**seeds.SUPERUSER_DATA) diff --git a/api/utils.py b/api/utils.py index e83fc8c421a5d5f946227bb6086ef7ee97cc4c99..9065c7e11e9dc869939a2b48615bc0fa0c7866d6 100644 --- a/api/utils.py +++ b/api/utils.py @@ -129,11 +129,9 @@ def get_batch_transaction(transaction): if( difference_date_next_saturday == -1): batch_end_date= transaction_date+timedelta(days=6) batch_start_date=batch_end_date-timedelta(days=7) - transaction_batch=models.Batch.objects.create('unnamed batch',batch_start_date,batch_end_date,0) + transaction_batch=models.Batch.objects.create('unnamed batch', batch_start_date, batch_end_date, 0) else: batch_end_date=transaction_date+timedelta(days=difference_date_next_saturday) batch_start_date=batch_end_date-timedelta(days=7) - transaction_batch=models.Batch.objects.create('unnamed batch',batch_start_date,batch_end_date,0) - return transaction_batch - - + transaction_batch=models.Batch.objects.create('unnamed batch', batch_start_date, batch_end_date, 0) + return transaction_batch \ No newline at end of file diff --git a/home_industry/settings/local.py b/home_industry/settings/local.py index 81f7d36c5ae15f4f009cb576201985ed93122ab0..fe04e340058d3390e63f74b69cb15e8ed7a6bfc8 100644 --- a/home_industry/settings/local.py +++ b/home_industry/settings/local.py @@ -11,7 +11,7 @@ SECRET_KEY = os.environ['SECRET_KEY'] DEBUG = os.environ.get('DEBUG', True) != 'False' -ALLOWED_HOSTS = ['127.0.0.1', 'localhost'] +ALLOWED_HOSTS = ['127.0.0.1', 'localhost', '10.0.2.2'] # Application definition