new field project_of_year
This commit is contained in:
parent
6fdd04306f
commit
86d08db262
3 changed files with 35 additions and 8 deletions
18
input/migrations/0067_project_project_of_year.py
Normal file
18
input/migrations/0067_project_project_of_year.py
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
# Generated by Django 3.2.5 on 2021-10-04 10:38
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('input', '0066_project_finance_id'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='project',
|
||||||
|
name='project_of_year',
|
||||||
|
field=models.CharField(blank=True, max_length=4, null=True),
|
||||||
|
),
|
||||||
|
]
|
|
@ -85,14 +85,21 @@ class Project(Volunteer):
|
||||||
status = models.CharField(max_length=3,choices=(('RUN', 'läuft'),('END','beendet')),default='RUN')
|
status = models.CharField(max_length=3,choices=(('RUN', 'läuft'),('END','beendet')),default='RUN')
|
||||||
persons = models.IntegerField(default=1)
|
persons = models.IntegerField(default=1)
|
||||||
finance_id = models.CharField(max_length=15, null= True, blank=True)
|
finance_id = models.CharField(max_length=15, null= True, blank=True)
|
||||||
|
project_of_year = models.IntegerField(default=0)
|
||||||
|
|
||||||
def save(self,*args,**kwargs):
|
def save(self,*args,**kwargs):
|
||||||
# is there a way to call super().save() only once?
|
# is there a way to call super().save() only once?
|
||||||
print(f'1: {self.id}')
|
#print(f'1: {self.id}')
|
||||||
# super().save(*args,**kwargs)
|
# super().save(*args,**kwargs)
|
||||||
print(f'2: {self.id}')
|
#print(f'2: {self.id}')
|
||||||
self.pid = str(self.account.code) + str(self.pk).zfill(3)
|
self.pid = str(self.account.code) + str(self.pk).zfill(3)
|
||||||
print(f'3: {self.id}')
|
#print(f'3: {self.id}')
|
||||||
|
if not self.project_of_year:
|
||||||
|
# self.finance_id = "1234000"
|
||||||
|
year = self.start.year
|
||||||
|
print(f"startyear: {year}")
|
||||||
|
else:
|
||||||
|
print(f"project_of_year is {self.project_of_year}")
|
||||||
super().save(*args,**kwargs)
|
super().save(*args,**kwargs)
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
from django.test import TestCase, Client
|
from django.test import TestCase, Client
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.contrib.auth.models import User
|
from django.contrib.auth.models import User
|
||||||
|
from datetime import date
|
||||||
|
|
||||||
from .models import HonoraryCertificate, Project, Account
|
from .models import HonoraryCertificate, Project, Account
|
||||||
|
|
||||||
|
@ -43,12 +44,13 @@ class TestWithLogin(TestCase):
|
||||||
response = self.client.get('/intern')
|
response = self.client.get('/intern')
|
||||||
self.assertContains(response,'Übersicht aller Förderangebote')
|
self.assertContains(response,'Übersicht aller Förderangebote')
|
||||||
|
|
||||||
def test_project_pid(self):
|
def test_project_of_year(self):
|
||||||
''' test if the project pid is resettet ad start of year'''
|
''' test if the finance id is resettet ad start of year'''
|
||||||
# self.client.login(username='vladimir', password='reiherzehe')
|
# self.client.login(username='vladimir', password='reiherzehe')
|
||||||
acc = Account.objects.create(code='1234', description='blabla')
|
acc = Account.objects.create(code='1234', description='blabla')
|
||||||
#acc.save()
|
#acc.save()
|
||||||
obj = Project.objects.create(account= acc, name='testproject', start='2022-01-01')
|
startdate = date(2022,1,1)
|
||||||
|
obj = Project.objects.create(account= acc, name='testproject', start=startdate)
|
||||||
#obj.save()
|
#obj.save()
|
||||||
print(f'pid: {obj.finance_id}')
|
print(f'pid: {obj.project_of_year}')
|
||||||
self.assertEqual(obj.finance_id,'1234000')
|
self.assertEqual(obj.project_of_year,1)
|
||||||
|
|
Loading…
Reference in a new issue