"""ReviewStatusType.""" from oto import response from sqlalchemy import Column from sqlalchemy import Integer from sqlalchemy import String from content_review.connectors import mysql class ReviewStatusType(mysql.BaseModel): """ReviewStatusType Model.""" __tablename__ = 'review_status_type' status_type_id = Column('id', Integer, primary_key=True, key='id') status = Column('status', String) DEFAULT_FIELDS = { ReviewStatusType.status_type_id, ReviewStatusType.status } def get_status_types(flipped_dict=False): """Get all status types. Args: flipped_dict (bool): If true it returns named object with id as value Returns: response.Response: containing dict of status types or error. """ with mysql.db_session() as session: rows = session.query(*DEFAULT_FIELDS).all() response_data = {} if rows: if flipped_dict: for row in rows: response_data[row.status] = row.status_type_id else: response_data = [row._asdict() for row in rows] return response.Response(response_data) return response.create_not_found_response()