|
@@ -71,9 +71,6 @@ public class DeMaDataManager : MonoBehaviour
|
|
|
}
|
|
|
Debug.Log("请求地址" + m_url + "_" + lstformData);
|
|
|
var request = new UnityWebRequest(m_url, "Get");
|
|
|
- byte[] bodyRaw = Encoding.UTF8.GetBytes(lstformData);
|
|
|
- request.uploadHandler = (UploadHandler)new UploadHandlerRaw(bodyRaw);
|
|
|
- request.SetRequestHeader("Content-Type", "application/json");
|
|
|
|
|
|
DownloadHandler downloadHandler = new DownloadHandlerBuffer();
|
|
|
request.downloadHandler = downloadHandler;
|
|
@@ -89,7 +86,7 @@ public class DeMaDataManager : MonoBehaviour
|
|
|
else
|
|
|
{
|
|
|
Debug.Log(m_url + "失败" + lstformData + "_" + request.error);
|
|
|
- callback.Invoke(null);
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -166,17 +163,34 @@ public class DeMaDataManager : MonoBehaviour
|
|
|
}
|
|
|
public static string[] GetHoursArray2()
|
|
|
{
|
|
|
- return Enumerable.Range(0, 24)
|
|
|
+ return Enumerable.Range(0, 25)
|
|
|
.Select(hour => hour.ToString("D2"))
|
|
|
.Select(hour => $"{hour}:00")
|
|
|
.ToArray();
|
|
|
}
|
|
|
+ public void GetDeviceType(string id,Action<JsonData> callback)
|
|
|
+ {
|
|
|
+ JsonData jsonData =new JsonData();
|
|
|
+ jsonData["deviceCode"]=id;
|
|
|
+ StartCoroutine(Post_Demo("/digital-twin/v1/device/runtime", jsonData.ToJson(), (string msg) => {
|
|
|
+
|
|
|
+ JsonData d =JsonMapper.ToObject(msg);
|
|
|
+ callback.Invoke(d);
|
|
|
+
|
|
|
+ }));
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
public void GetJinRiRanQi(Action<LineChartData> callback)
|
|
|
{
|
|
|
LineChartData data = new LineChartData();
|
|
|
data.xdata = new List<string>();
|
|
|
data.sdata = new List<LineChartSeriesData>();
|
|
|
StartCoroutine(Get_Demo("/digital-twin/v1/gas/realtime", "", (string msg) => {
|
|
|
+
|
|
|
+ try
|
|
|
+ {
|
|
|
+
|
|
|
JsonData d =JsonMapper.ToObject(msg);
|
|
|
|
|
|
DateTime startTime = new DateTime(DateTime.Now.Date.Ticks);
|
|
@@ -197,7 +211,7 @@ public class DeMaDataManager : MonoBehaviour
|
|
|
for (int j = 0;j<d["data"]["list"].Count;j++)
|
|
|
{
|
|
|
long vtime =long.Parse(d["data"]["list"][j]["date"].ToString());
|
|
|
- if(timestamp>=vtime&&oldtime<vtime)
|
|
|
+ if(timestamp>vtime&&oldtime<=vtime)
|
|
|
{
|
|
|
ft += float.Parse(d["data"]["list"][j]["value"].ToString());
|
|
|
ct++;
|
|
@@ -219,6 +233,10 @@ public class DeMaDataManager : MonoBehaviour
|
|
|
data.sdata.Add(lc);
|
|
|
|
|
|
callback.Invoke(data);
|
|
|
+ }catch
|
|
|
+ {
|
|
|
+Debug.Log("error==>"+msg);
|
|
|
+ }
|
|
|
}));
|
|
|
return;
|
|
|
for (int i = 0; i < 20; i++)
|
|
@@ -240,7 +258,7 @@ public class DeMaDataManager : MonoBehaviour
|
|
|
|
|
|
callback.Invoke(data);
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
public void GetLeiJiRanqi(Action<LineChartData> callback)
|
|
|
{
|
|
|
LineChartData data = new LineChartData();
|
|
@@ -284,6 +302,21 @@ public class DeMaDataManager : MonoBehaviour
|
|
|
|
|
|
callback.Invoke(data);
|
|
|
}
|
|
|
+ public void GetDeviceInfo(string id,Action<JsonData> callback)
|
|
|
+ {
|
|
|
+ JsonData dataj=new JsonData();
|
|
|
+ dataj["buID"] =int.Parse(id) ;
|
|
|
+ LineChartData data = new LineChartData();
|
|
|
+ data.xdata = new List<string>();
|
|
|
+ data.sdata = new List<LineChartSeriesData>();
|
|
|
+ StartCoroutine(Post_Demo("/digital-twin/v1/device/realtime",dataj.ToJson(), (string msg) => {
|
|
|
+ JsonData d =JsonMapper.ToObject(msg);
|
|
|
+
|
|
|
+ callback.Invoke(d);
|
|
|
+
|
|
|
+ }));
|
|
|
+ return;
|
|
|
+ }
|
|
|
public void GetgongyeZaiXian(Action<LineChartData> callback,int idx)
|
|
|
{
|
|
|
LineChartData data = new LineChartData();
|
|
@@ -332,54 +365,106 @@ public class DeMaDataManager : MonoBehaviour
|
|
|
|
|
|
callback.Invoke(data);
|
|
|
}
|
|
|
- public void GetKeJiZaiXian(Action<LineChartData> callback,int idx)
|
|
|
- {
|
|
|
- LineChartData data = new LineChartData();
|
|
|
- data.xdata = new List<string>();
|
|
|
- data.sdata = new List<LineChartSeriesData>();
|
|
|
- for (int i = 0; i < 20; i++)
|
|
|
- {
|
|
|
- data.xdata.Add("xdata_" + i);
|
|
|
- }
|
|
|
+ public void GetKeJiZaiXian(string url,Action<LineChartData> callback,int idx,int type)
|
|
|
+ {
|
|
|
+ JsonData datas =new JsonData();
|
|
|
|
|
|
- LineChartSeriesData lc = new LineChartSeriesData();
|
|
|
- lc.name = "数据1";
|
|
|
- lc.values = new List<float>();
|
|
|
- for (int i = 0; i < 20; i++)
|
|
|
+ switch(idx)
|
|
|
{
|
|
|
- lc.values.Add(UnityEngine.Random.Range(1, 1000));
|
|
|
+ case 1:
|
|
|
+ datas["mode"] = "day";
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ datas["mode"] = "week";
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ datas["mode"] = "month";
|
|
|
+ break;
|
|
|
}
|
|
|
- data.sdata.Add(lc);
|
|
|
+ datas["buID"] = type;
|
|
|
+ LineChartData data = new LineChartData();
|
|
|
+ data.xdata = new List<string>();
|
|
|
+ data.sdata = new List<LineChartSeriesData>();
|
|
|
+ StartCoroutine(Post_Demo(url, datas.ToJson(), (string msg) => {
|
|
|
+ try
|
|
|
+ {
|
|
|
|
|
|
+ JsonData d =JsonMapper.ToObject(msg);
|
|
|
|
|
|
-
|
|
|
+ LineChartSeriesData lc = new LineChartSeriesData();
|
|
|
+ lc.name = "kWh";
|
|
|
+ lc.values = new List<float>();
|
|
|
+ for (int i = 0;i<d["data"]["list"].Count;i++)
|
|
|
+ {
|
|
|
+ data.xdata.Add(changedate(d["data"]["list"][i]["date"].ToString(),idx));
|
|
|
+ lc.values.Add(float.Parse(d["data"]["list"][i]["value"].ToString()));
|
|
|
+ }
|
|
|
+ data.sdata.Add(lc);
|
|
|
+
|
|
|
+
|
|
|
+ callback.Invoke(data);
|
|
|
+ }
|
|
|
+ catch
|
|
|
+ {
|
|
|
+ Debug.Log("msg error===>"+msg);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }));
|
|
|
+ return;
|
|
|
|
|
|
- callback.Invoke(data);
|
|
|
}
|
|
|
|
|
|
- public void GetGaoJingData(Action<LineChartData> callback,int idx)
|
|
|
- {
|
|
|
- LineChartData data = new LineChartData();
|
|
|
- data.xdata = new List<string>();
|
|
|
- data.sdata = new List<LineChartSeriesData>();
|
|
|
- for (int i = 0; i < 20; i++)
|
|
|
- {
|
|
|
- data.xdata.Add("xdata_" + i);
|
|
|
- }
|
|
|
+ public void GetGaoJingData(Action<LineChartData> callback,int idx,int type)
|
|
|
+ {
|
|
|
+ JsonData datas =new JsonData();
|
|
|
|
|
|
- LineChartSeriesData lc = new LineChartSeriesData();
|
|
|
- lc.name = "数据1";
|
|
|
- lc.values = new List<float>();
|
|
|
- for (int i = 0; i < 20; i++)
|
|
|
+ switch(idx)
|
|
|
{
|
|
|
- lc.values.Add(UnityEngine.Random.Range(1, 1000));
|
|
|
+ case 1:
|
|
|
+ datas["mode"] = "day";
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ datas["mode"] = "week";
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ datas["mode"] = "month";
|
|
|
+ break;
|
|
|
}
|
|
|
- data.sdata.Add(lc);
|
|
|
+ datas["buID"] = type;
|
|
|
+ LineChartData data = new LineChartData();
|
|
|
+ data.xdata = new List<string>();
|
|
|
+ data.sdata = new List<LineChartSeriesData>();
|
|
|
+ StartCoroutine(Post_Demo("/digital-twin/v1/device/ratio/alarm", datas.ToJson(), (string msg) => {
|
|
|
+ try
|
|
|
+ {
|
|
|
|
|
|
+ JsonData d =JsonMapper.ToObject(msg);
|
|
|
|
|
|
-
|
|
|
+ LineChartSeriesData lc = new LineChartSeriesData();
|
|
|
+ lc.name = "kWh";
|
|
|
+ lc.values = new List<float>();
|
|
|
+ for (int i = 0;i<d["data"]["list"].Count;i++)
|
|
|
+ {
|
|
|
+ data.xdata.Add(changedate(d["data"]["list"][i]["date"].ToString(),idx));
|
|
|
+ lc.values.Add(float.Parse(d["data"]["list"][i]["value"].ToString()));
|
|
|
+ Debug.Log(" data.xdata=1=>"+ d["data"]["list"][i]["date"].ToString());
|
|
|
+ Debug.Log(" data.xdata=2=>"+ data.xdata[ data.xdata.Count-1]);
|
|
|
+ }
|
|
|
+ data.sdata.Add(lc);
|
|
|
+
|
|
|
+
|
|
|
+ callback.Invoke(data);
|
|
|
+ }
|
|
|
+ catch
|
|
|
+ {
|
|
|
+ Debug.Log("msg error===>"+msg);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }));
|
|
|
+ return;
|
|
|
|
|
|
- callback.Invoke(data);
|
|
|
}
|
|
|
|
|
|
public void GetZongyongdianData(Action<LineChartData> callback,int idx)
|
|
@@ -402,7 +487,10 @@ public class DeMaDataManager : MonoBehaviour
|
|
|
LineChartData data = new LineChartData();
|
|
|
data.xdata = new List<string>();
|
|
|
data.sdata = new List<LineChartSeriesData>();
|
|
|
- StartCoroutine(Get_Demo("/digital-twin/v1/electricity/total/date", datas.ToJson(), (string msg) => {
|
|
|
+ StartCoroutine(Post_Demo("/digital-twin/v1/electricity/total/date", datas.ToJson(), (string msg) => {
|
|
|
+ try
|
|
|
+ {
|
|
|
+
|
|
|
JsonData d =JsonMapper.ToObject(msg);
|
|
|
|
|
|
LineChartSeriesData lc = new LineChartSeriesData();
|
|
@@ -417,6 +505,11 @@ public class DeMaDataManager : MonoBehaviour
|
|
|
|
|
|
|
|
|
callback.Invoke(data);
|
|
|
+ }
|
|
|
+ catch
|
|
|
+ {
|
|
|
+Debug.Log("msg error===>"+msg);
|
|
|
+ }
|
|
|
|
|
|
|
|
|
}));
|
|
@@ -445,10 +538,22 @@ public class DeMaDataManager : MonoBehaviour
|
|
|
TimeSpan time = TimeSpan.FromSeconds(timeStampInSeconds);
|
|
|
return time.ToString("hh\\:mm");
|
|
|
}
|
|
|
-
|
|
|
- public string changedate(string time,int i)
|
|
|
+ public static DateTime UnixTimeStampToDateTime(double timestamp)
|
|
|
+ {
|
|
|
+
|
|
|
+ DateTime unixStartTime = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
|
|
|
+
|
|
|
+
|
|
|
+ long unixTimeStampInTicks = (long)(timestamp * TimeSpan.TicksPerSecond);
|
|
|
+
|
|
|
+
|
|
|
+ DateTime dateTimeCn = new DateTime(unixStartTime.Ticks + unixTimeStampInTicks, DateTimeKind.Utc).ToLocalTime();
|
|
|
+
|
|
|
+ return dateTimeCn;
|
|
|
+ }
|
|
|
+ public static string changedate(string time,int i)
|
|
|
{
|
|
|
- DateTime dateTime = DateTimeOffset.FromUnixTimeSeconds(long.Parse(time)).DateTime;
|
|
|
+ DateTime dateTime = UnixTimeStampToDateTime(long.Parse(time));
|
|
|
|
|
|
switch(i)
|
|
|
{
|
|
@@ -459,12 +564,15 @@ public class DeMaDataManager : MonoBehaviour
|
|
|
return dateTime.ToString("MM/dd");
|
|
|
break;
|
|
|
case 2:
|
|
|
- DateTime dateTime2 = DateTimeOffset.FromUnixTimeSeconds(long.Parse(time)+604800).DateTime;
|
|
|
+ DateTime dateTime2 =UnixTimeStampToDateTime(long.Parse(time)+604800);
|
|
|
return dateTime.ToString("MM/dd")+"\n"+dateTime2.ToString("MM/dd");
|
|
|
break;
|
|
|
case 3:
|
|
|
return dateTime.ToString("MM月");
|
|
|
break;
|
|
|
+ case 4:
|
|
|
+ return dateTime.ToString("MM-dd");
|
|
|
+ break;
|
|
|
}
|
|
|
return time;
|
|
|
}
|
|
@@ -477,14 +585,45 @@ public class DeMaDataManager : MonoBehaviour
|
|
|
public void GetGaoJingTaiZhang(Action<List<baojing>> callback)
|
|
|
{
|
|
|
List<baojing> bj = new List<baojing>();
|
|
|
- for (var i=0;i<100;i++)
|
|
|
+ StartCoroutine(getAlarmledger(1,bj,callback));
|
|
|
+ }
|
|
|
+
|
|
|
+ IEnumerator getAlarmledger(int page, List<baojing> bj,Action<List<baojing>> callback)
|
|
|
+ {
|
|
|
+ JsonData datas =new JsonData();
|
|
|
+ datas["page"] = page;
|
|
|
+ datas["pageSize"] = 10;
|
|
|
+ JsonData d =new JsonData();
|
|
|
+ yield return StartCoroutine(Post_Demo("/digital-twin/v1/device/alarmLedger",datas.ToJson(), (string msg) => {
|
|
|
+
|
|
|
+ d =JsonMapper.ToObject(msg);
|
|
|
+
|
|
|
+ for (var i=0;i<d["data"]["list"].Count;i++)
|
|
|
+ {
|
|
|
+ for (var j=0;j< d["data"]["list"][i]["alarmLocation"].Count;j++)
|
|
|
+ {
|
|
|
+ baojing b = new baojing();
|
|
|
+ b.name = d["data"]["list"][i]["deviceName"].ToString();
|
|
|
+ b.time = changedate( d["data"]["list"][i]["date"].ToString(),4);
|
|
|
+ b.dev = d["data"]["list"][i]["alarmLocation"][j].ToString();
|
|
|
+ bj.Add(b);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }));
|
|
|
+ while(d==null)
|
|
|
+ {
|
|
|
+ yield return null;
|
|
|
+ }
|
|
|
+ if((int.Parse(d["data"]["total"].ToString())/10+1)>page)
|
|
|
{
|
|
|
- baojing b = new baojing();
|
|
|
- b.name = i.ToString();
|
|
|
- b.time = DateTime.Now.ToString();
|
|
|
- b.dev = i.ToString();
|
|
|
- bj.Add(b);
|
|
|
+ page++;
|
|
|
+ yield return StartCoroutine(getAlarmledger(page,bj,callback));
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ callback.Invoke(bj);
|
|
|
+
|
|
|
}
|
|
|
- callback.Invoke(bj);
|
|
|
+
|
|
|
}
|
|
|
}
|