class LicenseInUse(db.Model): __tablename__ = 'license_in_use' license_in_use_guid = db.Column(db.String(32), primary_key=True) computer_name = db.Column(db.Text, nullable=False) user_guid = db.Column(db.ForeignKey('users.user_guid'), nullable=False) license_guid = db.Column(db.ForeignKey('licenses.license_guid'), nullable=False) time_stamp = db.Column(db.DateTime, nullable=False) license = db.relationship('License', primaryjoin='LicenseInUse.license_guid == License.license_guid', backref='license_in_uses') user = db.relationship('User', primaryjoin='LicenseInUse.user_guid == User.user_guid', backref='license_in_uses')
class LogSession(db.Model): __tablename__ = 'log_sessions' log_session_guid = db.Column(db.String(32), primary_key=True) session_start = db.Column(db.DateTime, nullable=False) session_end = db.Column(db.DateTime) logging_interval = db.Column(db.Integer, nullable=False) logger_guid = db.Column(db.ForeignKey('assets.asset_guid'), nullable=False) user_guid = db.Column(db.ForeignKey('users.user_guid'), nullable=False) session_type = db.Column(db.SmallInteger, nullable=False) computer_name = db.Column(db.Text, nullable=False) asset = db.relationship('Asset', primaryjoin='LogSession.logger_guid == Asset.asset_guid', backref='log_sessions') user = db.relationship('User', primaryjoin='LogSession.user_guid == User.user_guid', backref='log_sessions')
class Reading(db.Model): __tablename__ = 'readings' reading_guid = db.Column(db.String(32), primary_key=True) reading = db.Column(db.Float(53), nullable=False) reading_type = db.Column(db.SmallInteger, nullable=False) time_stamp = db.Column(db.DateTime, nullable=False) log_session_guid = db.Column(db.ForeignKey('log_sessions.log_session_guid'), nullable=False) sensor_guid = db.Column(db.ForeignKey('assets.asset_guid'), nullable=False) location_guid = db.Column(db.ForeignKey('locations.location_guid'), nullable=False) channel = db.Column(db.SmallInteger, nullable=False) max_alarm = db.Column(db.Boolean) max_alarm_value = db.Column(db.Float(53)) min_alarm = db.Column(db.Boolean) min_alarm_value = db.Column(db.Float(53)) compromised = db.Column(db.Boolean)
class Annotation(db.Model): __tablename__ = 'annotations' annotation_guid = db.Column(db.String(32), primary_key=True) reading_guid = db.Column(db.ForeignKey('readings.reading_guid'), nullable=False) annotation = db.Column(db.Text) reading = db.relationship('Reading', primaryjoin='Annotation.reading_guid == Reading.reading_guid', backref='annotations')
class SensorParameter(db.Model): __tablename__ = 'sensor_parameters' log_session_guid = db.Column(db.ForeignKey('log_sessions.log_session_guid'), primary_key=True, nullable=False) channel = db.Column(db.SmallInteger, primary_key=True, nullable=False) parameter_name = db.Column(db.String(128), primary_key=True, nullable=False) parameter_value = db.Column(db.String(128), nullable=False) log_session = db.relationship('LogSession', primaryjoin='SensorParameter.log_session_guid == ' 'LogSession.log_session_guid', backref='sensor_parameters')