mirror of
https://github.com/Cp0204/quark-auto-save.git
synced 2026-01-14 16:30:43 +08:00
优化命名预览界面的重命名排序显示逻辑
This commit is contained in:
parent
f0a05d5572
commit
5383f61f37
@ -680,7 +680,7 @@ def get_share_detail():
|
||||
if any(word in item['file_name'] for word in filterwords_list):
|
||||
item["filtered"] = True
|
||||
|
||||
# 为每个文件生成新文件名
|
||||
# 为每个文件生成新文件名并存储剧集编号用于排序
|
||||
for file in sorted_files:
|
||||
if not file.get("filtered"):
|
||||
# 获取文件扩展名
|
||||
@ -694,9 +694,12 @@ def get_share_detail():
|
||||
file["file_name_re"] = f"{episode_num:02d}{file_ext}"
|
||||
else:
|
||||
file["file_name_re"] = episode_pattern.replace("[]", f"{episode_num:02d}") + file_ext
|
||||
# 存储原始的剧集编号,用于数值排序
|
||||
file["episode_number"] = episode_num
|
||||
else:
|
||||
# 无法提取剧集号,标记为无法处理
|
||||
file["file_name_re"] = "❌ 无法识别剧集号"
|
||||
file["episode_number"] = 9999999 # 给一个很大的值,确保排在最后
|
||||
|
||||
return share_detail
|
||||
else:
|
||||
|
||||
@ -3212,14 +3212,13 @@
|
||||
},
|
||||
// 文件选择模态框的排序方法
|
||||
sortFileList(field) {
|
||||
// 如果点击了当前排序字段,则切换排序顺序
|
||||
// 切换排序方向
|
||||
if (this.fileSelect.sortBy === field) {
|
||||
this.fileSelect.sortOrder = this.fileSelect.sortOrder === 'asc' ? 'desc' : 'asc';
|
||||
} else {
|
||||
// 如果点击了不同的字段,则设置为该字段并使用默认排序顺序
|
||||
this.fileSelect.sortBy = field;
|
||||
// 对于日期和重命名列使用降序,其他字段使用升序
|
||||
this.fileSelect.sortOrder = field === 'updated_at' || field === 'file_name_re' ? 'desc' : 'asc';
|
||||
// 默认降序(除了文件名外)
|
||||
this.fileSelect.sortOrder = field === 'file_name' ? 'asc' : 'desc';
|
||||
}
|
||||
|
||||
// 按选定字段和顺序对文件列表进行排序
|
||||
@ -3235,9 +3234,15 @@
|
||||
aValue = a.file_name.toLowerCase();
|
||||
bValue = b.file_name.toLowerCase();
|
||||
} else if (field === 'file_name_re') {
|
||||
// 对于重命名列,使用重命名后的文件名进行排序
|
||||
aValue = (a.file_name_re || '').toLowerCase();
|
||||
bValue = (b.file_name_re || '').toLowerCase();
|
||||
// 对于重命名列,优先使用episode_number进行数值排序(如果存在)
|
||||
if (a.episode_number !== undefined && b.episode_number !== undefined) {
|
||||
aValue = a.episode_number;
|
||||
bValue = b.episode_number;
|
||||
} else {
|
||||
// 否则使用重命名后的文件名进行字符串排序
|
||||
aValue = (a.file_name_re || '').toLowerCase();
|
||||
bValue = (b.file_name_re || '').toLowerCase();
|
||||
}
|
||||
} else if (field === 'size') {
|
||||
// 对于文件大小,使用数字进行排序
|
||||
if (a.dir && b.dir) {
|
||||
@ -3279,9 +3284,15 @@
|
||||
aValue = a.file_name.toLowerCase();
|
||||
bValue = b.file_name.toLowerCase();
|
||||
} else if (field === 'file_name_re') {
|
||||
// 对于重命名列,使用重命名后的文件名进行排序
|
||||
aValue = (a.file_name_re || '').toLowerCase();
|
||||
bValue = (b.file_name_re || '').toLowerCase();
|
||||
// 对于重命名列,优先使用episode_number进行数值排序(如果存在)
|
||||
if (a.episode_number !== undefined && b.episode_number !== undefined) {
|
||||
aValue = a.episode_number;
|
||||
bValue = b.episode_number;
|
||||
} else {
|
||||
// 否则使用重命名后的文件名进行字符串排序
|
||||
aValue = (a.file_name_re || '').toLowerCase();
|
||||
bValue = (b.file_name_re || '').toLowerCase();
|
||||
}
|
||||
} else if (field === 'size') {
|
||||
// 对于文件大小,使用数字进行排序
|
||||
if (a.dir && b.dir) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user