generated from coulomb/repo-seed
Prototype implementation
This commit is contained in:
115
vergabe_teilnahme/apps/bibliothek/migrations/0001_initial.py
Normal file
115
vergabe_teilnahme/apps/bibliothek/migrations/0001_initial.py
Normal file
@@ -0,0 +1,115 @@
|
||||
# Generated by Django 6.0.5 on 2026-05-08 10:33
|
||||
|
||||
import django.db.models.deletion
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Entscheidungsregel',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('regelname', models.CharField(max_length=300)),
|
||||
('beschreibung', models.TextField(blank=True)),
|
||||
('kategorie', models.CharField(choices=[('ausschlusskriterium', 'Ausschlusskriterium'), ('frist', 'Fristlage'), ('referenz', 'Referenzanforderung'), ('wirtschaftlichkeit', 'Wirtschaftlichkeit'), ('ressourcen', 'Ressourcenverfügbarkeit'), ('sonstiges', 'Sonstiges')], max_length=30)),
|
||||
('gewichtung', models.DecimalField(decimal_places=2, default=1.0, max_digits=5)),
|
||||
('bewertungslogik', models.TextField(blank=True)),
|
||||
('schwellenwert', models.DecimalField(blank=True, decimal_places=2, max_digits=10, null=True)),
|
||||
('empfehlung', models.CharField(choices=[('teilnehmen', 'Teilnehmen'), ('nicht_teilnehmen', 'Nicht teilnehmen'), ('pruefen', 'Prüfen')], max_length=20)),
|
||||
('begruendung', models.TextField(blank=True)),
|
||||
('gueltig_von', models.DateField(blank=True, null=True)),
|
||||
('gueltig_bis', models.DateField(blank=True, null=True)),
|
||||
('aktiv', models.BooleanField(default=True)),
|
||||
('verantwortlicher', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Entscheidungsregel',
|
||||
'verbose_name_plural': 'Entscheidungsregeln',
|
||||
'ordering': ['regelname'],
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Leistungsblatt',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('produktfunktion', models.CharField(max_length=300)),
|
||||
('beschreibung', models.TextField(blank=True)),
|
||||
('leistungsumfang', models.TextField(blank=True)),
|
||||
('grenzen_ausschluesse', models.TextField(blank=True)),
|
||||
('technische_voraussetzungen', models.TextField(blank=True)),
|
||||
('typische_nachweise', models.TextField(blank=True)),
|
||||
('version', models.CharField(default='1.0', max_length=20)),
|
||||
('eigentuemer', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Leistungsblatt',
|
||||
'verbose_name_plural': 'Leistungsblätter',
|
||||
'ordering': ['produktfunktion'],
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Nachweis',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('titel', models.CharField(max_length=300)),
|
||||
('kurzbeschreibung', models.TextField(blank=True)),
|
||||
('dokumenttyp', models.CharField(blank=True, max_length=100)),
|
||||
('kategorie', models.CharField(blank=True, max_length=100)),
|
||||
('datei', models.FileField(blank=True, null=True, upload_to='nachweise/%Y/')),
|
||||
('version', models.CharField(default='1.0', max_length=20)),
|
||||
('status', models.CharField(default='aktiv', max_length=20)),
|
||||
('gueltig_ab', models.DateField(blank=True, null=True)),
|
||||
('gueltig_bis', models.DateField(blank=True, null=True)),
|
||||
('freigabestatus', models.CharField(choices=[('intern_freigegeben', 'Intern freigegeben'), ('extern_freigegeben', 'Extern freigegeben'), ('eingeschraenkt', 'Eingeschränkt'), ('nicht_freigegeben', 'Nicht freigegeben')], default='intern_freigegeben', max_length=30)),
|
||||
('letzte_pruefung', models.DateField(blank=True, null=True)),
|
||||
('zugehoerige_standards', models.TextField(blank=True)),
|
||||
('vertraulichkeit', models.CharField(choices=[('intern', 'Intern'), ('streng_vertraulich', 'Streng vertraulich'), ('oeffentlich', 'Öffentlich')], default='intern', max_length=20)),
|
||||
('sprache', models.CharField(default='de', max_length=5)),
|
||||
('fuer_oeffentliche', models.BooleanField(default=True)),
|
||||
('fuer_privatwirtschaftliche', models.BooleanField(default=True)),
|
||||
('eigentuemer', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='eigene_nachweise', to=settings.AUTH_USER_MODEL)),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Nachweis',
|
||||
'verbose_name_plural': 'Nachweise',
|
||||
'ordering': ['titel'],
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Referenz',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('referenztitel', models.CharField(max_length=400)),
|
||||
('kunde', models.CharField(max_length=300)),
|
||||
('branche', models.CharField(blank=True, max_length=200)),
|
||||
('oeffentlich_oder_privat', models.CharField(blank=True, max_length=20)),
|
||||
('leistungsbeschreibung', models.TextField(blank=True)),
|
||||
('eingesetzte_produkte', models.TextField(blank=True)),
|
||||
('projektzeitraum', models.CharField(blank=True, max_length=100)),
|
||||
('vertragsvolumen', models.DecimalField(blank=True, decimal_places=2, max_digits=14, null=True)),
|
||||
('ansprechpartner_referenzkunde', models.CharField(blank=True, max_length=200)),
|
||||
('freigabestatus_verwendung', models.CharField(choices=[('freigegeben', 'Freigegeben'), ('eingeschraenkt', 'Eingeschränkt'), ('nicht_freigegeben', 'Nicht freigegeben')], default='freigegeben', max_length=30)),
|
||||
('vertraulichkeit', models.CharField(default='intern', max_length=20)),
|
||||
('whitepaper', models.FileField(blank=True, null=True, upload_to='referenzen/')),
|
||||
('kurzfassung', models.TextField(blank=True)),
|
||||
('langfassung', models.TextField(blank=True)),
|
||||
('verwendbar_fuer_ausschreibungen', models.BooleanField(default=True)),
|
||||
('einschraenkungen_verwendung', models.TextField(blank=True)),
|
||||
('leistungsblaetter', models.ManyToManyField(blank=True, to='bibliothek.leistungsblatt')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Referenz',
|
||||
'verbose_name_plural': 'Referenzen',
|
||||
'ordering': ['referenztitel'],
|
||||
},
|
||||
),
|
||||
]
|
||||
Reference in New Issue
Block a user