mirror of
https://github.com/Cp0204/quark-auto-save.git
synced 2026-01-12 15:20:44 +08:00
修复模态框重命名列排序中不同位数的集数排序异常的问题
修复了模态框重命名列排序时,同一文件夹内存在不同位数的集数(如 2 位数和 3 位数)时无法正确排序的问题
This commit is contained in:
parent
ecf4a26a53
commit
85cd4d3a9c
@ -864,9 +864,11 @@ def get_share_detail():
|
||||
extension = os.path.splitext(file["file_name"])[1]
|
||||
# 从文件名中提取集号
|
||||
episode_num = extract_episode_number(file["file_name"], episode_patterns=episode_patterns)
|
||||
|
||||
|
||||
if episode_num is not None:
|
||||
file["file_name_re"] = episode_pattern.replace("[]", f"{episode_num:02d}") + extension
|
||||
# 添加episode_number字段用于前端排序
|
||||
file["episode_number"] = episode_num
|
||||
else:
|
||||
# 没有提取到集号,显示无法识别的提示
|
||||
file["file_name_re"] = "× 无法识别剧集编号"
|
||||
@ -1748,7 +1750,8 @@ def preview_rename():
|
||||
preview_results.append({
|
||||
"original_name": file["file_name"],
|
||||
"new_name": new_name,
|
||||
"file_id": file["fid"]
|
||||
"file_id": file["fid"],
|
||||
"episode_number": episode_num # 添加集数字段用于前端排序
|
||||
})
|
||||
else:
|
||||
# 没有提取到集号,显示无法识别的提示
|
||||
|
||||
@ -3910,8 +3910,15 @@
|
||||
let aValue, bValue;
|
||||
// 对于重命名列,优先使用episode_number进行数值排序(如果存在)
|
||||
if (a.episode_number !== undefined && b.episode_number !== undefined) {
|
||||
aValue = a.episode_number;
|
||||
bValue = b.episode_number;
|
||||
// 确保进行数值比较
|
||||
aValue = parseInt(a.episode_number, 10);
|
||||
bValue = parseInt(b.episode_number, 10);
|
||||
|
||||
// 如果解析失败,回退到字符串比较
|
||||
if (isNaN(aValue) || isNaN(bValue)) {
|
||||
aValue = String(a.episode_number);
|
||||
bValue = String(b.episode_number);
|
||||
}
|
||||
} else {
|
||||
// 否则使用重命名后的文件名进行拼音排序
|
||||
aValue = pinyinPro.pinyin(a.file_name_re || '', { toneType: 'none', type: 'string' }).toLowerCase();
|
||||
@ -4009,8 +4016,15 @@
|
||||
let aValue, bValue;
|
||||
// 对于重命名列,优先使用episode_number进行数值排序(如果存在)
|
||||
if (a.episode_number !== undefined && b.episode_number !== undefined) {
|
||||
aValue = a.episode_number;
|
||||
bValue = b.episode_number;
|
||||
// 确保进行数值比较
|
||||
aValue = parseInt(a.episode_number, 10);
|
||||
bValue = parseInt(b.episode_number, 10);
|
||||
|
||||
// 如果解析失败,回退到字符串比较
|
||||
if (isNaN(aValue) || isNaN(bValue)) {
|
||||
aValue = String(a.episode_number);
|
||||
bValue = String(b.episode_number);
|
||||
}
|
||||
} else {
|
||||
// 否则使用重命名后的文件名进行拼音排序
|
||||
aValue = pinyinPro.pinyin(a.file_name_re || '', { toneType: 'none', type: 'string' }).toLowerCase();
|
||||
@ -4917,8 +4931,11 @@
|
||||
if (previewItem) {
|
||||
// 设置重命名字段
|
||||
file.file_name_re = previewItem.new_name;
|
||||
// 设置集数字段用于排序
|
||||
file.episode_number = previewItem.episode_number;
|
||||
} else {
|
||||
file.file_name_re = null;
|
||||
file.episode_number = undefined;
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user