github-actions[bot]
|
dc287f3aa5
|
chore(release): v1.3.0 [auto release commit]
|
2026-05-09 06:05:24 +00:00 |
|
KenanZhu
|
967ede4b04
|
fix(ALTimerTaskManageWidget): 修复右键菜单删除任务时 parent() 类型错误
|
2026-05-09 12:59:23 +08:00 |
|
KenanZhu
|
27250dba2f
|
feat(ALTimerTask*): 实现定时任务编辑功能,统一代码规范并重命名重复任务历史字段
|
2026-05-09 10:07:25 +08:00 |
|
KenanZhu
|
46b3447d1e
|
feat(autoscript): 将预处理脚本重构为 AutoScript DSL,新增可视化编排与预览对话框
|
2026-05-08 20:46:54 +08:00 |
|
Gogs
|
4d0d7a952c
|
feat(preproc): 新增适用于重复性定时任务的预处理脚本以及可视化编排对话框
|
2026-05-08 15:23:24 +08:00 |
|
KenanZhu
|
e11f696b76
|
style(*): 添加缺失的版权信息,并同一版权年份为文件创建时间的年份
|
2026-05-06 01:01:52 +08:00 |
|
KenanZhu
|
ffae43d5bd
|
fix(ConfigUtils): 添加未导入的 os 模块
|
2026-03-24 21:49:52 +08:00 |
|
Gogs
|
baa4f23136
|
refactor(config): 新增 ConfigUtils 工具类并优化配置管理逻辑
- 新增 ConfigUtils 工具类,提供配置路径获取等工具方法
- 将 ConfigManager.getValidateAutomationConfigPaths() 重构为 ConfigUtils.getAutomationConfigPaths()
- 优化 MsgBase 中 LogManager 的导入方式,使用模块导入替代函数导入
- 规范化 TimerUtils.py 中 calculate_next_repeat_time() 的文档字符串格式
|
2026-03-23 13:31:06 +08:00 |
|
github-actions[bot]
|
d3d146b1b3
|
chore(release): v1.2.1 [auto release commit]
|
2026-03-22 14:14:27 +00:00 |
|
KenanZhu
|
9305c559cd
|
refactor(WebBrowserDetector): 切换浏览器检测库为 browsers 并添加检测结果去重
|
2026-03-22 22:04:31 +08:00 |
|
KenanZhu
|
f56945f29e
|
fix(AppInitializer): 优化驱动目录初始化日志逻辑,仅在目录不存在时输出日志
|
2026-03-22 21:43:23 +08:00 |
|
KenanZhu
|
37132de4fc
|
fix(ALTimerTaskManageWidget): 修复重复性定时任务删除时因 history 字段不存在导致 len(int) 异常
|
2026-03-22 21:34:08 +08:00 |
|
github-actions[bot]
|
f984217bda
|
chore(release): v1.2.0 [auto release commit]
|
2026-03-21 10:55:01 +00:00 |
|
KenanZhu
|
2c90008fcd
|
refactor(WebDriverManager, ALWebDriverDownloadDialog): 重命名驱动状态枚举并完善对话框状态感知
|
2026-03-21 17:22:25 +08:00 |
|
KenanZhu
|
5c393595d7
|
fix(ALWebDriverDownloadDialog): 重命名信号避免与 QThread 内置信号冲突并改进线程生命周期管理
|
2026-03-21 01:53:22 +08:00 |
|
KenanZhu
|
4924f4b031
|
fix(WebDriverDownloader): 优化下载速度计算逻辑并改用时间间隔触发回调
- 将回调触发条件由进度变化量改为固定时间间隔(0.5s), 避免突发数据导致速度虚高
- 修正 total_size == 0 为 total_size <= 0, 完善边界判断
- 重命名变量提升可读性(last_time/last_size -> last_callback_time/last_callback_size)
|
2026-03-21 01:52:20 +08:00 |
|
KenanZhu
|
62c1ecdb07
|
fix(LogManager): 修复 CallerInfoFormatter 中 lineno 类型转换异常
|
2026-03-21 00:55:17 +08:00 |
|
KenanZhu
|
aef28b6d5e
|
feat(ALConfigWidget): 集成浏览器驱动自动下载功能到配置界面
|
2026-03-21 00:55:09 +08:00 |
|
KenanZhu
|
afa1d39051
|
feat(gui): 新增 ALStatusLabel 状态标签组件和浏览器驱动下载对话框
|
2026-03-21 00:55:02 +08:00 |
|
KenanZhu
|
84cff6acc3
|
feat(WebDriverManager): 支持下载取消操作并完善异常处理
|
2026-03-21 00:54:49 +08:00 |
|
KenanZhu
|
95aa2bb518
|
feat(WebDriverManager): 新增浏览器管理类 WebDriverManager
- 新增浏览器管理类,支持下载和管理浏览器驱动
|
2026-03-20 19:20:43 +08:00 |
|
KenanZhu
|
571af554d2
|
chore(Main.py): 使用 exec() 替换 exec_() 方法
- chore(Main.py): 使用 exec() 替换 exec_() 方法
|
2026-03-20 19:20:01 +08:00 |
|
KenanZhu
|
706fc889f9
|
chore(*): 重构项目结构
- 新增 src/boot 目录,用于存放启动时需要初始化的模块
- 新增 src/managers 目录,用于存放项目中的管理模块
- 新增 src/managers/config 目录,用于存放配置管理模块
- 新增 src/managers/log 目录,用于存放日志管理模块
- 新增 src/managers/driver 目录,用于存放浏览器驱动管理模块
- 修改对应文件中 import 导入路径
|
2026-03-20 19:19:34 +08:00 |
|
KenanZhu
|
bf93cc2cbc
|
style(*): 将中文逗号替换为英文逗号
|
2026-03-20 08:59:09 +08:00 |
|
KenanZhu
|
1cfe261324
|
style(ALTimerTaskManageWidget): 优化详细信息的上下文语义
- 使用 “已记录次数” 替代 “已执行次数”,更符合实际含义
|
2026-03-19 12:23:36 +08:00 |
|
KenanZhu
|
e5dea7bcc5
|
refactor(gui): 统一定时任务字段命名
- 将 task_uuid 字段重命名为 uuid,添加时间字段 add_time 重命名为 added_time
|
2026-03-19 12:22:32 +08:00 |
|
KenanZhu
|
30b36b68dd
|
refactor(ALTimerTaskManageWidget): 修复重复任务历史记录逻辑
- 修复 onRepeatTimerTaskIs 方法中日期循环索引错误,使用 %7 正确处理跨周星期计算
- 新增 OUTDATED 状态的专属处理逻辑,补全过期任务的历史记录
- 添加函数返回值并统一枚举比较方式为 ==,提高代码一致性
|
2026-03-19 11:56:44 +08:00 |
|
KenanZhu
|
595f43d852
|
optimize(ALTimerTaskHistoryDialog): 优化任务历史对话框标题字体样式
|
2026-03-18 17:52:02 +08:00 |
|
KenanZhu
|
02463f087e
|
feat(MsgBase, gui, operators): 增强日志输出功能
- 为 _showTrace 方法添加 no_log 参数,支持控制日志写入
- 在主窗口各关键操作点添加日志输出
- 优化错误信息输出策略,分离 trace 和 log 输出
- 改进配置目录初始化过程的日志记录
|
2026-03-18 12:46:37 +08:00 |
|
KenanZhu
|
e481824344
|
refactor(AppInitializer): 初始化应用程序时,先初始化日志管理器,再初始化配置管理器
|
2026-03-18 11:03:44 +08:00 |
|
KenanZhu
|
160d6a2428
|
refactor(operators): 为 _showTrace 方法添加合适的 TraceLevel 参数
|
2026-03-18 11:02:52 +08:00 |
|
KenanZhu
|
2d0782c368
|
refactor(AppInitializer): 将初始化逻辑提取到 AppInitializer 模块中
- 本次提交将 Main.py 中的 ConfigManager, LogManager 等初始化逻辑提取到 AppInitializer 模块中
- 更改默认的配置文件路径从 config 目录变为 configs 目录,并考虑兼容性问题
|
2026-03-18 10:17:09 +08:00 |
|
KenanZhu
|
824b9b8869
|
fix(ALMainWindow): 修复 ALMainWindow 的配置路径同步问题
- 先前的实现并未考虑到配置窗口更改时的同步问题,本次提交在
每次配置窗口更改并关闭保存时,同步更新 ALMainWindow 中的配置路径
|
2026-03-18 10:14:27 +08:00 |
|
KenanZhu
|
c26f19b6b3
|
feat(LogManager): 新增日志持久化功能
- 新增 LogManager 单例类,支持日志文件按日期滚动
- 创建 CallerInfoFormatter 自定义格式化器,提取真实调用位置
- 为 MsgBase._showTrace 方法添加日志级别参数,集成日志系统
- 新增 initializeLogManager 初始化函数,日志存储于 AppDataLocation/logs/
- 日志输出格式对齐:[时间] - [类名(15)|级别(8)] - [文件:行号(20:4)] - 消息
- 控制台/INFO级别,全量日志 / DEBUG 级别,错误日志 / ERROR级别
- 全量日志保留7天,错误日志保留14天
|
2026-03-17 21:37:24 +08:00 |
|
KenanZhu
|
1d99ca92f2
|
fix(LibReserve): 修复日期比较逻辑错误并优化时间处理代码
- 修复使用字符串直接比较日期导致的逻辑错误,改用时间戳比较
- 优化时间验证逻辑,支持 satisfy_duration 模式下的开始晚于结束时间时的交换时间处理
- 添加必要的注释说明 place 参数检查的跳过原因和边界情况处理
- 重构变量命名,提高代码可读性(cur_date -> cur_date_str)
- 修正字符串引号风格,统一使用单引号
|
2026-03-17 20:46:00 +08:00 |
|
KenanZhu
|
50ebeb0fab
|
style(LibReserve): 修复 __selectSeatTime 参数的拼写错误
- expct_duration -> expect_duration
|
2026-03-17 20:43:00 +08:00 |
|
KenanZhu
|
faa26b489a
|
fix(LibReserve): 修复冗余的链式赋值
|
2026-03-17 20:42:42 +08:00 |
|
KenanZhu
|
c03eed1d51
|
fix(LibReserve): 修复错误使用的海象运算符条件判断
|
2026-03-17 20:42:31 +08:00 |
|
KenanZhu
|
2f5680c547
|
fix(LibTimeSelector) style(LibReserve): 修复时间转换方法 _timeToMins 并重命名为 _timeStrToMins
- 之前的实现未严格限制传入参数为整形,导致在转换时间字符串时可能出现类型错误。
- 重命名为 _timeStrToMins 以明确表示该方法仅用于时间字符串转换。并更新相关调用。
- 重命名 __selectSeatTime 中的冗长局部变量,便于理解和维护。
- 删除多余的时间格式转换嗲用
|
2026-03-17 20:00:57 +08:00 |
|
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
|
84367e4abe
|
chore(*): 更新网站地址为 www.autolibrary.kenanzhu.com
|
2026-03-10 10:59:13 +08:00 |
|
KenanZhu
|
3a50991860
|
fix(ALMainWindow): 修复程序最小化到托盘图标后,退出菜单异常处理问题
|
2026-03-10 10:58:27 +08:00 |
|
KenanZhu
|
e4482b01da
|
fix(ALMainWindow): 修复托盘图标初始化问题
1. 修复托盘图标初始化上下文菜单的重复调用问题
2. 修复托盘图标初始化忘记更改消息方法的问题
|
2026-03-05 07:55:36 +08:00 |
|
KenanZhu
|
c06e0e05da
|
fix(ALMainWindow): 修复定时任务的消息通知图标与运行状态不一致的问题
|
2026-03-05 07:54:18 +08:00 |
|
KenanZhu
|
ff083884b6
|
style(utils.ConfigManager): 添加一些注释,并为 getBaseConfigDir 添加文档字符串。
|
2026-03-04 23:53:31 +08:00 |
|
KenanZhu
|
9ae89b61a4
|
chore(utils.ConfigManager): 将 ConfigManager 类的 appDir 重命名为 configDir
|
2026-03-04 23:52:28 +08:00 |
|
KenanZhu
|
2152cc46a3
|
style(*): 修改 ConfigManager 模块的 import 方式,并移除未使用的 import 语句
|
2026-03-04 23:52:01 +08:00 |
|
github-actions[bot]
|
95a3ae2a24
|
chore(release): v1.1.0 [auto release commit]
|
2026-02-26 15:04:42 +00:00 |
|