06/12 Redesign dashboard 3
This commit is contained in:
+45
-12
@@ -1,5 +1,6 @@
|
||||
import os
|
||||
import logging
|
||||
from datetime import datetime
|
||||
from app.utils.time_utils import now_eastern
|
||||
from flask import (Blueprint, render_template, redirect, url_for,
|
||||
flash, request, current_app, jsonify, abort, Response)
|
||||
@@ -102,12 +103,14 @@ def export_list_pdf():
|
||||
db.and_(Issue.area_id.isnot(None), Area.facility_id.in_(customer_facility_ids)),
|
||||
))
|
||||
|
||||
issue_id_filter = request.args.get('issue_id', '').strip()
|
||||
severity_filter = request.args.get('severity', '')
|
||||
status_filter = request.args.get('status', '')
|
||||
sla_filter = request.args.get('sla', '')
|
||||
facility_filter = request.args.get('facility_id', '')
|
||||
contract_filter = request.args.get('contract_id', '')
|
||||
issue_id_filter = request.args.get('issue_id', '').strip()
|
||||
severity_filter = request.args.get('severity', '')
|
||||
status_filter = request.args.get('status', '')
|
||||
sla_filter = request.args.get('sla', '')
|
||||
facility_filter = request.args.get('facility_id', '')
|
||||
contract_filter = request.args.get('contract_id', '')
|
||||
date_from_filter = request.args.get('date_from', '')
|
||||
date_to_filter = request.args.get('date_to', '')
|
||||
|
||||
if issue_id_filter.isdigit():
|
||||
q = q.filter(Issue.id == int(issue_id_filter))
|
||||
@@ -115,6 +118,17 @@ def export_list_pdf():
|
||||
q = q.filter(Issue.severity == severity_filter)
|
||||
if status_filter:
|
||||
q = q.filter(Issue.status == status_filter)
|
||||
if date_from_filter:
|
||||
try:
|
||||
q = q.filter(Issue.reported_at >= datetime.strptime(date_from_filter, '%Y-%m-%d'))
|
||||
except ValueError:
|
||||
date_from_filter = ''
|
||||
if date_to_filter:
|
||||
try:
|
||||
_dt = datetime.strptime(date_to_filter, '%Y-%m-%d').replace(hour=23, minute=59, second=59)
|
||||
q = q.filter(Issue.reported_at <= _dt)
|
||||
except ValueError:
|
||||
date_to_filter = ''
|
||||
if contract_filter.isdigit():
|
||||
_contract_fids = [
|
||||
f.id for f in Facility.query.filter_by(project_id=int(contract_filter)).all()
|
||||
@@ -139,6 +153,10 @@ def export_list_pdf():
|
||||
filter_parts.append(f'Severity: {severity_filter.title()}')
|
||||
if status_filter:
|
||||
filter_parts.append(f'Status: {status_filter.replace("_", " ").title()}')
|
||||
if date_from_filter:
|
||||
filter_parts.append(f'From: {date_from_filter}')
|
||||
if date_to_filter:
|
||||
filter_parts.append(f'To: {date_to_filter}')
|
||||
if sla_filter:
|
||||
filter_parts.append(f'SLA: {sla_filter.replace("_", " ").title()}')
|
||||
if contract_filter.isdigit():
|
||||
@@ -209,12 +227,14 @@ def index():
|
||||
)
|
||||
)
|
||||
|
||||
issue_id_filter = request.args.get('issue_id', '').strip()
|
||||
severity_filter = request.args.get('severity', '')
|
||||
status_filter = request.args.get('status', '')
|
||||
sla_filter = request.args.get('sla', '')
|
||||
facility_filter = request.args.get('facility_id', '')
|
||||
contract_filter = request.args.get('contract_id', '')
|
||||
issue_id_filter = request.args.get('issue_id', '').strip()
|
||||
severity_filter = request.args.get('severity', '')
|
||||
status_filter = request.args.get('status', '')
|
||||
sla_filter = request.args.get('sla', '')
|
||||
facility_filter = request.args.get('facility_id', '')
|
||||
contract_filter = request.args.get('contract_id', '')
|
||||
date_from_filter = request.args.get('date_from', '')
|
||||
date_to_filter = request.args.get('date_to', '')
|
||||
|
||||
if issue_id_filter.isdigit():
|
||||
q = q.filter(Issue.id == int(issue_id_filter))
|
||||
@@ -222,6 +242,17 @@ def index():
|
||||
q = q.filter(Issue.severity == severity_filter)
|
||||
if status_filter:
|
||||
q = q.filter(Issue.status == status_filter)
|
||||
if date_from_filter:
|
||||
try:
|
||||
q = q.filter(Issue.reported_at >= datetime.strptime(date_from_filter, '%Y-%m-%d'))
|
||||
except ValueError:
|
||||
date_from_filter = ''
|
||||
if date_to_filter:
|
||||
try:
|
||||
_dt = datetime.strptime(date_to_filter, '%Y-%m-%d').replace(hour=23, minute=59, second=59)
|
||||
q = q.filter(Issue.reported_at <= _dt)
|
||||
except ValueError:
|
||||
date_to_filter = ''
|
||||
if contract_filter.isdigit():
|
||||
_contract_fids = [
|
||||
f.id for f in Facility.query.filter_by(project_id=int(contract_filter)).all()
|
||||
@@ -302,6 +333,8 @@ def index():
|
||||
sla_filter=sla_filter,
|
||||
facility_filter=facility_filter,
|
||||
contract_filter=contract_filter,
|
||||
date_from_filter=date_from_filter,
|
||||
date_to_filter=date_to_filter,
|
||||
facilities=facilities,
|
||||
projects=projects,
|
||||
staff=staff,
|
||||
|
||||
Reference in New Issue
Block a user