Files
HTCloud/HT.Cloud.Service/ReportManage/RtReportService.cs
dell aaeba28501 主页修改 添加实时报表 ,
历史报表修改 分页 表头换行 快捷时间等等
2023-03-30 23:48:29 +08:00

104 lines
3.1 KiB
C#

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;
namespace HT.Cloud.Service.ReportManage
{
public class RtReportService : BaseService<RtReportEntity>, IDenpendency
{
public RtReportService(ISqlSugarClient context) : base(context)
{
}
public async Task<string> GetRtSubsysTagValue()
{
var srcList = repository.IQueryable().ToList();
var remoteRtDataServer = _context.Queryable<RtchartsEntity>().First().remotertdataserver;
var responseStr = RemoteHttpRequest.HttpGet(remoteRtDataServer);
JObject valueJson = JObject.Parse(responseStr);
var srcTagRtValues = new List<SrcTagRtValue>();
foreach(var src in srcList)
{
string SubsysName = src.HSYS.ToString();
string Description = src.HPRO.ToString();
string TagName = src.HVAR.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 = "手动";
}
srcTagRtValues.Add(new SrcTagRtValue() {TagName = TagName, Description = Description, Value = Value });
}
var dt = new Dictionary<string, string>();
foreach (var src in srcTagRtValues)
{
dt.Add(src.TagName, src.Value);
}
dt.Add("RtTime",DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"));
return dt.ToJson();
}
public class SrcTagRtValue
{
public string TagName {get;set;}
public string Description { get; set; }
public string Value { get; set; }
}
}
}