| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252 |
- using Newtonsoft.Json;
- using Newtonsoft.Json.Linq;
- using System;
- using System.Collections.Generic;
- using System.Drawing;
- using System.Net.Http;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- using UAS_MES_NEW.CustomControl.RichText;
- using UAS_MES_NEW.DataOperate;
- using UAS_MES_NEW.Entity;
- namespace UAS_MES_NEW.Make
- {
- public partial class Make_Humiture : Form
- {
- public Make_Humiture()
- {
- InitializeComponent();
- }
- string url = "https://www.zzguorun.top/Platform/";
- string secret = "GR682e728acdb269da22754ec9b78d6214";
- List<string> clientId = new List<string>();
- List<string> clientName = new List<string>();
- DataHelper dh;
- private void Make_Humiture_Load(object sender, EventArgs e)
- {
- IpPortUrlVal.Text = url;
- dh = SystemInf.dh;
- }
- private void onStart_Click(object sender, EventArgs e)
- {
- if (string.IsNullOrEmpty(IpPortUrlVal.Text))
- {
- ShowMsg(Msg1, 0, "请输出请求地址");
- IpPortUrlVal.Focus();
- IpPortUrlVal.SelectAll();
- return;
- }
- if (string.IsNullOrEmpty(timeVal.Text))
- {
- ShowMsg(Msg1, 0, "请输出获取间隔时间");
- timeVal.Focus();
- timeVal.SelectAll();
- return;
- }
- if (onStart.Text == "获取中")
- {
- IpPortUrlVal.Enabled = true;
- timeVal.Enabled = true;
- onStart.Text = "开启获取";
- timer1.Stop();
- }
- else
- {
- IpPortUrlVal.Enabled = false;
- timeVal.Enabled = false;
- onStart.Text = "获取中";
- double time = Convert.ToDouble(timeVal.Text) * 60000;
- timer1.Interval = Convert.ToInt32(time);
- ShowMsg(Msg1, 2, $"执行间隔:{timer1.Interval}毫秒");
- timer1.Start();
- }
- }
- private async void timer1_Tick(object sender, EventArgs e)
- {
- try
- {
- if (clientId.Count == 0)
- {
- clientId.Clear();
- clientName.Clear();
- string apiUrl = IpPortUrlVal.Text.Trim() + "getAllEquipsInfo";
- var dataObject = new
- {
- secret = secret
- };
- string result = await HttpHelper.PostAsync(apiUrl, dataObject);
- JObject root = JObject.Parse(result);
- JArray dataArr = (JArray)root["data"];
- foreach (JToken item in dataArr)
- {
- clientId.Add(item["clientid"].ToString());
- clientName.Add(item["clientname"].ToString());
- }
- if (root["status"].ToString() == "200")
- {
- ShowMsg(Msg1, 1, $"获取温湿度设备成功,已获取到{dataArr.Count}个");
- }
- }
- string basrUrl = IpPortUrlVal.Text.Trim() + "getEquipDetails";
- for (int i = 0; i < clientId.Count; i++)
- {
- try
- {
- var paramsObj = new
- {
- secret = secret,
- clientId = clientId[i]
- };
- string result = await HttpHelper.PostAsync(basrUrl, paramsObj);
- JObject root = JObject.Parse(result);
- string status = root["status"].ToString();
- if (status == "200")
- {
- switch (i)
- {
- case 1:
- ShowMsg(Msg2, 1, $"温湿度设备:{clientName[i]},已获取并记录运行信息");
- break;
- case 2:
- ShowMsg(Msg3, 1, $"温湿度设备:{clientName[i]},已获取并记录运行信息");
- break;
- case 3:
- ShowMsg(Msg4, 1, $"温湿度设备:{clientName[i]},已获取并记录运行信息");
- break;
- default:
- ShowMsg(Msg1, 1, $"温湿度设备:{clientName[i]},已获取并记录运行信息");
- break;
- }
- }
- else
- {
- switch (i)
- {
- case 1:
- ShowMsg(Msg2, 0, $"温湿度设备:{clientName[i]},获取运行数据异常,请检查设备");
- break;
- case 2:
- ShowMsg(Msg3, 0, $"温湿度设备:{clientName[i]},获取运行数据异常,请检查设备");
- break;
- case 3:
- ShowMsg(Msg4, 0, $"温湿度设备:{clientName[i]},获取运行数据异常,请检查设备");
- break;
- default:
- ShowMsg(Msg1, 0, $"温湿度设备:{clientName[i]},获取运行数据异常,请检查设备");
- break;
- }
- }
- JToken chart = root["data"]["equip"]["chart"];
- string checkPoint1_T = chart["检测点01"]["当前温度"].ToString();
- string checkPoint1_H = chart["检测点01"]["当前湿度"].ToString();
- string checkPoint2_T = chart["检测点02"]["当前温度"].ToString();
- string checkPoint2_H = chart["检测点02"]["当前湿度"].ToString();
- string checkPoint3_T = chart["检测点03"]["当前温度"].ToString();
- string checkPoint3_H = chart["检测点03"]["当前湿度"].ToString();
- string checkPoint4_T = chart["检测点04"]["当前温度"].ToString();
- string checkPoint4_H = chart["检测点04"]["当前湿度"].ToString();
- string checkPoint5_T = chart["检测点05"]["当前温度"].ToString();
- string checkPoint5_H = chart["检测点05"]["当前湿度"].ToString();
- string average = chart["环境平均湿度"].ToString();
- dh.ExecuteSql($@"INSERT INTO HUMITURE (HU_ID,HU_INDATE,CHECKPOINT1_T,CHECKPOINT1_H,CHECKPOINT2_T,CHECKPOINT2_H,CHECKPOINT3_T,CHECKPOINT3_H,
- CHECKPOINT4_T,CHECKPOINT4_H,CHECKPOINT5_T,CHECKPOINT5_H,AVERAGE,EQUITYPE,EQUIID) VALUES
- (HUMITURE_SEQ.NEXTVAL,sysdate,'{checkPoint1_T}','{checkPoint1_H}','{checkPoint2_T}','{checkPoint2_H}','{checkPoint3_T}','{checkPoint3_H}',
- '{checkPoint4_T}','{checkPoint4_H}','{checkPoint5_T}','{checkPoint5_H}','{average}','{clientName[i]}','{clientId[i]}')", "insert");
- }
- catch(Exception ex)
- {
- switch (i)
- {
- case 1:
- ShowMsg(Msg2, 0, $"获取设备:{clientName[i]}数据时发生错误: {ex.Message}");
- break;
- case 2:
- ShowMsg(Msg3, 0, $"获取设备:{clientName[i]}数据时发生错误: {ex.Message}");
- break;
- case 3:
- ShowMsg(Msg4, 0, $"获取设备:{clientName[i]}数据时发生错误: {ex.Message}");
- break;
- default:
- ShowMsg(Msg1, 0, $"获取设备:{clientName[i]}数据时发生错误: {ex.Message}");
- break;
- }
- }
-
- }
- }
- catch (Exception ex)
- {
- ShowMsg(Msg1, 0, $"获取数据时发生错误: {ex.Message}");
- }
- }
- private void claerBtn_Click(object sender, EventArgs e)
- {
- Msg1.Clear();
- Msg2.Clear();
- Msg3.Clear();
- Msg4.Clear();
- }
- private void ShowMsg(RichTextAutoBottom msgBox, int type, string msg)
- {
- msg = msg.Replace("\r", "").Replace("\n", "");
- string msgTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
- string showMsg = $"{msgTime}: {msg}\n";
- if (type == 0)
- {
- msgBox.AppendText(showMsg, Color.Red);
- msgBox.SelectionStart = msgBox.Text.Length;
- msgBox.ScrollToCaret();
- }
- else if (type == 1)
- {
- msgBox.AppendText(showMsg, Color.Green);
- msgBox.SelectionStart = msgBox.Text.Length;
- msgBox.ScrollToCaret();
- }
- else if (type == 2)
- {
- msgBox.AppendText(showMsg, Color.YellowGreen);
- msgBox.SelectionStart = msgBox.Text.Length;
- msgBox.ScrollToCaret();
- }
- }
- public static class HttpHelper
- {
- public static async Task<string> PostAsync<T>(string url, T data)
- {
- var client = new HttpClient();
- string json = JsonConvert.SerializeObject(data);
- var content = new StringContent(json, Encoding.UTF8, "application/json");
- var response = await client.PostAsync(url, content);
- response.EnsureSuccessStatusCode();
- return await response.Content.ReadAsStringAsync();
- }
- }
- }
- }
|