Files
web2.0-backend/members/models.py
T
Jan Tuomi 74746fc0de More members overhaul
Relates to #44
2017-05-12 21:19:01 +03:00

50 lines
1.4 KiB
Python

from django.db import models
from django.utils import timezone
from django.utils.translation import ugettext_lazy as _
from datetime import datetime
class BaseMember(models.Model):
'''
Base model for member.
'''
first_name = models.CharField(_("First name"), max_length=127)
last_name = models.CharField(_("Last name"), max_length=127)
email = models.EmailField(_("Email"))
POR = models.CharField(_("Place of residence"), max_length=255) # place of residence
AYY = models.BooleanField(_("AYY"), default=False)
jas = models.BooleanField(_("JAS"), default=False)
class Meta:
abstract = True
class Request(BaseMember):
'''
Member request model represents one member request.
'''
submitted = models.DateTimeField(default=timezone.now)
class Payment(models.Model):
'''
Payment model representing one payment event
'''
date = models.DateTimeField(default=datetime.now())
source = models.CharField(choices=[
('AYY', _('AYY')),
('cash', _('Cash')),
('bank_transfer', _('Bank transfer')),
], max_length=255)
member = models.ForeignKey('Member', on_delete=models.SET_NULL, blank=True, null=True)
class Member(BaseMember):
'''
Member model represets one member on the registry.
'''
created = models.DateTimeField(default=timezone.now)
def __str__(self):
return "{} {}, {}".format(self.last_name, self.first_name, self.email)