12/26commit

This commit is contained in:
NieZhi 2024-12-26 17:37:08 +08:00
parent d15f39965e
commit a45fe38ade
157 changed files with 4680 additions and 1002 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,7 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using TMPro;
using UnityEngine;
using XCharts.Runtime;
@ -8,32 +10,21 @@ using XCharts.Runtime;
public class HumitureTrend_Controller : MonoBehaviour
{
private LineChart lineChart;
private EMIMS_Data emimsData;
private HttpRequestHandler httpRequestHandler;
private List<HumitureStatisticsData> _humitureStatisticsData;
private List<HumitureStatisticsData> lastData;
private string httpUrl=HttpRequestHandler.httpIp+"/situation/deviceData/deviceHumitureStatisticsApi";
private string encryptText; // 加密文本
private int day=15; // 天数
public string deviceId="DDC04_2";
public string tagId1="tag0012";
public string tagId2="tag0013";
void OnEnable()
{
lineChart = gameObject.GetComponent<LineChart>();
emimsData = new EMIMS_Data();
List<EM_Data> list = new List<EM_Data>
{
new EM_Data {ID = "1", Name = "温度一天前", DataType = "float", Value = 14.5f},
new EM_Data {ID = "2", Name = "温度两天前", DataType = "float", Value = 26.2f},
new EM_Data {ID = "3", Name = "温度三天前", DataType = "float", Value = 18.7f},
new EM_Data {ID = "4", Name = "温度四天前", DataType = "float", Value = 22.1f},
new EM_Data {ID = "5", Name = "温度五天前", DataType = "float", Value = 16.9f},
new EM_Data {ID = "6", Name = "温度六天前", DataType = "float", Value = 20.3f},
new EM_Data {ID = "7", Name = "温度七天前", DataType = "float", Value = 19.8f},
new EM_Data {ID = "8", Name = "湿度一天前", DataType = "float", Value = 41.2f},
new EM_Data {ID = "9", Name = "湿度两天前", DataType = "float", Value = 54.5f},
new EM_Data {ID = "10", Name = "湿度三天前", DataType = "float", Value = 22.8f},
new EM_Data {ID = "11", Name = "湿度四天前", DataType = "float", Value = 43.1f},
new EM_Data {ID = "12", Name = "湿度五天前", DataType = "float", Value = 21.9f},
new EM_Data {ID = "13", Name = "湿度六天前", DataType = "float", Value = 42.3f},
new EM_Data {ID = "14", Name = "湿度七天前", DataType = "float", Value = 50.8f},
};
emimsData.Tags = list;
lineChart=gameObject.GetComponent<LineChart>();
httpRequestHandler = gameObject.AddComponent<HttpRequestHandler>();
StartCoroutine(UpdateDataSource());
}
@ -42,28 +33,79 @@ public class HumitureTrend_Controller : MonoBehaviour
{
while (true)
{
emimsData.Tags[Random.Range(0,7)].Value = Random.Range(10f,40f);
emimsData.Tags[Random.Range(7,14)].Value = Random.Range(30f,80f);
UpdateDataView();
string nowTime = DateTime.Now.ToString("yyyy-MM-dd");
string startTime = DateTime.Now.AddDays(-day).ToString("yyyy-MM-dd");
string AESValue = string.Format(
"{{\n \"deviceId\": \"{0}\",\n \"endTime\": \"{1}\",\n \"startTime\": \"{2}\",\n \"statisticsType\": \"1\"\n}}",
deviceId,nowTime, startTime);
encryptText = AESHelper.Encrypt(AESValue);
// 发起一个 POST 请求
string jsonData = "{\"encryptText\":\"" + encryptText + "\"}";
StartCoroutine(httpRequestHandler.PostRequest(httpUrl, jsonData, OnPostSuccess, OnError));
yield return new WaitForSeconds(4f);
}
}
// POST 请求成功回调
private void OnPostSuccess(string response)
{
ReturnInfo<List<HumitureStatisticsData>> returnInfo = JsonUtility.FromJson<ReturnInfo<List<HumitureStatisticsData>>>(response);
_humitureStatisticsData = returnInfo.data;
UpdateDataView();
}
// 请求失败的回调
private void OnError(string error)
{
Debug.LogError("Request Error: " + error);
}
// 更新填充数据
private void UpdateDataView()
{
// 当数据未更新时,不刷新数据
if (lastData!=null && _humitureStatisticsData.SequenceEqual(lastData))
{
// print("温湿度数据未更新"+DateTime.Now);
return;
}
lastData = _humitureStatisticsData;
print("温湿度趋势:"+_humitureStatisticsData.Count);
// 温度
List<HumitureStatisticsData> TDataList=_humitureStatisticsData.Where(x=>x.TagId==tagId1).ToList();
// 湿度
List<HumitureStatisticsData> HDataList=_humitureStatisticsData.Where(x=>x.TagId==tagId2).ToList();
// 趋势图
XAxis xAxis = lineChart.GetChartComponent<XAxis>();
// x轴清空
xAxis.data.Clear();
// 清空数据
lineChart.ClearSerieData();
// X轴添加
for (int i = 0; i < 7; i++)
{
lineChart.series[0].AddData(i, (float)emimsData.Tags[i].Value);
DateTime dateTime = DateTime.Now.AddDays(+i-day);
string date = dateTime.ToString("dd")+"日";
xAxis.data.Add(date);
}
for (int i = 7; i < 14; i++)
// 温湿度
for (int xIndex = 0; xIndex < xAxis.data.Count; xIndex++)
{
lineChart.series[1].AddData(i, (float)emimsData.Tags[i].Value);
HumitureStatisticsData find1 = TDataList.Find(x=>x.Identification+"日"==xAxis.data[xIndex]);
lineChart.series[0].AddData(find1==null?0:find1.StatisticsTotal/find1.StatisticsCount);
HumitureStatisticsData find2 = HDataList.Find(x=>x.Identification+"日"==xAxis.data[xIndex]);
lineChart.series[1].AddData(find2==null?0:find2.StatisticsTotal/find2.StatisticsCount);
}
lineChart.RefreshChart();
}
}

View File

@ -7,22 +7,17 @@ using UnityEngine;
public class VoltageMonitor_Controller : MonoBehaviour
{
private Transform dataView; // 显示对象
private EMIMS_Data emimsData;
private EMIMS_Int_Data _emimsIntData;
void OnEnable()
{
dataView = this.transform;
emimsData = new EMIMS_Data();
List<EM_Data> list = new List<EM_Data>
_emimsIntData = new EMIMS_Int_Data();
List<EM_Int_Data> list = new List<EM_Int_Data>
{
new EM_Data {ID = "1", Name = "压差", DataType = "float", Value = 1.5f},
new EM_Data {ID = "2", Name = "压差", DataType = "float", Value = 2.5f},
new EM_Data {ID = "3", Name = "压差", DataType = "float", Value = 3.5f},
new EM_Data {ID = "4", Name = "压差", DataType = "float", Value = 0.5f},
new EM_Data {ID = "5", Name = "压差", DataType = "float", Value = -2.5f},
new EM_Data {ID = "6", Name = "压差", DataType = "float", Value = 1.5f},
};
emimsData.Tags = list;
_emimsIntData.Tags = list;
StartCoroutine(UpdateDataSource());
}
@ -42,7 +37,7 @@ public class VoltageMonitor_Controller : MonoBehaviour
for (int i = 0; i < dataView.childCount; i++)
{
dataView.GetChild(i).GetChild(1).GetComponent<TextMeshProUGUI>().text =
emimsData.Tags[i].Value.ToString();
_emimsIntData.Tags[i].Value.ToString();
}
}
}

View File

@ -0,0 +1,16 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UMP;
using UnityEngine;
// 打开监控画面
public class PlayerVideo : MonoBehaviour
{
public UniversalMediaPlayer _mediaPlayer;
private void OnEnable()
{
_mediaPlayer.Stop();
_mediaPlayer.Play();
}
}

View File

@ -1,31 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class XieLouJianCe : MonoBehaviour
{
public Text text;
public Image image;
void OnEnable()
{
StartCoroutine(ChangeAir());
}
private IEnumerator ChangeAir()
{
while (true) // 无限循环
{
string text1 = text.text;
int air = int.Parse(text1);
if (Random.Range(0, 10) < 3&&air > 5) air--;
if (Random.Range(0, 10) >6&&air<80)air++;
text.text = air.ToString();
image.fillAmount = (float)air / 100;
int time = Random.Range(1, 3);
yield return new WaitForSeconds(time); // 等待两秒
}
}
}

View File

@ -1,30 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
public class IsUserSlideshow : MonoBehaviour, IPointerClickHandler
{
public string name;
// 目标方法的对象
public GameObject TargetGameObject;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
}
public void OnPointerClick(PointerEventData eventData)
{
}
}

View File

@ -39,4 +39,15 @@ public class TextFormat
DateTime date = DateTime.Parse(dateTime);
return date.ToString("yyyy年MM月dd日");
}
public static string DateTimeFormat5(string dateTime)
{
DateTime date = DateTime.Parse(dateTime);
return date.ToString("MM月dd日");
}
public string GetPastDate(int daysAgo)
{
DateTime targetDate = DateTime.Today.AddDays(-daysAgo);
return targetDate.ToString("yyyy-MM-dd");
}
}

View File

@ -0,0 +1,39 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
// 温湿度切换房间
public class HT_CutFloot : MonoBehaviour,IPointerClickHandler
{
public Sprite init; // 初始状态
public Sprite click; // 点击状态
public Image current; // 当前图片
public List<Image> Images; // 所有的图片
public GameObject target; // 目标对象
public string deviceId; // 设备ID
public string tagId1;
public string tagId2;
public void OnPointerClick(PointerEventData eventData)
{
foreach (Image image in Images)
{
image.sprite = init;
image.rectTransform.sizeDelta = new Vector2(init.rect.width,init.rect.height);
}
current.sprite = click;
current.rectTransform.sizeDelta = new Vector2(click.rect.width,click.rect.height);
HumitureTrend_Controller controller = target.GetComponent<HumitureTrend_Controller>();
target.SetActive(false);
controller.deviceId = deviceId;
controller.tagId1 = tagId1;
controller.tagId2 = tagId2;
target.SetActive(true);
}
}

View File

@ -0,0 +1,38 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
// 电压趋势房间切换
public class VT_CutFloot : MonoBehaviour,IPointerClickHandler
{
public Sprite init; // 初始状态
public Sprite click; // 点击状态
public Image current; // 当前图片
public List<Image> Images; // 所有的图片
public GameObject target; // 目标对象
public string deviceId; // 设备ID
public string tagId1;
public void OnPointerClick(PointerEventData eventData)
{
foreach (Image image in Images)
{
image.sprite = init;
image.rectTransform.sizeDelta = new Vector2(init.rect.width,init.rect.height);
}
current.sprite = click;
current.rectTransform.sizeDelta = new Vector2(click.rect.width,click.rect.height);
VoltageTrend_Controller controller = target.GetComponent<VoltageTrend_Controller>();
target.SetActive(false);
controller.deviceId = deviceId;
controller.tagId1 = tagId1;
target.SetActive(true);
}
}

BIN
EXE (3).zip Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More