Merge branch 'development'

This commit is contained in:
2025-10-02 14:26:57 +02:00
6 changed files with 41 additions and 16 deletions

Binary file not shown.

View File

@@ -1,11 +1,11 @@
from django.shortcuts import render
from abschnitte.utils import render_textabschnitte
from standards.models import Standard, VorgabeLangtext, VorgabeKurztext, Geltungsbereich
from standards.models import Dokument, VorgabeLangtext, VorgabeKurztext, Geltungsbereich
from itertools import groupby
import datetime
def startseite(request):
standards=list(Standard.objects.all())
standards=list(Dokument.objects.all())
return render(request, 'startseite.html', {"standards":standards,})
def search(request):

View File

@@ -99,8 +99,8 @@ class PersonAdmin(admin.ModelAdmin):
@admin.register(Standard)
class StandardAdmin(NestedModelAdmin):
@admin.register(Dokument)
class DokumentAdmin(NestedModelAdmin):
actions_on_top=True
inlines = [EinleitungInline,GeltungsbereichInline,VorgabeInline]
#filter_horizontal=['autoren','pruefende']
@@ -118,7 +118,7 @@ class StandardAdmin(NestedModelAdmin):
#admin.site.register(Stichwort)
admin.site.register(Checklistenfrage)
#admin.site.register(Dokumententyp)
admin.site.register(Dokumententyp)
#admin.site.register(Person)
admin.site.register(Thema)
#admin.site.register(Referenz, DraggableM§PTTAdmin)

View File

@@ -0,0 +1,21 @@
# Generated by Django 5.2.5 on 2025-10-02 12:13
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('standards', '0005_vorgabe_relevanz'),
]
operations = [
migrations.RenameModel(
old_name='Standard',
new_name='Dokument',
),
migrations.AlterModelOptions(
name='dokument',
options={'verbose_name': 'Dokument', 'verbose_name_plural': 'Dokumente'},
),
]

View File

@@ -13,6 +13,10 @@ class Dokumententyp(models.Model):
def __str__(self):
return self.name
class Meta:
verbose_name="Dokumententyp"
verbose_name_plural="Dokumententypen"
class Person(models.Model):
name = models.CharField(max_length=100, primary_key=True)
@@ -33,7 +37,7 @@ class Thema(models.Model):
verbose_name_plural="Themen"
class Standard(models.Model):
class Dokument(models.Model):
nummer = models.CharField(max_length=50, primary_key=True)
dokumententyp = models.ForeignKey(Dokumententyp, on_delete=models.PROTECT)
name = models.CharField(max_length=255)
@@ -48,12 +52,12 @@ class Standard(models.Model):
return f"{self.nummer} {self.name}"
class Meta:
verbose_name_plural="Standards"
verbose_name="Standard"
verbose_name_plural="Dokumente"
verbose_name="Dokument"
class Vorgabe(models.Model):
nummer = models.IntegerField()
dokument = models.ForeignKey(Standard, on_delete=models.CASCADE, related_name='vorgaben')
dokument = models.ForeignKey(Dokument, on_delete=models.CASCADE, related_name='vorgaben')
thema = models.ForeignKey(Thema, on_delete=models.PROTECT)
titel = models.CharField(max_length=255)
referenzen = models.ManyToManyField(Referenz, blank=True)
@@ -97,13 +101,13 @@ class VorgabeKurztext(Textabschnitt):
verbose_name="Kurztext-Abschnitt"
class Geltungsbereich(Textabschnitt):
geltungsbereich=models.ForeignKey(Standard,on_delete=models.CASCADE)
geltungsbereich=models.ForeignKey(Dokument,on_delete=models.CASCADE)
class Meta:
verbose_name_plural="Geltungsbereich"
verbose_name="Geltungsbereichs-Abschnitt"
class Einleitung(Textabschnitt):
einleitung=models.ForeignKey(Standard,on_delete=models.CASCADE)
einleitung=models.ForeignKey(Dokument,on_delete=models.CASCADE)
class Meta:
verbose_name_plural="Einleitung"
verbose_name="Einleitungs-Abschnitt"
@@ -119,7 +123,7 @@ class Checklistenfrage(models.Model):
verbose_name_plural="Fragen für Checkliste"
class Changelog(models.Model):
dokument = models.ForeignKey(Standard, on_delete=models.CASCADE, related_name='changelog')
dokument = models.ForeignKey(Dokument, on_delete=models.CASCADE, related_name='changelog')
autoren = models.ManyToManyField(Person)
datum = models.DateField()
aenderung = models.TextField()

View File

@@ -1,5 +1,5 @@
from django.shortcuts import render, get_object_or_404
from .models import Standard
from .models import Dokument
from abschnitte.utils import render_textabschnitte
from datetime import date
@@ -9,14 +9,14 @@ calendar=parsedatetime.Calendar()
def standard_list(request):
standards = Standard.objects.all()
standards = Dokument.objects.all()
return render(request, 'standards/standard_list.html',
{'standards': standards}
)
def standard_detail(request, nummer,check_date=""):
standard = get_object_or_404(Standard, nummer=nummer)
standard = get_object_or_404(Dokument, nummer=nummer)
if check_date:
check_date = calendar.parseDT(check_date)[0].date()
@@ -48,7 +48,7 @@ def standard_detail(request, nummer,check_date=""):
def standard_checkliste(request, nummer):
standard = get_object_or_404(Standard, nummer=nummer)
standard = get_object_or_404(Dokument, nummer=nummer)
vorgaben = list(standard.vorgaben.all())
return render(request, 'standards/standard_checkliste.html', {
'standard': standard,