def resolve_countries(self, args, context, info): limit = args.get("limit") page = args.get("page") all_issue = Country.get_query(context).all() result = Country.get_query(context).limit(limit).offset(gen_offset_from_page(page, limit)) meta_obj = generate_meta(limit, page, all_issue) return StateResult(data=result, meta=MetaObject(total_pages=meta_obj["total_page"], current=meta_obj["current"], prev_page=meta_obj["prev_page"], next_page=meta_obj["next_page"]))
def resolve_days(self, args, context, info): limit = args.get("limit") page = args.get("page") issue_id = args.get("state_id") all_issue = Day.get_query(context).filter(DayModel.state_id == issue_id).all() result = Day.get_query(context).filter(DayModel.state_id == issue_id).order_by(asc(DayModel.day)).limit( limit).offset( gen_offset_from_page(page, limit)) meta_obj = generate_meta(limit, page, all_issue) return DayResult(data=result, meta=MetaObject(total_pages=meta_obj["total_page"], current=meta_obj["current"], prev_page=meta_obj["prev_page"], next_page=meta_obj["next_page"]))
def resolve_states(self, args, context, info): limit = args.get("limit") page = args.get("page") source_id = args.get("country_id") all_issue = State.get_query(context).filter(StateModel.country_id == source_id).all() result = State.get_query(context).filter(StateModel.country_id == source_id).order_by( desc(StateModel.name_mm_uni)).limit(limit).offset( gen_offset_from_page(page, limit)) meta_obj = generate_meta(limit, page, all_issue) return StateResult(data=result, meta=MetaObject(total_pages=meta_obj["total_page"], current=meta_obj["current"], prev_page=meta_obj["prev_page"], next_page=meta_obj["next_page"]))
def resolve_articles(self, args, context, info): limit = args.get("limit") page = args.get("page") issue_id = args.get("issue_id") all_issue = Article.get_query(context).filter( ArticleModel.issue_id == issue_id).all() result = Article.get_query(context).filter( ArticleModel.issue_id == issue_id).limit(limit).offset( gen_offset_from_page(page, limit)) meta_obj = generate_meta(limit, page, all_issue) return ArticleResult(data=result, meta=MetaObject( total_pages=meta_obj["total_page"], current=meta_obj["current"], prev_page=meta_obj["prev_page"], next_page=meta_obj["next_page"]))