From cba13f483426050a94c9cb0cd4ad3403e9c72735 Mon Sep 17 00:00:00 2001 From: Anton Kamalov Date: Fri, 22 Nov 2024 20:04:20 +0300 Subject: [PATCH] =?UTF-8?q?=D0=95=D0=B4=D0=B8=D0=BD=D1=8B=D0=B9=20=D0=B8?= =?UTF-8?q?=20=D0=BD=D0=B5=D0=B4=D0=B5=D0=BB=D0=B8=D0=BC=D1=8B=D0=B9=20jso?= =?UTF-8?q?n-=D1=84=D0=B0=D0=B9=D0=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App/Report/__init__.py | 30 +++++++++++--------------- App/Report/access/1.json | 7 ------ App/Report/access/2.json | 7 ------ App/Report/report_model.py | 8 +++---- App/Report/reports.json | 20 +++++++++++++---- App/Report/templates/report_basic.html | 4 ++-- 6 files changed, 35 insertions(+), 41 deletions(-) delete mode 100644 App/Report/access/1.json delete mode 100644 App/Report/access/2.json diff --git a/App/Report/__init__.py b/App/Report/__init__.py index a824f02..e85f726 100644 --- a/App/Report/__init__.py +++ b/App/Report/__init__.py @@ -26,15 +26,13 @@ def create(): items=report_list, date_today=date.today()) else: - data = dict(id=request.form.get('category'), - month=request.form.get('month'), - year=request.form.get('year')) + id = request.form.get('category') + month = request.form.get('month') + year = request.form.get('year') + data = dict(id=id, month=month, year=year) - with open(path.join(path.dirname(__file__), f'access/{data['id']}.json')) as f: - report_access = json.load(f) - - if session['role'] in report_access['write']: - proc_name = report_access['procedure'] + if session['role'] in report_list[id]['data']['write']: + proc_name = report_list[id]['data']['procedure'] ready_report = make_report(data, proc_name) if ready_report.status: return render_template("OK.html") @@ -53,17 +51,15 @@ def view(): items=report_list, date_today=date.today()) else: - data = dict(id=request.form.get('category'), - month=request.form.get('month'), - year=request.form.get('year')) - - with open(path.join(path.dirname(__file__), f'access/{data['id']}.json')) as f: - report_access = json.load(f) + id = request.form.get('category') + month = request.form.get('month') + year = request.form.get('year') + data = dict(id=id, month=month, year=year) - if session['role'] in report_access['read']: - ready_report = view_report(data, report_access['view']) + if session['role'] in report_list[id]['data']['read']: + ready_report = view_report(data, report_list[id]['data']['view']) if ready_report.status: - title= f'{report_access["title"]} за {data["month"]}-{data["year"]}' + title= f'{report_list[id]['data']['title']} за {data["month"]}-{data["year"]}' return render_template("output.html", items=ready_report.result, header=title, link = url_for('report_bp.menu')) diff --git a/App/Report/access/1.json b/App/Report/access/1.json deleted file mode 100644 index 5c07c25..0000000 --- a/App/Report/access/1.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "title" : "Отчет о поставках заготовок", - "write" : ["Менеджер"], - "read" : ["Управляющий"], - "view" : "workpiece_report", - "procedure" : "report_workpiece" -} \ No newline at end of file diff --git a/App/Report/access/2.json b/App/Report/access/2.json deleted file mode 100644 index 270aaf5..0000000 --- a/App/Report/access/2.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "title" : "Отчет о поставках поставщиками", - "write" : ["Бухгалтер"], - "read" : ["Управляющий"], - "view" : "sellers_report", - "procedure" : "report_sellers_2" -} \ No newline at end of file diff --git a/App/Report/report_model.py b/App/Report/report_model.py index c875da2..0dfb903 100644 --- a/App/Report/report_model.py +++ b/App/Report/report_model.py @@ -46,8 +46,8 @@ def make_report(input_data: dict, proc_name: str) -> InfoRespronse: return InfoRespronse((), error_message = 'Ошибка в подключении к базе данных. Свяжитесь с администратором', status=False) - elif result['message'] != 'OK': - return InfoRespronse((), - error_message = 'Невозможно создать отчет (нет продаж за выбранный период)', - status=False) + # elif result['message'] != 'OK': + # return InfoRespronse((), + # error_message = 'Невозможно создать отчет (нет продаж за выбранный период)', + # status=False) return InfoRespronse((), error_message='', status=True) \ No newline at end of file diff --git a/App/Report/reports.json b/App/Report/reports.json index ccab6f2..fff8dfd 100644 --- a/App/Report/reports.json +++ b/App/Report/reports.json @@ -1,4 +1,16 @@ -[ - {"id": 1, "name": "Заготовки"}, - {"id": 2, "name": "Поставщики"} -] \ No newline at end of file +{ + "1": {"name" : "Заготовки", "data": { + "title" : "Отчет о поставках заготовок", + "write" : ["Менеджер"], + "read" : ["Менеджер", "Управляющий"], + "view" : "workpiece_report", + "procedure" : "report_workpiece_2" + }}, + "2": {"name": "Поставщики", "data": { + "title" : "Отчет о поставках поставщиками", + "write" : ["Бухгалтер"], + "read" : ["Бухгалтер", "Управляющий"], + "view" : "sellers_report", + "procedure" : "report_sellers_2" + }} +} \ No newline at end of file diff --git a/App/Report/templates/report_basic.html b/App/Report/templates/report_basic.html index 1cf4630..e9da829 100644 --- a/App/Report/templates/report_basic.html +++ b/App/Report/templates/report_basic.html @@ -16,8 +16,8 @@