新版推送
This commit is contained in:
@ -127,8 +127,8 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
|
||||
/**/
|
||||
var timeEnd = DateTime.Now.AddSeconds(-1).ToString("yyyy-MM-dd HH:mm:ss");
|
||||
var timeStart = DateTime.Now.AddHours(-2).ToString("yyyy-MM-dd HH:mm:ss");
|
||||
var timeinterval = 1;
|
||||
var timeStart = DateTime.Now.AddHours(-12).ToString("yyyy-MM-dd HH:mm:ss");
|
||||
var timeinterval = 30;
|
||||
bool finish = false;
|
||||
var initDbData = new List<List<ChartData>>();
|
||||
Task.Run(() =>
|
||||
|
@ -136,6 +136,28 @@ namespace HT.Cloud.Service.ReportManage
|
||||
//return resultlist.ToJson();
|
||||
}
|
||||
|
||||
|
||||
public async Task<string> GetAlarmRecordForTagName(string Description, string startdt, string enddt, string systemName)
|
||||
{
|
||||
var groupName = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
var driverID = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupName == groupName).First().DriverID;
|
||||
var driverName = _context.AsTenant().QueryableWithAttr<MetaDriverEntity>().Where(x => x.DriverID == driverID).First().DriverName;
|
||||
//short tagid = (short)_context.AsTenant().QueryableWithAttr<MetaTagEntity>().Where(x => x.Description == Description).First().TagID;
|
||||
var alarmList = _context.AsTenant().GetConnection(dataDBNumber).Ado.SqlQuery<HistoryAlarmEntity>($"SELECT * FROM HT_{driverName}_{groupName}_ALARM");
|
||||
int tagid = alarmList.Where(x=>x.Description == Description).First().TagID;
|
||||
SugarParameter[] sqlParameters =
|
||||
{
|
||||
new SugarParameter("@Henddt",enddt),
|
||||
new SugarParameter("@Hstartdt",startdt),
|
||||
new SugarParameter("@Htagid",tagid)
|
||||
|
||||
};
|
||||
var dt = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm", sqlParameters);
|
||||
var valuelist = DataTableConvertModel<AlarmValue>.ConvertDataTableToList(dt);
|
||||
return valuelist.ToJson();
|
||||
|
||||
}
|
||||
|
||||
public async Task<string> GetAlarmRecordQuick(string HATYPE, string startdt, string enddt, string systemName)
|
||||
{
|
||||
var groupName = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
@ -152,6 +174,22 @@ namespace HT.Cloud.Service.ReportManage
|
||||
return valuelist.ToJson();
|
||||
|
||||
}
|
||||
|
||||
public async Task<string> GetAlarmHistory(string startdt, string enddt, string systemName)
|
||||
{
|
||||
var groupName = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
SugarParameter[] sqlParameters =
|
||||
{
|
||||
new SugarParameter("@Henddt",enddt),
|
||||
new SugarParameter("@HGROUPNAME",groupName),
|
||||
new SugarParameter("@Hstartdt",startdt)
|
||||
};
|
||||
var dt = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm_PMHis", sqlParameters);
|
||||
var valuelist = DataTableConvertModel<AlarmValueCountDesc>.ConvertDataTableToList(dt);
|
||||
return valuelist.ToJson();
|
||||
|
||||
}
|
||||
|
||||
//GetAlarmRecordQuickDesc
|
||||
public async Task<string> GetAlarmRecordQuickDesc(string hhour, string systemName)
|
||||
{
|
||||
@ -220,6 +258,60 @@ namespace HT.Cloud.Service.ReportManage
|
||||
return valuelist.ToJson();
|
||||
}
|
||||
|
||||
public async Task<string> GetAlarm_CS(string startdt, string enddt, string systemName)
|
||||
{
|
||||
var groupName = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
SugarParameter[] sqlParameters =
|
||||
{
|
||||
new SugarParameter("@HGROUPNAME",groupName),
|
||||
new SugarParameter("@Hstartdt",startdt),
|
||||
new SugarParameter("@Henddt",enddt)
|
||||
};
|
||||
var dt = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("HT_BI_Alarm_CS", sqlParameters);
|
||||
var valuelist = DataTableConvertModel<AlarmCS>.ConvertDataTableToList(dt);
|
||||
|
||||
var result = new List<AlarmCS_Result>();
|
||||
var hdate = startdt + "至" + enddt;
|
||||
foreach (var item in valuelist)
|
||||
{
|
||||
result.Add(new AlarmCS_Result()
|
||||
{
|
||||
HDATE = hdate,
|
||||
Tagname = item.Tagname,
|
||||
Description = item.Description,
|
||||
Hcount = item.Hcount,
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
return valuelist.ToJson();
|
||||
}
|
||||
|
||||
public async Task<string> GetAlarm_Ztime(string startdt, string enddt, string systemName)
|
||||
{
|
||||
var groupName = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
SugarParameter[] sqlParameters =
|
||||
{
|
||||
new SugarParameter("@HGROUPNAME",groupName),
|
||||
new SugarParameter("@Hstartdt",startdt),
|
||||
new SugarParameter("@Henddt",enddt)
|
||||
};
|
||||
var dt = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("HT_BI_Alarm_Ztime", sqlParameters);
|
||||
var valuelist = DataTableConvertModel<AlarmZtime>.ConvertDataTableToList(dt);
|
||||
var result = new List<AlarmZtime_Result>();
|
||||
var hdate = startdt + "至" + enddt;
|
||||
foreach ( var item in valuelist)
|
||||
{
|
||||
result.Add(new AlarmZtime_Result() {
|
||||
HDATE =hdate,
|
||||
TAGNAME = item.TAGNAME,
|
||||
Description = item.Description,
|
||||
Hztime = item.Hztime,
|
||||
});
|
||||
}
|
||||
return result.ToJson();
|
||||
}
|
||||
|
||||
private class AlarmValueCount
|
||||
{
|
||||
public string Alarmtype { get; set; }
|
||||
@ -283,5 +375,34 @@ namespace HT.Cloud.Service.ReportManage
|
||||
public string Description { get; set; }
|
||||
public double Hpercent { get; set; }
|
||||
}
|
||||
|
||||
private class AlarmCS
|
||||
{
|
||||
public string Tagname { get; set; }
|
||||
public string Description { get; set; }
|
||||
public int Hcount { get; set; }
|
||||
}
|
||||
|
||||
private class AlarmCS_Result
|
||||
{
|
||||
public string HDATE { get; set; }
|
||||
public string Tagname { get; set; }
|
||||
public string Description { get; set; }
|
||||
public int Hcount { get; set; }
|
||||
}
|
||||
|
||||
private class AlarmZtime
|
||||
{
|
||||
public string TAGNAME { get; set; }
|
||||
public string Description { get; set; }
|
||||
public int Hztime { get; set; }
|
||||
}
|
||||
private class AlarmZtime_Result
|
||||
{
|
||||
public string HDATE { get; set; }
|
||||
public string TAGNAME { get; set; }
|
||||
public string Description { get; set; }
|
||||
public int Hztime { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
119
HT.Cloud.Service/SystemSecurity/RealTimeIOState.cs
Normal file
119
HT.Cloud.Service/SystemSecurity/RealTimeIOState.cs
Normal file
@ -0,0 +1,119 @@
|
||||
using MiniExcelLibs;
|
||||
using Serenity.Services;
|
||||
using SqlSugar;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.SqlClient;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using HT.Cloud.Domain.ReportManage;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Data;
|
||||
using HT.Cloud.Code;
|
||||
using HT.Cloud.Domain.ChartsManage;
|
||||
using HT.Cloud.Domain.DevicesManage;
|
||||
using Quartz;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace HT.Cloud.Service.SystemSecurity
|
||||
{
|
||||
public class RealTimeIOState : BaseService<RTMainPageEntity>, IDenpendency
|
||||
{
|
||||
/// <summary>
|
||||
/// 绑定数据仓库的数据库ID
|
||||
/// </summary>
|
||||
private string dataDBNumber = GlobalContext.SystemConfig.DataDBNumber;
|
||||
|
||||
public RealTimeIOState(ISqlSugarClient context) : base(context)
|
||||
{
|
||||
}
|
||||
|
||||
public async Task<string> GetRtData()
|
||||
{
|
||||
//var groupName = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
//var driverId = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().DriverID;
|
||||
//var driverName = _context.AsTenant().QueryableWithAttr<MetaDriverEntity>().Where(x => x.DriverID == driverId).First().DriverName;
|
||||
//var list = _context.AsTenant().GetConnection(dataDBNumber).Ado.SqlQuery<RTMainPageEntity>($"SELECT * FROM HT_{driverName}_{groupName}_MAINPAGE");
|
||||
|
||||
var remoteRtDataServer = " http://localhost:5276/TestIOApi/";
|
||||
|
||||
var responseStr = RemoteHttpRequest.HttpGet(remoteRtDataServer);
|
||||
|
||||
|
||||
|
||||
JObject valueJson = JObject.Parse(responseStr);
|
||||
|
||||
return valueJson.ToString(0);
|
||||
|
||||
//var srcTagRtValues = new List<SrcTagRtValue>();
|
||||
//var dt = new Dictionary<string, string>();
|
||||
//foreach (var src in list)
|
||||
//{
|
||||
// string elementIndex = src.ElementIndex.ToString();
|
||||
// string Description = src.Description.ToString();
|
||||
// string TagName = src.TagName.ToString();
|
||||
// string srcValue = valueJson[TagName].ToString();
|
||||
// string hSig = src.Hsig.ToString();
|
||||
// string Value = "";
|
||||
// if (hSig == "SS")
|
||||
// {
|
||||
// if (srcValue == "True")
|
||||
// Value = "开启";
|
||||
// else
|
||||
// Value = "停止";
|
||||
// }
|
||||
// else if (hSig == "OC")
|
||||
// {
|
||||
// if (srcValue == "True")
|
||||
// Value = "开";
|
||||
// else
|
||||
// Value = "关";
|
||||
// }
|
||||
// else if (hSig == "VP")
|
||||
// {
|
||||
// Value = Convert.ToDouble(srcValue).ToString("f2");
|
||||
// }
|
||||
// else if (hSig == "PE")
|
||||
// {
|
||||
// Value = srcValue + "%";
|
||||
// }
|
||||
// else if (hSig == "YN")
|
||||
// {
|
||||
// if (srcValue == "True")
|
||||
// Value = "是";
|
||||
// else
|
||||
// Value = "否";
|
||||
// }
|
||||
// else if (hSig == "AM")
|
||||
// {
|
||||
// if (srcValue == "True")
|
||||
// Value = "自动";
|
||||
// else
|
||||
// Value = "手动";
|
||||
// }
|
||||
// dt.Add(elementIndex, Value);
|
||||
//}
|
||||
//return dt.ToJson();
|
||||
}
|
||||
|
||||
|
||||
|
||||
public class ChartDataFormat
|
||||
{
|
||||
public string TagName { get; set; }
|
||||
public string Description { get; set; }
|
||||
public string Value { get; set; }
|
||||
public string RtTime { get; set; }
|
||||
}
|
||||
|
||||
public class SrcTagRtValue
|
||||
{
|
||||
public string TagName { get; set; }
|
||||
public string Description { get; set; }
|
||||
public string Value { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user