yp_library.utils module¶
- yp_library.utils.get_lendinfo_by_readers(readers: QuerySet) Tuple[List[dict], List[dict]] [源代码]¶
查询同一user关联的读者的借阅信息
- 参数:
readers (QuerySet[Reader]) -- 与user关联的所有读者
- 返回:
两个list,分别表示未归还记录和已归还记录
- 返回类型:
List[dict], List[dict]
- yp_library.utils.get_library_activity(num: int) QuerySet [源代码]¶
获取书房欢迎页面展示的活动列表 目前筛选活动的逻辑是:书房组织的、状态为报名中/等待中/进行中、活动开始时间越晚越优先
- 参数:
num (int) -- 最多展示多少活动
- 返回:
展示的活动
- 返回类型:
QuerySet[Activity]
- yp_library.utils.get_my_records(reader_id: str, returned: bool | None = None, status: list | int | Status = None) List[dict] [源代码]¶
查询给定读者的借书记录
- 参数:
reader_id (str) -- reader的id
returned (bool, optional) -- 如非空,则限定是否已归还, defaults to None
status (Union[list, tuple, int, LendRecord.Status], optional) -- 如非空,则限定当前状态, defaults to None
- 返回:
查询结果,每个记录包括val_list中的属性以及记录类型(key为'type': 对于已归还记录,False表示逾期记录,True表示正常记录;对于未归还记录, 'normal'表示一般记录,'overtime'表示逾期记录,'approaching'表示接近 期限记录即距离应归还时期<=1天)
- 返回类型:
List[dict]
- yp_library.utils.get_query_dict(post_dict: QueryDict) Dict[str, Any] [源代码]¶
从HttpRequest的POST中提取出用作search_books参数的query_dict
- 参数:
post_dict (QueryDict) -- request.POST
- 返回:
一个词典,key为id/identity_code/title/author/publisher/returned/keywords, value为相应的query
- 返回类型:
dict
- yp_library.utils.get_readers_by_user(user: User) QuerySet [源代码]¶
根据学号寻找与user关联的reader,要求必须为个人账号且账号必须通过学号关联至少一个reader,否则抛出AssertionError
- yp_library.utils.get_recommended_or_newest_books(num: int, newest: bool = False) QuerySet [源代码]¶
获取推荐/新入馆书目(以id为入馆顺序)
- 参数:
num (int) -- 最多展示多少本书
newest (bool, optional) -- 是否获取新入馆书目, defaults to False
- 返回:
包含推荐书目/新入馆书目的QuerySet
- 返回类型:
QuerySet[Book]
- yp_library.utils.search_books(**query_dict) QuerySet [源代码]¶
根据给定的属性查询书
- 参数:
query_dict (dict) -- key为id/identity_code/title/author/publisher/returned, value为相应的query id和returned是精确查询,剩下四个是string按contains查询 特别地,还支持全关键词查询:同时在identity_code/title/author/publisher中检索word
- 返回:
查询结果,每个记录是Book表的一行
- 返回类型:
QuerySet[Book]
- yp_library.utils.to_feedback_url(request: HttpRequest) str [源代码]¶
检查预约记录是否可以申诉。 如果可以,向session添加传递到反馈填写界面的信息。 最终函数返回跳转到的url。
- 参数:
request (HttpRequest) -- http请求
- 返回:
即将跳转到的url
- 返回类型:
str