Organizer-level bank import

This commit is contained in:
Raphael Michel
2017-06-19 13:43:13 +02:00
parent ea2557274f
commit d446191cf4
14 changed files with 444 additions and 94 deletions

View File

@@ -16,10 +16,18 @@ class BankImportJob(models.Model):
(STATE_COMPLETED, 'completed'),
)
event = models.ForeignKey('pretixbase.Event')
event = models.ForeignKey('pretixbase.Event', null=True)
organizer = models.ForeignKey('pretixbase.Organizer', null=True)
created = models.DateTimeField(auto_now_add=True)
state = models.CharField(max_length=32, choices=STATES, default=STATE_PENDING)
@property
def owner_kwargs(self):
if self.event:
return {'event': self.event}
else:
return {'organizer': self.organizer}
class BankTransaction(models.Model):
STATE_UNCHECKED = 'imported'
@@ -40,7 +48,8 @@ class BankTransaction(models.Model):
(STATE_DISCARDED, 'manually discarded'),
)
event = models.ForeignKey('pretixbase.Event')
event = models.ForeignKey('pretixbase.Event', null=True)
organizer = models.ForeignKey('pretixbase.Organizer', null=True)
import_job = models.ForeignKey('BankImportJob', related_name='transactions')
state = models.CharField(max_length=32, choices=STATES, default=STATE_UNCHECKED)
message = models.TextField()
@@ -66,4 +75,4 @@ class BankTransaction(models.Model):
self.reference = ""
class Meta:
unique_together = ('event', 'checksum')
unique_together = ('event', 'organizer', 'checksum')