Skip to content
Snippets Groups Projects
Commit 78c2c20b authored by Aleksandra Dimitrova's avatar Aleksandra Dimitrova
Browse files

error handling preview page

parent 68c9c3cc
No related branches found
No related tags found
No related merge requests found
...@@ -87,13 +87,36 @@ def case_id(filename): ...@@ -87,13 +87,36 @@ def case_id(filename):
#temporary choice of cases until I figure out where the actual function from backend is. #temporary choice of cases until I figure out where the actual function from backend is.
#give the list here in selection using functions from #give the list here in selection using functions from
selection = elog.get_active_cases(filename) selection = elog.get_active_cases(filename)
previewid = request.args.get("selectpreview")
while request.args.get("selectpreview")!= None:
print(previewid)
previewid = request.args.get("selectpreview") previewid = request.args.get("selectpreview")
break
preview = "../static/fish.jpg"
if previewid != None:
result = int(previewid)
state = elog.get_state(result, filename)
rec = dqn.deploy(state)
rec = int(rec)
print(rec)
petrinet.decorate_petri_net(result, filename)
preview = os.path.join(app.config['STATIC_FOLDER'], 'preview_net.png')
else:
print("else")
preview = "../static/fish.jpg"
'''
if previewid == '1': if previewid == '1':
preview = os.path.join(app.config['STATIC_FOLDER'], 'fish.jpg') preview = os.path.join(app.config['STATIC_FOLDER'], 'fish.jpg')
elif previewid == '2': elif previewid == '2':
preview = os.path.join(app.config['STATIC_FOLDER'], 'fish.jpg') preview = os.path.join(app.config['STATIC_FOLDER'], 'fish.jpg')
else: else:
preview = os.path.join(app.config['STATIC_FOLDER'], 'moyai.jpg') preview = os.path.join(app.config['STATIC_FOLDER'], 'moyai.jpg')
'''
return render_template('case.html', selection=selection, preview=preview, filename=filename) return render_template('case.html', selection=selection, preview=preview, filename=filename)
...@@ -118,7 +141,7 @@ def recommendation(result, filename): ...@@ -118,7 +141,7 @@ def recommendation(result, filename):
rec = dqn.deploy(state) rec = dqn.deploy(state)
rec = int(rec) rec = int(rec)
petrinet.decorate_petri_net(result, rec, filename) petrinet.decorate_petri_net_with_rec(result, rec, filename)
# time.sleep(15) # time.sleep(15)
return render_template('result.html') return render_template('result.html')
......
Frontend/static/net.png

50.9 KiB | W: | H:

Frontend/static/net.png

51 KiB | W: | H:

Frontend/static/net.png
Frontend/static/net.png
Frontend/static/net.png
Frontend/static/net.png
  • 2-up
  • Swipe
  • Onion skin
No preview for this file type
...@@ -24,7 +24,48 @@ def generate_petri_net(): ...@@ -24,7 +24,48 @@ def generate_petri_net():
return net, initial_marking, final_marking return net, initial_marking, final_marking
def decorate_petri_net(case, rec, name): def decorate_petri_net(case, name):
activity_mapping = {
1: 'place order',
2: 'arrange standard order',
3: 'arrange custom order',
4: 'pick from stock A',
5: 'pick from stock B',
6: 'pick from stock C',
7: 'manufacture A',
8: 'manufacture B',
9: 'pack A',
10: 'pack B',
11: 'pack C',
12: 'attempt delivery A',
13: 'attempt delivery B',
14: 'attempt delivery C',
15: 'order completed',
}
net, initial_marking, final_marking = generate_petri_net()
state = eventlog.get_state(case, name)
events = state['case']
event_names = []
for i in range(len(events)):
if events[i] == 1:
event_names.append(activity_mapping[i+1])
decoration = {}
for t in net.transitions:
print(str(t.label))
if str(t.label) in event_names:
decoration.update({t: {}})
decoration[t].update({"color":"blue"})
decoration[t].update({"label":t.label})
pm4py.view_petri_net(net, initial_marking, final_marking, decorations = decoration)
pm4py.save_vis_petri_net(net, initial_marking, final_marking, decorations = decoration, file_path = r"static\preview_net.png")
def decorate_petri_net_with_rec(case, rec, name):
activity_mapping = { activity_mapping = {
1: 'place order', 1: 'place order',
2: 'arrange standard order', 2: 'arrange standard order',
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment