From d1d736e487d9eb104dcae9def948066037afd2f0 Mon Sep 17 00:00:00 2001
From: Alejandro Acuña <alejandro.acuna@aluvisagrupo.com>
Date: Tue, 29 Apr 2025 14:47:02 +0000
Subject: [PATCH] jhfg

---
 Obras/Zaragoza/rtzserver/data/art.servers.rtzserver/symbols/9/Controller.svg |  100 +++++++++++++++++++++++++++++++++++---------------
 1 files changed, 70 insertions(+), 30 deletions(-)

diff --git a/Obras/Zaragoza/rtzserver/data/art.servers.rtzserver/symbols/9/Controller.svg b/Obras/Zaragoza/rtzserver/data/art.servers.rtzserver/symbols/9/Controller.svg
index d3f879b..cb69601 100644
--- a/Obras/Zaragoza/rtzserver/data/art.servers.rtzserver/symbols/9/Controller.svg
+++ b/Obras/Zaragoza/rtzserver/data/art.servers.rtzserver/symbols/9/Controller.svg
@@ -23,9 +23,9 @@
      borderopacity="1.0"
      inkscape:pageopacity="0.0"
      inkscape:pageshadow="2"
-     inkscape:zoom="15.839192"
-     inkscape:cx="-12.823288"
-     inkscape:cy="13.478538"
+     inkscape:zoom="5.6"
+     inkscape:cx="-39.351516"
+     inkscape:cy="45.026974"
      inkscape:document-units="mm"
      inkscape:current-layer="svg1894"
      showgrid="false"
@@ -40,10 +40,11 @@
      inkscape:window-maximized="1" />
   <metadata
      id="Metadata"
-     art.script="   private boolean flashOn = false;
+     art.script="  private boolean flashOn = false;
 
     public void timer()
     {
+        status();
     }
 
     public void status()
@@ -51,6 +52,7 @@
         flashOn = java.util.Calendar.getInstance().get(java.util.Calendar.SECOND) % 2 == 0;
       
         Device device = getDevice();
+        art.library.model.devices.colors.controller.RTZ32.RTZ32_ControllerInformation information = (art.library.model.devices.colors.controller.RTZ32.RTZ32_ControllerInformation) device.getDeviceInformation();
         art.library.model.devices.colors.controller.RTZ32.RTZ32_ControllerStatus status = (art.library.model.devices.colors.controller.RTZ32.RTZ32_ControllerStatus) device.getDeviceStatus();
         
         art.library.model.devices.colors.controller.RTZ32.status.RTZ32_Status_General statusGeneral = status.rtz32.general;
@@ -58,37 +60,76 @@
         SVGElement background = getElement(&quot;Background&quot;);
         SVGElement border = getElement(&quot;Border&quot;);
         
-        setAttribute(border, &quot;display&quot;, &quot;none&quot;,999);
-        setAttribute(background, &quot;display&quot;, &quot;none&quot;, 999);
+        setAttribute(border, &quot;display&quot;, &quot;inline&quot;,999);
+        setAttribute(background, &quot;display&quot;, &quot;inline&quot;, 999);
         
-        SVGElement controlMode = null;
-
-        if (status.status == art.library.model.devices.DeviceStatus.STATUS_UNKNOWN ||  status.status == art.library.model.devices.DeviceStatus.STATUS_OFFLINE)
+        if (information.mode == art.library.model.devices.colors.controller.RTZ32.RTZ32_ControllerInformation.MODE_NON_CENTRALIZED)
         {
-            setAttribute(background, &quot;fill&quot;, &quot;#00FF00&quot;, 999);
-            setAttribute(background, &quot;display&quot;, flashOn || status.status == art.library.model.devices.DeviceStatus.STATUS_OFFLINE ? &quot;inline&quot; : &quot;none&quot;, 999);
-        } 
-        else if (statusGeneral.state == art.library.model.devices.colors.controller.RTZ32.status.RTZ32_Status_General.STATE_FLASHING)
-        {
-            setAttribute(background, &quot;fill&quot;, &quot;#FFFFFF&quot;, 999);
-            setAttribute(background, &quot;display&quot;, flashOn ? &quot;inline&quot; : &quot;none&quot;, 999);
+            setAttribute(border, &quot;fill&quot;, &quot;#FFFFFF&quot;,999);
+            setAttribute(background, &quot;fill&quot;, &quot;#FFFFFF&quot;,999);
         }
         else
         {
-            controlMode = statusGeneral.semiactuated  ? border : background;
-        }
+            if (status.rtz32.centralized.centralized == false)
+            {
+                setAttribute(border, &quot;fill&quot;, &quot;#808080&quot;, 999);
+                setAttribute(background, &quot;fill&quot;, &quot;#808080&quot;, 999);
+            } 
+            else
+            {
+                boolean semiactuated = status.rtz32.general.semiactuated ;
+                boolean offline = false;
+                
+                if (device.getAlarm(&quot;alarm_controller_offline&quot;) &gt; 0 || device.getAlarm(&quot;alarm_offline&quot;) &gt; 0)
+                {
+                    offline = true;
+                    setAttribute(border, &quot;display&quot;, flashOn ? &quot;inline&quot; : &quot;none&quot;, 999);
+                    setAttribute(background, &quot;display&quot;, flashOn ? &quot;inline&quot; : &quot;none&quot;, 999);
+                }
+                
+                if (status.rtz32.general.control == art.library.model.devices.colors.controller.RTZ32.status.RTZ32_Status_General.CONTROL_COMPUTER)
+                {
+                    setAttribute(border, &quot;fill&quot;, &quot;#00FF00&quot;, 999);
+                    setAttribute(background, &quot;fill&quot;, &quot;#00FF00&quot;, 999);
+                    
+                    if(offline == true)
+                    {
+                        setAttribute(background, &quot;display&quot;, flashOn || semiactuated ? &quot;none&quot; : &quot;inline&quot;, 999);
+                        setAttribute(border, &quot;display&quot;, flashOn ? &quot;none&quot; : &quot;inline&quot;, 999);
+                    }
+                    
+                    if(semiactuated)
+                        setAttribute(background, &quot;display&quot;, flashOn || semiactuated ? &quot;none&quot; : &quot;inline&quot;, 999);
+                }
+                else if (status.rtz32.general.control == art.library.model.devices.colors.controller.RTZ32.status.RTZ32_Status_General.CONTROL_LOCAL)
+                {
+                    setAttribute(border, &quot;fill&quot;, &quot;#FF0000&quot;, 999);
+                    setAttribute(background, &quot;fill&quot;, &quot;#FF0000&quot;, 999);
+                   
+                    if (offline == true)
+                    {
+                        setAttribute(background, &quot;display&quot;, flashOn || semiactuated ? &quot;none&quot; : &quot;inline&quot;, 999);
+                        setAttribute(border, &quot;display&quot;, flashOn ? &quot;none&quot; : &quot;inline&quot;, 999);
+                    }
+                    
+                     if(semiactuated)
+                        setAttribute(background, &quot;display&quot;, flashOn || semiactuated ? &quot;none&quot; : &quot;inline&quot;, 999);
+                }
 
-        if (controlMode != null)
-        {
-            if (statusGeneral.control == art.library.model.devices.colors.controller.RTZ32.status.RTZ32_Status_General.CONTROL_LOCAL)
-            {
-                setAttribute(controlMode, &quot;fill&quot;, &quot;#FF0000&quot;, 999);
+                if (device.getAlarm(&quot;alarm_controller_offline&quot;) &lt;= 0 &amp;&amp; device.getAlarm(&quot;alarm_offline&quot;) &lt;= 0)
+                {
+                    if (art.library.model.devices.colors.controller.RTZ32.RTZ32_Controller.class.cast(device).getDeviceAlarms().rtz32.flashing.getServerityAlarm() &gt; 0)
+                    {
+                        setAttribute(border, &quot;fill&quot;, &quot;#FFFF00&quot;, 999);
+                        setAttribute(background, &quot;fill&quot;, &quot;#FFFF00&quot;, 999);
+                        setAttribute(border, &quot;display&quot;, flashOn ? &quot;inline&quot; : &quot;none&quot;, 999);
+                        setAttribute(background, &quot;display&quot;, flashOn ? &quot;inline&quot; : &quot;none&quot;, 999);
+                        
+                        if(semiactuated)
+                            setAttribute(background, &quot;display&quot;,&quot;none&quot;, 999);
+                    }
+                }
             }
-            else if (statusGeneral.control == art.library.model.devices.colors.controller.RTZ32.status.RTZ32_Status_General.CONTROL_COMPUTER)
-            {
-                setAttribute(controlMode, &quot;fill&quot;, &quot;#00FF00&quot;, 999);
-            }
-            setAttribute(controlMode, &quot;display&quot;, &quot;inline&quot;, 999);
         }
     }
 
@@ -110,8 +151,7 @@
             }
         } 
         catch (Exception ex){}
-    }
-">
+    }">
     <rdf:RDF>
       <cc:Work
          rdf:about="">

--
Gitblit v1.10.0