From 62825d159a7f8d2da222a5e432871bf35de26de6 Mon Sep 17 00:00:00 2001 From: Dmitriy Shesterkin Date: Fri, 9 Jun 2017 01:05:18 +0300 Subject: [PATCH] add calculate methot for nds --- src/docs/consts.py | 9 +++++ .../migrations/0004_auto_20170609_0104.py | 34 +++++++++++++++++++ src/docs/models/base_models.py | 7 +++- 3 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 src/docs/migrations/0004_auto_20170609_0104.py diff --git a/src/docs/consts.py b/src/docs/consts.py index cb3564a..9a5e13d 100644 --- a/src/docs/consts.py +++ b/src/docs/consts.py @@ -36,6 +36,15 @@ NDS_VALUE_NUMERIC = { NDS_VALUE_18: Decimal('18.00'), } +NDS_IN_AMOUNT = 0 +NDS_OTHER_AMOUNT = 1 + + +NDS_METHOD_CHOICES = ( + (NDS_IN_AMOUNT, 'В сумме'), + (NDS_OTHER_AMOUNT, 'Сверх суммы'), +) + # ----------------------------------------------------------- для счетов-фактур # валюты diff --git a/src/docs/migrations/0004_auto_20170609_0104.py b/src/docs/migrations/0004_auto_20170609_0104.py new file mode 100644 index 0000000..be30f1c --- /dev/null +++ b/src/docs/migrations/0004_auto_20170609_0104.py @@ -0,0 +1,34 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('docs', '0003_auto_20170520_0021'), + ] + + operations = [ + migrations.AddField( + model_name='aktrabot', + name='nds_method', + field=models.PositiveSmallIntegerField(verbose_name='Метод расчета НДС', default=0, choices=[(0, 'В сумме'), (1, 'Сверх суммы')]), + ), + migrations.AddField( + model_name='faktura', + name='nds_method', + field=models.PositiveSmallIntegerField(verbose_name='Метод расчета НДС', default=0, choices=[(0, 'В сумме'), (1, 'Сверх суммы')]), + ), + migrations.AddField( + model_name='invoice', + name='nds_method', + field=models.PositiveSmallIntegerField(verbose_name='Метод расчета НДС', default=0, choices=[(0, 'В сумме'), (1, 'Сверх суммы')]), + ), + migrations.AddField( + model_name='nakladn', + name='nds_method', + field=models.PositiveSmallIntegerField(verbose_name='Метод расчета НДС', default=0, choices=[(0, 'В сумме'), (1, 'Сверх суммы')]), + ), + ] diff --git a/src/docs/models/base_models.py b/src/docs/models/base_models.py index c561f12..56ccda6 100644 --- a/src/docs/models/base_models.py +++ b/src/docs/models/base_models.py @@ -50,7 +50,12 @@ class BaseNdsModel(BaseModel): """Расширение абстрактной модели бух.формы - НДС. Доп. поля под тип и ставку НДС. """ - nds_value = models.PositiveSmallIntegerField(u'Ставка НДС', choices=consts.NDS_VALUE_CHOICES, default=consts.NDS_VALUE_0) + nds_value = models.PositiveSmallIntegerField(u'Ставка НДС', + choices=consts.NDS_VALUE_CHOICES, + default=consts.NDS_VALUE_0) + nds_method = models.PositiveSmallIntegerField('Метод расчета НДС', + choices=consts.NDS_METHOD_CHOICES, + default=consts.NDS_IN_AMOUNT) class Meta(BaseModel.Meta): abstract = True