diff --git a/mods/db.py b/mods/db.py index 7fed947..5edc0d7 100644 --- a/mods/db.py +++ b/mods/db.py @@ -157,6 +157,30 @@ class ReceptionObserve(BaseModel): class PatientIndex(BaseFTSModel): rowid = RowIDField() fio = SearchField() +class RlsPharmacoTherapeuticGroup(BaseModel): + id = AutoIncrementField() + title = TextField(null=True) +class RlsCountry(BaseModel): + id = AutoIncrementField() + title = TextField(null=True) +class Rls(BaseModel): + id = AutoIncrementField() + regnumber = TextField(null=True, help_text='Номер регистрационного удостоверения лекарственного средства') + regdate = DateField(null=True, help_text='Дата регистрации лекарственного средства') + enddate = DateField(null=True, help_text='Дата окончания действия регистрационного удостоверения') + cancellationdate = DateField(null=True, help_text='Дата аннулирования регистрационного удостоверения') + nameregcertificate = TextField(null=True, help_text='Юридическое лицо, на имя которого выдано регистрационное удостоверение') + country = ForeignKeyField(RlsInitCountry, backref='rlsinit', help_text='Страна производства') + tradename = TextField(null=True, help_text='Торговое наименование лекарственного средства') + internationalname = TextField(null=True, help_text='Международное непатентованное или химическое наименование лекарственного средства') + formrelease = TextField(null=True, help_text='Формы выпуска') + stages = TextField(null=True, help_text='Сведения о стадиях производства') + barcodes = TextField(null=True, help_text='Штрих-коды потребительской упаковки') + normativedocumentation = TextField(null=True, help_text='Нормативная документация') + pharmacotherapeuticgroup = ForeignKeyField(RlsInitPharmacoTherapeuticGroup, backref='rlsinit', help_text='Фармако-терапевтическая группа') +class RlsIndex(BaseFTSModel): + rowid = RowIDField() + ### Настройки class Settings(BaseModel): key = TextField() @@ -188,5 +212,8 @@ db.create_tables([ ReceptionDiagnosis, ReceptionAnamnesis, ReceptionObserve, + RlsPharmacoTherapeuticGroup, + RlsCountry, + Rls, Settings ]) diff --git a/mods/settings.py b/mods/settings.py index e815df9..2099210 100644 --- a/mods/settings.py +++ b/mods/settings.py @@ -1,4 +1,5 @@ -from mods.db import db, Settings, Diag, DiagCategory, diag_db, Diagnosis, DiagnosisCategory, DiagnosisIndex +from mods.db import db, Settings, Diag, DiagCategory, diag_db, Diagnosis, DiagnosisCategory, DiagnosisIndex, rls_db, RlsInit, RlsInitCountry +from mods.db import RlsInitPharmacoTherapeuticGroup, Rls, RlsCountry, RlsPharmacoTherapeuticGroup # Имена ключей параметров S_KEY_RECEPTION_LIST = 'reception_list' @@ -63,3 +64,14 @@ if not len(q): del __root_cat_map_ diag_db.close() ########################### +q = Rls.select().limit(10) +if not len(q): + rls_db.connect() + __rls_ptg_map_ = {} + __rls_cnt_map = {} + for ptg in RlsInitPharmacoTherapeuticGroup.select(): + __rls_ptg_map_[ptg.title] = RlsPharmacoTherapeuticGroup.create(title=ptg.title) + for cnt in RlsCountry.select(): + __rls_cnt_map[cnt.title] = RlsCountry.create(title=cnt.title) + +########################### diff --git a/res/initdb/rls.db b/res/initdb/rls.db index 0d9781f..dbe7839 100644 Binary files a/res/initdb/rls.db and b/res/initdb/rls.db differ