108 lines
3.3 KiB
C#
108 lines
3.3 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>();
|
|
try
|
|
{
|
|
foreach (var src in srcTagRtValues)
|
|
{
|
|
dt.Add(src.TagName, src.Value);
|
|
}
|
|
}
|
|
catch(Exception ex) { Console.Write(ex.ToString()); }
|
|
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; }
|
|
}
|
|
}
|
|
}
|