from datetime import date from django import forms from django.db import models from django.contrib.auth.models import User from UGSdjangoProject import settings # Create your models here. class Address(models.Model): user = models.ForeignKey(User, on_delete=models.CASCADE, related_name="new_spending", null=True) first_name = models.CharField("Vorname", max_length=255, null=True) surname = models.CharField("Nachname", max_length=255, null=True) birthday: date = models.DateField("Geburtstag", null=True) street = models.CharField("Straße", max_length=255, null=True) number = models.CharField("Hausnummer", max_length=10, null=True) postcode = models.CharField("Postleitzahl", max_length=5, null=True) city = models.CharField("Stadt", max_length=100, null=True) def __str__(self): return f'{self.first_name} {self.surname} lives at {self.street} {self.number}, {self.postcode} {self.city}' class Summary(models.Model): user = models.ForeignKey(User, on_delete=models.CASCADE, related_name="user_summary") text = models.TextField(max_length=2000) def __str__(self): return self.text class SalesAreaType(models.Model): title = models.CharField(max_length=255) class SalesArea(models.Model): title = models.CharField(max_length=255) type = models.ForeignKey(SalesAreaType, on_delete=models.RESTRICT) class CompanyData(models.Model): title = models.CharField(max_length=255) website = models.URLField(max_length=200) startDate = models.DateField() #salesArea = models.ManyToManyField(SalesArea, related_name='+') class AllgemeinesData(models.Model): currency = models.CharField(max_length=3) years = models.IntegerField() startPhase = models.IntegerField() planingPeriods = models.IntegerField() ''' Grundsätzloich werden die Daten für den Absatz in das Jahresfeld eingegeben Bei eingabe in dieses Feld werden die Monatswerte überschrieben/gesetzt Der Nutzer kann aber auch werte in die einzelnen Monate eintragen Dies werden dann zum Jahr aufsummiert Umsatz wir berechnet: Menge x Preis ''' ''' class Revenue(models.Model): unit = models.CharField(max_length=255) value = models.DecimalField(max_digits=10, decimal_places=2) year = models.IntegerField() class revenueField(models.Model): title = models.CharField(max_length=255) # MWST Satz # REvenue 1 : n class SalesMarketing(models.Model): # Revneue 1: 1 ? class BeschaffungsItem(models.Model): title = models.CharField(max_length=255) price = models.DecimalField(max_digits=10, decimal_places=2) quantityDependent = models.IntegerField() # True or False quantity = models.IntegerField() # Mehrfach für jedes RvenueField class Invest(models.Model): anschaffungsKosten=models.DecimalField(max_digits=10, decimal_places=2) nutzungsDauer=models.IntegerField() # years abschreibungsArt = models.CharField(max_length=255) # linear # Nutzung pro Umsatzbereich in Prozent + nur zu Gesamtunternehmen zugehörig ''' # Arbeitsmarkt ''' Mitarbeiter nach kategorie Anzahl Brutto Kosten Sozialkosten in Summe oder in Prozent keine Kapazitärsplanung ''' ''' Kapital Einlagen und Entnahmen pro Jahr Fremdkaptial Einzahlung (Kreditsumme) Tilgung Zins ''' ''' Staat EtragsSteuern in Prozent vom Gewinn (ca. 30 %) Subventionen '''