KenanZhu
0a94c344d5
ci(workflows): 修复 Release 工作流的触发条件
...
- 当创建 'release/v*' 分支时,自动进行 Release 构建
/! Release 流程必须手动创建分支,工作流结束后会将对应分支提交合并
/! 到 main 分支上,且对应分支会被删除
2026-03-17 15:46:32 +08:00
KenanZhu
7df6a9157d
refactor(LibReserve, LibRenew): 提取时间选择公共逻辑到 LibTimeSelector 基类
...
将 LibReserve 和 LibRenew 中重复的时间转换和选择逻辑提取到
LibTimeSelector 基类,消除代码重复,提升可维护性。
主要变更:
- 新增 LibTimeSelector 基类,提供时间转换和最佳时间选择算法
- LibReserve 和 LibRenew 继承 LibTimeSelector,移除重复代码
- 拆分过长方法,提升代码可读性
- 修正方法命名 __selectNearstTime -> __selectNearestTime
同时修复续约功能业务逻辑漏洞:
- 新增续约时间上限校验,防止续约时间超过图书馆闭馆时间(23:30)
2026-03-14 14:48:35 +08:00
KenanZhu
ebe3910df5
fix(AutoLib): 修复自动预约,签到和续约功能的顺序处理逻辑问题
...
边缘情况下,即用户当前的预约时间满足签到或者续约的时间范围要求时,预期的处理顺序是先进行预约,再进行签到或者续约。
该提交修复了对这种情况的处理逻辑,确保先进行预约,再进行签到或者续约。
2026-03-10 11:00:01 +08:00
KenanZhu
155b3fe3ca
style(LibRenew): 删除多余注释,修改部分注释的格式
2026-02-19 17:09:15 +08:00
KenanZhu
99d454a566
refactor(LibChecker, AutoLib): 重构 LibChecker 类中 canRenew 方法的返回值类型:
...
将 canRenew 方法的返回值类型指定为 tuple(bool, dict),并随之修改返回值以及调用
模块的调用逻辑。
2026-02-19 17:05:42 +08:00
KenanZhu
2ffe620532
optimize(AutoLib): 优化图书馆登录页面加载超时处理逻辑
2026-01-26 16:11:26 +08:00
KenanZhu
fe42d3cd98
fix(AutoLib): 修复浏览器驱动初始化的异常控制
2026-01-26 16:10:15 +08:00
KenanZhu
79e2128fca
style(operators.*): 显式指定浏览器驱动类型为 WebDriver
2026-01-16 23:21:36 +08:00
KenanZhu
128c8e7a83
style(*): 移除未使用的 import 语句
2026-01-16 22:37:26 +08:00
KenanZhu
ba60a5d884
style(comment): 修改一些注释格式
2026-01-15 17:08:54 +08:00
KenanZhu
4d8f8130dc
chore(operators.__init__): 添加 LibChecker 类的简介
2026-01-13 22:40:45 +08:00
KenanZhu
bb180f8c8e
fix(ALConfigWidget, LibReserve): 修改二楼楼层区域名称
...
将 二层外环 改为 二层西区
2026-01-09 14:06:36 +08:00
KenanZhu
107ed41b58
chore(*): 更新 license 和版权信息为 2025 - 2026 年
2026-01-09 14:00:25 +08:00
KenanZhu
ae23f65e5a
fix(AutoLib): 修复并完善对不同浏览器驱动的支持,目前支持的浏览器驱动为 Edge、Chrome、Firefox
...
之前的代码只支持 Edge 浏览器驱动,现在完善了对 Chrome、Firefox 浏览器驱动的支持
2026-01-05 11:59:33 +08:00
KenanZhu
1b378e5aaa
fix(LibLogin): 修复优化验证码处理逻辑,避免无效请求。并完善手动输入验证码功能。
2026-01-02 17:37:17 +08:00
KenanZhu
ca9059d1db
refactor(AutoLib): 初始化 AutoLib 时,发生错误则抛出异常
2025-12-13 14:21:26 +08:00
KenanZhu
55ae4d0d96
feat(ALConfigWidget): 大更新 - 用户树状列表和其它
...
1. 在这个 commit 中,我们思考了许久,最终决定将现有的
用户管理列表转为树状列表,以解决用户数量增多时,用户的
选择性管理,分组等问题。
2. 同时因为该更改需要重构很多内容,我们也在该 commit
中决定将所有‘系统配置’更换为‘运行配置’,同时文件名称和
内容变量也相应变为‘run’和‘user’。
3. 重构 AutoLib 和 ALMainWorkers 中的配置相关代码,
以适应新的用户树状列表。
当前迭代更新至 v1.0.0-beta.4, 同时,在该版本的 rc
阶段前,我们计划不再发布 beta 阶段相关的 release
2025-12-13 00:07:33 +08:00
KenanZhu
1b172ad396
style(*): some small style changes
2025-11-30 18:46:12 +08:00
KenanZhu
05c9d433f4
hotfix(LibRenew): fix the serious bug that the renew process always failed
...
in this hotfix, we fix the renew bug because we
do not refresh the page after renew the seat,
this will make the subsequent operators, such as
logout ... unable to in progress.
2025-11-30 18:42:20 +08:00
KenanZhu
5e5deba773
fix(LibReserve): fix the mistakely passed parameter 'reserve_info'
...
we forget to pass the username because the
'reserve_info' do not contain the username
2025-11-28 15:15:39 +08:00
KenanZhu
842fb434f4
feat(AutoLib): new feature 'Auto Renew'
2025-11-28 15:03:51 +08:00
KenanZhu
6cabddf0cd
fix(operators): optimized the reserve information pre-check and more readable output
2025-11-28 15:00:09 +08:00
KenanZhu
0322558339
fix(operators): the operations's result message only show in their output queue
2025-11-28 14:58:13 +08:00
KenanZhu
703ee527ae
fix(LibChecker): fix the checker of check in and renew
...
we only check the reservations and their status in
today's record, and return the checked renewable
record for the upcoming new feature 'Auto-Renew'
2025-11-28 14:54:37 +08:00
KenanZhu
9a925fecb6
fix(operators): fix some type hint, and add imports for LibRenew
2025-11-28 14:53:08 +08:00
KenanZhu
189fddfb6a
fix(LibReserve): more fast operations of reserve
2025-11-28 14:46:17 +08:00
KenanZhu
c2d53a8b78
chore(*): refactor the project structure
2025-11-25 08:48:18 +08:00