refactor: 重构运行提示传递逻辑

This commit is contained in:
Quan
2025-12-16 12:55:52 +08:00
parent 8039c6a5db
commit 855113c94d
11 changed files with 117 additions and 181 deletions

View File

@@ -23,12 +23,12 @@ class Mapping:
self.folder_mode = manager.folder_mode
self.database = mapping
self.switch = manager.author_archive
self.print = manager.print
async def update_cache(
self,
id_: str,
alias: str,
log=None,
):
if not self.switch:
return
@@ -37,7 +37,6 @@ class Mapping:
id_,
alias,
a,
log,
)
await self.database.add(id_, alias)
@@ -49,11 +48,10 @@ class Mapping:
id_: str,
alias: str,
old_alias: str,
log,
):
if not (old_folder := self.root.joinpath(f"{id_}_{old_alias}")).is_dir():
logging(
log,
self.print,
_("{old_folder} 文件夹不存在,跳过处理").format(
old_folder=old_folder.name
),
@@ -63,13 +61,11 @@ class Mapping:
old_folder,
id_,
alias,
log,
)
self.__scan_file(
id_,
alias,
old_alias,
log,
)
def __rename_folder(
@@ -77,17 +73,15 @@ class Mapping:
old_folder: Path,
id_: str,
alias: str,
log,
):
new_folder = self.root.joinpath(f"{id_}_{alias}")
self.__rename(
old_folder,
new_folder,
_("文件夹"),
log,
)
logging(
log,
self.print,
_("文件夹 {old_folder} 已重命名为 {new_folder}").format(
old_folder=old_folder.name, new_folder=new_folder.name
),
@@ -98,7 +92,6 @@ class Mapping:
old_: Path,
alias: str,
old_alias: str,
log,
) -> Path:
if old_alias in old_.name:
new_ = old_.parent / old_.name.replace(old_alias, alias, 1)
@@ -106,10 +99,9 @@ class Mapping:
old_,
new_,
_("文件夹"),
log,
)
logging(
log,
self.print,
_("文件夹 {old_} 重命名为 {new_}").format(
old_=old_.name, new_=new_.name
),
@@ -122,7 +114,6 @@ class Mapping:
id_: str,
alias: str,
old_alias: str,
log,
):
root = self.root.joinpath(f"{id_}_{alias}")
item_list = root.iterdir()
@@ -133,7 +124,6 @@ class Mapping:
f,
alias,
old_alias,
log,
)
files = f.iterdir()
self.__batch_rename(
@@ -141,7 +131,6 @@ class Mapping:
files,
alias,
old_alias,
log,
)
else:
self.__batch_rename(
@@ -149,7 +138,6 @@ class Mapping:
item_list,
alias,
old_alias,
log,
)
def __batch_rename(
@@ -158,7 +146,6 @@ class Mapping:
files,
alias: str,
old_alias: str,
log,
):
for old_file in files:
if old_alias not in old_file.name:
@@ -168,7 +155,6 @@ class Mapping:
old_file,
alias,
old_alias,
log,
)
def __rename_file(
@@ -177,36 +163,33 @@ class Mapping:
old_file: Path,
alias: str,
old_alias: str,
log,
):
new_file = root.joinpath(old_file.name.replace(old_alias, alias, 1))
self.__rename(
old_file,
new_file,
_("文件"),
log,
)
logging(
log,
self.print,
_("文件 {old_file} 重命名为 {new_file}").format(
old_file=old_file.name, new_file=new_file.name
),
)
return True
@staticmethod
def __rename(
self,
old_: Path,
new_: Path,
type_=_("文件"),
log=None,
) -> bool:
try:
old_.rename(new_)
return True
except PermissionError as e:
logging(
log,
self.print,
_("{type} {old}被占用,重命名失败: {error}").format(
type=type_, old=old_.name, error=e
),
@@ -215,7 +198,7 @@ class Mapping:
return False
except FileExistsError as e:
logging(
log,
self.print,
_("{type} {new}名称重复,重命名失败: {error}").format(
type=type_, new=new_.name, error=e
),
@@ -224,7 +207,7 @@ class Mapping:
return False
except OSError as e:
logging(
log,
self.print,
_("处理{type} {old}时发生预期之外的错误: {error}").format(
type=type_, old=old_.name, error=e
),