26 lines
986 B
Python
26 lines
986 B
Python
from app import db
|
|
from app.utils.time_utils import now_eastern
|
|
|
|
|
|
class InspectorAssignment(db.Model):
|
|
__tablename__ = 'inspector_assignments'
|
|
|
|
id = db.Column(db.Integer, primary_key=True)
|
|
user_id = db.Column(db.Integer,
|
|
db.ForeignKey('users.id', ondelete='CASCADE'),
|
|
nullable=False, index=True)
|
|
project_id = db.Column(db.Integer,
|
|
db.ForeignKey('projects.id', ondelete='CASCADE'),
|
|
nullable=False)
|
|
created_at = db.Column(db.DateTime, nullable=False, default=now_eastern)
|
|
|
|
inspector = db.relationship('User', backref='inspector_assignments')
|
|
project = db.relationship('Project', backref='inspector_assignments')
|
|
|
|
__table_args__ = (
|
|
db.UniqueConstraint('user_id', 'project_id', name='uq_inspector_project'),
|
|
)
|
|
|
|
def __repr__(self):
|
|
return f'<InspectorAssignment user={self.user_id} project={self.project_id}>'
|