education + employees

This commit is contained in:
Mikan
2025-05-18 22:16:31 +03:00
parent 30ef912c0b
commit c0865fdf51
9 changed files with 241 additions and 6 deletions

View File

@@ -25,7 +25,7 @@ class Department(models.Model):
verbose_name_plural = "Подразделения"
class Employee(ContactMixin):
class Employee(models.Model):
department = models.ForeignKey(
Department, on_delete=models.CASCADE, verbose_name="Подразделение"
)
@@ -36,8 +36,51 @@ class Employee(ContactMixin):
"users.Account", on_delete=models.CASCADE, unique=True, verbose_name="Аккаунт"
)
@property
def first_name(self):
return self.account.first_name
@first_name.setter
def first_name(self, value):
self.account.first_name = value
@property
def last_name(self):
return self.account.last_name
@last_name.setter
def last_name(self, value):
self.account.last_name = value
@property
def middle_name(self):
return self.account.middle_name
@middle_name.setter
def middle_name(self, value):
self.account.middle_name = value
@property
def phone(self):
return self.account.phone
@phone.setter
def phone(self, value):
self.account.phone = value
@property
def email(self):
return self.account.email
@email.setter
def email(self, value):
self.account.email = value
def __str__(self):
return f"{self.last_name} {self.first_name} - {self.position}"
full_name = " ".join(filter(bool, [self.last_name, self.first_name]))
return f"{full_name} - {self.position}"
class Meta:
verbose_name = "Сотрудник"