27 lines
1.1 KiB
Python
27 lines
1.1 KiB
Python
def serialize_job_post(row) -> dict:
|
|
return {
|
|
"id": str(row.id),
|
|
"title": row.title,
|
|
"employment_type": row.employment_type,
|
|
"location": row.location,
|
|
"experience_min": row.experience_min,
|
|
"experience_max": row.experience_max,
|
|
"requirements": list(row.requirements or []),
|
|
"optional_skills": list(row.optional_skills or []),
|
|
"salary": row.salary,
|
|
"description": row.description,
|
|
"post_text": row.post_text,
|
|
"channel_id": row.channel_id,
|
|
"platform": row.platform,
|
|
"is_active": row.is_active,
|
|
"is_deleted": row.is_deleted,
|
|
"buffer_post_id": row.buffer_post_id,
|
|
"buffer_external_link": row.buffer_external_link,
|
|
"buffer_sent_at": row.buffer_sent_at.isoformat() if row.buffer_sent_at else None,
|
|
"status": row.status,
|
|
"buffer_error": row.buffer_error,
|
|
"created_by": str(row.created_by) if row.created_by else None,
|
|
"created_at": row.created_at.isoformat() if row.created_at else None,
|
|
"updated_at": row.updated_at.isoformat() if row.updated_at else None,
|
|
}
|