From 5aa5d18734cf884061d84b280961f1e7b4ddc984 Mon Sep 17 00:00:00 2001 From: Marina Date: Sat, 3 Jun 2023 21:20:50 +0300 Subject: [PATCH 1/3] add min and max border lit_references --- .../checks/report_checks/literature_references.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/app/main/checks/report_checks/literature_references.py b/app/main/checks/report_checks/literature_references.py index b4ed3335..72fc08ef 100644 --- a/app/main/checks/report_checks/literature_references.py +++ b/app/main/checks/report_checks/literature_references.py @@ -7,11 +7,13 @@ class ReferencesToLiteratureCheck(BaseReportCriterion): description = "Проверка наличия ссылок на все источники" id = 'literature_references' - def __init__(self, file_info): + def __init__(self, file_info, min_ref=0, max_ref=10000): super().__init__(file_info) self.headers = [] self.literature_header = [] self.name_pattern = r'список[ \t]*(использованных|использованной|)[ \t]*(источников|литературы)' + self.min_ref = min_ref + self.max_ref = max_ref def late_init_vkr(self): self.headers = self.file.make_chapters(self.file_type['report_type']) @@ -47,7 +49,12 @@ def check(self): for i in range(1, number_of_sources + 1): all_numbers.add(i) if len(references.symmetric_difference(all_numbers)) == 0: - return answer(True, f"Пройдена!") + if number_of_sources < self.min_ref: + return answer(False, f'Список источников оформлен верно, однако их количество ({number_of_sources}) меньше необходимого критерия ({self.min_ref})') + elif number_of_sources > self.max_ref: + return answer(False, f'Список источников оформлен верно, однако их количество ({number_of_sources}) больше необходимого критерия ({self.max_ref})') + else: + return answer(True, f"Пройдена!") elif len(references.difference(all_numbers)): if len(all_numbers.difference(references)) == 0: references -= all_numbers @@ -137,4 +144,4 @@ def search_literature_start_pdf(self): if re.search('приложение а[\n .]', lowercase_str): end_page = i break - return start_page, end_page + return start_page, end_page \ No newline at end of file From 5a846f5095243f9371a2117c5b4165fdd294c5a0 Mon Sep 17 00:00:00 2001 From: Marina Date: Mon, 31 Jul 2023 16:16:15 +0300 Subject: [PATCH 2/3] upgrade message --- app/main/checks/report_checks/literature_references.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/app/main/checks/report_checks/literature_references.py b/app/main/checks/report_checks/literature_references.py index 72fc08ef..d5b15764 100644 --- a/app/main/checks/report_checks/literature_references.py +++ b/app/main/checks/report_checks/literature_references.py @@ -7,7 +7,7 @@ class ReferencesToLiteratureCheck(BaseReportCriterion): description = "Проверка наличия ссылок на все источники" id = 'literature_references' - def __init__(self, file_info, min_ref=0, max_ref=10000): + def __init__(self, file_info, min_ref=1, max_ref=1000): super().__init__(file_info) self.headers = [] self.literature_header = [] @@ -49,10 +49,8 @@ def check(self): for i in range(1, number_of_sources + 1): all_numbers.add(i) if len(references.symmetric_difference(all_numbers)) == 0: - if number_of_sources < self.min_ref: - return answer(False, f'Список источников оформлен верно, однако их количество ({number_of_sources}) меньше необходимого критерия ({self.min_ref})') - elif number_of_sources > self.max_ref: - return answer(False, f'Список источников оформлен верно, однако их количество ({number_of_sources}) больше необходимого критерия ({self.max_ref})') + if self.max_ref < number_of_sources < self.min_ref: + return answer(False, f'Список источников оформлен верно, однако их количество ({number_of_sources}) не удовлетворяет необходимому критерию.
Количество источников должно быть от {self.min_ref} до {self.max_ref}.') else: return answer(True, f"Пройдена!") elif len(references.difference(all_numbers)): From 386f1a5830462ec7475cc43e0df65fe4b4d3f343 Mon Sep 17 00:00:00 2001 From: Marina Date: Wed, 8 Nov 2023 11:15:21 +0300 Subject: [PATCH 3/3] fix cond-tion for references interval --- app/main/checks/report_checks/literature_references.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/main/checks/report_checks/literature_references.py b/app/main/checks/report_checks/literature_references.py index d5b15764..3e8515a9 100644 --- a/app/main/checks/report_checks/literature_references.py +++ b/app/main/checks/report_checks/literature_references.py @@ -49,7 +49,7 @@ def check(self): for i in range(1, number_of_sources + 1): all_numbers.add(i) if len(references.symmetric_difference(all_numbers)) == 0: - if self.max_ref < number_of_sources < self.min_ref: + if not self.min_ref <= number_of_sources <= self.max_ref: return answer(False, f'Список источников оформлен верно, однако их количество ({number_of_sources}) не удовлетворяет необходимому критерию.
Количество источников должно быть от {self.min_ref} до {self.max_ref}.') else: return answer(True, f"Пройдена!")