erichhasl преди 7 години
родител
ревизия
f00632b5ff
променени са 3 файла, в които са добавени 105 реда и са изтрити 2 реда
  1. +12
    -2
      web_dev/sas_web/meingoethopia/admin.py
  2. +16
    -0
      web_dev/sas_web/meingoethopia/models.py
  3. +77
    -0
      web_dev/sas_web/meingoethopia/templates/meingoethopia/betriebsabrechnung.html

+ 12
- 2
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):


+ 16
- 0
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)


+ 77
- 0
web_dev/sas_web/meingoethopia/templates/meingoethopia/betriebsabrechnung.html Целия файл

@@ -0,0 +1,77 @@
{% load i18n admin_urls static admin_modify %}
<div class="js-inline-admin-formset inline-group" id="{{ inline_admin_formset.formset.prefix }}-group"
data-inline-type="tabular"
data-inline-formset="{{ inline_admin_formset.inline_formset_data }}">
<div class="tabular inline-related {% if forloop.last %}last-related{% endif %}">

{{ inline_admin_formset.formset.management_form }}

<fieldset class="module {{ inline_admin_formset.classes }}">
<h2>{{ inline_admin_formset.opts.verbose_name_plural|capfirst }}</h2>
{{ inline_admin_formset.formset.non_form_errors }}
<table>
<thead><tr>
<th class="original"></th>
{% for field in inline_admin_formset.fields %}
{% if not field.widget.is_hidden %}
<th{% if field.required %} class="required"{% endif %}>{{ field.label|capfirst }}
{% if field.help_text %}&nbsp;<img src="{% static "admin/img/icon-unknown.svg" %}" class="help help-tooltip" width="10" height="10" alt="({{ field.help_text|striptags }})" title="{{ field.help_text|striptags }}" />{% endif %}
</th>
{% endif %}
{% endfor %}
{% if inline_admin_formset.formset.can_delete %}<th>{% trans "Delete?" %}</th>{% endif %}
</tr></thead>

<tbody>
{% for inline_admin_form in inline_admin_formset %}
{% if inline_admin_form.form.non_field_errors %}
<tr><td colspan="{{ inline_admin_form|cell_count }}">{{ inline_admin_form.form.non_field_errors }}</td></tr>
{% endif %}
<tr class="form-row {% cycle "row1" "row2" %} {% if inline_admin_form.original or inline_admin_form.show_url %}has_original{% endif %}{% if forloop.last %} empty-form{% endif %}"
id="{{ inline_admin_formset.formset.prefix }}-{% if not forloop.last %}{{ forloop.counter0 }}{% else %}empty{% endif %}">
<td class="original">
{% if inline_admin_form.original or inline_admin_form.show_url %}<p>
{% if inline_admin_form.original %}
{{ inline_admin_form.original }}
{% if inline_admin_form.model_admin.show_change_link and inline_admin_form.model_admin.has_registered_model %}<a href="{% url inline_admin_form.model_admin.opts|admin_urlname:'change' inline_admin_form.original.pk|admin_urlquote %}" class="inlinechangelink">{% trans "Change" %}</a>{% endif %}
{% endif %}
{% if inline_admin_form.show_url %}<a href="{{ inline_admin_form.absolute_url }}">{% trans "View on site" %}</a>{% endif %}
</p>{% endif %}
{% if inline_admin_form.needs_explicit_pk_field %}{{ inline_admin_form.pk_field.field }}{% endif %}
{{ inline_admin_form.fk_field.field }}
{% spaceless %}
{% for fieldset in inline_admin_form %}
{% for line in fieldset %}
{% for field in line %}
{% if field.field.is_hidden %} {{ field.field }} {% endif %}
{% endfor %}
{% endfor %}
{% endfor %}
{% endspaceless %}
</td>
{% for fieldset in inline_admin_form %}
{% for line in fieldset %}
{% for field in line %}
{% if not field.field.is_hidden %}
<td{% if field.field.name %} class="field-{{ field.field.name }}"{% endif %}>
{% if field.is_readonly %}
<p>{{ field.contents }}</p>
{% else %}
{{ field.field.errors.as_ul }}
{{ field.field }}
{% endif %}
</td>
{% endif %}
{% endfor %}
{% endfor %}
{% endfor %}
{% if inline_admin_formset.formset.can_delete %}
<td class="delete">{% if inline_admin_form.original %}{{ inline_admin_form.deletion_field.field }}{% endif %}</td>
{% endif %}
</tr>
{% endfor %}
</tbody>
</table>
</fieldset>
</div>
</div>

Loading…
Отказ
Запис