From 43459c6019cdba796dcf6a6cffa475dfe65f1c74 Mon Sep 17 00:00:00 2001 From: Andrew Date: Mon, 20 Jan 2025 14:38:41 +0300 Subject: [PATCH] =?UTF-8?q?chore:=20=D0=BD=D0=B0=D0=B2=D0=B5=D0=BB=20?= =?UTF-8?q?=D0=BF=D0=BE=D1=80=D1=8F=D0=B4=D0=BE=D0=BA=20=D0=B2=20=D0=B8?= =?UTF-8?q?=D0=BC=D0=BF=D0=BE=D1=80=D1=82=D0=B0=D1=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/__pycache__/base.cpython-310.pyc | Bin .../__pycache__/base_widgets.cpython-310.pyc | Bin src/{utils => }/base/base.py | 8 ++----- src/controller/controller.py | 7 +++--- src/controller/converter.py | 8 ++++--- src/controller/mediator.py | 21 +++++++----------- src/controller/monitor.py | 3 ++- src/controller/passportFormer.py | 5 +++-- src/gui/mainGui.py | 3 ++- src/gui/plotter.py | 12 +++++----- src/gui/reportGui.py | 10 ++++----- src/gui/settings_window.py | 2 ++ src/performance/performance.py | 1 + src/performance/roboter.py | 7 +++--- src/uml/request_generator.py | 5 +++-- 15 files changed, 47 insertions(+), 45 deletions(-) rename src/{utils => }/base/__pycache__/base.cpython-310.pyc (100%) rename src/{utils => }/base/__pycache__/base_widgets.cpython-310.pyc (100%) rename src/{utils => }/base/base.py (97%) diff --git a/src/utils/base/__pycache__/base.cpython-310.pyc b/src/base/__pycache__/base.cpython-310.pyc similarity index 100% rename from src/utils/base/__pycache__/base.cpython-310.pyc rename to src/base/__pycache__/base.cpython-310.pyc diff --git a/src/utils/base/__pycache__/base_widgets.cpython-310.pyc b/src/base/__pycache__/base_widgets.cpython-310.pyc similarity index 100% rename from src/utils/base/__pycache__/base_widgets.cpython-310.pyc rename to src/base/__pycache__/base_widgets.cpython-310.pyc diff --git a/src/utils/base/base.py b/src/base/base.py similarity index 97% rename from src/utils/base/base.py rename to src/base/base.py index 72a834b..9669db5 100644 --- a/src/utils/base/base.py +++ b/src/base/base.py @@ -1,18 +1,14 @@ -# TODO: Почему каталог с базовыми классами лежит внутри каталога с утилитами? Это странно. - - from __future__ import annotations -# TODO: Правило хорошего тона при оформлении импортов: сначала встроенные библиотеки, -# через одну пустую строку - дополнительно установленные, и еще через одну пустую строку - собственные импорты. import os from typing import Optional, Union, Any + from cachetools import LRUCache import numpy as np import pyqtgraph as pg - import pandas as pd from PyQt5.QtCore import QObject, QTimer from PyQt5.QtWidgets import QWidget, QTabWidget, QMainWindow, QVBoxLayout + from OptAlgorithm import OptAlgorithm from utils.qt_settings import dark_style diff --git a/src/controller/controller.py b/src/controller/controller.py index 87d46fd..3e3e7ae 100644 --- a/src/controller/controller.py +++ b/src/controller/controller.py @@ -1,8 +1,9 @@ -from PyQt5.QtWidgets import QWidget -from PyQt5.QtCore import pyqtSignal from typing import Union -from utils.base.base import BaseController +from PyQt5.QtWidgets import QWidget +from PyQt5.QtCore import pyqtSignal + +from base.base import BaseController class Controller(BaseController): diff --git a/src/controller/converter.py b/src/controller/converter.py index fc16ed0..b26106e 100644 --- a/src/controller/converter.py +++ b/src/controller/converter.py @@ -1,13 +1,15 @@ -import pandas as pd import traceback import sys + +import pandas as pd from loguru import logger +from base.base import BaseDataConverter + + # FIXME: костыль для выключения предупреждения "replace deprecated" pd.set_option('future.no_silent_downcasting', True) -from utils.base.base import BaseDataConverter - class DataConverter(BaseDataConverter): diff --git a/src/controller/mediator.py b/src/controller/mediator.py index dac746a..cfe3fdf 100644 --- a/src/controller/mediator.py +++ b/src/controller/mediator.py @@ -1,10 +1,9 @@ -import pandas as pd -import time - from typing import Union + +import pandas as pd from PyQt5.QtWidgets import QWidget -from utils.base.base import (BaseMediator, BaseDirectoryMonitor, +from base.base import (BaseMediator, BaseDirectoryMonitor, BaseDataConverter, BasePlotWidget, BasePointPassportFormer) @@ -16,20 +15,19 @@ class Mediator(BaseMediator): data: Union[list[str], list[pd.DataFrame], list[list], list[QWidget]]): if issubclass(source.__class__, BaseDirectoryMonitor): - # TODO: self._controller.update_status("CSV found! Calculating...") А вот так нельзя написать? - self.update_status("CSV found! Calculating...") + self._controller.update_status("CSV found! Calculating...") self._converter.convert_data(data) if issubclass(source.__class__, BaseDataConverter): - self.update_status(0.5) + self._controller.update_status(1) self._passportFormer.form_passports(data) if issubclass(source.__class__, BasePointPassportFormer): - self.update_status(1) + self._controller.update_status(2) self._plot.build(data) if issubclass(source.__class__, BasePlotWidget): - self.update_status(100) + self._controller.update_status(100) self._controller.send_widgets(data) def update_settings(self, settings: list[dict]): @@ -39,9 +37,6 @@ class Mediator(BaseMediator): # self._passportFormer.update_settings(data) self._monitor.update_settings(settings) self._passportFormer.update_settings(settings) - - def update_status(self, msg: Union[str, float]) -> None: - # TODO: Бессмысленный метод. - self._controller.update_status(msg) + diff --git a/src/controller/monitor.py b/src/controller/monitor.py index 66bbfc1..be2afa6 100644 --- a/src/controller/monitor.py +++ b/src/controller/monitor.py @@ -1,7 +1,8 @@ import os + from loguru import logger -from utils.base.base import BaseDirectoryMonitor +from base.base import BaseDirectoryMonitor class DirectoryMonitor(BaseDirectoryMonitor): diff --git a/src/controller/passportFormer.py b/src/controller/passportFormer.py index 81bb77c..ff9d420 100644 --- a/src/controller/passportFormer.py +++ b/src/controller/passportFormer.py @@ -1,9 +1,10 @@ -import pandas as pd import traceback import sys + +import pandas as pd from loguru import logger -from utils.base.base import BasePointPassportFormer, BaseIdealDataBuilder +from base.base import BasePointPassportFormer, BaseIdealDataBuilder class idealDataBuilder(BaseIdealDataBuilder): diff --git a/src/gui/mainGui.py b/src/gui/mainGui.py index 47ffc04..f72395a 100644 --- a/src/gui/mainGui.py +++ b/src/gui/mainGui.py @@ -1,11 +1,12 @@ from datetime import datetime as dt from typing import Optional + from PyQt5 import QtWidgets from PyQt5.QtCore import Qt from PyQt5.QtGui import QPixmap, QIcon from PyQt5.QtWidgets import QSizePolicy as QSP -from utils.base.base import BaseMainWindow, BaseController +from base.base import BaseMainWindow, BaseController from gui.settings_window import SystemSettings, OperatorSettings from gui.reportGui import ReportSettings diff --git a/src/gui/plotter.py b/src/gui/plotter.py index 38b4ad5..2f182a5 100644 --- a/src/gui/plotter.py +++ b/src/gui/plotter.py @@ -1,18 +1,18 @@ +import copy +import traceback +import sys +from typing import Optional, Any + from PyQt5.QtWidgets import (QWidget, QVBoxLayout, QHBoxLayout, QLabel, QGraphicsRectItem, QSpacerItem, QSizePolicy) - from PyQt5.QtCore import Qt -import copy -import traceback -import sys from loguru import logger import pyqtgraph as pg import pandas as pd -from typing import Optional, Any -from utils.base.base import BasePlotWidget +from base.base import BasePlotWidget # TODO: Навести порядок в импортах. class ProcessStage(): diff --git a/src/gui/reportGui.py b/src/gui/reportGui.py index b0c6e60..4039337 100644 --- a/src/gui/reportGui.py +++ b/src/gui/reportGui.py @@ -1,11 +1,11 @@ -import pyqtgraph as pg -from pyqtgraph.parametertree import Parameter, ParameterTree -from typing import Union -from PyQt5 import QtWidgets import traceback import sys -from loguru import logger +from typing import Union +import pyqtgraph as pg +from pyqtgraph.parametertree import Parameter, ParameterTree +from PyQt5 import QtWidgets +from loguru import logger class ReportSettings(QtWidgets.QWidget): diff --git a/src/gui/settings_window.py b/src/gui/settings_window.py index 6437db1..750cedd 100644 --- a/src/gui/settings_window.py +++ b/src/gui/settings_window.py @@ -1,4 +1,5 @@ from typing import Callable, Optional, Any + from PyQt5.QtWidgets import (QWidget, QPushButton, QLineEdit, QHBoxLayout, QVBoxLayout, QLabel, @@ -9,6 +10,7 @@ from PyQt5.QtGui import QIntValidator, QDoubleValidator from utils.json_tools import read_json, write_json from utils import qt_settings as qts + class settingsWindow(QWidget): def __init__(self, path: str, name: str, upd_func: Callable[[], None], names: dict): """ diff --git a/src/performance/performance.py b/src/performance/performance.py index c7bde03..7e86dbf 100644 --- a/src/performance/performance.py +++ b/src/performance/performance.py @@ -1,5 +1,6 @@ from typing import Optional import os + import numpy as np import pandas as pd diff --git a/src/performance/roboter.py b/src/performance/roboter.py index f82fbd0..628bfc4 100644 --- a/src/performance/roboter.py +++ b/src/performance/roboter.py @@ -1,10 +1,11 @@ -from __future__ import annotations from abc import ABC, abstractmethod -from typing import Optional import os +from typing import Optional +from __future__ import annotations + import numpy as np import pandas as pd -# TODO: Оформление импортов + class BasePerformanceFactory(ABC): diff --git a/src/uml/request_generator.py b/src/uml/request_generator.py index ada5eb9..68125db 100644 --- a/src/uml/request_generator.py +++ b/src/uml/request_generator.py @@ -1,6 +1,7 @@ -from plantuml import PlantUML from os.path import abspath -# TODO: Навести порядок в импортах. + +from plantuml import PlantUML + class Request: # TODO: Имя класса не соответствует тому, что он делает.