medicine-mts/appa/medicine/models.py

60 lines
2.0 KiB
Python

from django.db import models
__all__ = [
'MedicalSpeciality',
'MedicalService',
'LPU'
]
class MedicalService(models.Model):
code = models.CharField(max_length=32, verbose_name='Код')
local_code = models.CharField(max_length=32, null=True, blank=True, verbose_name='Локальный код')
name = models.CharField(max_length=1024, db_index=True, verbose_name='Название')
is_active = models.BooleanField(default=True, db_index=True, verbose_name='Активность')
class Meta:
verbose_name = 'Услуга'
verbose_name_plural = 'Услуги'
db_table = 'catalog_medicalservice'
managed = False
def __str__(self):
if self.local_code:
return f'{self.local_code} - {self.code} - {self.name}'
else:
return f'{self.code} - {self.name}'
class MedicalSpeciality(models.Model):
id = models.PositiveIntegerField(primary_key=True, verbose_name='id')
code = models.IntegerField(verbose_name='Код', unique=True)
name = models.CharField(max_length=1024, verbose_name='Название')
is_active = models.BooleanField(default=True, verbose_name='Активность')
class Meta:
verbose_name = 'Медицинская специальность'
verbose_name_plural = 'Медицинские специальности'
db_table = 'catalog_medicalspeciality'
def __str__(self):
return '%s (%s)' % (self.name, self.code)
class LPU(models.Model):
code = models.IntegerField(unique=True, primary_key=True, verbose_name='Код учреждения')
full_name = models.CharField(max_length=200, verbose_name='Полное название')
short_name = models.CharField(max_length=200, verbose_name='Короткое название')
class Meta:
verbose_name = 'ЛПУ'
verbose_name_plural = 'ЛПУ'
db_table = 'lpu'
def __str__(self):
return f'{self.full_name} {self.code}'