from django.db import models from common.models import Address, NatureOfBusiness from employee.models import Employee # Create your models here. class Client(models.Model): name = models.CharField(max_length=255) email = models.EmailField(unique=True) phone_number = models.CharField(max_length=15) address = models.OneToOneField(Address, on_delete=models.SET_NULL, null=True) gstin = models.CharField(max_length=15, blank=True, null=True) cin = models.CharField(max_length=20, blank=True, null=True) nature_of_business = models.ForeignKey(NatureOfBusiness, on_delete=models.SET_NULL, null=True) def __str__(self): return self.name class Project(models.Model): client = models.ForeignKey(Client, on_delete=models.CASCADE) name = models.CharField(max_length=255) description = models.TextField() initiation_date = models.DateField() def __str__(self): return self.name class Requirement(models.Model): name = models.CharField(max_length=255) description = models.TextField() def __str__(self): return self.name class Contract(models.Model): project = models.ForeignKey(Project, on_delete=models.CASCADE) name = models.CharField(max_length=255) description = models.TextField() start_date = models.DateField() end_date = models.DateField() requirements = models.ManyToManyField(Requirement, blank=True) employees = models.ManyToManyField(Employee, blank=True) def __str__(self): return self.name