class BloodHistory(db.Model): __tablename__ = u'BloodHistory' id = db.Column(db.Integer, primary_key=True) bloodDate = db.Column(db.Date, nullable=False) client_id = db.Column(db.Integer, db.ForeignKey('Client.id'), nullable=False) bloodType_id = db.Column(db.Integer, db.ForeignKey('rbBloodType.id'), nullable=False) person_id = db.Column(db.Integer, db.ForeignKey('Person.id'), nullable=False) bloodType = db.relationship("rbBloodType") person = db.relationship('Person') def __init__(self, blood_type, date, person, client): self.bloodType_id = int(blood_type) if blood_type else None self.bloodDate = date self.person_id = int(person) if person else None self.client = client def __int__(self): return self.id def __json__(self): return { 'id': self.id, 'blood_type': self.bloodType, 'date': self.bloodDate, 'person': self.person }
class TakenTissueJournal(db.Model): __tablename__ = u'TakenTissueJournal' __table_args__ = (db.Index(u'period_barcode', u'period', u'barcode'), ) id = db.Column(db.Integer, primary_key=True) client_id = db.Column(db.ForeignKey('Client.id'), nullable=False, index=True) tissueType_id = db.Column(db.ForeignKey('rbTissueType.id'), nullable=False, index=True) externalId = db.Column(db.String(30), nullable=False) amount = db.Column(db.Integer, nullable=False, server_default=u"'0'") unit_id = db.Column(db.ForeignKey('rbUnit.id'), index=True) datetimeTaken = db.Column(db.DateTime, nullable=False) execPerson_id = db.Column(db.ForeignKey('Person.id'), index=True) note = db.Column(db.String(128), nullable=False, default='') barcode = db.Column(db.Integer, nullable=False) # set with trigger period = db.Column(db.Integer, nullable=False) # set with trigger client = db.relationship(u'Client') execPerson = db.relationship(u'Person') tissueType = db.relationship(u'rbTissueType') unit = db.relationship(u'rbUnit') @property def barcode_s(self): return code128C(self.barcode).decode('windows-1252')
class ClientWork(db.Model): __tablename__ = u'ClientWork' id = db.Column(db.Integer, primary_key=True) createDatetime = db.Column(db.DateTime, nullable=False) createPerson_id = db.Column(db.Integer, index=True) modifyDatetime = db.Column(db.DateTime, nullable=False) modifyPerson_id = db.Column(db.Integer, index=True) deleted = db.Column(db.Integer, nullable=False, server_default=u"'0'") client_id = db.Column(db.ForeignKey('Client.id'), nullable=False, index=True) org_id = db.Column(db.ForeignKey('Organisation.id'), index=True) shortName = db.Column('freeInput', db.String(200), nullable=False) post = db.Column(db.String(200), nullable=False) stage = db.Column(db.Integer, nullable=False) OKVED = db.Column(db.String(10), nullable=False) version = db.Column(db.Integer, nullable=False) rank_id = db.Column(db.Integer, nullable=False) arm_id = db.Column(db.Integer, nullable=False) client = db.relationship(u'Client') organisation = db.relationship(u'Organisation') # hurts = db.relationship(u'ClientworkHurt') def __unicode__(self): parts = [] if self.shortName: parts.append(self.shortName) if self.post: parts.append(self.post) if self.OKVED: parts.append(u'ОКВЭД: ' + self._OKVED) return ', '.join(parts)
class OrgStructure_ActionType(db.Model): __tablename__ = u'OrgStructure_ActionType' id = db.Column(db.Integer, primary_key=True) master_id = db.Column(db.ForeignKey('OrgStructure.id'), nullable=False, index=True) idx = db.Column(db.Integer, nullable=False, server_default=u"'0'") actionType_id = db.Column(db.ForeignKey('ActionType.id'), index=True)
class ClientContact(db.Model): __tablename__ = 'ClientContact' id = db.Column(db.Integer, primary_key=True) createDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now) createPerson_id = db.Column(db.Integer, index=True, default=safe_current_user_id) modifyDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now, onupdate=datetime.datetime.now) modifyPerson_id = db.Column(db.Integer, index=True, default=safe_current_user_id, onupdate=safe_current_user_id) deleted = db.Column(db.Integer, nullable=False, server_default=u"'0'", default=0) client_id = db.Column(db.ForeignKey('Client.id'), nullable=False, index=True) contactType_id = db.Column(db.Integer, db.ForeignKey('rbContactType.id'), nullable=False, index=True) contact = db.Column(db.String(32), nullable=False) notes = db.Column(db.Unicode(64), nullable=False, default=u'') version = db.Column(db.Integer, nullable=False, default=0) contactType = db.relationship(u'rbContactType', lazy=False) def __init__(self, cont_type, text, notes, client): self.contactType_id = int(cont_type) if cont_type else None self.contact = text self.notes = notes self.client = client @property def name(self): return self.contactType.name if self.contactType else None def __json__(self): return { 'id': self.id, 'deleted': self.deleted, 'contact_type': self.contactType, 'contact_text': self.contact, 'notes': self.notes } def __int__(self): return self.id
class OrgStructure_HospitalBed(db.Model): __tablename__ = u'OrgStructure_HospitalBed' id = db.Column(db.Integer, primary_key=True) master_id = db.Column(db.Integer, db.ForeignKey('OrgStructure.id'), nullable=False, index=True) idx = db.Column(db.Integer, nullable=False, server_default=u"'0'") code = db.Column(db.String(16), nullable=False, server_default=u"''") name = db.Column(db.String(64), nullable=False, server_default=u"''") isPermanentCode = db.Column("isPermanent", db.Integer, nullable=False, server_default=u"'0'") type_id = db.Column(db.Integer, db.ForeignKey('rbHospitalBedType.id'), index=True) profile_id = db.Column(db.Integer, db.ForeignKey('rbHospitalBedProfile.id'), index=True) relief = db.Column(db.Integer, nullable=False, server_default=u"'0'") schedule_id = db.Column(db.Integer, db.ForeignKey('rbHospitalBedSchedule.id'), index=True) begDate = db.Column(db.Date) endDate = db.Column(db.Date) sex = db.Column(db.Integer, nullable=False, server_default=u"'0'") age = db.Column(db.String(9), nullable=False) age_bu = db.Column(db.Integer) age_bc = db.Column(db.SmallInteger) age_eu = db.Column(db.Integer) age_ec = db.Column(db.SmallInteger) involution = db.Column(db.Integer, nullable=False, server_default=u"'0'") begDateInvolute = db.Column(db.Date) endDateInvolute = db.Column(db.Date) orgStructure = db.relationship(u'OrgStructure') type = db.relationship(u'rbHospitalBedType') profile = db.relationship(u'rbHospitalBedProfile') schedule = db.relationship(u'rbHospitalBedSchedule') def __json__(self): return { 'id': self.id, 'org_structure_id': self.master_id, 'code': self.code, 'name': self.name, 'type': self.type, 'profile': self.profile, 'schedule': self.schedule } @property def isPermanent(self): return self.isPermanentCode == 1
class ActionProperty_Person(ActionProperty__ValueType): __tablename__ = u'ActionProperty_Person' id = db.Column(db.ForeignKey('ActionProperty.id'), primary_key=True, nullable=False) index = db.Column(db.Integer, nullable=False, server_default=u"'0'") value_ = db.Column('value', db.ForeignKey('Person.id'), index=True) value = db.relationship(u'Person') property_object = db.relationship('ActionProperty', backref='_value_Person')
class Event_Persons(db.Model): __tablename__ = u'Event_Persons' id = db.Column(db.Integer, primary_key=True) event_id = db.Column(db.ForeignKey('Event.id'), nullable=False, index=True) person_id = db.Column(db.ForeignKey('Person.id'), nullable=False, index=True) begDate = db.Column(db.DateTime, nullable=False) endDate = db.Column(db.DateTime) event = db.relationship('Event') person = db.relationship('Person')
class ActionProperty_rbBloodComponentType(ActionProperty__ValueType): __tablename__ = u'ActionProperty_rbBloodComponentType' id = db.Column(db.ForeignKey('ActionProperty.id'), primary_key=True, nullable=False) index = db.Column(db.Integer, primary_key=True, nullable=False) value_ = db.Column('value', db.ForeignKey('rbTrfuBloodComponentType.id'), nullable=False) value = db.relationship('rbBloodComponentType') property_object = db.relationship('ActionProperty', backref='_value_rbBloodComponentType')
class ActionType_TissueType(db.Model): __tablename__ = u'ActionType_TissueType' id = db.Column(db.Integer, primary_key=True) master_id = db.Column(db.ForeignKey('ActionType.id'), nullable=False, index=True) idx = db.Column(db.Integer, nullable=False, server_default=u"'0'") tissueType_id = db.Column(db.ForeignKey('rbTissueType.id'), index=True) amount = db.Column(db.Integer, nullable=False, server_default=u"'0'") unit_id = db.Column(db.ForeignKey('rbUnit.id'), index=True) master = db.relationship(u'ActionType') tissueType = db.relationship(u'rbTissueType') unit = db.relationship(u'rbUnit')
class ActionType_User(db.Model): __tablename__ = u'ActionType_User' __table_args__ = (db.Index(u'person_id_profile_id', u'person_id', u'profile_id'), ) id = db.Column(db.Integer, primary_key=True) actionType_id = db.Column(db.ForeignKey('ActionType.id'), nullable=False, index=True) person_id = db.Column(db.ForeignKey('Person.id')) profile_id = db.Column(db.ForeignKey('rbUserProfile.id'), index=True) actionType = db.relationship(u'ActionType') person = db.relationship(u'Person') profile = db.relationship(u'rbUserProfile')
class rbTissueType(db.Model): __tablename__ = u'rbTissueType' id = db.Column(db.Integer, primary_key=True) code = db.Column(db.String(64), nullable=False) name = db.Column(db.String(128), nullable=False) group_id = db.Column(db.ForeignKey('rbTissueType.id'), index=True) sexCode = db.Column("sex", db.Integer, nullable=False, server_default=u"'0'") group = db.relationship(u'rbTissueType', remote_side=[id]) @property def sex(self): return {0: u'Любой', 1: u'М', 2: u'Ж'}[self.sexCode] def __json__(self): return { 'id': self.id, 'code': self.code, 'name': self.name, 'sex': self.sex, }
class EventPayment(db.Model): __tablename__ = 'Event_Payment' id = db.Column(db.Integer, primary_key=True) createDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now) createPerson_id = db.Column(db.Integer, index=True, default=safe_current_user_id) modifyDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now, onupdate=datetime.datetime.now) modifyPerson_id = db.Column(db.Integer, index=True, default=safe_current_user_id, onupdate=safe_current_user_id) deleted = db.Column(db.Integer, nullable=False, default=0) master_id = db.Column(db.Integer, db.ForeignKey('Event.id')) date = db.Column(db.Date, nullable=False) cashOperation_id = db.Column(db.ForeignKey('rbCashOperation.id'), index=True) sum = db.Column(db.Float(asdecimal=True), nullable=False) typePayment = db.Column(db.Integer, nullable=False) settlementAccount = db.Column(db.String(64)) bank_id = db.Column(db.Integer, index=True) numberCreditCard = db.Column(db.String(64)) cashBox = db.Column(db.String(32), nullable=False) sumDiscount = db.Column(db.Float(asdecimal=True), nullable=False) action_id = db.Column(db.Integer, db.ForeignKey('Action.id')) service_id = db.Column(db.Integer, db.ForeignKey('rbService.id')) localContract_id = db.Column(db.Integer, db.ForeignKey('Event_LocalContract.id')) cashOperation = db.relationship(u'rbCashOperation') def __json__(self): return { 'id': self.id, 'date': self.date, 'sum': self.sum, 'sum_discount': self.sumDiscount, 'action_id': self.action_id, 'service_id': self.service_id, 'localContract_id': self.localContract_id, }
class ActionProperty_FDRecord(ActionProperty__ValueType): __tablename__ = u'ActionProperty_FDRecord' id = db.Column(db.Integer, db.ForeignKey('ActionProperty.id'), primary_key=True) index = db.Column(db.Integer, nullable=False, server_default=u"'0'") value_ = db.Column('value', db.ForeignKey('FDRecord.id'), nullable=False, index=True) value = db.relationship(u'FDRecord') property_object = db.relationship('ActionProperty', backref='_value_FDRecord') def get_value(self): return FDRecord.query.filter( FDRecord.id == self.value).first().get_value(u'Наименование')
class ActionProperty_OtherLPURecord(ActionProperty__ValueType): __tablename__ = u'ActionProperty_OtherLPURecord' id = db.Column(db.Integer, db.ForeignKey('ActionProperty.id'), primary_key=True) index = db.Column(db.Integer, primary_key=True, nullable=False, server_default=u"'0'") value = db.Column(db.Text(collation=u'utf8_unicode_ci'), nullable=False)
class QuotingByTime(db.Model): __tablename__ = u'QuotingByTime' id = db.Column(db.Integer, primary_key=True) doctor_id = db.Column(db.Integer) quoting_date = db.Column(db.Date, nullable=False) QuotingTimeStart = db.Column(db.Time, nullable=False) QuotingTimeEnd = db.Column(db.Time, nullable=False) quotingType_id = db.Column("QuotingType", db.Integer, db.ForeignKey('rbTimeQuotingType.code')) quotingType = db.relationship('rbTimeQuotingType', lazy='joined')
class ClientIntoleranceMedicament(db.Model): __tablename__ = u'ClientIntoleranceMedicament' id = db.Column(db.Integer, primary_key=True) createDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now) createPerson_id = db.Column(db.Integer, index=True, default=safe_current_user_id) modifyDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now, onupdate=datetime.datetime.now) modifyPerson_id = db.Column(db.Integer, index=True, default=safe_current_user_id, onupdate=safe_current_user_id) deleted = db.Column(db.Integer, nullable=False, server_default=u"'0'", default=0) client_id = db.Column(db.ForeignKey('Client.id'), nullable=False, index=True) name = db.Column("nameMedicament", db.Unicode(128), nullable=False) power = db.Column(db.Integer, nullable=False) createDate = db.Column(db.Date) notes = db.Column(db.String, nullable=False, default='') version = db.Column(db.Integer, nullable=False, default=0) def __init__(self, name, power, date, notes, client): self.name = name self.power = power self.createDate = date self.notes = notes self.client = client def __json__(self): return { 'id': self.id, 'deleted': self.deleted, 'name': self.name, 'power': AllergyPower(self.power) if self.power is not None else None, 'date': self.createDate, 'notes': self.notes } def __unicode__(self): return self.name def __int__(self): return self.id
class Job(db.Model): __tablename__ = u'Job' id = db.Column(db.Integer, primary_key=True) createDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now) createPerson_id = db.Column(db.Integer, index=True, default=safe_current_user_id) modifyDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now, onupdate=datetime.datetime.now) modifyPerson_id = db.Column(db.Integer, index=True, default=safe_current_user_id, onupdate=safe_current_user_id) deleted = db.Column(db.Integer, nullable=False, server_default=u"'0'") jobType_id = db.Column(db.Integer, db.ForeignKey('rbJobType.id'), nullable=False, index=True) orgStructure_id = db.Column(db.Integer, db.ForeignKey('OrgStructure.id'), nullable=False, index=True) date = db.Column(db.Date, nullable=False) begTime = db.Column(db.Time, nullable=False) endTime = db.Column(db.Time, nullable=False) quantity = db.Column(db.Integer, nullable=False) job_type = db.relationship(u'rbJobType') org_structure = db.relationship(u'OrgStructure') def __json__(self): return { 'id': self.id, 'jobType_id': self.jobType_id, 'org_structure': self.org_structure, }
class ClientIdentification(db.Model): __tablename__ = u'ClientIdentification' __table_args__ = (db.Index(u'accountingSystem_id', u'accountingSystem_id', u'identifier'), ) id = db.Column(db.Integer, primary_key=True) createDatetime = db.Column(db.DateTime, nullable=False) createPerson_id = db.Column(db.Integer, index=True) modifyDatetime = db.Column(db.DateTime, nullable=False) modifyPerson_id = db.Column(db.Integer, index=True) deleted = db.Column(db.Integer, nullable=False, server_default=u"'0'") client_id = db.Column(db.ForeignKey('Client.id'), nullable=False, index=True) accountingSystem_id = db.Column(db.Integer, db.ForeignKey('rbAccountingSystem.id'), nullable=False) identifier = db.Column(db.String(16), nullable=False) checkDate = db.Column(db.Date) version = db.Column(db.Integer, nullable=False) accountingSystems = db.relationship(u'rbAccountingSystem', lazy=False) @property def code(self): return self.attachType.code @property def name(self): return self.attachType.name def __json__(self): return { 'id': self.id, 'accounting_system': self.accountingSystems, 'identifier': self.identifier, 'chechDate': self.checkDate, } def __int__(self): return self.id
class ActionProperty_Integer_Base(ActionProperty__ValueType): __tablename__ = u'ActionProperty_Integer' id = db.Column(db.Integer, db.ForeignKey('ActionProperty.id'), primary_key=True, nullable=False) index = db.Column(db.Integer, primary_key=True, nullable=False, server_default=u"'0'") value_ = db.Column('value', db.Integer, nullable=False)
class Schedule(db.Model): __tablename__ = 'Schedule' id = db.Column(db.Integer, primary_key=True, autoincrement=True) person_id = db.Column(db.Integer, db.ForeignKey('Person.id')) date = db.Column(db.Date, nullable=False) begTime = db.Column(db.Time, nullable=False) endTime = db.Column(db.Time, nullable=False) numTickets = db.Column(db.Integer, doc=u'Запланированное количество талонов на данный день') office_id = db.Column(db.ForeignKey('Office.id')) reasonOfAbsence_id = db.Column(db.Integer, db.ForeignKey('rbReasonOfAbsence.id')) receptionType_id = db.Column(db.Integer, db.ForeignKey('rbReceptionType.id')) createDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now) createPerson_id = db.Column(db.Integer, db.ForeignKey('Person.id'), index=True, default=safe_current_user_id) modifyDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now, onupdate=datetime.datetime.now) modifyPerson_id = db.Column(db.Integer, db.ForeignKey('Person.id'), index=True, default=safe_current_user_id, onupdate=safe_current_user_id) deleted = db.Column(db.SmallInteger, nullable=False, server_default='0', default=0) person = db.relationship('Person', foreign_keys=person_id) reasonOfAbsence = db.relationship('rbReasonOfAbsence', lazy='joined') receptionType = db.relationship('rbReceptionType', lazy='joined') tickets = db.relationship( 'ScheduleTicket', lazy=False, primaryjoin= "and_(ScheduleTicket.schedule_id == Schedule.id, ScheduleTicket.deleted == 0)", backref=db.backref('schedule'), order_by='ScheduleTicket.begTime' ) office = db.relationship('Office', lazy='joined')
class ActionProperty_Time(ActionProperty__ValueType): __tablename__ = u'ActionProperty_Time' id = db.Column(db.Integer, db.ForeignKey('ActionProperty.id'), primary_key=True, nullable=False) index = db.Column(db.Integer, primary_key=True, nullable=False, server_default=u"'0'") value = db.Column(db.Time, nullable=False) property_object = db.relationship('ActionProperty', backref='_value_Time')
class EventType_Action(db.Model): __tablename__ = u'EventType_Action' id = db.Column(db.Integer, primary_key=True) eventType_id = db.Column(db.Integer, db.ForeignKey('EventType.id'), nullable=False, index=True) idx = db.Column(db.Integer, nullable=False, server_default=u"'0'") actionType_id = db.Column(db.Integer, db.ForeignKey('ActionType.id'), nullable=False, index=True) speciality_id = db.Column(db.Integer, index=True) tissueType_id = db.Column(db.Integer, db.ForeignKey('rbTissueType.id'), index=True) sex = db.Column(db.Integer, nullable=False) age = db.Column(db.String(9), nullable=False) age_bu = db.Column(db.Integer) age_bc = db.Column(db.SmallInteger) age_eu = db.Column(db.Integer) age_ec = db.Column(db.SmallInteger) selectionGroup = db.Column(db.Integer, nullable=False, server_default=u"'0'") actuality = db.Column(db.Integer, nullable=False) expose = db.Column(db.Integer, nullable=False, server_default=u"'1'") payable = db.Column(db.Integer, nullable=False, server_default=u"'0'") academicDegree_id = db.Column(db.Integer, db.ForeignKey('rbAcademicDegree.id')) actionType = db.relationship('ActionType') def __json__(self): return {'id': self.id} def __int__(self): return self.id
class ScheduleTicket(db.Model): __tablename__ = 'ScheduleTicket' id = db.Column(db.Integer, primary_key=True, autoincrement=True) schedule_id = db.Column(db.Integer, db.ForeignKey('Schedule.id'), nullable=False) begTime = db.Column(db.Time) endTime = db.Column(db.Time) attendanceType_id = db.Column(db.Integer, db.ForeignKey('rbAttendanceType.id'), nullable=False) createDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now) createPerson_id = db.Column(db.Integer, db.ForeignKey('Person.id'), index=True, default=safe_current_user_id) modifyDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now, onupdate=datetime.datetime.now) modifyPerson_id = db.Column(db.Integer, db.ForeignKey('Person.id'), index=True, default=safe_current_user_id, onupdate=safe_current_user_id) deleted = db.Column(db.SmallInteger, nullable=False, server_default='0', default=0) attendanceType = db.relationship('rbAttendanceType', lazy=False) client_ticket = db.relationship( 'ScheduleClientTicket', lazy=False, primaryjoin= "and_(ScheduleClientTicket.ticket_id == ScheduleTicket.id, ScheduleClientTicket.deleted == 0)", uselist=False) # schedule = db.relationship( # 'Schedule', lazy=True, innerjoin=True, uselist=False, # primaryjoin='and_(' # 'Schedule.deleted == 0, ScheduleTicket.deleted == 0, ScheduleTicket.schedule_id == Schedule.id)' # ) @property def client(self): ct = self.client_ticket return ct.client if ct else None @property def begDateTime(self): return datetime.datetime.combine(self.schedule.date, self.begTime) if self.begTime is not None else None @property def endDateTime(self): return datetime.datetime.combine(self.schedule.date, self.endTime) if self.endTime is not None else None
class ActionType_EventType_check(db.Model): __tablename__ = u'ActionType_EventType_check' id = db.Column(db.Integer, primary_key=True) actionType_id = db.Column(db.ForeignKey('ActionType.id'), nullable=False, index=True) eventType_id = db.Column(db.ForeignKey('EventType.id'), nullable=False, index=True) related_actionType_id = db.Column(db.ForeignKey('ActionType.id'), index=True) relationType = db.Column(db.Integer) actionType = db.relationship( u'ActionType', primaryjoin='ActionType_EventType_check.actionType_id == ActionType.id' ) eventType = db.relationship(u'EventType') related_actionType = db.relationship( u'ActionType', primaryjoin= 'ActionType_EventType_check.related_actionType_id == ActionType.id')
class ActionProperty_Double(ActionProperty__ValueType): __tablename__ = u'ActionProperty_Double' id = db.Column(db.Integer, db.ForeignKey('ActionProperty.id'), primary_key=True, nullable=False) index = db.Column(db.Integer, primary_key=True, nullable=False, server_default=u"'0'") value = db.Column(db.Float(asdecimal=True, decimal_return_scale=2), nullable=False) property_object = db.relationship('ActionProperty', backref='_value_Double')
class rbHospitalBedProfile(db.Model): __tablename__ = u'rbHospitalBedProfile' id = db.Column(db.Integer, primary_key=True) code = db.Column(db.String(8), nullable=False, index=True) name = db.Column(db.Unicode(64), nullable=False, index=True) service_id = db.Column(db.Integer, db.ForeignKey('rbService.id'), index=True) # service = db.relationship('rbService') def __json__(self): return { 'id': self.id, 'code': self.code, 'name': self.name, }
class JobTicket(db.Model): __tablename__ = u'Job_Ticket' id = db.Column(db.Integer, primary_key=True) master_id = db.Column(db.Integer, db.ForeignKey('Job.id'), nullable=False, index=True) idx = db.Column(db.Integer, nullable=False, server_default=u"'0'") datetime = db.Column(db.DateTime, nullable=False) resTimestamp = db.Column(db.DateTime) resConnectionId = db.Column(db.Integer) status = db.Column(db.Integer, nullable=False, server_default=u"'0'") begDateTime = db.Column(db.DateTime) endDateTime = db.Column(db.DateTime) label = db.Column(db.String(64), nullable=False, server_default=u"''") note = db.Column(db.String(128), nullable=False, server_default=u"''") job = db.relationship(u'Job') @property def jobType(self): return self.job.job_type @property def orgStructure(self): return self.job.org_structure def __unicode__(self): return u'%s, %s, %s' % (unicode(self.jobType), unicode( self.datetime), unicode(self.orgStructure)) def __json__(self): return { 'id': self.id, 'job': self.job, 'datetime': self.datetime, 'status': self.status, 'beg_datetime': self.begDateTime, 'end_datetime': self.endDateTime, 'label': self.label, 'note': self.note, }
class Office(db.Model): __tablename__ = 'Office' id = db.Column(db.Integer, primary_key=True, autoincrement=True) code = db.Column(db.Unicode(32), nullable=False) name = db.Column(db.Unicode(64), nullable=False) orgStructure_id = db.Column(db.ForeignKey('OrgStructure.id')) orgStructure = db.relationship('OrgStructure') def __unicode__(self): return self.code def __json__(self): return { 'id': self.id, 'code': self.code, 'name': self.name, 'org_structure': self.orgStructure }
class ScheduleClientTicket(db.Model): __tablename__ = 'ScheduleClientTicket' id = db.Column(db.Integer, primary_key=True, autoincrement=True) client_id = db.Column(db.Integer, db.ForeignKey('Client.id'), nullable=False) ticket_id = db.Column(db.Integer, db.ForeignKey('ScheduleTicket.id'), nullable=False) isUrgent = db.Column(db.Boolean) note = db.Column(db.Unicode(256), default=u'') appointmentType_id = db.Column(db.Integer, db.ForeignKey('rbAppointmentType.id')) infisFrom = db.Column(db.Unicode(20)) createDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now) createPerson_id = db.Column(db.Integer, db.ForeignKey('Person.id'), index=True, default=safe_current_user_id) modifyDatetime = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now, onupdate=datetime.datetime.now) modifyPerson_id = db.Column(db.Integer, db.ForeignKey('Person.id'), index=True, default=safe_current_user_id, onupdate=safe_current_user_id) deleted = db.Column(db.SmallInteger, nullable=False, server_default='0', default=0) event_id = db.Column(db.ForeignKey('Event.id')) client = db.relationship('Client', lazy='joined', uselist=False) appointmentType = db.relationship('rbAppointmentType', lazy=False, innerjoin=True) createPerson = db.relationship('Person', foreign_keys=[createPerson_id]) event = db.relationship('Event') ticket = db.relationship( 'ScheduleTicket', lazy=True, innerjoin=True, uselist=False, primaryjoin='and_(' 'ScheduleClientTicket.deleted == 0, ' 'ScheduleTicket.deleted == 0, ' 'ScheduleClientTicket.ticket_id == ScheduleTicket.id)' ) @property def org_from(self): if not self.infisFrom: return from .exists import Organisation org = Organisation.query.filter(Organisation.infisCode == self.infisFrom).first() if not org: return self.infisFrom return org.title