From 7f7176107a1796d73f3dc8284b53cd599546d8bb Mon Sep 17 00:00:00 2001
From: Emanuele Laface <emanuele.laface@esss.se>
Date: Fri, 27 Mar 2020 13:59:49 +0100
Subject: [PATCH] Fix PVs for ODH

---
 PythonServer/screens/odh.py | 49 +++++++++++++++---------
 WebSites/odh/dashboard.json | 75 ++++++++++++++++++++++++-------------
 2 files changed, 82 insertions(+), 42 deletions(-)

diff --git a/PythonServer/screens/odh.py b/PythonServer/screens/odh.py
index 0929fe2..309b86c 100755
--- a/PythonServer/screens/odh.py
+++ b/PythonServer/screens/odh.py
@@ -45,9 +45,9 @@ class odhScreen(Thread):
             "HCB-HPGS:ODH-O2iM-11:O2Level",
             "HCB-HPGS:ODH-O2iM-11:ODHWarning",
             "HCB-HPGS:ODH-O2iM-11:ODHAlarm",
-            "HCB-HPGS:ODH-O2iM-12:O2Level",
-            "HCB-HPGS:ODH-O2iM-12:ODHWarning",
-            "HCB-HPGS:ODH-O2iM-12:ODHAlarm",
+            "HCB-DogSh:ODH-O2iM-12:O2Level",
+            "HCB-DogSh:ODH-O2iM-12:ODHWarning",
+            "HCB-DogSh:ODH-O2iM-12:ODHAlarm",
             "CXB-CXH:ODH-O2iM-13:O2Level",
             "CXB-CXH:ODH-O2iM-13:ODHWarning",
             "CXB-CXH:ODH-O2iM-13:ODHAlarm",
@@ -79,11 +79,11 @@ class odhScreen(Thread):
             "CTLG-CS:ODH-O2iM-22:ODHWarning",
             "CTLG-CS:ODH-O2iM-22:ODHAlarm",
             "KG-GTA:ODH-O2iM-1:O2Level",
-            "KG-GTA:ODH-O2iM-1:ODHWarning",
-            "KG-GTA:ODH-O2iM-1:ODHAlarm",
+            "KG-GTA:ODH-O2iM-1:O2Lvl19_5",
+            "KG-GTA:ODH-O2iM-1:O2Lvl18",
             "KG-GTA:ODH-O2iM-2:O2Level",
-            "KG-GTA:ODH-O2iM-2:ODHWarning",
-            "KG-GTA:ODH-O2iM-2:ODHAlarm",
+            "KG-GTA:ODH-O2iM-2:O2Lvl19_5",
+            "KG-GTA:ODH-O2iM-2:O2Lvl18",
         ]
 
         epics_dict = {}
@@ -113,16 +113,31 @@ class odhScreen(Thread):
                             json_dict[pv]["status"] = 0
                             status = False
 
-                        if epics_dict[pv[0:-6] + "DHWarning"].connected:
-                            if epics_dict[pv[0:-6] + "DHWarning"].value == 1:
-                                json_dict[pv]["status"] = 1
-                            status = True
-                        if epics_dict[pv[0:-6] + "DHAlarm"].connected:
-                            if epics_dict[pv[0:-6] + "DHAlarm"].value == 1:
-                                json_dict[pv]["status"] = 2
-                            status = True
-                        if not status:
-                            json_dict[pv]["status"] = 3
+                        if (
+                            pv == "KG-GTA:ODH-O2iM-1:O2Level"
+                            or pv == "KG-GTA:ODH-O2iM-2:O2Level"
+                        ):
+                            if epics_dict[pv[0:-5] + "Lvl19_5"].connected:
+                                if epics_dict[pv[0:-5] + "Lvl19_5"].value == 0:
+                                    json_dict[pv]["status"] = 1
+                                status = True
+                            if epics_dict[pv[0:-5] + "Lvl18"].connected:
+                                if epics_dict[pv[0:-5] + "Lvl18"].value == 0:
+                                    json_dict[pv]["status"] = 2
+                                status = True
+                            if not status:
+                                json_dict[pv]["status"] = 3
+                        else:
+                            if epics_dict[pv[0:-6] + "DHWarning"].connected:
+                                if epics_dict[pv[0:-6] + "DHWarning"].value == 1:
+                                    json_dict[pv]["status"] = 1
+                                status = True
+                            if epics_dict[pv[0:-6] + "DHAlarm"].connected:
+                                if epics_dict[pv[0:-6] + "DHAlarm"].value == 1:
+                                    json_dict[pv]["status"] = 2
+                                status = True
+                            if not status:
+                                json_dict[pv]["status"] = 3
 
                 tmp_json = json.dumps(json_dict)
                 tmp_json = tmp_json.replace("NaN", "0")
diff --git a/WebSites/odh/dashboard.json b/WebSites/odh/dashboard.json
index b5347bd..b3f92ee 100644
--- a/WebSites/odh/dashboard.json
+++ b/WebSites/odh/dashboard.json
@@ -37,6 +37,7 @@
 				"2": 7,
 				"3": 7,
 				"4": 7,
+				"5": 7,
 				"7": 7
 			},
 			"col": {
@@ -44,6 +45,7 @@
 				"2": 1,
 				"3": 1,
 				"4": 1,
+				"5": 1,
 				"7": 1
 			},
 			"col_width": 1,
@@ -112,13 +114,15 @@
 				"1": 19,
 				"2": 7,
 				"3": 7,
-				"4": 7
+				"4": 7,
+				"6": 7
 			},
 			"col": {
 				"1": 1,
 				"2": 2,
 				"3": 2,
-				"4": 2
+				"4": 2,
+				"6": 2
 			},
 			"col_width": 1,
 			"widgets": [
@@ -149,10 +153,10 @@
 					"settings": {
 						"title": "TCH-8",
 						"value": "datasources[\"ODH\"][\"HCB-TCH:ODH-O2iM-8:O2Level\"][\"status\"]",
-						"green_text": "datasources[\"ODH\"][\"HCB-TCH:ODH-O2iM-7:O2Level\"][\"value\"]",
-						"amber_text": "datasources[\"ODH\"][\"HCB-TCH:ODH-O2iM-7:O2Level\"][\"value\"]",
-						"red_text": "datasources[\"ODH\"][\"HCB-TCH:ODH-O2iM-7:O2Level\"][\"value\"]",
-						"off_text": "datasources[\"ODH\"][\"HCB-TCH:ODH-O2iM-7:O2Level\"][\"value\"]"
+						"green_text": "datasources[\"ODH\"][\"HCB-TCH:ODH-O2iM-8:O2Level\"][\"value\"]",
+						"amber_text": "datasources[\"ODH\"][\"HCB-TCH:ODH-O2iM-8:O2Level\"][\"value\"]",
+						"red_text": "datasources[\"ODH\"][\"HCB-TCH:ODH-O2iM-8:O2Level\"][\"value\"]",
+						"off_text": "datasources[\"ODH\"][\"HCB-TCH:ODH-O2iM-8:O2Level\"][\"value\"]"
 					}
 				},
 				{
@@ -175,13 +179,15 @@
 				"1": 29,
 				"2": 17,
 				"3": 7,
-				"4": 7
+				"4": 7,
+				"6": 7
 			},
 			"col": {
 				"1": 1,
 				"2": 2,
 				"3": 3,
-				"4": 3
+				"4": 3,
+				"6": 3
 			},
 			"col_width": 1,
 			"widgets": [
@@ -206,17 +212,6 @@
 						"red_text": "datasources[\"ODH\"][\"HCB-HPGS:ODH-O2iM-11:O2Level\"][\"value\"]",
 						"off_text": "datasources[\"ODH\"][\"HCB-HPGS:ODH-O2iM-11:O2Level\"][\"value\"]"
 					}
-				},
-				{
-					"type": "ragIndicator",
-					"settings": {
-						"title": "HPGS-12",
-						"value": "datasources[\"ODH\"][\"HCB-HPGS:ODH-O2iM-12:O2Level\"][\"status\"]",
-						"green_text": "datasources[\"ODH\"][\"HCB-HPGS:ODH-O2iM-12:O2Level\"][\"value\"]",
-						"amber_text": "datasources[\"ODH\"][\"HCB-HPGS:ODH-O2iM-12:O2Level\"][\"value\"]",
-						"red_text": "datasources[\"ODH\"][\"HCB-HPGS:ODH-O2iM-12:O2Level\"][\"value\"]",
-						"off_text": "datasources[\"ODH\"][\"HCB-HPGS:ODH-O2iM-12:O2Level\"][\"value\"]"
-					}
 				}
 			]
 		},
@@ -227,13 +222,15 @@
 				"1": 37,
 				"2": 19,
 				"3": 15,
-				"4": 7
+				"4": 7,
+				"6": 7
 			},
 			"col": {
 				"1": 1,
 				"2": 1,
 				"3": 3,
-				"4": 4
+				"4": 4,
+				"6": 4
 			},
 			"col_width": 1,
 			"widgets": [
@@ -323,13 +320,15 @@
 				"1": 53,
 				"2": 25,
 				"3": 17,
-				"4": 15
+				"4": 13,
+				"6": 15
 			},
 			"col": {
 				"1": 1,
 				"2": 2,
 				"3": 2,
-				"4": 3
+				"4": 3,
+				"6": 3
 			},
 			"col_width": 1,
 			"widgets": [
@@ -375,13 +374,15 @@
 				"1": 61,
 				"2": 33,
 				"3": 19,
-				"4": 17
+				"4": 17,
+				"6": 17
 			},
 			"col": {
 				"1": 1,
 				"2": 2,
 				"3": 1,
-				"4": 2
+				"4": 2,
+				"6": 2
 			},
 			"col_width": 1,
 			"widgets": [
@@ -408,6 +409,30 @@
 					}
 				}
 			]
+		},
+		{
+			"title": "Dog Shed",
+			"width": 1,
+			"row": {
+				"4": 19
+			},
+			"col": {
+				"4": 1
+			},
+			"col_width": 1,
+			"widgets": [
+				{
+					"type": "ragIndicator",
+					"settings": {
+						"title": "DogSh-12",
+						"value": "datasources[\"ODH\"][\"HCB-DogSh:ODH-O2iM-12:O2Level\"][\"status\"]",
+						"green_text": "datasources[\"ODH\"][\"HCB-DogSh:ODH-O2iM-12:O2Level\"][\"value\"]",
+						"amber_text": "datasources[\"ODH\"][\"HCB-DogSh:ODH-O2iM-12:O2Level\"][\"value\"]",
+						"red_text": "datasources[\"ODH\"][\"HCB-DogSh:ODH-O2iM-12:O2Level\"][\"value\"]",
+						"off_text": "datasources[\"ODH\"][\"HCB-DogSh:ODH-O2iM-12:O2Level\"][\"value\"]"
+					}
+				}
+			]
 		}
 	],
 	"datasources": [
-- 
GitLab