Browse Source

修改一波闸门数据接口(还差水位折线图没接口)

Void_F 4 ngày trước cách đây
mục cha
commit
d315a688e3

+ 1 - 0
Assets/Scripts/HttpHelper.cs

@@ -285,6 +285,7 @@ public class HttpHelper : MonoBehaviour
             else
             {
                 string postResult = requestData.downloadHandler.text;
+                Debug.Log("大屏闸口数据:"+postResult);
                 if (useAes)
                 {
                     postResult = AESCrypto.Decrypt(postResult);

+ 1 - 1
Assets/Scripts/UI/Item/ZhaZhanItem.cs

@@ -20,7 +20,7 @@ public class ZhaZhanItem : MonoBehaviour
         _data = data;
         nameText.text = _name;
         posText.text = "坐标:<color=#FFFFFF>未知</color>";
-        idText.text = $"编码:<color=#FFFFFF>{ _data.GateNumber.ToString()}</color>";
+        idText.text = $"编码:<color=#FFFFFF>{ _data.sensor_id.ToString()}</color>";
         updateTimeText.text =$"更新日期:<color=#FFFFFF>{ _data.updateTime}</color>";
     }
 }

+ 22 - 13
Assets/Scripts/UI/UIView/3D/ZMJKLayer.cs

@@ -64,13 +64,13 @@ public class ZMJKLayer : MonoBehaviour
         {
             return GlobalData.floorGateData.success;
         });
-        float[] byV3 = new float[GlobalData.floorGateData.BuYuan.FloodGates.Length];
-        for (int i = 0; i < GlobalData.floorGateData.BuYuan.FloodGates.Length; i++)
+        float[] byV3 = new float[GlobalData.floorGateData.buYuan.Length];
+        for (int i = 0; i < GlobalData.floorGateData.buYuan.Length; i++)
         {
             int tempIndex = i;
             ZhaZhanItem tempItem = Instantiate(ZhaZhanItemOri, itemContent).GetComponent<ZhaZhanItem>();
-            tempItem.SetData(GlobalData.floorGateData.BuYuan.FloodGates[tempIndex], $"补元闸门-{tempIndex + 1}");
-            byV3[tempIndex] = GlobalData.floorGateData.BuYuan.FloodGates[tempIndex].CurrentOpening * 0.01f;
+            tempItem.SetData(GlobalData.floorGateData.buYuan[tempIndex], $"补元闸门-{tempIndex + 1}");
+            byV3[tempIndex] = GlobalData.floorGateData.buYuan[tempIndex].opening_degree * 0.01f;
             Debug.Log($"补元闸门-{tempIndex + 1}:{byV3[tempIndex]}");
             tempItem.gameObject.GetComponent<Button>().onClick.AddListener(() =>
             {
@@ -79,23 +79,27 @@ public class ZMJKLayer : MonoBehaviour
                 gongChengPanel.SetActive(true);
                 showGongPanel = true;
                 zhaZhanMingCheng.text = tempItem._name;
-                zhaMenKaiDu.text = $"{GlobalData.floorGateData.BuYuan.FloodGates[tempIndex].CurrentOpening:0.00}<size=14><color=#A5BFE2>%</color></size>";
-                guoZhaLiuLiang.text = $"{GlobalData.floorGateData.BuYuan.FloodGates[tempIndex].CurrentFlow}<size=14><color=#A5BFE2>m\u00b3/s</color></size>";
+                zhaMenKaiDu.text = $"{GlobalData.floorGateData.buYuan[tempIndex].opening_degree:0.00}<size=14><color=#A5BFE2>%</color></size>";
+                //guoZhaLiuLiang.text = $"{GlobalData.floorGateData.buYuan[tempIndex].CurrentFlow}<size=14><color=#A5BFE2>m\u00b3/s</color></size>";
+                guoZhaLiuLiang.text = $"-<size=14><color=#A5BFE2>m\u00b3/s</color></size>";
+                
                 //zhaQianShuiWei.text = $"{GlobalData.floorGateData.BuYuan.FloodGates[tempIndex]} <size=14><color=#A5BFE2>m</color></size>";
+                zhaQianShuiWei.text = $"- <size=14><color=#A5BFE2>m</color></size>";
                 //zhaHouShuiWei.text = $"{GlobalData.floorGateData.BuYuan.FloodGates[tempIndex]} <size=14><color=#A5BFE2>m</color></size>";
+                zhaHouShuiWei.text = $"{GlobalData.floorGateData.buYuanSW} <size=14><color=#A5BFE2>m</color></size>";
                 //shuiweiChart todo
             });
             currentZMDataList.Add(tempItem);
         }
         ActionInstance._Instance.ModelAni_On?.Invoke(AniType.buYuan,byV3);
         
-        float[] tkV3 = new float[GlobalData.floorGateData.TaoKou.FloodGates.Length];
-        for (int i = 0; i < GlobalData.floorGateData.TaoKou.FloodGates.Length; i++)
+        float[] tkV3 = new float[GlobalData.floorGateData.taoKou.Length];
+        for (int i = 0; i < GlobalData.floorGateData.taoKou.Length; i++)
         {
             int tempIndex = i;
             ZhaZhanItem tempItem = Instantiate(ZhaZhanItemOri, itemContent).GetComponent<ZhaZhanItem>();
-            tempItem.SetData(GlobalData.floorGateData.TaoKou.FloodGates[tempIndex], $"套口闸门-{tempIndex + 1}");
-            tkV3[tempIndex] = GlobalData.floorGateData.TaoKou.FloodGates[tempIndex].CurrentOpening * 0.01f;
+            tempItem.SetData(GlobalData.floorGateData.taoKou[tempIndex], $"套口闸门-{tempIndex + 1}");
+            tkV3[tempIndex] = GlobalData.floorGateData.taoKou[tempIndex].opening_degree * 0.01f;
             tempItem.gameObject.GetComponent<Button>().onClick.AddListener(() =>
             {
                 StaticLod.instance.OnFoucusStatic($"TK_ZM_{tempIndex+1:00}");
@@ -103,9 +107,14 @@ public class ZMJKLayer : MonoBehaviour
                 gongChengPanel.SetActive(true);
                 showGongPanel = true;
                 zhaZhanMingCheng.text = tempItem._name;
-                zhaMenKaiDu.text = $"{GlobalData.floorGateData.TaoKou.FloodGates[tempIndex].CurrentOpening:0.00}<size=14><color=#A5BFE2>%</color></size>";
-                guoZhaLiuLiang.text = $"{GlobalData.floorGateData.TaoKou.FloodGates[tempIndex].CurrentFlow}<size=14><color=#A5BFE2>m\u00b3/s</color></size>";
-
+                zhaMenKaiDu.text = $"{GlobalData.floorGateData.taoKou[tempIndex].opening_degree:0.00}<size=14><color=#A5BFE2>%</color></size>";
+                //guoZhaLiuLiang.text = $"{GlobalData.floorGateData.taoKou[tempIndex].CurrentFlow}<size=14><color=#A5BFE2>m\u00b3/s</color></size>";
+                guoZhaLiuLiang.text = $"-<size=14><color=#A5BFE2>m\u00b3/s</color></size>";
+                
+                //zhaQianShuiWei.text = $"{GlobalData.floorGateData.BuYuan.FloodGates[tempIndex]} <size=14><color=#A5BFE2>m</color></size>";
+                zhaQianShuiWei.text = $"{GlobalData.floorGateData.taoKouSW} <size=14><color=#A5BFE2>m</color></size>";
+                //zhaHouShuiWei.text = $"{GlobalData.floorGateData.BuYuan.FloodGates[tempIndex]} <size=14><color=#A5BFE2>m</color></size>";
+                zhaHouShuiWei.text = $"-<size=14><color=#A5BFE2>m</color></size>";
             });
             currentZMDataList.Add(tempItem);
         }

+ 23 - 15
Assets/Scripts/UI/UIView/BigScreen/BigScreenLayer.cs

@@ -16,43 +16,51 @@ using XCharts.Runtime;
 [System.Serializable]
 public class FloodGate
 {
-    public int GateNumber;
-    public bool IsOpen;
-    public float CurrentFlow;
-    public float CurrentOpening;
-    public int Status; // 1 for operational, 0 for faulty
-    public string updateTime;
+    [FormerlySerializedAs("GateNumber")] public int sensor_id;
+    [FormerlySerializedAs("IsOpen")] public bool gate_open;
+    //public float CurrentFlow;
+    [FormerlySerializedAs("CurrentOpening")] public float opening_degree;
+    public bool gate_breakdown;
+    public string updateTime=>GetTime();
+    public long record_ts;
+    public string station_name;
+
+    private string GetTime()
+    {
+        DateTime dtDateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc).AddSeconds(record_ts);
+        return dtDateTime.ToString("s");
+    }
 }
 
 [System.Serializable]
 public class FloodGateLocationData
 {
-    public float CurrentWaterLevel;
     public FloodGate[] FloodGates;
 }
 
 [System.Serializable]
 public class FloodGateStatusData
 {
-    public FloodGateLocationData BuYuan;
-    public FloodGateLocationData TaoKou;
-
+    [FormerlySerializedAs("BuYuan")] public FloodGate[] buYuan;
+    [FormerlySerializedAs("TaoKou")] public FloodGate[] taoKou;
+    public string taoKouSW;
+    public string buYuanSW;
     public bool success = false;
 
-    public int BuYuanTotalGates => BuYuan.FloodGates.Length;
+    public int BuYuanTotalGates => buYuan.Length;
 
-    public int BuYuanOperationalGates => CountOperationalGates(BuYuan.FloodGates);
+    public int BuYuanOperationalGates => CountOperationalGates(buYuan);
 
-    public int TaoKouTotalGates => TaoKou.FloodGates.Length;
+    public int TaoKouTotalGates => taoKou.Length;
 
-    public int TaoKouOperationalGates => CountOperationalGates(TaoKou.FloodGates);
+    public int TaoKouOperationalGates => CountOperationalGates(taoKou);
 
     private int CountOperationalGates(FloodGate[] gates)
     {
         int count = 0;
         foreach (var gate in gates)
         {
-            if (gate.Status == 1) count++;
+            if (!gate.gate_breakdown) count++;
         }
         return count;
     }