integrar função copiar_ficheiros_para_destino() para uso com versão GUI
This commit is contained in:
@ -10,6 +10,7 @@ import shutil
|
||||
from tqdm import tqdm
|
||||
from concurrent.futures import ThreadPoolExecutor, as_completed
|
||||
from modules.logger import logger
|
||||
from collections.abc import Callable
|
||||
|
||||
|
||||
def copiar_ficheiro_individual(
|
||||
@ -35,10 +36,12 @@ def copiar_ficheiro_individual(
|
||||
try:
|
||||
ficheiro_path = Path(ficheiro)
|
||||
if not ficheiro_path.exists():
|
||||
logger.warning("Ficheiro '%s' não encontrado. A ignorar.", ficheiro)
|
||||
logger.warning(
|
||||
"Ficheiro '%s' não encontrado. A ignorar.", ficheiro)
|
||||
return
|
||||
if categorizar_data:
|
||||
data_ficheiro = obter_data_ficheiro(ficheiro, usar_criacao=usar_criacao)
|
||||
data_ficheiro = obter_data_ficheiro(
|
||||
ficheiro, usar_criacao=usar_criacao)
|
||||
pasta_destino = criar_pasta_destino(
|
||||
str(base_destino),
|
||||
categorizar_por_tipo(ficheiro),
|
||||
@ -63,6 +66,7 @@ def copiar_ficheiros_para_destino(
|
||||
formato_data: str = "%Y-%m-%d",
|
||||
usar_threads: bool = True,
|
||||
max_workers: int = 8,
|
||||
progresso_callback: Callable | None = None,
|
||||
) -> None:
|
||||
"""
|
||||
Copiar cada ficheiro na lista para o directório base, seguindo as regras de categorização
|
||||
@ -91,13 +95,18 @@ def copiar_ficheiros_para_destino(
|
||||
for ficheiro in lista_ficheiros
|
||||
]
|
||||
|
||||
for _ in tqdm(
|
||||
as_completed(futures),
|
||||
total=len(futures),
|
||||
desc="A copiar ficheiros ",
|
||||
unit="ficheiro ",
|
||||
):
|
||||
pass
|
||||
for future in as_completed(futures):
|
||||
if progresso_callback:
|
||||
progresso_callback()
|
||||
|
||||
# codigo comentado para integrar a funcionalidade na interface gui
|
||||
# for _ in tqdm(
|
||||
# as_completed(futures),
|
||||
# total=len(futures),
|
||||
# desc="A copiar ficheiros ",
|
||||
# unit="ficheiro ",
|
||||
# ):
|
||||
# pass
|
||||
else:
|
||||
for ficheiro in tqdm(
|
||||
lista_ficheiros, desc="A copiar ficheiros ", unit="ficheiro "
|
||||
|
||||
Reference in New Issue
Block a user