From a321dc5bd45363aad562efbbf37b0e076e09d9b0 Mon Sep 17 00:00:00 2001 From: Yorusora <2944763079@qq.com> Date: Thu, 22 May 2025 17:12:58 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9C=A8=E5=AF=BC=E5=85=A5=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=97=B6=EF=BC=8C=E5=B0=86=E6=A0=A1=E9=AA=8C=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E7=9A=84=E6=89=A9=E5=B1=95=E5=90=8D=E6=98=AF=E5=90=A6=E5=90=88?= =?UTF-8?q?=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- func/Module_SA_label.py | 15 +++++++-------- func/Module_approximately_align.py | 6 +++--- func/Module_artifact_label.py | 4 ++-- func/Module_cut_PSG.py | 2 +- func/Module_detect_Jpeak.py | 2 +- func/Module_detect_Rpeak.py | 2 +- func/Module_label_check.py | 2 +- func/Module_precisely_align.py | 6 +++--- func/Module_preprocess.py | 2 +- func/Module_resp_quality_label.py | 8 ++++---- func/utils/Constants.py | 2 ++ func/utils/PublicFunc.py | 7 ++++++- 12 files changed, 32 insertions(+), 26 deletions(-) diff --git a/func/Module_SA_label.py b/func/Module_SA_label.py index 71b2fb9..1e51b97 100644 --- a/func/Module_SA_label.py +++ b/func/Module_SA_label.py @@ -1282,49 +1282,48 @@ class Data: if Path(Config["Path"]["Input_Label"]).is_file(): Config["Path"]["Input_Label"] = str(Path(Config["Path"]["Input_Label"]).parent) - result = PublicFunc.examine_file(Config["Path"]["Input_OrgBCG"], ConfigParams.ORGBCG_SYNC) + result = PublicFunc.examine_file(Config["Path"]["Input_OrgBCG"], ConfigParams.ORGBCG_SYNC, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_OrgBCG"] = result.data["path"] Config["InputConfig"]["OrgBCGFreq"] = result.data["freq"] else: return result - result = PublicFunc.examine_file(Config["Path"]["Input_Tho"], ConfigParams.THO_SYNC) + result = PublicFunc.examine_file(Config["Path"]["Input_Tho"], ConfigParams.THO_SYNC, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_Tho"] = result.data["path"] Config["InputConfig"]["ThoFreq"] = result.data["freq"] else: return result - result = PublicFunc.examine_file(Config["Path"]["Input_Abd"], ConfigParams.ABD_SYNC) + result = PublicFunc.examine_file(Config["Path"]["Input_Abd"], ConfigParams.ABD_SYNC, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_Abd"] = result.data["path"] Config["InputConfig"]["AbdFreq"] = result.data["freq"] else: return result - result = PublicFunc.examine_file(Config["Path"]["Input_FlowT"], ConfigParams.FLOWT_SYNC) + result = PublicFunc.examine_file(Config["Path"]["Input_FlowT"], ConfigParams.FLOWT_SYNC, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_FlowT"] = result.data["path"] Config["InputConfig"]["FlowTFreq"] = result.data["freq"] else: return result - result = PublicFunc.examine_file(Config["Path"]["Input_FlowP"], ConfigParams.FLOWP_SYNC) + result = PublicFunc.examine_file(Config["Path"]["Input_FlowP"], ConfigParams.FLOWP_SYNC, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_FlowP"] = result.data["path"] Config["InputConfig"]["FlowPFreq"] = result.data["freq"] else: return result - result = PublicFunc.examine_file(Config["Path"]["Input_SpO2"], ConfigParams.SPO2_SYNC) + result = PublicFunc.examine_file(Config["Path"]["Input_SpO2"], ConfigParams.SPO2_SYNC, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_SpO2"] = result.data["path"] Config["InputConfig"]["SpO2Freq"] = result.data["freq"] else: return result - result = PublicFunc.examine_file(Config["Path"]["Input_Artifact"], ConfigParams.ARTIFACT_A) + result = PublicFunc.examine_file(Config["Path"]["Input_Artifact"], ConfigParams.ARTIFACT_A, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_Artifact"] = result.data["path"] else: return result - Config["Path"]["Input_Label"] = str( Path(Config["Path"]["Input_Label"]) / Path(ConfigParams.SA_LABEL_SYNC + ConfigParams.ENDSWITH_CSV)) Config["Path"]["Save"] = str( diff --git a/func/Module_approximately_align.py b/func/Module_approximately_align.py index 0c85386..97e8209 100644 --- a/func/Module_approximately_align.py +++ b/func/Module_approximately_align.py @@ -933,19 +933,19 @@ class Data: if Path(Config["Path"]["Input_Abd"]).is_file(): Config["Path"]["Input_Abd"] = str(Path(Config["Path"]["Input_Abd"]).parent) - result = PublicFunc.examine_file(Config["Path"]["Input_orgBcg"], ConfigParams.ORGBCG_RAW) + result = PublicFunc.examine_file(Config["Path"]["Input_orgBcg"], ConfigParams.ORGBCG_RAW, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_orgBcg"] = result.data["path"] Config["InputConfig"]["orgBcgFreq"] = result.data["freq"] else: return result - result = PublicFunc.examine_file(Config["Path"]["Input_Tho"], ConfigParams.THO_RAW) + result = PublicFunc.examine_file(Config["Path"]["Input_Tho"], ConfigParams.THO_RAW, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_Tho"] = result.data["path"] Config["InputConfig"]["ThoFreq"] = result.data["freq"] else: return result - result = PublicFunc.examine_file(Config["Path"]["Input_Abd"], ConfigParams.ABD_RAW) + result = PublicFunc.examine_file(Config["Path"]["Input_Abd"], ConfigParams.ABD_RAW, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_Abd"] = result.data["path"] Config["InputConfig"]["AbdFreq"] = result.data["freq"] diff --git a/func/Module_artifact_label.py b/func/Module_artifact_label.py index 17aa1cf..4417057 100644 --- a/func/Module_artifact_label.py +++ b/func/Module_artifact_label.py @@ -1209,14 +1209,14 @@ class Data: if Path(Config["Path"]["Input_BCG"]).is_file(): Config["Path"]["Input_BCG"] = str(Path(Config["Path"]["Input_BCG"]).parent) - result = PublicFunc.examine_file(Config["Path"]["Input_orgBcg"], ConfigParams.ORGBCG_SYNC) + result = PublicFunc.examine_file(Config["Path"]["Input_orgBcg"], ConfigParams.ORGBCG_SYNC, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_orgBcg"] = result.data["path"] Config["InputConfig"]["orgBcgFreq"] = result.data["freq"] else: return result - result = PublicFunc.examine_file(Config["Path"]["Input_BCG"], ConfigParams.BCG_SYNC) + result = PublicFunc.examine_file(Config["Path"]["Input_BCG"], ConfigParams.BCG_SYNC, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_BCG"] = result.data["path"] Config["InputConfig"]["BCGFreq"] = result.data["freq"] diff --git a/func/Module_cut_PSG.py b/func/Module_cut_PSG.py index 10739cd..ea39ece 100644 --- a/func/Module_cut_PSG.py +++ b/func/Module_cut_PSG.py @@ -233,7 +233,7 @@ class Data: def open_file(self): path = str(Path(self.root_path) / ConfigParams.PUBLIC_PATH_PSG_TEXT / Path(str(self.sampID))) for value in Config["ChannelInput"].values(): - result = PublicFunc.examine_file(path, value) + result = PublicFunc.examine_file(path, value, ConfigParams.ENDSWITH_TXT) if not result.status: return result diff --git a/func/Module_detect_Jpeak.py b/func/Module_detect_Jpeak.py index d8b8710..d97eac6 100644 --- a/func/Module_detect_Jpeak.py +++ b/func/Module_detect_Jpeak.py @@ -398,7 +398,7 @@ class Data: if Path(Config["Path"]["Input"]).is_file(): Config["Path"]["Input"] = str(Path(Config["Path"]["Input"]).parent) - result = PublicFunc.examine_file(Config["Path"]["Input"], ConfigParams.BCG_FILTER) + result = PublicFunc.examine_file(Config["Path"]["Input"], ConfigParams.BCG_FILTER, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input"] = result.data["path"] Config["InputConfig"]["Freq"] = result.data["freq"] diff --git a/func/Module_detect_Rpeak.py b/func/Module_detect_Rpeak.py index 7100d16..69e58ca 100644 --- a/func/Module_detect_Rpeak.py +++ b/func/Module_detect_Rpeak.py @@ -399,7 +399,7 @@ class Data: if Path(Config["Path"]["Input"]).is_file(): Config["Path"]["Input"] = str(Path(Config["Path"]["Input"]).parent) - result = PublicFunc.examine_file(Config["Path"]["Input"], ConfigParams.ECG_FILTER) + result = PublicFunc.examine_file(Config["Path"]["Input"], ConfigParams.ECG_FILTER, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input"] = result.data["path"] Config["InputConfig"]["Freq"] = result.data["freq"] diff --git a/func/Module_label_check.py b/func/Module_label_check.py index 0a7cbf2..1a16c04 100644 --- a/func/Module_label_check.py +++ b/func/Module_label_check.py @@ -931,7 +931,7 @@ class Data: if Path(Config["Path"]["Save"]).is_file(): Config["Path"]["Save"] = str(Path(Config["Path"]["Save"]).parent) - result = PublicFunc.examine_file(Config["Path"]["Input_Signal"], signal) + result = PublicFunc.examine_file(Config["Path"]["Input_Signal"], signal, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_Signal"] = result.data["path"] Config["InputConfig"]["Freq"] = result.data["freq"] diff --git a/func/Module_precisely_align.py b/func/Module_precisely_align.py index 41f67ad..c15a7fc 100644 --- a/func/Module_precisely_align.py +++ b/func/Module_precisely_align.py @@ -1454,7 +1454,7 @@ class Data: if Path(Config["Path"]["Input_Approximately_Align"]).is_file(): Config["Path"]["Input_Approximately_Align"] = str(Path(Config["Path"]["Input_Approximately_Align"]).parent) - result = PublicFunc.examine_file(Config["Path"]["Input_OrgBCG"], ConfigParams.ORGBCG_RAW) + result = PublicFunc.examine_file(Config["Path"]["Input_OrgBCG"], ConfigParams.ORGBCG_RAW, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_OrgBCG"] = result.data["path"] Config["InputConfig"]["orgBcgFreq"] = result.data["freq"] @@ -1469,7 +1469,7 @@ class Data: Config["Path"]["Save_OrgBCG"] = str( Path(Config["Path"]["Save_OrgBCG"]) / Path( ConfigParams.ORGBCG_SYNC + str(Config["InputConfig"]["orgBcgFreq"]) + ConfigParams.ENDSWITH_TXT)) - result = PublicFunc.examine_file(Config["Path"]["Input_BCG"], ConfigParams.BCG_FILTER) + result = PublicFunc.examine_file(Config["Path"]["Input_BCG"], ConfigParams.BCG_FILTER, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_BCG"] = result.data["path"] Config["InputConfig"]["BCGFreq"] = result.data["freq"] @@ -1484,7 +1484,7 @@ class Data: Config["Path"]["Save_Jpeak"] = str( Path(Config["Path"]["Save_Jpeak"]) / Path( ConfigParams.JPEAK_SYNC + str(Config["InputConfig"]["BCGFreq"]) + ConfigParams.ENDSWITH_TXT)) - result = PublicFunc.examine_file(Config["Path"]["Input_ECG"], ConfigParams.ECG_FILTER) + result = PublicFunc.examine_file(Config["Path"]["Input_ECG"], ConfigParams.ECG_FILTER, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_ECG"] = result.data["path"] Config["InputConfig"]["ECGFreq"] = result.data["freq"] diff --git a/func/Module_preprocess.py b/func/Module_preprocess.py index 8e37866..7be9aaa 100644 --- a/func/Module_preprocess.py +++ b/func/Module_preprocess.py @@ -410,7 +410,7 @@ class Data: if Path(Config["Path"]["Input"]).is_file(): Config["Path"]["Input"] = str(Path(Config["Path"]["Input"]).parent) - result = PublicFunc.examine_file(Config["Path"]["Input"], signal) + result = PublicFunc.examine_file(Config["Path"]["Input"], signal, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input"] = result.data["path"] Config["InputConfig"]["Freq"] = result.data["freq"] diff --git a/func/Module_resp_quality_label.py b/func/Module_resp_quality_label.py index 86ada06..9c2e1ff 100644 --- a/func/Module_resp_quality_label.py +++ b/func/Module_resp_quality_label.py @@ -1247,7 +1247,7 @@ class Data(): if Path(Config["Path"]["Save_Tho_peak"]).is_file(): Config["Path"]["Save_Tho_peak"] = str(Path(Config["Path"]["Save_Tho_peak"]).parent) - result = PublicFunc.examine_file(Config["Path"]["Input_Tho"], ConfigParams.THO_SYNC) + result = PublicFunc.examine_file(Config["Path"]["Input_Tho"], ConfigParams.THO_SYNC, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_Tho"] = result.data["path"] Config["InputConfig"]["ThoFreq"] = result.data["freq"] @@ -1338,21 +1338,21 @@ class Data(): if Path(Config["Path"]["Save_Tho_peak"]).is_file(): Config["Path"]["Save_Tho_peak"] = str(Path(Config["Path"]["Save_Tho_peak"]).parent) - result = PublicFunc.examine_file(Config["Path"]["Input_OrgBCG"], ConfigParams.ORGBCG_SYNC) + result = PublicFunc.examine_file(Config["Path"]["Input_OrgBCG"], ConfigParams.ORGBCG_SYNC, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_OrgBCG"] = result.data["path"] Config["InputConfig"]["OrgBCGFreq"] = result.data["freq"] else: return result - result = PublicFunc.examine_file(Config["Path"]["Input_Tho"], ConfigParams.THO_SYNC) + result = PublicFunc.examine_file(Config["Path"]["Input_Tho"], ConfigParams.THO_SYNC, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_Tho"] = result.data["path"] Config["InputConfig"]["ThoFreq"] = result.data["freq"] else: return result - result = PublicFunc.examine_file(Config["Path"]["Input_Artifact"], ConfigParams.ARTIFACT_A) + result = PublicFunc.examine_file(Config["Path"]["Input_Artifact"], ConfigParams.ARTIFACT_A, ConfigParams.ENDSWITH_TXT) if result.status: Config["Path"]["Input_Artifact"] = result.data["path"] else: diff --git a/func/utils/Constants.py b/func/utils/Constants.py index ade8a2b..1696396 100644 --- a/func/utils/Constants.py +++ b/func/utils/Constants.py @@ -94,6 +94,8 @@ class Constants: "Path_Not_Exist": "(路径不存在)", "File_Not_Exist": "(数据文件不存在)", "File_More_Than_One": "(数据文件超过一个)", + "Data_Frequency_Not_In_Filename": "(无法找到文件名中的数据频率信息)", + "Suffix_Not_Correct": "(文件扩展名不正确)", "Frequency_Not_In_Filename": "(数据频率不在文件名中)", "Data_Not_Exist": "(数据不存在)", "Model_File_Not_Exist": "(模型文件不存在)", diff --git a/func/utils/PublicFunc.py b/func/utils/PublicFunc.py index 4de4878..003ef6f 100644 --- a/func/utils/PublicFunc.py +++ b/func/utils/PublicFunc.py @@ -177,7 +177,7 @@ class PublicFunc: QApplication.processEvents() @staticmethod - def examine_file(path_str, filename): + def examine_file(path_str, filename, suffix): temp_path = list( Path(path_str).glob(f"{filename}*")) if len(temp_path) == 0: @@ -201,6 +201,11 @@ class PublicFunc: info=Constants.INPUT_FAILURE + "\n" + filename + ":" + Constants.FAILURE_REASON["Data_Frequency_Not_In_Filename"]) + if Path(path).suffix != suffix: + return Result().failure( + info=Constants.INPUT_FAILURE + "\n" + + filename + ":" + + Constants.FAILURE_REASON["Suffix_Not_Correct"]) data = { "path": str(path), "freq": int(freq)