12345678910111213141516171819202122232425262728293031323334 |
- from app import db
- from datetime import datetime
- class ParseTaskRepository(db.Model):
- __tablename__ = 'parse_task_repository'
-
- id = db.Column(db.Integer, primary_key=True, autoincrement=True)
- task_name = db.Column(db.String(100), nullable=False)
- task_status = db.Column(db.String(10), nullable=False)
- task_type = db.Column(db.String(50), nullable=False)
- task_source = db.Column(db.JSON, nullable=False) # Changed to JSON to match jsonb
- collection_count = db.Column(db.Integer, default=0, nullable=False)
- parse_count = db.Column(db.Integer, default=0, nullable=False)
- parse_result = db.Column(db.JSON) # Changed to JSON to match jsonb
- created_at = db.Column(db.DateTime, default=datetime.utcnow, nullable=False) # Changed to utcnow to match CURRENT_TIMESTAMP
- created_by = db.Column(db.String(50), nullable=False)
- updated_at = db.Column(db.DateTime, default=datetime.utcnow, onupdate=datetime.utcnow, nullable=False) # Changed to utcnow
- updated_by = db.Column(db.String(50), nullable=False)
-
- def to_dict(self):
- return {
- 'id': self.id,
- 'task_name': self.task_name,
- 'task_status': self.task_status,
- 'task_type': self.task_type,
- 'task_source': self.task_source,
- 'collection_count': self.collection_count,
- 'parse_count': self.parse_count,
- 'parse_result': self.parse_result,
- 'created_at': self.created_at.strftime('%Y-%m-%d %H:%M:%S') if self.created_at else None,
- 'created_by': self.created_by,
- 'updated_at': self.updated_at.strftime('%Y-%m-%d %H:%M:%S') if self.updated_at else None,
- 'updated_by': self.updated_by
- }
|