diff --git a/web_dev/sas_web/meingoethopia/admin.py b/web_dev/sas_web/meingoethopia/admin.py index fc5fd0e..c7ea580 100644 --- a/web_dev/sas_web/meingoethopia/admin.py +++ b/web_dev/sas_web/meingoethopia/admin.py @@ -1,6 +1,6 @@ from django.contrib import admin from .models import Betrieb, Partei, PresidentCandidate, Question, Angestellter,\ - Aufsicht, Betriebsaufsicht + Aufsicht, Betriebsaufsicht, Betriebsabrechnung from startpage.models import Banned from django.contrib.admin import helpers from django.shortcuts import render @@ -95,6 +95,16 @@ class AufsichtInline(admin.TabularInline): } +class BetriebsabrechnungInline(admin.TabularInline): + model = Betriebsabrechnung + extra = 0 + formfield_overrides = { + models.ManyToManyField: {'widget': forms.CheckboxSelectMultiple}, + models.ForeignKey: {'widget': apply_select2(forms.Select)} + } + template = "meingoethopia/betriebsabrechnung.html" + + # Register your models here. class BetriebAdmin(admin.ModelAdmin): list_display = ('name', 'manager', 'show_aufsichten', 'raum', @@ -108,7 +118,7 @@ class BetriebAdmin(admin.ModelAdmin): } actions = [ban_ip, create_overview] filter_horizontal = ('angestellte',) - inlines = [AufsichtInline] + inlines = [AufsichtInline, BetriebsabrechnungInline] class ParteiAdmin(admin.ModelAdmin): diff --git a/web_dev/sas_web/meingoethopia/models.py b/web_dev/sas_web/meingoethopia/models.py index 7bcbb3d..998f12d 100644 --- a/web_dev/sas_web/meingoethopia/models.py +++ b/web_dev/sas_web/meingoethopia/models.py @@ -62,6 +62,8 @@ class Betrieb(models.Model): raum = models.IntegerField('Raum', default=102) aufsicht = models.CharField('Aufsicht', max_length=100, default='keine') kredit = models.IntegerField('Kreditwunsch', default=0) + kredit_ausgezahlt = models.BooleanField('Kredit ausgezahlt', default=False) + kredit_bezahlt = models.BooleanField('Kredit zurückgezahlt', default=False) business_idea = models.TextField('Idee') ip_address = models.CharField('IP Adresse', max_length=50, blank=True) confirmed = models.BooleanField('Bestätigt', default=False) @@ -123,6 +125,20 @@ class Betriebsaufsicht(models.Model): return self.aufsicht.name +class Betriebsabrechnung(models.Model): + betrieb = models.ForeignKey(Betrieb) + datum = models.DateField('Datum') + umsatz = models.IntegerField('Umsatz') + lohnkosten = models.IntegerField('Lohnkosten') + ausgaben = models.IntegerField('Ausgaben') + gewinn = models.IntegerField('Gewinn') + steuer = models.IntegerField('Steuer') + erledigt = models.BooleanField('Erledigt') + + def __str__(self): + return self.betrieb.name + " " + str(self.datum) + + class Partei(models.Model): name = models.CharField('Name', max_length=100) abbreviation = models.CharField('Abkürzung', max_length=5) diff --git a/web_dev/sas_web/meingoethopia/templates/meingoethopia/betriebsabrechnung.html b/web_dev/sas_web/meingoethopia/templates/meingoethopia/betriebsabrechnung.html new file mode 100644 index 0000000..03faeb3 --- /dev/null +++ b/web_dev/sas_web/meingoethopia/templates/meingoethopia/betriebsabrechnung.html @@ -0,0 +1,77 @@ +{% load i18n admin_urls static admin_modify %} +