tum 2 年之前
父節點
當前提交
01bb47480f
共有 2 個文件被更改,包括 32 次插入12 次删除
  1. 19 7
      app/backend/templates/backend/gen_report.html
  2. 13 5
      app/backend/views.py

+ 19 - 7
app/backend/templates/backend/gen_report.html

@@ -9,13 +9,25 @@
9 9
 <h1>Please Click Dump API</h1>
10 10
 {% else %}
11 11
 <form class='my-2'>
12
-
13
-{% for sla in  slas %}
14
-<label class='me-3'>
15
-  <input type='checkbox' name='sla_name' value='{{ sla }}' {% if sla in request.GET.sla_name %}checked{% endif %}/>{{ sla }}
16
-</label>
17
-{% endfor %}
18
-<input type='submit' name='filter' Value='Filter' class='btn btn-primary ms-3' />
12
+  <div>
13
+    <h2>SLAs</h2>
14
+    {% for sla in  slas %}
15
+    <label class='me-3'>
16
+      <input type='checkbox' name='sla_name' value='{{ sla }}' {% if sla in sla_name %}checked{% endif %}/>{{ sla }}
17
+    </label>
18
+    {% endfor %}
19
+  </div>
20
+  <div>
21
+    <h2>Verifiers</h2>
22
+    {% for v in  vrs %}
23
+    <label class='me-3'>
24
+      <input type='checkbox' name='vr_name' value='{{ v }}' {% if v in vr_name %}checked{% endif %}/>{{ v }}
25
+    </label>
26
+    {% endfor %}
27
+  </div>
28
+  <br>
29
+  <a href="{{ request.path_info }}" class='btn btn-danger'>Reset</a>
30
+<input type='submit' name='filter' Value='Filter' class='btn btn-primary' />
19 31
 <input type='submit' name='genReport' value='Gen Report' class='btn btn-info' />
20 32
 {% if report_link %}
21 33
   <a href="{{ report_link }}" class='btn btn-link'>Download</a>

+ 13 - 5
app/backend/views.py

@@ -261,7 +261,7 @@ def dump_fixed_results(request):
261 261
     temp = tt_json['result']
262 262
     for t in temp:
263 263
         tn = t['ids']['test_type_name']
264
-        r = exfo.call_remote_api('/API/REST/Test/v1/FixedResults/'+tn+'?sections=all&size=0&sort=verifier_id asc,time_stamp desc&time_range={"start":"1 days  ago","end":"now"}').json()
264
+        r = exfo.call_remote_api('/API/REST/Test/v1/FixedResults/'+tn+'?sections=all&size=0&sort=verifier_id asc,time_stamp desc&time_range={"start":"3 days  ago","end":"now"}').json()
265 265
         #pprint(r)
266 266
         try:
267 267
             r0 = r['result']
@@ -316,13 +316,13 @@ def gen_report_notebook():
316 316
         data.append(d)
317 317
     df0 = pd.DataFrame(data)
318 318
     df0 = df0.explode(["header", "results"])
319
-    df1 = df0[["header", "results", "dt", "sla_name", "test_display_name"]]
319
+    df1 = df0[["header", "results", "dt", "sla_name", "test_display_name", "verifier_name"]]
320 320
     df1 = df1.query('sla_name == sla_name')
321 321
     #pprint(df1['sla_name'].unique())
322 322
     
323 323
     #df1['results_text'] = df1['results'].apply(con_human)
324 324
     df1['results_text'] = df1.apply(con_human, axis=1)
325
-    table = df1.pivot(index=['sla_name', 'dt'],columns=['test_display_name','header'], values='results_text').sort_values(by=['sla_name', 'dt'], ascending=[True, False])
325
+    table = df1.pivot(index=['sla_name', 'dt', 'verifier_name'],columns=['test_display_name','header'], values='results_text').sort_values(by=['sla_name', 'dt'], ascending=[True, False])
326 326
     table = table.dropna(how='all', axis=0)
327 327
     return (table,df1)
328 328
 
@@ -333,17 +333,25 @@ def gen_report(request):
333 333
    
334 334
     try:
335 335
         table,df = gen_report_notebook()
336
-    except:
336
+    except Exception as e:
337
+        messages.error(request, str(e))
337 338
         return render(request, 'backend/gen_report.html', {'dump_again': True})
338 339
     
339 340
     slas = list(df['sla_name'].unique())
341
+    vrs = list(df['verifier_name'].unique())
340 342
     sla_name = request.GET.getlist('sla_name')
343
+    vr_name = request.GET.getlist('vr_name')
341 344
     
342 345
     pprint("--- sla_name ---")
343 346
     pprint(sla_name)
344 347
     if len(sla_name) > 0:
345 348
         sla_filter = ", ".join(f"'{w}'" for w in sla_name)
346 349
         table = table.query(f"sla_name in ({sla_filter})")
350
+    
351
+    if len(vr_name) > 0:
352
+        vr_filter = ", ".join(f"'{w}'" for w in vr_name)
353
+        table = table.query(f"verifier_name in ({vr_filter})")
354
+    
347 355
     gen_report = request.GET.get('genReport', None)
348 356
     
349 357
     report_link = None
@@ -362,4 +370,4 @@ def gen_report(request):
362 370
         mk_address = []
363 371
     return render(request, 'backend/gen_report.html', {'tbl': table.head(20).to_html(\
364 372
         classes=["table", "table-striped", "table-bordered", "align-middle"],\
365
-        table_id="report_tbl"), 'slas': slas, 'report_link': report_link, 'mk_ips': mk_ips, 'mk_address': mk_address})
373
+        table_id="report_tbl"), 'slas': slas, 'report_link': report_link, 'mk_ips': mk_ips, 'mk_address': mk_address, 'vrs': vrs, 'sla_name': sla_name, 'vr_name': vr_name})