364 lines
12 KiB
C#
364 lines
12 KiB
C#
using System.Collections;
|
||
using System.Collections.Generic;
|
||
using System.Linq;
|
||
using System.Threading.Tasks;
|
||
using Unity.VisualScripting;
|
||
using UnityEngine;
|
||
using Views;
|
||
|
||
public class ClampAmmetersManager : MonoSingleton<ClampAmmetersManager>
|
||
{
|
||
[SerializeField] List<ClampAmmetersInteractive> clampAmmetersInteractives = new List<ClampAmmetersInteractive>();
|
||
[SerializeField] List<Multimeter> Multimeter = new List<Multimeter>();
|
||
public Dictionary<int, float> data = new Dictionary<int, float>();
|
||
public List<ThreeTransformerPhotovoltaicView> Three;
|
||
[SerializeField] List<GameObject> gameObjects = new List<GameObject>();
|
||
public DoolsPlayer DoolsPlayer;
|
||
private void Awake()
|
||
{
|
||
run();
|
||
}
|
||
// Start is called before the first frame update
|
||
void Start()
|
||
{
|
||
//init();
|
||
StartCoroutine(QiDon());
|
||
}
|
||
IEnumerator QiDon()
|
||
{
|
||
yield return new WaitForSeconds(3);
|
||
}
|
||
/// <summary>
|
||
/// 获取低下预设数据
|
||
/// </summary>
|
||
void run()
|
||
{
|
||
GameManager.Instance.DoolsPlayer = DoolsPlayer;
|
||
clampAmmetersInteractives = GetComponentsInChildren<ClampAmmetersInteractive>(true).ToList();
|
||
Multimeter = GetComponentsInChildren<Multimeter>().ToList();
|
||
Three = GetComponentsInChildren<ThreeTransformerPhotovoltaicView>().ToList();
|
||
}
|
||
public async Task<float> Init(string name)
|
||
{
|
||
await Task.Delay(2000);
|
||
float temp = 0;
|
||
if (Three[0].ttpData.Count >= 2)
|
||
{
|
||
Debug.Log("akjshd走:222");
|
||
switch (name)
|
||
{
|
||
case "用电_AA1":
|
||
temp = Three[0].ttpData[0].AA1;
|
||
break;
|
||
case "用电_AA2":
|
||
temp = Three[0].ttpData[0].AA2;
|
||
break;
|
||
case "用电_AA3":
|
||
temp = Three[0].ttpData[0].AA3;
|
||
break;
|
||
case "用电_BA1":
|
||
temp = Three[0].ttpData[0].BA1;
|
||
break;
|
||
case "用电_BA2":
|
||
temp = Three[0].ttpData[0].BA2;
|
||
break;
|
||
case "用电_BA3":
|
||
temp = Three[0].ttpData[0].BA3;
|
||
break;
|
||
case "用电_CA1":
|
||
temp = Three[0].ttpData[0].CA1;
|
||
break;
|
||
case "用电_CA2":
|
||
temp = Three[0].ttpData[0].CA2;
|
||
break;
|
||
case "用电_CA3":
|
||
temp = Three[0].ttpData[0].CA3;
|
||
break;
|
||
case "用电_1A":
|
||
case "用电_1B":
|
||
case "用电_1C":
|
||
temp = show(name, Three[0].ttpData[0].AA1);
|
||
break;
|
||
|
||
case "用电_AV1":
|
||
temp = Three[0].ttpData[0].AV1;
|
||
break;
|
||
case "用电_AV2":
|
||
temp = Three[0].ttpData[0].AV2;
|
||
break;
|
||
case "用电_AV3":
|
||
temp = Three[0].ttpData[0].AV3;
|
||
break;
|
||
case "用电_BV1":
|
||
temp = Three[0].ttpData[0].BV1;
|
||
break;
|
||
case "用电_BV2":
|
||
temp = Three[0].ttpData[0].BV2;
|
||
break;
|
||
case "用电_BV3":
|
||
temp = Three[0].ttpData[0].BV3;
|
||
break;
|
||
case "用电_CV1":
|
||
temp = Three[0].ttpData[0].CV1;
|
||
break;
|
||
case "用电_CV2":
|
||
temp = Three[0].ttpData[0].CV2;
|
||
break;
|
||
case "用电_CV3":
|
||
temp = Three[0].ttpData[0].CV3;
|
||
break;
|
||
|
||
#region 发电
|
||
case "发电_AV1":
|
||
temp = Three[0].ttpData[1].AV1;
|
||
break;
|
||
case "发电_AV2":
|
||
temp = Three[0].ttpData[1].AV2;
|
||
break;
|
||
case "发电_AV3":
|
||
temp = Three[0].ttpData[1].AV3;
|
||
break;
|
||
case "发电_BV1":
|
||
temp = Three[0].ttpData[1].BV1;
|
||
break;
|
||
case "发电_BV2":
|
||
temp = Three[0].ttpData[1].BV2;
|
||
break;
|
||
case "发电_BV3":
|
||
temp = Three[0].ttpData[1].BV3;
|
||
break;
|
||
case "发电_CV1":
|
||
temp = Three[0].ttpData[1].CV1;
|
||
break;
|
||
case "发电_CV2":
|
||
temp = Three[0].ttpData[1].CV2;
|
||
break;
|
||
case "发电_CV3":
|
||
temp = Three[0].ttpData[1].CV3;
|
||
break;
|
||
|
||
case "发电_AA1":
|
||
temp = Three[0].ttpData[1].AA1;
|
||
break;
|
||
case "发电_AA2":
|
||
temp = Three[0].ttpData[1].AA2;
|
||
break;
|
||
case "发电_AA3":
|
||
temp = Three[0].ttpData[1].AA3;
|
||
break;
|
||
case "发电_BA1":
|
||
temp = Three[0].ttpData[1].BA1;
|
||
break;
|
||
case "发电_BA2":
|
||
temp = Three[0].ttpData[1].BA2;
|
||
break;
|
||
case "发电_BA3":
|
||
temp = Three[0].ttpData[1].BA3;
|
||
break;
|
||
case "发电_CA1":
|
||
temp = Three[0].ttpData[1].CA1;
|
||
break;
|
||
case "发电_CA2":
|
||
temp = Three[0].ttpData[1].CA2;
|
||
break;
|
||
case "发电_CA3":
|
||
temp = Three[0].ttpData[1].CA3;
|
||
break;
|
||
#endregion
|
||
default:
|
||
break;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
Debug.Log("akjshd走:");
|
||
switch (name)
|
||
{
|
||
case "用电_AA1":
|
||
temp = Three[0].ttpData[0].AA1;
|
||
break;
|
||
case "用电_AA2":
|
||
temp = Three[0].ttpData[0].AA2;
|
||
break;
|
||
case "用电_AA3":
|
||
temp = Three[0].ttpData[0].AA3;
|
||
break;
|
||
case "用电_BA1":
|
||
temp = Three[0].ttpData[0].BA1;
|
||
break;
|
||
case "用电_BA2":
|
||
temp = Three[0].ttpData[0].BA2;
|
||
break;
|
||
case "用电_BA3":
|
||
temp = Three[0].ttpData[0].BA3;
|
||
break;
|
||
case "用电_CA1":
|
||
temp = Three[0].ttpData[0].CA1;
|
||
break;
|
||
case "用电_CA2":
|
||
temp = Three[0].ttpData[0].CA2;
|
||
break;
|
||
case "用电_CA3":
|
||
temp = Three[0].ttpData[0].CA3;
|
||
break;
|
||
case "用电_1A":
|
||
case "用电_1B":
|
||
case "用电_1C":
|
||
temp = show(name, Three[0].ttpData[0].AA1);
|
||
break;
|
||
|
||
case "用电_AV1":
|
||
temp = Three[0].ttpData[0].AV1;
|
||
break;
|
||
case "用电_AV2":
|
||
temp = Three[0].ttpData[0].AV2;
|
||
break;
|
||
case "用电_AV3":
|
||
temp = Three[0].ttpData[0].AV3;
|
||
break;
|
||
case "用电_BV1":
|
||
temp = Three[0].ttpData[0].BV1;
|
||
break;
|
||
case "用电_BV2":
|
||
temp = Three[0].ttpData[0].BV2;
|
||
break;
|
||
case "用电_BV3":
|
||
temp = Three[0].ttpData[0].BV3;
|
||
break;
|
||
case "用电_CV1":
|
||
temp = Three[0].ttpData[0].CV1;
|
||
break;
|
||
case "用电_CV2":
|
||
temp = Three[0].ttpData[0].CV2;
|
||
break;
|
||
case "用电_CV3":
|
||
temp = Three[0].ttpData[0].CV3;
|
||
break;
|
||
|
||
#region 发电
|
||
case "发电_AV1":
|
||
temp = Three[0].ttpData[0].AV1;
|
||
break;
|
||
case "发电_AV2":
|
||
temp = Three[0].ttpData[0].AV2;
|
||
break;
|
||
case "发电_AV3":
|
||
temp = Three[0].ttpData[0].AV3;
|
||
break;
|
||
case "发电_BV1":
|
||
temp = Three[0].ttpData[0].BV1;
|
||
break;
|
||
case "发电_BV2":
|
||
temp = Three[0].ttpData[0].BV2;
|
||
break;
|
||
case "发电_BV3":
|
||
temp = Three[0].ttpData[0].BV3;
|
||
break;
|
||
case "发电_CV1":
|
||
temp = Three[0].ttpData[0].CV1;
|
||
break;
|
||
case "发电_CV2":
|
||
temp = Three[0].ttpData[0].CV2;
|
||
break;
|
||
case "发电_CV3":
|
||
temp = Three[0].ttpData[0].CV3;
|
||
break;
|
||
|
||
|
||
case "发电_AA1":
|
||
temp = Three[0].ttpData[0].AA1;
|
||
break;
|
||
case "发电_AA2":
|
||
temp = Three[0].ttpData[0].AA2;
|
||
break;
|
||
case "发电_AA3":
|
||
temp = Three[0].ttpData[0].AA3;
|
||
break;
|
||
case "发电_BA1":
|
||
temp = Three[0].ttpData[0].BA1;
|
||
break;
|
||
case "发电_BA2":
|
||
temp = Three[0].ttpData[0].BA2;
|
||
break;
|
||
case "发电_BA3":
|
||
temp = Three[0].ttpData[0].BA3;
|
||
break;
|
||
case "发电_CA1":
|
||
temp = Three[0].ttpData[0].CA1;
|
||
break;
|
||
case "发电_CA2":
|
||
temp = Three[0].ttpData[0].CA2;
|
||
break;
|
||
case "发电_CA3":
|
||
temp = Three[0].ttpData[0].CA3;
|
||
break;
|
||
#endregion
|
||
}
|
||
}
|
||
for (int i = 0; i < gameObjects.Count; i++)
|
||
{
|
||
if (gameObjects[i].name.Equals(""))
|
||
{
|
||
gameObjects[i].SetActive(true);
|
||
}
|
||
}
|
||
switch (name)
|
||
{
|
||
default:
|
||
break;
|
||
}
|
||
Debug.Log("当前数据:" + temp);
|
||
return temp;
|
||
}
|
||
float show(string name, float dianyliu)
|
||
{
|
||
if (!string.IsNullOrEmpty(name) && !string.IsNullOrEmpty(GlobalFlag.biaojiData.userState))
|
||
{
|
||
//if (GlobalFlag.biaojiData.userState == "正常")
|
||
//{
|
||
//
|
||
//}
|
||
dianyliu = dianyliu * GlobalFlag.Beilv;
|
||
if (GlobalFlag.biaojiData.userState == "异常")
|
||
{
|
||
if (GlobalFlag.biaojiData.warningType == "电流异常")
|
||
{
|
||
switch (name.Substring(3, 2))
|
||
{
|
||
case "1A":
|
||
dianyliu = GlobalFlag.oneA;
|
||
break;
|
||
case "1B":
|
||
dianyliu = GlobalFlag.oneB;
|
||
break;
|
||
case "1C":
|
||
dianyliu = GlobalFlag.oneC;
|
||
break;
|
||
default:
|
||
break;
|
||
}
|
||
}
|
||
else if(GlobalFlag.biaojiData.warningType=="私换互感器")
|
||
{
|
||
|
||
if (!string.IsNullOrEmpty(GlobalFlag.isChange))
|
||
{
|
||
|
||
dianyliu = dianyliu * GlobalFlag.Beilv;
|
||
Debug.Log(dianyliu + "----------Beilv");
|
||
}
|
||
else
|
||
{
|
||
dianyliu = dianyliu * GlobalFlag.changeValue;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
|
||
}
|
||
}
|
||
}
|
||
return dianyliu;
|
||
}
|
||
}
|