class File(db.Model): __tablename__ = 'file' id = db.Column(db.Integer, primary_key=True) url = db.Column(db.String) created_at = db.Column(db.Date()) deleted_at = db.Column(db.Date()) person = db.relationship("Person", back_populates="file") aid_institution = db.relationship("AidInstitution", back_populates="file") chat_history_media = db.relationship('ChatHistoryMedia', back_populates='file') def __init__(self, url, created_at): self.url = url self.created_at = created_at def patch_model(self, content): self.url = content['url'] if content.get('url') else self.url self.deleted_at = content['deletedAt'] if content.get( 'deletedAt') else self.deleted_at def __repr__(self): return '<id {}>'.format(self.id) def serialize(self): return { 'id': self.id, 'url': self.url, 'createdAt': self.created_at, 'deletedAt': self.deleted_at }
class Point(db.Model): # 계측기 id = db.Column(db.Integer, primary_key=True) area = db.Column(db.String(10), nullable=True) # 구역명 number = db.Column(db.String(10), nullable=False) # 계측기명 type = db.Column(db.String(10), nullable=False) # 계측기 종류 installdate = db.Column(db.Date(), nullable=True) # 설치일시 startdate = db.Column(db.Date(), nullable=True) # 초기치일시 enddate = db.Column(db.Date(), nullable=True) # 종료일시 locate = db.Column(db.String(20), nullable=True) # 설치 위치 active = db.Column(db.Integer(), default=True) # 활성화 cst01 = db.Column(db.Float(), nullable=True) # 상수값 cst02 = db.Column(db.Float(), nullable=True) # 상수값 cst03 = db.Column(db.Float(), nullable=True) # 상수값 cst04 = db.Column(db.Float(), nullable=True) # 상수값 cst05 = db.Column(db.Float(), nullable=True) # 상수값 cst06 = db.Column(db.Float(), nullable=True) # 상수값 cst07 = db.Column(db.Float(), nullable=True) # 상수값 cst08 = db.Column(db.Float(), nullable=True) # 상수값 cst09 = db.Column(db.Float(), nullable=True) # 상수값 cst10 = db.Column(db.Float(), nullable=True) # 상수값 cst11 = db.Column(db.Float(), nullable=True) # 상수값 cst12 = db.Column(db.Float(), nullable=True) # 상수값 cst13 = db.Column(db.Float(), nullable=True) # 상수값 cst14 = db.Column(db.Float(), nullable=True) # 상수값 cst15 = db.Column(db.Float(), nullable=True) # 상수값 cst16 = db.Column(db.Float(), nullable=True) # 최종데이터 cst17 = db.Column(db.Float(), nullable=True) # 최종데이터 cst18 = db.Column(db.Float(), nullable=True) # 최종데이터 memo = db.Column(db.Text(), nullable=True) # 히스토리
class Employees(db.Model): id = db.Column(db.Integer, primary_key = True) user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable = False) first_name = db.Column(db.String(45), nullable = False) last_name = db.Column(db.String(45), nullable = True) reporting_manager_id = db.Column(db.Integer, db.ForeignKey('employees.id'), nullable = True) designation = db.Column(db.String(45), nullable = False) department_id = db.Column(db.Integer, db.ForeignKey('department.id'), nullable = False) religion = db.Column(db.Enum('Islam','Christianity', 'Hinduism', 'Other'), nullable = False) general_leaves_remaining = db.Column(db.Float, nullable = False) medical_leaves_remaining = db.Column(db.Integer, nullable = False) general_leaves_availed = db.Column(db.Float, nullable = False) medical_leaves_availed = db.Column(db.Integer, nullable = False) date_of_joining = db.Column(db.Date(), nullable = False) salary = db.Column(db.Float, nullable = False) first_year = db.Column(db.Boolean, nullable = False) last_updated = db.Column(db.Date(), nullable = False) user = db.relationship('User', uselist=False, backref=db.backref('employee', uselist=False), lazy='joined', foreign_keys=[user_id]) balance_sheet = db.relationship('Balance_sheet', backref='employee', lazy='joined') encashment = db.relationship('Encashment', backref='employee', lazy='joined') department = db.relationship('Department', uselist=False, backref=db.backref('employee', uselist=False), lazy='joined', foreign_keys=[department_id]) manager = db.relationship('Employees', backref=db.backref('subordinates', lazy='dynamic'), remote_side=[id], lazy='joined', foreign_keys=[reporting_manager_id])
class Loan(Base): __tablename__ = 'loan' service_id = db.Column(db.Integer(), db.ForeignKey('service.id', ondelete='CASCADE')) user_id = db.Column(db.Integer(), db.ForeignKey('auth_user.id', ondelete='CASCADE')) date_filed = db.Column(db.DateTime, default=db.func.current_timestamp()) amount = db.Column(db.Numeric(15, 2), nullable=False) terms = db.Column(db.Integer(), nullable=False) interest_rate = db.Column(db.Numeric(15, 2)) previous_balance = db.Column(db.Numeric(15, 2)) processing_fee = db.Column(db.Numeric(15, 2)) net_proceeds = db.Column(db.Numeric(15, 2), nullable=False) first_due_date = db.Column(db.Date(), nullable=False) last_due_date = db.Column(db.Date()) memberbank_id = db.Column(db.Integer()) status = db.Column(db.String(20)) user = db.relationship('User', uselist=False, backref='loan') service = db.relationship('Service', uselist=False) # the bank reference is only for convenience # user can remove his bank detail anytime def __repr__(self): if self.user.detail: return f"{self.user.detail.last_name} {self.user.detail.first_name}, "\ f"{self.service.name}, {self.amount} [{self.id}]" else: return "<detail not defined>"
class IntlConferenceSupport(db.Model): __tablename__ = 'researcher_intl_conference_supports' id = db.Column('id', db.Integer, primary_key=True, autoincrement=True) qualification = db.Column('qualification', db.String()) article_title = db.Column('article_title', db.String(), info={'label': 'ชื่อผลงานวิจัย'}) organizer = db.Column('organizer', db.String(), info={'label': 'หน่วยงานผู้จัดประชุม'}) venue = db.Column('venue', db.String(), info={'label': 'สถานที่จัดประชุม'}) conference_date = db.Column('conference_date', db.Date(), info={'label': 'วันที่จัดประชุม'}) presentation_date = db.Column('presentation_date', db.Date(), info={'label': 'วันที่นำเสนอผลงาน'}) presentation_type = db.Column('presentation_type', db.String(), info={'label': 'ประเภทการนำเสนอ'}) amount = db.Column('amount', db.Numeric(), default=0.0, info={'label': 'จำนวนเงินที่ขอสนับสนุน'}) researcher_id = db.Column('researcher_id', db.ForeignKey('users.id')) researcher = db.relationship( User, backref=db.backref('intl_conference_supports')) submitted_at = db.Column('submitted_at', db.DateTime(timezone=True)) edited_at = db.Column('edited_at', db.DateTime(timezone=True)) approved_at = db.Column('approved_at', db.DateTime(timezone=True))
class CissViewContasReceber(db.Model): """ Representa a View CONTAS_RECEBER_SALDOS_VIEW do Ciss """ __bind_key__ = 'ciss' __tablename__ = 'CONTAS_RECEBER_SALDOS_VIEW' idempresa = db.Column(db.Integer, primary_key=True) idtitulo = db.Column(db.Integer, primary_key=True) digitotitulo = db.Column(db.Integer, primary_key=True) origemmovimento = db.Column(db.String(5)) dtmovimento = db.Column(db.Date()) dtvencimento = db.Column(db.Date()) valliquidotitulo = db.Column(db.Numeric(12, 3)) valtitulo = db.Column(db.Numeric(12, 3)) flagbaixada = db.Column( db.String(1), db.CheckConstraint("flagbaixada='T' or flagbaixada='F'")) idclifor = db.Column(db.Integer, db.ForeignKey('CLIENTE_FORNECEDOR.idclifor'), primary_key=True) idrecebimento = db.Column(db.Integer, db.ForeignKey('FORMA_PAGREC.idrecebimento')) # relacionamento que possui o cliente da relação com CLIENTE_FORNECEDOR cliente = db.relationship('CissClienteFornecedor')
class Ibcontract(db.Model): # feed static data from daily statement reports assetCategory = db.Column(db.String(25), nullable=True) symbol = db.Column(db.String(50), nullable=True) # derviative / underlying description = db.Column(db.String(75), nullable=True) # for human only, don't use for mapping conid = db.Column(db.BigInteger, primary_key=True) isin = db.Column(db.String(25), nullable=True) listingExchange = db.Column(db.String(25), nullable=True) underlyingConid = db.Column(db.Numeric(15, asdecimal=False), nullable=True) underlyingSymbol = db.Column(db.String(50), nullable=True) underlyingSecurityID = db.Column(db.String(25), nullable=True) underlyingListingExchange = db.Column(db.String(25), nullable=True) multiplier = db.Column(db.Numeric(15, 6), nullable=True) strike = db.Column(db.Numeric(15, 6), nullable=True) expiry = db.Column(db.Date(), nullable=True) # derivative putCall = db.Column(db.String(10), nullable=True) maturity = db.Column(db.Date(), nullable=True) # for bonds issueDate = db.Column(db.Date(), nullable=True) underlyingCategory = db.Column(db.String(25), nullable=True) # in reports but not in exec subCategory = db.Column(db.String(25), nullable=True) # report only currency = db.Column(db.String(5), nullable=True) # not available in reports (SecuritiesInfo) but in exec ibexecutionrestfuls = db.relationship('Ibexecutionrestful', backref='ibasset', lazy='dynamic') # expose bridge 'ibasset' in Ibexecutionrestful bloom = db.relationship("Ibsymbology", uselist=False, back_populates="ibcontract") def __repr__(self): return f'<Ibcontract:: {self.conid} {self.assetCategory} {self.multiplier} {self.symbol}>'
class Event(Base): __tablename__ = 'events' id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String()) start_date = db.Column(db.Date()) end_date = db.Column(db.Date()) attendees = db.Column(db.Integer())
class Game(db.Model): id = db.Column(db.Integer, primary_key=True) nama = db.Column(db.String(50), unique=True) deskripsi = db.Column(db.String(100)) tanggal_pinjam = db.Column(db.Date()) tanggal_kembali = db.Column(db.Date()) is_rental = db.Column(db.Boolean, default=False) user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=True)
class Password(db.Model): id = db.Column(db.Integer, primary_key=True) pass_phrase = db.Column(db.String(50), index=True, unique=True) password = db.Column(db.String(50)) create_date = db.Column(db.Date()) expiry_date = db.Column(db.Date()) def __repr__(self): return '<User %r>' % (self.pass_phrase)
class AidInstitution(db.Model): __tablename__ = 'aid_institution' id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String) url_site = db.Column(db.String) contact_id = db.Column(db.Integer, db.ForeignKey('contact.id')) contact = db.relationship('Contact', back_populates='aid_institution') file_id = db.Column(db.Integer, db.ForeignKey('file.id')) file = db.relationship('File', back_populates='aid_institution') created_at = db.Column(db.Date()) updated_at = db.Column(db.Date()) deleted_at = db.Column(db.Date()) def __int__(self, name, url_site, contact_id, file_id, created_at): self.name = name self.url_site = url_site self.contact_id = contact_id self.file_id = file_id self.created_at = created_at def patch_model(self, content): self.name = content['name'] if content.get('name') else self.name self.url_site = content['urlSite'] if content.get( 'urlSite') else self.url_site if content.get('contact'): models.models_create_aux.set_contact_id(content['contact'], self.contact_id) if content.get('file'): models.models_create_aux.set_file_id(content['file'], self.file_id) self.updated_at = content['updatedAt'] if content.get( 'updatedAt') else self.created_at self.deleted_at = content['deletedAt'] if content.get( 'deletedAt') else self.deleted_at self.contact.deleted_at = self.deleted_at self.file.deleted_at = self.deleted_at def __repr__(self): return '<id {}>'.format(self.id) def serialize(self): return { 'id': self.id, 'name': self.name, 'urlSite': self.url_site, 'contact': self.contact.serialize(), 'file': self.file.serialize(), 'createdAt': self.created_at, 'updatedAt': self.updated_at, 'deletedAt': self.deleted_at }
class AtividadeProfissional(db.Model): __tablename__ = 'atividades_profissionais' id = db.Column(db.Integer, primary_key=True) atuacao_profissional_id = db.Column(db.Integer, db.ForeignKey('atuacoes_profissionais.id'), nullable=False) descricao = db.Column(db.String(200), nullable=False) inicio = db.Column(db.Date(), nullable=False) termino = db.Column(db.Date()) def __repr__(self): return '<Atividades Profissionais %s>' % self.descricao
class AtuacaoProfissional(db.Model): __tablename__ = 'atuacoes_profissionais' id = db.Column(db.Integer, primary_key=True) usuario_id = db.Column(db.Integer, db.ForeignKey('usuarios.id'), nullable=False) instituicao_id = db.Column(db.Integer, db.ForeignKey('instituicoes.id'), nullable=False) inicio = db.Column(db.Date(), nullable=False) termino = db.Column(db.Date()) def __repr__(self): return '<Atuação Profissional %s>' % self.instituicao_id
class Contribution(Base): __tablename__ = 'contribution' employee_number = db.Column( db.String(20), db.ForeignKey('auth_user.employee_number', ondelete='CASCADE')) trans_date = db.Column(db.Date()) period = db.Column(db.Date()) amount = db.Column(db.Numeric(15, 2)) contributor = db.Column(db.String(1), nullable=False) # M = Member, E = Employer trans_type = db.Column(db.String(3), nullable=False)
class FormacaoAcademica(db.Model): __tablename__ = 'formacoes_academicas' id = db.Column(db.Integer, primary_key=True) usuario_id = db.Column(db.Integer, db.ForeignKey('usuarios.id'), nullable=False) curso_id = db.Column(db.Integer, db.ForeignKey('cursos.id'), nullable=False) trabalho_conclusao = db.Column(db.String(200), nullable=False) inicio = db.Column(db.Date(), nullable=False) termino = db.Column(db.Date()) def __repr__(self): return '<Formação Acadêmica %s>' % self.trabalho_conclusao.nome
class User(db.Model): __tablename__ = "user" id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(128), unique=True, nullable=False) follower_date = db.Column(db.Date(), nullable=True) following_date = db.Column(db.Date(), default=True, nullable=True) def __init__(self, username, follower_date=sqlalchemy.sql.null(), following_date=sqlalchemy.sql.null()): self.username = username self.follower_date = follower_date self.following_date =following_date
class FormacaoComplementar(db.Model): __tablename__ = 'formacoes_complementares' id = db.Column(db.Integer, primary_key=True) usuario_id = db.Column(db.Integer, db.ForeignKey('usuarios.id'), nullable=False) instituicao_id = db.Column(db.Integer, db.ForeignKey('instituicoes.id'), nullable=False) descricao = db.Column(db.String(200), nullable=False) inicio = db.Column(db.Date(), nullable=False) termino = db.Column(db.Date()) def __repr__(self): return '<Formação Complementar %s>' % self.descricao
class Balance_sheet(db.Model): id = db.Column(db.Integer, primary_key = True) emp_id = db.Column(db.Integer, db.ForeignKey('employees.id'), nullable = False) from_date = db.Column(db.Date(), nullable = False) to_date = db.Column(db.Date(), nullable = False) leave_type = db.Column(db.Enum('General','Medical'), nullable = False) purpose = db.Column(db.String(200), nullable = False) hr_remark = db.Column(db.String(128), nullable = True, default=None) hr_approval = db.Column(db.Enum('Approved','Unapproved'), nullable = True, default=None) manager_remark = db.Column(db.String(128), nullable = True, default=None) manager_approval = db.Column(db.Enum('Approved','Unapproved'), nullable = True, default=None) time_stamp = db.Column(db.Date(), nullable = False)
class Person(db.Model): __tablename__ = 'person' id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String()) contact_id = db.Column(db.Integer, db.ForeignKey('contact.id')) contact = db.relationship("Contact", back_populates="person") file_id = db.Column(db.Integer, db.ForeignKey('file.id')) file = db.relationship("File", back_populates="person") welcoming = db.relationship("Welcoming", back_populates="person") created_at = db.Column(db.Date()) updated_at = db.Column(db.Date()) deleted_at = db.Column(db.Date()) def __init__(self, name, contact_id, file_id, created_at): self.name = name self.contact_id = contact_id self.file_id = file_id self.created_at = created_at def patch_model(self, content): self.name = content['name'] if content.get('name') else self.name if content.get('contact'): models.models_create_aux.set_contact_id(content['contact'], self.contact_id) if content.get('file'): models.models_create_aux.set_file_id(content['file'], self.file_id) self.updated_at = content['updatedAt'] if content.get('updatedAt') else self.created_at self.deleted_at = content['deletedAt'] if content.get('deletedAt') else self.deleted_at # self.contact.deleted_at = self.deleted_at # self.file.deleted_at = self.deleted_at def __repr__(self): return '<id {}>'.format(self.id) def serialize(self): return { 'id': self.id, 'name': self.name, 'contact': self.contact.serialize(), 'file': self.file.serialize(), 'createdAt': self.created_at, 'updatedAt': self.updated_at, 'deletedAt': self.deleted_at }
class Site(db.Model): # 현장db id = db.Column(db.Integer, primary_key=True) type = db.Column(db.String(30), nullable=False) # 현장타입 fullname = db.Column(db.String(30), unique=True, nullable=False) # 현장명 nickname = db.Column(db.String(10), unique=True, nullable=False) # 현장 짧은이름 service = db.Column(db.String(30), nullable=False) # 용역명 order = db.Column(db.String(10), nullable=True) # 발주처 supervisor = db.Column(db.String(10), nullable=True) # 감리단 constructor = db.Column(db.String(10), nullable=True) # 시공사 cost = db.Column(db.BigInteger, nullable=True) # 계약금액 endcost = db.Column(db.BigInteger, nullable=True) # 기성금액 startdate = db.Column(db.Date(), nullable=True) # 시작일시 enddate = db.Column(db.Date(), nullable=True) # 종료일시 memo = db.Column(db.Text(), nullable=True) # 히스토리
class TestGroup(db.Model): '''测试组''' __tablename__ = 'testgroup' id = db.Column(db.Integer(), primary_key=True, autoincrement=True) name = db.Column(db.String(252), unique=True) projectid = db.Column(db.Integer()) status = db.Column(db.Integer(), default=0) # 状态,0正常,1删除 adduser = db.Column(db.Integer(), default=0) addtime = db.Column(db.Date()) updateuser = db.Column(db.Integer(), default=adduser) updatetime = db.Column(db.Date(), default=datetime.datetime.now()) def __repr__(self): return self.name
class Order(db.Model): id = db.Column(db.Integer(), primary_key=True) date = db.Column(db.Date(), nullable=False) status = db.Column(db.Enum('in_progress', 'pending', 'shipped', name='order_statuses'), nullable=False) customer_username = db.Column(db.String(), db.ForeignKey('customer.username')) def __init__(self, **kwargs): self.date = kwargs['date'] self.status = kwargs['status'] self.customer_username = kwargs['customer_username'] def __repr__(self): return 'Order {} by Customer {}'.format(self.id, self.customer_username) def total_price(self): return sum([ books_orders.quantity * books_orders.book.price for books_orders in self.books_orders ]) def formatted_status(self): return humanize(self.status)
class Review(db.Model): ISBN = db.Column(db.String(13), db.ForeignKey('book.ISBN'), primary_key=True) username = db.Column(db.String(), db.ForeignKey('customer.username'), primary_key=True) score = db.Column(db.Integer(), nullable=False) description = db.Column(db.String(), nullable=True) date = db.Column(db.Date(), nullable=False) feedbacks = db.relationship('Feedback', backref=db.backref('review', lazy='joined'), lazy='dynamic') def __init__(self, **kwargs): self.ISBN = kwargs['ISBN'] self.username = kwargs['username'] self.score = kwargs['score'] self.description = kwargs['description'] self.date = kwargs['date'] def __repr__(self): return 'Review on {} by {}'.format(self.ISBN, self.username) __tablename__ = 'review' __tableargs__ = (CheckConstraint('score<=10 AND score>=0', name='score_between_0_and_10'), )
class Recipes(db.Model): id = db.Column(db.Integer(), primary_key=True) title = db.Column(db.String(100)) text = db.Column(db.Text()) date = db.Column(db.Date(), default=datetime.now()) images = db.Column(db.String(255), default='img/recipe__image.png')
class Post(db.Model): id = db.Column(db.Integer, primary_key=True) date = db.Column(db.Date(), unique=False, nullable=False) post_text = db.Column(db.String(1000), unique=False, nullable=False) def __repr__(self): return '<Post %r>' % self.post_text
class Sim(base_model.BaseModel): """ Sim card model class """ __tablename__ = "sims" serial_number = db.Column(db.String(50), primary_key=True) creation_date = db.Column(db.Date()) carrier_id = db.Column(db.Integer, db.ForeignKey("carriers.id")) devices = db.relationship("Device", secondary=devices_sims, backref=db.backref("sims", lazy="dynamic"), lazy="dynamic") events = db.relationship("Event", backref="sim", lazy="dynamic") def __init__(self, serial_number=None, creation_date=None, carrier_id=None): self.serial_number = serial_number self.creation_date = creation_date self.carrier_id = carrier_id def __repr__(self): return "<Sim, serial_number: %r, creation_date: %r, carrier: %r, carrier_id: %r>" % \ (self.serial_number, self.creation_date, self.carrier, self.carrier_id) @staticmethod def get_sim_or_add_it(args): """ Search a sim and retrieve it if exist, else create a new one and retrieve it. If there is not serial_number argument, return None """ from datetime import datetime if "serial_number" in args: sim = Sim.query.filter( Sim.serial_number == args["serial_number"]).first() if not sim: sim = Sim(serial_number=args["serial_number"], creation_date=datetime.now()) db.session.add(sim) try: db.session.commit() except Exception as e: db.session.rollback() application.logger.error( "Error adding new sim, serial_number:" + str(sim.serial_number) + "-" + str(e)) return sim else: return None def add_device(self, device): from app.models.device import Device existent_device = self.devices.filter( Device.device_id == device.device_id).first() if not existent_device: self.devices.append(device)
class Userlog(db.Model): id = db.Column(db.Integer, primary_key=True, index=True) user_id = db.Column(db.Integer, db.ForeignKey('user.id')) timestamp = db.Column(db.Date(), default=datetime.now()) type = db.Column(db.String(8), default='') message = db.Column(db.String(128), default='') added = db.Column(db.DateTime(), default=datetime.now()) last_modified = db.Column(db.DateTime(), default=datetime.now()) def __repr__(self): return f'Timestamp: {self.timestamp}, Message: {self.message}' def dump(self): data = { 'id': self.id, 'user_id': self.user_id, 'timestamp': self.timestamp.timestamp(), 'type': self.type, 'message': self.message, 'added': self.added.timestamp(), 'last_modified': self.last_modified.timestamp() } return json.dumps(data) def load(self, data): data = json.loads(data) self.id = data['id'] self.user_id = data['user_id'] self.timestamp = datetime.fromtimestamp(data['timestamp']) self.type = data['type'] self.message = data['message'] self.added = datetime.fromtimestamp(data['added']) self.last_modified = datetime.now() return 0
class Ibexecutionrestful(db.Model): # exec execution_m_acctNumber = db.Column(db.String(25)) execution_m_orderId = db.Column(db.BigInteger) execution_m_time = db.Column(db.DateTime) execution_m_permId = db.Column(db.BigInteger, nullable=True) execution_m_price = db.Column(db.Numeric(15, 6)) execution_m_avgPrice = db.Column(db.Numeric(15, 6), nullable=True) execution_m_cumQty = db.Column(db.BigInteger, nullable=True) execution_m_side = db.Column(db.String(15)) execution_m_clientId = db.Column(db.Integer, nullable=True) execution_m_shares = db.Column(db.BigInteger) # execQty execution_m_execId = db.Column(db.String(140), primary_key=True) execution_m_exchange = db.Column(db.String(25), nullable=True) # contract contract_m_tradingClass = db.Column(db.String(15), nullable=True) contract_m_symbol = db.Column(db.String(50)) # underlying contract_m_conId = db.Column(db.BigInteger, nullable=False) contract_m_secType = db.Column(db.String(25), nullable=True) contract_m_right = db.Column(db.String(25), nullable=True) # put / call contract_m_multiplier = db.Column(db.Numeric(15, 6), nullable=True) contract_m_expiry = db.Column(db.Date(), nullable=True) # derivative contract_m_localSymbol = db.Column(db.String(75), nullable=False) # symbol for derivative, m_symbol is the underlying part contract_m_exchange = db.Column(db.String(25), nullable=True) contract_m_strike = db.Column(db.Numeric(15, 6), nullable=True) ibcontract_conid = db.Column(db.BigInteger, db.ForeignKey('ibcontract.conid')) def __repr__(self): return f'<Ibexecutionrestful:: execId: {self.execution_m_execId} for asset: {self.ibcontract_conid}, execQty: {self.execution_m_shares} @ {self.execution_m_price}>'
class Profiles(TableMixin, db.Model): """Model Class""" __tablename__ = 'profiles' uid = db.Column(db.Integer, unique=True, index=True, nullable=False) career = db.Column(db.String(50), nullable=True) education = db.Column(db.String(255), nullable=True) location = db.Column(db.String(255), nullable=True) postcode = db.Column(db.String(32), nullable=True) mobilephone = db.Column(db.String(32), nullable=True) tel = db.Column(db.String(32), nullable=True) skills = db.Column(db.String(255), nullable=True) motto = db.Column(db.String(255), nullable=True) firstname = db.Column(db.String(32), nullable=True) lastname = db.Column(db.String(32), nullable=True) qq = db.Column(db.String(16), nullable=True) weixin = db.Column(db.String(32), nullable=True) weibo = db.Column(db.String(32), nullable=True) idnumber = db.Column(db.String(18), nullable=True) birthday = db.Column(db.Date(), nullable=True) email_notice = db.Column(db.Boolean(), nullable=True, default=False) sms_notice = db.Column(db.Boolean(), nullable=True, default=False) weixin_notice = db.Column(db.Boolean(), nullable=True, default=False) def __repr__(self): """Class Serialization""" return '<Profiles %r>' % self.uid
class DID(db.Model, BaseModel): __tablename__ = 'DID' id = db.Column(db.Integer, primary_key=True, autoincrement=True) value = db.Column(db.String(), nullable=False) monthyPrice = db.Column(db.Float(), nullable=False) setupPrice = db.Column(db.Float(), nullable=False) currency = db.Column(db.String(), nullable=False) saleDate = db.Column(db.Date(), default=None) active = db.Column(db.Boolean(), default=True) def __init__(self, value, monthyPrice, setupPrice, currency): self.value = value self.monthyPrice = decimal.Decimal(monthyPrice).quantize(decimal.Decimal('.01'), rounding=decimal.ROUND_HALF_UP) self.setupPrice = decimal.Decimal(setupPrice).quantize(decimal.Decimal('.01'), rounding=decimal.ROUND_HALF_UP) self.currency = currency def __repr__(self): return '<id {}>'.format(self.id) def serialize(self): return { 'id': self.id, 'value': self.value, 'monthyPrice': self.monthyPrice, 'setupPrice': self.setupPrice, 'currency': self.currency }