class CrcPURCHASE(db.Model): """Represents a CrcPURCHASE record.""" def __init__(self): pass __tablename__ = 'crcPURCHASE' id = db.Column(db.Integer(15, unsigned=True), nullable=False, primary_key=True, autoincrement=True) id_bibrec = db.Column(db.MediumInteger(8, unsigned=True), db.ForeignKey(Bibrec.id), nullable=False, server_default='0') id_crcVENDOR = db.Column(db.Integer(15, unsigned=True), db.ForeignKey(CrcVENDOR.id), nullable=False, server_default='0') ordered_date = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') expected_date = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') price = db.Column(db.String(20), nullable=False, server_default='0') status = db.Column(db.String(20), nullable=False, server_default='') notes = db.Column(db.Text, nullable=True) bibrec = db.relationship(Bibrec, backref='purchases') vendor = db.relationship(CrcVENDOR, backref='purchases')
class CrcLOANREQUEST(db.Model): """Represents a CrcLOANREQUEST record.""" def __init__(self): pass __tablename__ = 'crcLOANREQUEST' id = db.Column(db.Integer(15, unsigned=True), nullable=False, primary_key=True, autoincrement=True) id_crcBORROWER = db.Column(db.Integer(15, unsigned=True), db.ForeignKey(CrcBORROWER.id), nullable=False, server_default='0') id_bibrec = db.Column(db.MediumInteger(8, unsigned=True), db.ForeignKey(Bibrec.id), nullable=False, server_default='0') barcode = db.Column(db.String(30), db.ForeignKey(CrcITEM.barcode), nullable=False, server_default='') period_of_interest_from = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') period_of_interest_to = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') status = db.Column(db.String(20), nullable=False, server_default='') notes = db.Column(db.Text, nullable=True) request_date = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') borrower = db.relationship(CrcBORROWER, backref='loanrequests') bibrec = db.relationship(Bibrec, backref='loanrequests') item = db.relationship(CrcITEM, backref='loanrequests')
class CrcBORROWER(db.Model): """Represents a CrcBORROWER record.""" def __init__(self): pass __tablename__ = 'crcBORROWER' id = db.Column(db.Integer(15, unsigned=True), nullable=False, primary_key=True, autoincrement=True) ccid = db.Column(db.Integer(15, unsigned=True), nullable=True, unique=True, server_default=None) name = db.Column(db.String(255), nullable=False, server_default='', index=True) email = db.Column(db.String(255), nullable=False, server_default='', index=True) phone = db.Column(db.String(60), nullable=True) address = db.Column(db.String(60), nullable=True) mailbox = db.Column(db.String(30), nullable=True) borrower_since = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') borrower_until = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') notes = db.Column(db.Text, nullable=True)
class OaiREPOSITORY(db.Model): """Represents a OaiREPOSITORY record.""" __tablename__ = 'oaiREPOSITORY' id = db.Column(db.MediumInteger(9, unsigned=True), nullable=False, primary_key=True, autoincrement=True) setName = db.Column(db.String(255), nullable=False, server_default='') setSpec = db.Column(db.String(255), nullable=False, server_default='') setCollection = db.Column(db.String(255), nullable=False, server_default='') setDescription = db.Column(db.Text, nullable=False) setDefinition = db.Column(db.Text, nullable=False) setRecList = db.Column(db.iLargeBinary, nullable=True) last_updated = db.Column(db.DateTime, nullable=False, server_default='1970-01-01 00:00:00') p1 = db.Column(db.Text, nullable=False) f1 = db.Column(db.Text, nullable=False) m1 = db.Column(db.Text, nullable=False) p2 = db.Column(db.Text, nullable=False) f2 = db.Column(db.Text, nullable=False) m2 = db.Column(db.Text, nullable=False) p3 = db.Column(db.Text, nullable=False) f3 = db.Column(db.Text, nullable=False) m3 = db.Column(db.Text, nullable=False)
class Bibdocfsinfo(db.Model): """Represents a Bibdocfsinfo record.""" __tablename__ = 'bibdocfsinfo' id_bibdoc = db.Column(db.MediumInteger(9, unsigned=True), db.ForeignKey(Bibdoc.id), primary_key=True, nullable=False, autoincrement=False) version = db.Column(db.TinyInteger(4, unsigned=True), primary_key=True, nullable=False, autoincrement=False) format = db.Column(db.String(50), primary_key=True, nullable=False, index=True) last_version = db.Column(db.Boolean, nullable=False, index=True) cd = db.Column(db.DateTime, nullable=False, index=True) md = db.Column(db.DateTime, nullable=False, index=True) checksum = db.Column(db.Char(32), nullable=False) filesize = db.Column(db.BigInteger(15, unsigned=True), nullable=False, index=True) mime = db.Column(db.String(100), nullable=False, index=True) master_format = db.Column(db.String(50))
class LnkENTRY(db.Model): """Represents a LnkENTRY record.""" __tablename__ = 'lnkENTRY' id = db.Column(db.Integer(15, unsigned=True), primary_key=True, nullable=False) origin_url = db.Column(db.String(100), nullable=False) id_bibrec = db.Column(db.MediumInteger(8, unsigned=True), db.ForeignKey(Bibrec.id), nullable=False) additional_properties = db.Column(db.Binary) type = db.Column(db.String(30), nullable=False, index=True) status = db.Column(db.String(30), nullable=False, server_default='PENDING', index=True) insert_time = db.Column(db.DateTime, server_default='1900-01-01 00:00:00', index=True) @property def title(self): try: return db.object_session(self).query(LnkENTRYURLTITLE).\ filter(db.and_( LnkENTRYURLTITLE.url==self.origin_url, LnkENTRYURLTITLE.title<>"", LnkENTRYURLTITLE.broken==0)).first().title except: return self.origin_url
class Goto(db.Model): """Represents a Goto record.""" __tablename__ = 'goto' label = db.Column(db.String(150), primary_key=True) plugin = db.Column(db.String(150), nullable=False) parameters = db.Column(db.Text, nullable=False) creation_date = db.Column(db.DateTime, nullable=False, index=True) modification_date = db.Column(db.DateTime, nullable=False, index=True)
class LnkADMINURL(db.Model): """Represents a LnkADMINURL record.""" __tablename__ = 'lnkADMINURL' id = db.Column(db.Integer(15, unsigned=True), primary_key=True, nullable=False) url = db.Column(db.String(100), nullable=False, unique=True) list = db.Column(db.String(30), nullable=False, index=True)
class WapCACHE(db.Model): """Represents a WapCACHE record.""" __tablename__ = 'wapCACHE' object_name = db.Column(db.String(120), primary_key=True, nullable=False) object_key = db.Column(db.String(120), primary_key=True, nullable=False) object_value = db.Column(db.Text) #FIXME LongText object_status = db.Column(db.String(120), index=True) last_updated = db.Column(db.DateTime, nullable=False, index=True)
class AccROLE(db.Model): """Represents a AccROLE record.""" __tablename__ = 'accROLE' id = db.Column(db.Integer(15, unsigned=True), primary_key=True, autoincrement=True) name = db.Column(db.String(32), unique=True, nullable=True) description = db.Column(db.String(255), nullable=True) firerole_def_ser = db.Column(db.iBinary, nullable=True) firerole_def_src = db.Column(db.Text, nullable=True)
class BsrMETHOD(db.Model): """Represents a BsrMETHOD record.""" __tablename__ = 'bsrMETHOD' id = db.Column(db.MediumInteger(9, unsigned=True), primary_key=True, nullable=False) name = db.Column(db.String(20), nullable=False, unique=True) definition = db.Column(db.String(255), nullable=False) washer = db.Column(db.String(255), nullable=False)
class AccARGUMENT(db.Model): """Represents a AccARGUMENT record.""" __tablename__ = 'accARGUMENT' id = db.Column( db.Integer(15), # , unsigned=True), primary_key=True, autoincrement=True) keyword = db.Column(db.String(32), nullable=True) value = db.Column(db.String(255), nullable=True) __table_args__ = (db.Index('KEYVAL', keyword, value), db.Model.__table_args__)
class CrcILLREQUEST(db.Model): """Represents a CrcILLREQUEST record.""" def __init__(self): pass __tablename__ = 'crcILLREQUEST' id = db.Column(db.Integer(15, unsigned=True), nullable=False, primary_key=True, autoincrement=True) id_crcBORROWER = db.Column(db.Integer(15, unsigned=True), db.ForeignKey(CrcBORROWER.id), nullable=False, server_default='0') barcode = db.Column(db.String(30), db.ForeignKey(CrcITEM.barcode), nullable=False, server_default='') period_of_interest_from = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') period_of_interest_to = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') id_crcLIBRARY = db.Column(db.Integer(15, unsigned=True), db.ForeignKey(CrcLIBRARY.id), nullable=False, server_default='0') request_date = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') expected_date = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') arrival_date = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') due_date = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') return_date = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') status = db.Column(db.String(20), nullable=False, server_default='') cost = db.Column(db.String(30), nullable=False, server_default='') budget_code = db.Column(db.String(60), nullable=False, server_default='') item_info = db.Column(db.Text, nullable=True) request_type = db.Column(db.Text, nullable=True) borrower_comments = db.Column(db.Text, nullable=True) only_this_edition = db.Column(db.String(10), nullable=False, server_default='') library_notes = db.Column(db.Text, nullable=True) overdue_letter_number = db.Column(db.Integer(3, unsigned=True), nullable=False, server_default='0') overdue_letter_date = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') borrower = db.relationship(CrcBORROWER, backref='illrequests') item = db.relationship(CrcITEM, backref='illrequests') library = db.relationship(CrcLIBRARY, backref='illrequests')
class BsrMETHODNAME(db.Model): """Represents a BsrMETHODNAME record.""" __tablename__ = 'bsrMETHODNAME' id_bsrMETHOD = db.Column(db.MediumInteger(9, unsigned=True), db.ForeignKey(BsrMETHOD.id), primary_key=True, nullable=False, autoincrement=False) ln = db.Column(db.String(5), primary_key=True, nullable=False) type = db.Column(db.String(3), primary_key=True, nullable=False) value = db.Column(db.String(255), nullable=False)
class SeqSTORE(db.Model): """Represents a SeqSTORE record.""" __tablename__ = 'seqSTORE' id = db.Column(db.Integer(8), primary_key=True, nullable=False) seq_name = db.Column(db.String(15)) seq_value = db.Column(db.String(20)) __table_args__ = (db.Index('seq_name_value', seq_name, seq_value, unique=True), db.Model.__table_args__)
class AccACTION(db.Model): """Represents a AccACTION record.""" __tablename__ = 'accACTION' id = db.Column(db.Integer(15, unsigned=True), primary_key=True, autoincrement=True) name = db.Column(db.String(32), unique=True, nullable=True) description = db.Column(db.String(255), nullable=True) allowedkeywords = db.Column(db.String(255), nullable=True) optional = db.Column(db.Enum('yes', 'no'), nullable=False, server_default='no')
class HstBATCHUPLOAD(db.Model): """Represents a HstBATCHUPLOAD record.""" __tablename__ = 'hstBATCHUPLOAD' id = db.Column(db.Integer(15, unsigned=True), nullable=False, primary_key=True, autoincrement=True) user = db.Column(db.String(50), nullable=False, index=True) submitdate = db.Column(db.DateTime, nullable=False) filename = db.Column(db.String(255), nullable=False) execdate = db.Column(db.DateTime, nullable=False) id_schTASK = db.Column(db.Integer(15, unsigned=True), db.ForeignKey(SchTASK.id), nullable=False) batch_mode = db.Column(db.String(15), nullable=False) task = db.relationship(SchTASK, backref='batchuploads')
class AuditLogging(db.Model): __tablename__ = "bwlAUDITLOGGING" id = db.Column(db.Integer, primary_key=True) action = db.Column(db.String(255), nullable=False) time = db.Column(db.DateTime, nullable=False) user = db.Column(db.String(255), nullable=False) def __init__(self, action, time, user): self.action = action self.time = time self.user = user def __repr__(self): return "<Task(%s, %s, %s)>" % (self.action, self.time, self.user)
class WebDepositDraft(db.Model): """Represents a deposition draft.""" __tablename__ = 'depDRAFT' uuid = db.Column(db.String(36), db.ForeignKey(Workflow.uuid), primary_key=True) step = db.Column(db.Integer(15, unsigned=True), primary_key=True, autoincrement=False) form_type = db.Column(db.String(45), nullable=False) form_values = db.Column(db.JSON, nullable=False) status = db.Column(db.Integer(15, unsigned=True), autoincrement=False) timestamp = db.Column(db.DateTime, nullable=False) workflow = db.relationship(Workflow, backref='drafts')
class LnkENTRYURLTITLE(db.Model): """Represents a LnkENTRYURLTITLE record.""" __tablename__ = 'lnkENTRYURLTITLE' id = db.Column(db.Integer(15, unsigned=True), primary_key=True, nullable=False) url = db.Column(db.String(100), nullable=False, unique=True) title = db.Column(db.String(100), nullable=False, index=True) manual_set = db.Column(db.TinyInteger(1), nullable=False, server_default='0') broken_count = db.Column(db.Integer(5), server_default='0') broken = db.Column(db.TinyInteger(1), nullable=False, server_default='0')
class WorkflowLogging(db.Model): __tablename__ = "bwlWORKFLOWLOGGING" id = db.Column(db.Integer, primary_key=True) workflow_name = db.Column(db.String(255), nullable=False) data = db.Column(db.String(255), nullable=False) created = db.Column(db.DateTime, nullable=False) def __init__(self, workflow_name, data, created): self.workflow_name = workflow_name self.data = data self.created = created def __repr__(self): return "<Task(%i, %s, %s, %s)>" % (self.id, self.workflow_name, self.data, self.created)
class JrnISSUE(db.Model): """Represents a JrnISSUE record.""" __tablename__ = 'jrnISSUE' id_jrnJOURNAL = db.Column(db.MediumInteger(9, unsigned=True), db.ForeignKey(JrnJOURNAL.id), nullable=False, primary_key=True) issue_number = db.Column(db.String(50), nullable=False, server_default='', primary_key=True) issue_display = db.Column(db.String(50), nullable=False, server_default='') date_released = db.Column(db.DateTime, nullable=True) date_announced = db.Column(db.DateTime, nullable=True) journal = db.relationship(JrnJOURNAL, backref='issues')
class CrcVENDOR(db.Model): """Represents a CrcVENDOR record.""" def __init__(self): pass __tablename__ = 'crcVENDOR' id = db.Column(db.Integer(15, unsigned=True), nullable=False, primary_key=True, autoincrement=True) name = db.Column(db.String(80), nullable=False, server_default='') address = db.Column(db.String(255), nullable=False, server_default='') email = db.Column(db.String(255), nullable=False, server_default='') phone = db.Column(db.String(30), nullable=False, server_default='') notes = db.Column(db.Text, nullable=True)
class OaiHARVESTLOG(db.Model): """Represents a OaiHARVESTLOG record.""" __tablename__ = 'oaiHARVESTLOG' id_oaiHARVEST = db.Column(db.MediumInteger(9, unsigned=True), db.ForeignKey(OaiHARVEST.id), nullable=False) id_bibrec = db.Column(db.MediumInteger(8, unsigned=True), db.ForeignKey(Bibrec.id), nullable=False, server_default='0') bibupload_task_id = db.Column(db.Integer(11), db.ForeignKey(SchTASK.id), nullable=False, server_default='0', primary_key=True) oai_id = db.Column(db.String(40), nullable=False, server_default='', primary_key=True) date_harvested = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00', primary_key=True) date_inserted = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') inserted_to_db = db.Column(db.Char(1), nullable=False, server_default='P') bibrec = db.relationship(Bibrec, backref='harvestlogs') schtask = db.relationship(SchTASK)
class RnkDOWNLOADS(db.Model): """Represents a RnkDOWNLOADS record.""" __tablename__ = 'rnkDOWNLOADS' id = db.Column(db.Integer, primary_key=True, nullable=False, autoincrement=True) id_bibrec = db.Column(db.MediumInteger(8, unsigned=True), db.ForeignKey(Bibrec.id), nullable=True) download_time = db.Column(db.DateTime, nullable=True, server_default='1900-01-01 00:00:00') client_host = db.Column(db.Integer(10, unsigned=True), nullable=True) id_user = db.Column(db.Integer(15, unsigned=True), db.ForeignKey(User.id), nullable=True) id_bibdoc = db.Column(db.MediumInteger(9, unsigned=True), db.ForeignKey(Bibdoc.id), nullable=True) file_version = db.Column(db.SmallInteger(2, unsigned=True), nullable=True) file_format = db.Column(db.String(50), nullable=True) bibrec = db.relationship(Bibrec, backref='downloads') bibdoc = db.relationship(Bibdoc, backref='downloads') user = db.relationship(User, backref='downloads')
class PidLog(db.Model): """ Audit log of actions happening to persistent identifiers. This model is primarily used through PersistentIdentifier.log and rarely created manually. """ __tablename__ = 'pidLOG' __table_args__ = (db.Index('idx_action', 'action'), ) id = db.Column(db.Integer(15, unsigned=True), primary_key=True) """ Id of persistent identifier entry """ id_pid = db.Column( db.Integer(15, unsigned=True), db.ForeignKey(PersistentIdentifier.id), nullable=True, ) """ PID """ timestamp = db.Column(db.DateTime(), nullable=False, default=datetime.now) """ Creation datetime of entry """ action = db.Column(db.String(10), nullable=False) """ Action identifier """ message = db.Column(db.Text(), nullable=False) """ Log message """
class CrcLOAN(db.Model): """Represents a CrcLOAN record.""" def __init__(self): pass __tablename__ = 'crcLOAN' id = db.Column(db.Integer(15, unsigned=True), nullable=False, primary_key=True, autoincrement=True) id_crcBORROWER = db.Column(db.Integer(15, unsigned=True), db.ForeignKey(CrcBORROWER.id), nullable=False, server_default='0') id_bibrec = db.Column(db.MediumInteger(8, unsigned=True), db.ForeignKey(Bibrec.id), nullable=False, server_default='0') barcode = db.Column(db.String(30), db.ForeignKey(CrcITEM.barcode), nullable=False, server_default='') loaned_on = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') returned_on = db.Column(db.Date, nullable=False, server_default='0000-00-00') due_date = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') number_of_renewals = db.Column(db.Integer(3, unsigned=True), nullable=False, server_default='0') overdue_letter_number = db.Column(db.Integer(3, unsigned=True), nullable=False, server_default='0') overdue_letter_date = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') status = db.Column(db.String(20), nullable=False, server_default='') type = db.Column(db.String(20), nullable=False, server_default='') notes = db.Column(db.Text, nullable=True) borrower = db.relationship(CrcBORROWER, backref='loans') bibrec = db.relationship(Bibrec, backref='loans') item = db.relationship(CrcITEM, backref='loans')
class StaEVENT(db.Model): """Represents a StaEVENT record.""" def __init__(self): pass __tablename__ = 'staEVENT' id = db.Column(db.String(255), nullable=False, primary_key=True) number = db.Column(db.SmallInteger(2, unsigned=True, zerofill=True), nullable=False, autoincrement=True, primary_key=True, unique=True) name = db.Column(db.String(255), nullable=True) creation_time = db.Column(db.TIMESTAMP, nullable=False, server_default=db.func.current_timestamp()) cols = db.Column(db.String(255), nullable=True)
class ClsMETHOD(db.Model): """Represents a ClsMETHOD record.""" def __init__(self): pass __tablename__ = 'clsMETHOD' id = db.Column(db.MediumInteger(9, unsigned=True), primary_key=True) #, #autoincrement=True) name = db.Column(db.String(50), nullable=False, unique=True, server_default='') location = db.Column(db.String(255), nullable=False, server_default='') description = db.Column(db.String(255), nullable=False, server_default='') last_updated = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00')
class CrcITEM(db.Model): """Represents a CrcITEM record.""" def __init__(self): pass __tablename__ = 'crcITEM' barcode = db.Column(db.String(30), nullable=False, server_default='', primary_key=True) id_bibrec = db.Column(db.MediumInteger(8, unsigned=True), db.ForeignKey(Bibrec.id), nullable=False, server_default='0') id_crcLIBRARY = db.Column(db.Integer(15, unsigned=True), db.ForeignKey(CrcLIBRARY.id), nullable=False, server_default='0') collection = db.Column(db.String(60), nullable=True) location = db.Column(db.String(60), nullable=True) description = db.Column(db.String(60), nullable=True) loan_period = db.Column(db.String(30), nullable=False, server_default='') status = db.Column(db.String(20), nullable=False, server_default='') expected_arrival_date = db.Column(db.String(60), nullable=False, server_default='') creation_date = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') modification_date = db.Column(db.DateTime, nullable=False, server_default='1900-01-01 00:00:00') number_of_requests = db.Column(db.Integer(3, unsigned=True), nullable=False, server_default='0')