1635 lines
92 KiB
C#
1635 lines
92 KiB
C#
using Newtonsoft.Json;
|
||
using System;
|
||
using System.Linq;
|
||
using System.ServiceProcess;
|
||
using System.Text;
|
||
using HslCommunication.MQTT;
|
||
using HslCommunication;
|
||
using DataService;
|
||
using System.Collections.Generic;
|
||
using System.Runtime.Remoting.Channels;
|
||
using HslCommunication.Profinet.Geniitek;
|
||
using HslCommunication.Profinet.AllenBradley;
|
||
using System.Security.Policy;
|
||
using System.Text.RegularExpressions;
|
||
using LitJson;
|
||
using Newtonsoft.Json.Linq;
|
||
using System.Xml.Linq;
|
||
using System.Runtime.InteropServices;
|
||
using HslCommunication.DTU;
|
||
using System.Collections;
|
||
using System.Data;
|
||
|
||
namespace Security
|
||
{
|
||
partial class ServiceSecurity : ServiceBase
|
||
{
|
||
static log4net.ILog log;
|
||
|
||
//static DataService.BLL.vis_fire_ip bll_ip=new DataService.BLL.vis_fire_ip();
|
||
|
||
static MqttClient mqtt_client;
|
||
static DataService.BLL.device_info bll_info = new DataService.BLL.device_info();
|
||
static DataService.BLL.electricity_data bll = new DataService.BLL.electricity_data();
|
||
static DataService.BLL.pollution_discharge bll_pollution=new DataService.BLL.pollution_discharge();
|
||
static DataService.BLL.meteorological_station bll_meteorological=new DataService.BLL.meteorological_station();
|
||
public ServiceSecurity()
|
||
{
|
||
InitializeComponent();
|
||
}
|
||
|
||
public void DebugOnStart(string[] args)
|
||
{
|
||
OnStart(args);
|
||
}
|
||
|
||
protected override void OnStart(string[] args)
|
||
{
|
||
|
||
// TODO: 在此处添加代码以启动服务。
|
||
log4net.Config.XmlConfigurator.Configure();
|
||
log = log4net.LogManager.GetLogger("loginfo");
|
||
log.Info("服务开始");
|
||
// 授权示例 调用一次即可 call only once
|
||
if (!HslCommunication.Authorization.SetAuthorizationCode("4772a1a2-72cf-4fcb-9a8e-9cbdd5984253"))
|
||
{
|
||
return;
|
||
}
|
||
|
||
MqttConnectionOptions options = new MqttConnectionOptions()
|
||
{
|
||
IpAddress = "127.0.0.1",
|
||
//IpAddress = "192.168.1.202",
|
||
Port = 1883,
|
||
ClientId = "Service-" + Guid.NewGuid().ToString("N"),
|
||
};
|
||
options.Credentials = new MqttCredential("dev", "12345");
|
||
mqtt_client = new MqttClient(options);
|
||
log.Info("开始");
|
||
// 接收到数据的时候进行触发
|
||
mqtt_client.OnMqttMessageReceived += Client_OnMqttMessageReceived;
|
||
// 订阅服务器的主题,在连接成功后就去订阅
|
||
mqtt_client.OnClientConnected += m =>
|
||
{
|
||
Console.WriteLine("连接成功");
|
||
//m.SubscribeMessage("/sys/iot/#");
|
||
m.SubscribeMessage("/ge/data/#");
|
||
};
|
||
mqtt_client.OnNetworkError += MqttClient_OnNetworkError; // 自己来控制异常及重连的操作
|
||
OperateResult result3 = mqtt_client.ConnectServer();
|
||
if (result3.IsSuccess)
|
||
{
|
||
log.Info("连接成功");
|
||
}
|
||
|
||
{
|
||
log.Info("连接失败");
|
||
}
|
||
}
|
||
|
||
private static void MqttClient_OnNetworkError(object sender, EventArgs e)
|
||
{
|
||
try
|
||
{
|
||
// 当网络异常的时候触发,可以在此处重连服务器
|
||
if (sender is MqttClient client)
|
||
{
|
||
// 开始重连服务器,直到连接成功为止
|
||
log.Info("网络异常,准备10秒后重新连接。");
|
||
while (true)
|
||
{
|
||
// 每隔10秒重连
|
||
System.Threading.Thread.Sleep(10_000);
|
||
log.Info("准备重新连接服务器...");
|
||
|
||
// 重连之前需要判断是否关闭了Client,自己重写的异常需要自己手动处理
|
||
OperateResult connect = client.ConnectServer();
|
||
if (connect.IsSuccess)
|
||
{
|
||
// 连接成功后,可以在下方break之前进行订阅,或是数据初始化操作
|
||
log.Info("连接服务器成功!");
|
||
client.SubscribeMessage("data");
|
||
break;
|
||
}
|
||
log.Info("连接失败,准备10秒后重新连接。");
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
log.Info("重连MQTT失败,失败原因:" + ex.Message);
|
||
}
|
||
}
|
||
|
||
private static void MqttClient2_OnNetworkError(object sender, EventArgs e)
|
||
{
|
||
try
|
||
{
|
||
// 当网络异常的时候触发,可以在此处重连服务器
|
||
if (sender is MqttClient client)
|
||
{
|
||
// 开始重连服务器,直到连接成功为止
|
||
log.Info("网络异常,准备10秒后重新连接。");
|
||
while (true)
|
||
{
|
||
// 每隔10秒重连
|
||
System.Threading.Thread.Sleep(10_000);
|
||
log.Info("准备重新连接服务器...");
|
||
|
||
// 重连之前需要判断是否关闭了Client,自己重写的异常需要自己手动处理
|
||
OperateResult connect = client.ConnectServer();
|
||
if (connect.IsSuccess)
|
||
{
|
||
// 连接成功后,可以在下方break之前进行订阅,或是数据初始化操作
|
||
log.Info("连接服务器成功!");
|
||
break;
|
||
}
|
||
log.Info("连接失败,准备10秒后重新连接。");
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
log.Info("重连MQTT失败,失败原因:" + ex.Message);
|
||
}
|
||
}
|
||
|
||
private static void Client_OnMqttMessageReceived(MqttClient client, string topic, byte[] payload)
|
||
{
|
||
log.Info("进入方法");
|
||
var count = 0;
|
||
log.Info("count"+count++);
|
||
var msg = Encoding.UTF8.GetString(payload);
|
||
try
|
||
{
|
||
var date = DateTime.Now.ToString("yyyyMM");
|
||
var a = bll.IsExistsTable("changdao_zhanlanguang", "electricity_data_" + date);
|
||
if (a == false)
|
||
{
|
||
bll.CreateTable(date);
|
||
}
|
||
//配电室低压
|
||
if (topic.Contains("/6afc0999-ac07-4f45-b0d3-d3763456edb4"))
|
||
{
|
||
log.Info("配电室低压msg" + msg);
|
||
//配电室低压
|
||
var j = msg.Substring(1);
|
||
var data = JsonConvert.DeserializeObject<DataService.api.get_data>(j);
|
||
log.Info("配电室低压:" + data);
|
||
if (data.b != null)
|
||
{
|
||
foreach (var item in data.b.dvl)
|
||
{
|
||
var name = "";
|
||
char delimiter = '.'; // 分隔符
|
||
int lastDotIndex = item.da.LastIndexOf(delimiter); // 查找最后一个分隔符的位置
|
||
|
||
if (lastDotIndex != -1) // 如果找到分隔符
|
||
{
|
||
name = item.da.Substring(lastDotIndex + 1); // 截取分隔符后面的子字符串
|
||
|
||
}
|
||
var now = DateTime.Now.AddHours(-1).ToString("yyyy-MM-dd HH:00:00");
|
||
var ddate=Convert.ToDateTime(now);
|
||
var dtime =DateTime.Now.AddMonths(-1).ToString("yyyyMM");
|
||
var sddate=Convert.ToDateTime(ddate.AddHours(-1));
|
||
var list = bll.GetModelListDate("", date).Where(x => x.EntireTime == ddate).ToList();
|
||
if (list.Count < 84)
|
||
{
|
||
var list1= list.Select(x => x.DeviceName).ToList();
|
||
var list2 = bll_info.GetModelLists(list1);
|
||
var vlist = bll.GetModelListDate(" ", date);
|
||
if (vlist.Count == 0)
|
||
{
|
||
vlist = bll.GetModelListDate("", dtime);
|
||
}
|
||
foreach (var aitem in list2)
|
||
{
|
||
var svlist = vlist.Where(x=>x.DeviceName==aitem.DeviceName).OrderByDescending(x=>x.EntireTime).FirstOrDefault();
|
||
var model = new DataService.Model.electricity_data();
|
||
model.ElectricityId = Guid.NewGuid().ToString("N");
|
||
model.DeviceName = aitem.DeviceName;
|
||
model.EH = svlist.EH;
|
||
model.P = svlist.P;
|
||
model.Ia = svlist.Ia;
|
||
model.Ib = svlist.Ib;
|
||
model.Ic = svlist.Ic;
|
||
model.Ua = svlist.Ua;
|
||
model.Ub = svlist.Ub;
|
||
model.Uc = svlist.Uc;
|
||
model.Kvar = svlist.Kvar;
|
||
model.CreateTime = DateTime.Now;
|
||
model.EntireTime = Convert.ToDateTime(DateTime.Now.AddHours(-1).ToString("yyyy-MM-dd HH:00:00"));
|
||
model.Reserve1= svlist.Reserve1;
|
||
model.Reserve2= svlist.Reserve2;
|
||
bll.AddDate(model, date);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
var edate = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
var elist = bll.GetModelListDate("", date).Where(x => x.EntireTime == edate).ToList();
|
||
if (elist.Count == 0)
|
||
{
|
||
var model = new DataService.Model.electricity_data();
|
||
model.ElectricityId = Guid.NewGuid().ToString("N");
|
||
model.DeviceName = GetDeviceName1(Convert.ToInt32(name));
|
||
|
||
#region 数据添加
|
||
if (item.dl.ContainsKey("01040005"))
|
||
{
|
||
model.EH = item.dl["01040005"];
|
||
}
|
||
if (item.dl.ContainsKey("01010001"))
|
||
{
|
||
model.Ua = item.dl["01010001"];
|
||
}
|
||
if (item.dl.ContainsKey("01010002"))
|
||
{
|
||
model.Ub = item.dl["01010002"];
|
||
}
|
||
if (item.dl.ContainsKey("01010003"))
|
||
{
|
||
model.Uc = item.dl["01010003"];
|
||
}
|
||
if (item.dl.ContainsKey("01020001"))
|
||
{
|
||
model.Ia = item.dl["01020001"];
|
||
}
|
||
if (item.dl.ContainsKey("01020002"))
|
||
{
|
||
model.Ib = item.dl["01020001"];
|
||
}
|
||
if (item.dl.ContainsKey("01020003"))
|
||
{
|
||
model.Ic = item.dl["01020003"];
|
||
}
|
||
if (item.dl.ContainsKey("01030004"))
|
||
{
|
||
model.P = item.dl["01030004"];
|
||
}
|
||
if (item.dl.ContainsKey("01030012"))
|
||
{
|
||
model.Kvar = item.dl["01030012"];
|
||
}
|
||
#endregion
|
||
model.CreateTime = DateTime.Now;
|
||
model.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model.Reserve1 = "配电室低压";
|
||
model.Reserve2 = GetDeviceName4(Convert.ToInt32(name));
|
||
bll.AddDate(model, date);
|
||
}
|
||
else
|
||
{
|
||
var clist = bll.GetModelListDate("", date).Where(x => x.DeviceName == name && x.EntireTime == Convert.ToDateTime(edate)).ToList();
|
||
if (clist.Count == 0)
|
||
{
|
||
var model = new DataService.Model.electricity_data();
|
||
model.ElectricityId = Guid.NewGuid().ToString("N");
|
||
model.DeviceName = GetDeviceName1(Convert.ToInt32(name));
|
||
#region 数据添加
|
||
if (item.dl.ContainsKey("01040005"))
|
||
{
|
||
model.EH = item.dl["01040005"];
|
||
}
|
||
if (item.dl.ContainsKey("01010001"))
|
||
{
|
||
model.Ua = item.dl["01010001"];
|
||
}
|
||
if (item.dl.ContainsKey("01010002"))
|
||
{
|
||
model.Ub = item.dl["01010002"];
|
||
}
|
||
if (item.dl.ContainsKey("01010003"))
|
||
{
|
||
model.Uc = item.dl["01010003"];
|
||
}
|
||
if (item.dl.ContainsKey("01020001"))
|
||
{
|
||
model.Ia = item.dl["01020001"];
|
||
}
|
||
if (item.dl.ContainsKey("01020002"))
|
||
{
|
||
model.Ib = item.dl["01020001"];
|
||
}
|
||
if (item.dl.ContainsKey("01020003"))
|
||
{
|
||
model.Ic = item.dl["01020003"];
|
||
}
|
||
if (item.dl.ContainsKey("01030004"))
|
||
{
|
||
model.P = item.dl["01030004"];
|
||
}
|
||
if (item.dl.ContainsKey("01030012"))
|
||
{
|
||
model.Kvar = item.dl["01030012"];
|
||
}
|
||
#endregion
|
||
model.CreateTime = DateTime.Now;
|
||
model.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model.Reserve1 = "配电室低压";
|
||
model.Reserve2 = GetDeviceName4(Convert.ToInt32(name));
|
||
bll.AddDate(model, date);
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
|
||
}
|
||
|
||
}
|
||
//配电室高压
|
||
if (topic.Contains("/9b841d78-68ca-45e5-ba5a-35dc43560c39"))
|
||
{
|
||
log.Info("配电室高压msg" + msg);
|
||
//配电室高压
|
||
var j = msg.Substring(1);
|
||
var data = JsonConvert.DeserializeObject<DataService.api.get_data>(j);
|
||
log.Info("配电室高压:" + data);
|
||
if (data.b != null)
|
||
{
|
||
foreach (var item in data.b.dvl)
|
||
{
|
||
var name = "";
|
||
char delimiter = '.'; // 分隔符
|
||
int lastDotIndex = item.da.LastIndexOf(delimiter); // 查找最后一个分隔符的位置
|
||
|
||
if (lastDotIndex != -1) // 如果找到分隔符
|
||
{
|
||
name = item.da.Substring(lastDotIndex + 1); // 截取分隔符后面的子字符串
|
||
|
||
}
|
||
var now = DateTime.Now.AddHours(-1).ToString("yyyy-MM-dd HH:00:00");
|
||
var ddate = Convert.ToDateTime(now);
|
||
var list = bll.GetModelListDate("", date).Where(x => x.EntireTime == ddate).ToList();
|
||
if (list.Count < 84)
|
||
{
|
||
var list1 = list.Select(x => x.DeviceName).ToList();
|
||
var list2 = bll_info.GetModelLists(list1);
|
||
var vlist = bll.GetModelListDate(" ", date);
|
||
foreach (var aitem in list2)
|
||
{
|
||
var svlist = vlist.FirstOrDefault(x => x.DeviceName == aitem.DeviceName);
|
||
var model = new DataService.Model.electricity_data();
|
||
model.ElectricityId = Guid.NewGuid().ToString("N");
|
||
model.DeviceName = aitem.DeviceName;
|
||
model.EH = svlist.EH;
|
||
model.P = svlist.P;
|
||
model.Ia = svlist.Ia;
|
||
model.Ib = svlist.Ib;
|
||
model.Ic = svlist.Ic;
|
||
model.Ua = svlist.Ua;
|
||
model.Ub = svlist.Ub;
|
||
model.Uc = svlist.Uc;
|
||
model.Kvar = svlist.Kvar;
|
||
model.CreateTime = DateTime.Now;
|
||
model.EntireTime = Convert.ToDateTime(DateTime.Now.AddHours(-1).ToString("yyyy-MM-dd HH:00:00"));
|
||
model.Reserve1 = svlist.Reserve1;
|
||
model.Reserve2 = svlist.Reserve2;
|
||
bll.AddDate(model, date);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
var edate = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
var elist = bll.GetModelListDate("", date).Where(x => x.EntireTime == edate).ToList();
|
||
if (elist.Count == 0)
|
||
{
|
||
var model = new DataService.Model.electricity_data();
|
||
model.ElectricityId = Guid.NewGuid().ToString("N");
|
||
model.DeviceName = GetDeviceName2(Convert.ToInt32(name));
|
||
|
||
#region 数据添加
|
||
if (item.dl.ContainsKey("01040005"))
|
||
{
|
||
model.EH = item.dl["01040005"];
|
||
}
|
||
if (item.dl.ContainsKey("01010001"))
|
||
{
|
||
model.Ua = item.dl["01010001"];
|
||
}
|
||
if (item.dl.ContainsKey("01010002"))
|
||
{
|
||
model.Ub = item.dl["01010002"];
|
||
}
|
||
if (item.dl.ContainsKey("01010003"))
|
||
{
|
||
model.Uc = item.dl["01010003"];
|
||
}
|
||
if (item.dl.ContainsKey("01020001"))
|
||
{
|
||
model.Ia = item.dl["01020001"];
|
||
}
|
||
if (item.dl.ContainsKey("01020002"))
|
||
{
|
||
model.Ib = item.dl["01020001"];
|
||
}
|
||
if (item.dl.ContainsKey("01020003"))
|
||
{
|
||
model.Ic = item.dl["01020003"];
|
||
}
|
||
if (item.dl.ContainsKey("01030004"))
|
||
{
|
||
model.P = item.dl["01030004"];
|
||
}
|
||
if (item.dl.ContainsKey("01030012"))
|
||
{
|
||
model.Kvar = item.dl["01030012"];
|
||
}
|
||
#endregion
|
||
model.CreateTime = DateTime.Now;
|
||
model.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model.Reserve1 = "配电室高压";
|
||
model.Reserve2 = GetDeviceName4(Convert.ToInt32(name));
|
||
bll.AddDate(model, date);
|
||
}
|
||
else
|
||
{
|
||
var clist = bll.GetModelListDate("", date).Where(x => x.DeviceName == name && x.EntireTime == Convert.ToDateTime(edate)).ToList();
|
||
if (clist.Count == 0)
|
||
{
|
||
var model = new DataService.Model.electricity_data();
|
||
model.ElectricityId = Guid.NewGuid().ToString("N");
|
||
model.DeviceName = GetDeviceName2(Convert.ToInt32(name));
|
||
#region 数据添加
|
||
if (item.dl.ContainsKey("01040005"))
|
||
{
|
||
model.EH = item.dl["01040005"];
|
||
}
|
||
if (item.dl.ContainsKey("01010001"))
|
||
{
|
||
model.Ua = item.dl["01010001"];
|
||
}
|
||
if (item.dl.ContainsKey("01010002"))
|
||
{
|
||
model.Ub = item.dl["01010002"];
|
||
}
|
||
if (item.dl.ContainsKey("01010003"))
|
||
{
|
||
model.Uc = item.dl["01010003"];
|
||
}
|
||
if (item.dl.ContainsKey("01020001"))
|
||
{
|
||
model.Ia = item.dl["01020001"];
|
||
}
|
||
if (item.dl.ContainsKey("01020002"))
|
||
{
|
||
model.Ib = item.dl["01020001"];
|
||
}
|
||
if (item.dl.ContainsKey("01020003"))
|
||
{
|
||
model.Ic = item.dl["01020003"];
|
||
}
|
||
if (item.dl.ContainsKey("01030004"))
|
||
{
|
||
model.P = item.dl["01030004"];
|
||
}
|
||
if (item.dl.ContainsKey("01030012"))
|
||
{
|
||
model.Kvar = item.dl["01030012"];
|
||
}
|
||
#endregion
|
||
model.CreateTime = DateTime.Now;
|
||
model.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model.Reserve1 = "配电室高压";
|
||
model.Reserve2 = GetDeviceName4(Convert.ToInt32(name));
|
||
bll.AddDate(model, date);
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
|
||
}
|
||
|
||
}
|
||
//电能-室外箱变
|
||
if (topic.Contains("/bbb05637-34f2-4c1d-864e-6bbfca39d38b"))
|
||
{
|
||
log.Info("电能-室外箱变msg" + msg);
|
||
//电能-室外箱变
|
||
var j = msg.Substring(1);
|
||
var data = JsonConvert.DeserializeObject<DataService.api.get_data>(j);
|
||
log.Info("电能-室外箱变:" + data);
|
||
if (data.b != null)
|
||
{
|
||
foreach (var item in data.b.dvl)
|
||
{
|
||
var name = "";
|
||
char delimiter = '.'; // 分隔符
|
||
int lastDotIndex = item.da.LastIndexOf(delimiter); // 查找最后一个分隔符的位置
|
||
if (lastDotIndex != -1) // 如果找到分隔符
|
||
{
|
||
name = item.da.Substring(lastDotIndex + 1); // 截取分隔符后面的子字符串
|
||
}
|
||
var now = DateTime.Now.AddHours(-1).ToString("yyyy-MM-dd HH:00:00");
|
||
var ddate = Convert.ToDateTime(now);
|
||
var list = bll.GetModelListDate("", date).Where(x => x.EntireTime == ddate).ToList();
|
||
if (list.Count < 84)
|
||
{
|
||
var list1 = list.Select(x => x.DeviceName).ToList();
|
||
var list2 = bll_info.GetModelLists(list1);
|
||
var vlist = bll.GetModelListDate(" ", date);
|
||
foreach (var aitem in list2)
|
||
{
|
||
var svlist = vlist.FirstOrDefault(x => x.DeviceName == aitem.DeviceName);
|
||
var model = new DataService.Model.electricity_data();
|
||
model.ElectricityId = Guid.NewGuid().ToString("N");
|
||
model.DeviceName = aitem.DeviceName;
|
||
model.EH = svlist.EH;
|
||
model.P = svlist.P;
|
||
model.Ia = svlist.Ia;
|
||
model.Ib = svlist.Ib;
|
||
model.Ic = svlist.Ic;
|
||
model.Ua = svlist.Ua;
|
||
model.Ub = svlist.Ub;
|
||
model.Uc = svlist.Uc;
|
||
model.Kvar = svlist.Kvar;
|
||
model.CreateTime = DateTime.Now;
|
||
model.EntireTime = Convert.ToDateTime(DateTime.Now.AddHours(-1).ToString("yyyy-MM-dd HH:00:00"));
|
||
model.Reserve1 = svlist.Reserve1;
|
||
model.Reserve2 = svlist.Reserve2;
|
||
bll.AddDate(model, date);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
var edate = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
var elist = bll.GetModelListDate("", date).Where(x => x.EntireTime == edate).ToList();
|
||
if (elist.Count == 0)
|
||
{
|
||
var model = new DataService.Model.electricity_data();
|
||
model.ElectricityId = Guid.NewGuid().ToString("N");
|
||
model.DeviceName = GetDeviceName3(Convert.ToInt32(name));
|
||
|
||
#region 数据添加
|
||
if (item.dl.ContainsKey("01040005"))
|
||
{
|
||
model.EH = item.dl["01040005"];
|
||
}
|
||
if (item.dl.ContainsKey("01010001"))
|
||
{
|
||
model.Ua = item.dl["01010001"];
|
||
}
|
||
if (item.dl.ContainsKey("01010002"))
|
||
{
|
||
model.Ub = item.dl["01010002"];
|
||
}
|
||
if (item.dl.ContainsKey("01010003"))
|
||
{
|
||
model.Uc = item.dl["01010003"];
|
||
}
|
||
if (item.dl.ContainsKey("01020001"))
|
||
{
|
||
model.Ia = item.dl["01020001"];
|
||
}
|
||
if (item.dl.ContainsKey("01020002"))
|
||
{
|
||
model.Ib = item.dl["01020001"];
|
||
}
|
||
if (item.dl.ContainsKey("01020003"))
|
||
{
|
||
model.Ic = item.dl["01020003"];
|
||
}
|
||
if (item.dl.ContainsKey("01030004"))
|
||
{
|
||
model.P = item.dl["01030004"];
|
||
}
|
||
if (item.dl.ContainsKey("01030012"))
|
||
{
|
||
model.Kvar = item.dl["01030012"];
|
||
}
|
||
#endregion
|
||
model.CreateTime = DateTime.Now;
|
||
model.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model.Reserve1 = "电能-室外箱变";
|
||
model.Reserve2 = GetDeviceName4(Convert.ToInt32(name));
|
||
bll.AddDate(model, date);
|
||
}
|
||
else
|
||
{
|
||
var clist = bll.GetModelListDate("", date).Where(x => x.DeviceName == name && x.EntireTime == Convert.ToDateTime(edate)).ToList();
|
||
if (clist.Count == 0)
|
||
{
|
||
var model = new DataService.Model.electricity_data();
|
||
model.ElectricityId = Guid.NewGuid().ToString("N");
|
||
model.DeviceName = GetDeviceName3(Convert.ToInt32(name));
|
||
#region 数据添加
|
||
if (item.dl.ContainsKey("01040005"))
|
||
{
|
||
model.EH = item.dl["01040005"];
|
||
}
|
||
if (item.dl.ContainsKey("01010001"))
|
||
{
|
||
model.Ua = item.dl["01010001"];
|
||
}
|
||
if (item.dl.ContainsKey("01010002"))
|
||
{
|
||
model.Ub = item.dl["01010002"];
|
||
}
|
||
if (item.dl.ContainsKey("01010003"))
|
||
{
|
||
model.Uc = item.dl["01010003"];
|
||
}
|
||
if (item.dl.ContainsKey("01020001"))
|
||
{
|
||
model.Ia = item.dl["01020001"];
|
||
}
|
||
if (item.dl.ContainsKey("01020002"))
|
||
{
|
||
model.Ib = item.dl["01020001"];
|
||
}
|
||
if (item.dl.ContainsKey("01020003"))
|
||
{
|
||
model.Ic = item.dl["01020003"];
|
||
}
|
||
if (item.dl.ContainsKey("01030004"))
|
||
{
|
||
model.P = item.dl["01030004"];
|
||
}
|
||
if (item.dl.ContainsKey("01030012"))
|
||
{
|
||
model.Kvar = item.dl["01030012"];
|
||
}
|
||
#endregion
|
||
model.CreateTime = DateTime.Now;
|
||
model.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model.Reserve1 = "电能-室外箱变";
|
||
model.Reserve2 = GetDeviceName4(Convert.ToInt32(name));
|
||
bll.AddDate(model, date);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
//排污1
|
||
if (topic.Contains("/4d9fab63-eecd-4c33-86f1-79abb16ae62a"))
|
||
{
|
||
log.Info("排污1msg" + msg);
|
||
//排污1
|
||
var j = msg.Substring(1);
|
||
var data = JsonConvert.DeserializeObject<DataService.api.get_data>(j);
|
||
var list = bll_pollution.GetModelList("");
|
||
log.Info("排污1:" + data);
|
||
if (data.b != null)
|
||
{
|
||
foreach (var item in data.b.dvl)
|
||
{
|
||
var name = "";
|
||
char delimiter = '.'; // 分隔符
|
||
int lastDotIndex = item.da.LastIndexOf(delimiter); // 查找最后一个分隔符的位置
|
||
if (lastDotIndex != -1) // 如果找到分隔符
|
||
{
|
||
name = item.da.Substring(lastDotIndex + 1); // 截取分隔符后面的子字符串
|
||
|
||
}
|
||
var time =Convert.ToDateTime( DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
var alist=list.Where(x=>x.EntireTime== time&&x.Reserve1==name).ToList();
|
||
if (alist.Count == 0)
|
||
{
|
||
if (name == "460")
|
||
{
|
||
|
||
#region GP01#水泵
|
||
var model1 = new DataService.Model.pollution_discharge();
|
||
model1.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model1.PollutionDischargeName = "GP01-1#水泵";
|
||
if (item.dl.ContainsKey("1DI1"))
|
||
{
|
||
model1.PollutionDischargeState = Convert.ToInt32(item.dl["1DI1"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI2"))
|
||
{
|
||
model1.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI2"]);
|
||
}
|
||
model1.CreateTime = DateTime.Now;
|
||
model1.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model1.Reserve1 = "460";
|
||
bll_pollution.Add(model1);
|
||
var model2 = new DataService.Model.pollution_discharge();
|
||
model2.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model2.PollutionDischargeName = "GP01-2#水泵";
|
||
if (item.dl.ContainsKey("1DI3"))
|
||
{
|
||
model2.PollutionDischargeState = Convert.ToInt32(item.dl["1DI3"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI4"))
|
||
{
|
||
model2.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI4"]);
|
||
}
|
||
model2.CreateTime = DateTime.Now;
|
||
model2.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model2.Reserve1 = "460";
|
||
bll_pollution.Add(model2);
|
||
#endregion
|
||
#region GP02#水泵
|
||
var model3 = new DataService.Model.pollution_discharge();
|
||
model3.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model3.PollutionDischargeName = "GP02-1#水泵";
|
||
if (item.dl.ContainsKey("1DI5"))
|
||
{
|
||
model3.PollutionDischargeState = Convert.ToInt32(item.dl["1DI5"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI6"))
|
||
{
|
||
model3.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI6"]);
|
||
}
|
||
model3.CreateTime = DateTime.Now;
|
||
model3.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model3.Reserve1 = "460";
|
||
bll_pollution.Add(model3);
|
||
var model4 = new DataService.Model.pollution_discharge();
|
||
model4.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model4.PollutionDischargeName = "GP02-2#水泵";
|
||
if (item.dl.ContainsKey("1DI7"))
|
||
{
|
||
model4.PollutionDischargeState = Convert.ToInt32(item.dl["1DI7"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI8"))
|
||
{
|
||
model4.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI8"]);
|
||
}
|
||
model4.CreateTime = DateTime.Now;
|
||
model4.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model4.Reserve1 = "460";
|
||
bll_pollution.Add(model4);
|
||
#endregion
|
||
#region GP03#水泵
|
||
var model5 = new DataService.Model.pollution_discharge();
|
||
model5.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model5.PollutionDischargeName = "GP03-1#水泵";
|
||
if (item.dl.ContainsKey("1DI9"))
|
||
{
|
||
model5.PollutionDischargeState = Convert.ToInt32(item.dl["1DI1"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI10"))
|
||
{
|
||
model5.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI2"]);
|
||
}
|
||
model5.CreateTime = DateTime.Now;
|
||
model5.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model5.Reserve1 = "460";
|
||
bll_pollution.Add(model5);
|
||
var model6 = new DataService.Model.pollution_discharge();
|
||
model6.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model6.PollutionDischargeName = "GP03-2#水泵";
|
||
if (item.dl.ContainsKey("1DI11"))
|
||
{
|
||
model6.PollutionDischargeState = Convert.ToInt32(item.dl["1DI12"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI12"))
|
||
{
|
||
model6.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI13"]);
|
||
}
|
||
model6.CreateTime = DateTime.Now;
|
||
model6.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model6.Reserve1 = "460";
|
||
bll_pollution.Add(model6);
|
||
#endregion
|
||
#region GP04#水泵
|
||
var model7 = new DataService.Model.pollution_discharge();
|
||
model7.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model7.PollutionDischargeName = "GP04-1#水泵";
|
||
if (item.dl.ContainsKey("1DI13"))
|
||
{
|
||
model7.PollutionDischargeState = Convert.ToInt32(item.dl["1DI13"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI14"))
|
||
{
|
||
model7.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI14"]);
|
||
}
|
||
model7.CreateTime = DateTime.Now;
|
||
model7.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model7.Reserve1 = "460";
|
||
bll_pollution.Add(model7);
|
||
var model8 = new DataService.Model.pollution_discharge();
|
||
model8.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model8.PollutionDischargeName = "GP04-2#水泵";
|
||
if (item.dl.ContainsKey("1DI15"))
|
||
{
|
||
model8.PollutionDischargeState = Convert.ToInt32(item.dl["1DI16"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI16"))
|
||
{
|
||
model8.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI17"]);
|
||
}
|
||
model8.CreateTime = DateTime.Now;
|
||
model8.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model8.Reserve1 = "460";
|
||
bll_pollution.Add(model8);
|
||
#endregion
|
||
#region GP05#水泵
|
||
var model9 = new DataService.Model.pollution_discharge();
|
||
model9.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model9.PollutionDischargeName = "GP05-1#水泵";
|
||
if (item.dl.ContainsKey("1DI17"))
|
||
{
|
||
model9.PollutionDischargeState = Convert.ToInt32(item.dl["1DI517"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI18"))
|
||
{
|
||
model9.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI18"]);
|
||
}
|
||
model9.CreateTime = DateTime.Now;
|
||
model9.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model9.Reserve1 = "460";
|
||
bll_pollution.Add(model9);
|
||
var model10 = new DataService.Model.pollution_discharge();
|
||
model10.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model10.PollutionDischargeName = "GP05-2#水泵";
|
||
if (item.dl.ContainsKey("1DI19"))
|
||
{
|
||
model10.PollutionDischargeState = Convert.ToInt32(item.dl["1DI19"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI20"))
|
||
{
|
||
model10.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI20"]);
|
||
}
|
||
model10.CreateTime = DateTime.Now;
|
||
model10.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model10.Reserve1 = "460";
|
||
bll_pollution.Add(model10);
|
||
#endregion
|
||
#region GP06#水泵
|
||
var model11 = new DataService.Model.pollution_discharge();
|
||
model11.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model11.PollutionDischargeName = "GP06-1#水泵";
|
||
if (item.dl.ContainsKey("1DI21"))
|
||
{
|
||
model11.PollutionDischargeState = Convert.ToInt32(item.dl["1DI21"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI22"))
|
||
{
|
||
model11.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI22"]);
|
||
}
|
||
model11.CreateTime = DateTime.Now;
|
||
model11.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model11.Reserve1 = "460";
|
||
bll_pollution.Add(model11);
|
||
var model12 = new DataService.Model.pollution_discharge();
|
||
model12.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model12.PollutionDischargeName = "GP06-2#水泵";
|
||
if (item.dl.ContainsKey("1DI23"))
|
||
{
|
||
model12.PollutionDischargeState = Convert.ToInt32(item.dl["1DI23"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI24"))
|
||
{
|
||
model12.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI24"]);
|
||
}
|
||
model12.CreateTime = DateTime.Now;
|
||
model12.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model12.Reserve1 = "460";
|
||
bll_pollution.Add(model12);
|
||
#endregion
|
||
#region GP07#水泵
|
||
var model13 = new DataService.Model.pollution_discharge();
|
||
model13.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model13.PollutionDischargeName = "GP07-1#水泵";
|
||
if (item.dl.ContainsKey("1DI25"))
|
||
{
|
||
model3.PollutionDischargeState = Convert.ToInt32(item.dl["1DI25"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI26"))
|
||
{
|
||
model3.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI26"]);
|
||
}
|
||
model13.CreateTime = DateTime.Now;
|
||
model13.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model13.Reserve1 = "460";
|
||
bll_pollution.Add(model13);
|
||
var model14 = new DataService.Model.pollution_discharge();
|
||
model14.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model14.PollutionDischargeName = "GP07-2#水泵";
|
||
if (item.dl.ContainsKey("1DI27"))
|
||
{
|
||
model14.PollutionDischargeState = Convert.ToInt32(item.dl["1DI127"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI28"))
|
||
{
|
||
model14.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI128"]);
|
||
}
|
||
model14.CreateTime = DateTime.Now;
|
||
model14.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model14.Reserve1 = "460";
|
||
bll_pollution.Add(model14);
|
||
#endregion
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
|
||
}
|
||
}
|
||
//排污2
|
||
if (topic.Contains("/f059bade-5b95-4831-9431-9600cf8bd4f7"))
|
||
{
|
||
log.Info("排污2msg" + msg);
|
||
//排污1
|
||
var j = msg.Substring(1);
|
||
var data = JsonConvert.DeserializeObject<DataService.api.get_data>(j);
|
||
var list = bll_pollution.GetModelList("");
|
||
log.Info("排污2:" + data);
|
||
if (data.b != null)
|
||
{
|
||
foreach (var item in data.b.dvl)
|
||
{
|
||
var name = "";
|
||
char delimiter = '.'; // 分隔符
|
||
int lastDotIndex = item.da.LastIndexOf(delimiter); // 查找最后一个分隔符的位置
|
||
if (lastDotIndex != -1) // 如果找到分隔符
|
||
{
|
||
name = item.da.Substring(lastDotIndex + 1); // 截取分隔符后面的子字符串
|
||
|
||
}
|
||
var time = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
var alist = list.Where(x => x.EntireTime == time && x.Reserve1 == name).ToList();
|
||
if (alist.Count == 0)
|
||
{
|
||
if (name == "465")
|
||
{
|
||
#region GP08#水泵
|
||
var model1 = new DataService.Model.pollution_discharge();
|
||
model1.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model1.PollutionDischargeName = "GP08-1#水泵";
|
||
if (item.dl.ContainsKey("1DI1"))
|
||
{
|
||
model1.PollutionDischargeState = Convert.ToInt32(item.dl["1DI1"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI2"))
|
||
{
|
||
model1.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI2"]);
|
||
}
|
||
model1.CreateTime = DateTime.Now;
|
||
model1.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model1.Reserve1 = "465";
|
||
bll_pollution.Add(model1);
|
||
var model2 = new DataService.Model.pollution_discharge();
|
||
model2.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model2.PollutionDischargeName = "GP08-2#水泵";
|
||
if (item.dl.ContainsKey("1DI3"))
|
||
{
|
||
model2.PollutionDischargeState = Convert.ToInt32(item.dl["1DI3"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI4"))
|
||
{
|
||
model2.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI4"]);
|
||
}
|
||
model2.CreateTime = DateTime.Now;
|
||
model2.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model2.Reserve1 = "465";
|
||
bll_pollution.Add(model2);
|
||
#endregion
|
||
#region GP09#水泵
|
||
var model3 = new DataService.Model.pollution_discharge();
|
||
model3.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model3.PollutionDischargeName = "GP09-1#水泵";
|
||
if (item.dl.ContainsKey("1DI5"))
|
||
{
|
||
model3.PollutionDischargeState = Convert.ToInt32(item.dl["1DI5"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI6"))
|
||
{
|
||
model3.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI6"]);
|
||
}
|
||
model3.CreateTime = DateTime.Now;
|
||
model3.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model3.Reserve1 = "465";
|
||
bll_pollution.Add(model3);
|
||
var model4 = new DataService.Model.pollution_discharge();
|
||
model4.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model4.PollutionDischargeName = "GP09-2#水泵";
|
||
if (item.dl.ContainsKey("1DI7"))
|
||
{
|
||
model4.PollutionDischargeState = Convert.ToInt32(item.dl["1DI7"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI8"))
|
||
{
|
||
model4.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI8"]);
|
||
}
|
||
model4.CreateTime = DateTime.Now;
|
||
model4.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model4.Reserve1 = "465";
|
||
bll_pollution.Add(model4);
|
||
#endregion
|
||
#region GP10#水泵
|
||
var model5 = new DataService.Model.pollution_discharge();
|
||
model5.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model5.PollutionDischargeName = "GP10-1#水泵";
|
||
if (item.dl.ContainsKey("1DI9"))
|
||
{
|
||
model5.PollutionDischargeState = Convert.ToInt32(item.dl["1DI1"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI10"))
|
||
{
|
||
model5.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI2"]);
|
||
}
|
||
model5.CreateTime = DateTime.Now;
|
||
model5.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model5.Reserve1 = "465";
|
||
bll_pollution.Add(model5);
|
||
var model6 = new DataService.Model.pollution_discharge();
|
||
model6.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model6.PollutionDischargeName = "GP10-2#水泵";
|
||
if (item.dl.ContainsKey("1DI11"))
|
||
{
|
||
model6.PollutionDischargeState = Convert.ToInt32(item.dl["1DI12"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI12"))
|
||
{
|
||
model6.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI13"]);
|
||
}
|
||
model6.CreateTime = DateTime.Now;
|
||
model6.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model6.Reserve1 = "465";
|
||
bll_pollution.Add(model6);
|
||
#endregion
|
||
#region GP11#水泵
|
||
var model7 = new DataService.Model.pollution_discharge();
|
||
model7.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model7.PollutionDischargeName = "GP11-1#水泵";
|
||
if (item.dl.ContainsKey("1DI13"))
|
||
{
|
||
model7.PollutionDischargeState = Convert.ToInt32(item.dl["1DI13"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI14"))
|
||
{
|
||
model7.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI14"]);
|
||
}
|
||
model7.CreateTime = DateTime.Now;
|
||
model7.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model7.Reserve1 = "465";
|
||
bll_pollution.Add(model7);
|
||
var model8 = new DataService.Model.pollution_discharge();
|
||
model8.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model8.PollutionDischargeName = "GP12-2#水泵";
|
||
if (item.dl.ContainsKey("1DI15"))
|
||
{
|
||
model8.PollutionDischargeState = Convert.ToInt32(item.dl["1DI16"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI16"))
|
||
{
|
||
model8.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI17"]);
|
||
}
|
||
model8.CreateTime = DateTime.Now;
|
||
model8.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model8.Reserve1 = "465";
|
||
bll_pollution.Add(model8);
|
||
#endregion
|
||
#region GP12#水泵
|
||
var model9 = new DataService.Model.pollution_discharge();
|
||
model9.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model9.PollutionDischargeName = "GP12-1#水泵";
|
||
if (item.dl.ContainsKey("1DI17"))
|
||
{
|
||
model9.PollutionDischargeState = Convert.ToInt32(item.dl["1DI517"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI18"))
|
||
{
|
||
model9.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI18"]);
|
||
}
|
||
model9.CreateTime = DateTime.Now;
|
||
model9.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model9.Reserve1 = "465";
|
||
bll_pollution.Add(model9);
|
||
var model10 = new DataService.Model.pollution_discharge();
|
||
model10.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model10.PollutionDischargeName = "GP12-2#水泵";
|
||
if (item.dl.ContainsKey("1DI19"))
|
||
{
|
||
model10.PollutionDischargeState = Convert.ToInt32(item.dl["1DI19"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI20"))
|
||
{
|
||
model10.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI20"]);
|
||
}
|
||
model10.CreateTime = DateTime.Now;
|
||
model10.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model10.Reserve1 = "465";
|
||
bll_pollution.Add(model10);
|
||
#endregion
|
||
#region GP13#水泵
|
||
var model11 = new DataService.Model.pollution_discharge();
|
||
model11.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model11.PollutionDischargeName = "GP13-1#水泵";
|
||
if (item.dl.ContainsKey("1DI21"))
|
||
{
|
||
model11.PollutionDischargeState = Convert.ToInt32(item.dl["1DI21"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI22"))
|
||
{
|
||
model11.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI22"]);
|
||
}
|
||
model11.CreateTime = DateTime.Now;
|
||
model11.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model11.Reserve1 = "465";
|
||
bll_pollution.Add(model11);
|
||
var model12 = new DataService.Model.pollution_discharge();
|
||
model12.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model12.PollutionDischargeName = "GP13-2#水泵";
|
||
if (item.dl.ContainsKey("1DI23"))
|
||
{
|
||
model12.PollutionDischargeState = Convert.ToInt32(item.dl["1DI23"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI24"))
|
||
{
|
||
model12.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI24"]);
|
||
}
|
||
model12.CreateTime = DateTime.Now;
|
||
model12.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model12.Reserve1 = "465";
|
||
bll_pollution.Add(model12);
|
||
#endregion
|
||
#region GP14#水泵
|
||
var model13 = new DataService.Model.pollution_discharge();
|
||
model13.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model13.PollutionDischargeName = "GP14-1#水泵";
|
||
if (item.dl.ContainsKey("1DI25"))
|
||
{
|
||
model3.PollutionDischargeState = Convert.ToInt32(item.dl["1DI25"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI26"))
|
||
{
|
||
model3.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI26"]);
|
||
}
|
||
model13.CreateTime = DateTime.Now;
|
||
model13.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model13.Reserve1 = "465";
|
||
bll_pollution.Add(model13);
|
||
var model14 = new DataService.Model.pollution_discharge();
|
||
model14.PollutionDischargeId = Guid.NewGuid().ToString("N");
|
||
model14.PollutionDischargeName = "GP14-2#水泵";
|
||
if (item.dl.ContainsKey("1DI27"))
|
||
{
|
||
model14.PollutionDischargeState = Convert.ToInt32(item.dl["1DI127"]);
|
||
}
|
||
if (item.dl.ContainsKey("1DI28"))
|
||
{
|
||
model14.PollutionDischargeAlarm = Convert.ToInt32(item.dl["1DI128"]);
|
||
}
|
||
model14.CreateTime = DateTime.Now;
|
||
model14.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
model14.Reserve1 = "465";
|
||
bll_pollution.Add(model14);
|
||
#endregion
|
||
}
|
||
}
|
||
|
||
|
||
}
|
||
|
||
|
||
}
|
||
}
|
||
//气象站
|
||
if (topic.Contains("/e7af4604-30f8-41d6-a4d0-90c969e77a62"))
|
||
{
|
||
//气象站
|
||
log.Info("气象站msg" + msg);
|
||
var j = msg.Substring(1);
|
||
var data = JsonConvert.DeserializeObject<DataService.api.get_data_state>(j);
|
||
log.Info("气象站:" + data);
|
||
var now = DateTime.Now;
|
||
var edate = Convert.ToDateTime(now.ToString("yyyy-MM-dd HH:00:00"));
|
||
var list = bll_meteorological.GetModelList("").Where(x => x.EntireTime == edate).ToList();
|
||
if (list.Count == 0)
|
||
{
|
||
if (data.b != null)
|
||
{
|
||
|
||
foreach (var item in data.b.dvl)
|
||
{
|
||
var name = "";
|
||
char delimiter = '.'; // 分隔符
|
||
int lastDotIndex = item.da.LastIndexOf(delimiter); // 查找最后一个分隔符的位置
|
||
|
||
if (lastDotIndex != -1) // 如果找到分隔符
|
||
{
|
||
name = item.da.Substring(lastDotIndex + 1); // 截取分隔符后面的子字符串
|
||
|
||
}
|
||
if (name == "33")
|
||
{
|
||
if (item.dl.ContainsKey("当前雨量"))
|
||
{
|
||
var mmodel = new DataService.Model.meteorological_station();
|
||
//气象站
|
||
mmodel.MeteorologicalId = Guid.NewGuid().ToString("N");
|
||
mmodel.MeteorologicalNumber = name;
|
||
mmodel.MeteorologicalName = "雨量";
|
||
decimal? number;
|
||
var stringnumber = item.dl["当前雨量"];
|
||
char delimiters = ':'; // 分隔符
|
||
int lastDotIndexs = stringnumber.LastIndexOf(delimiters); // 查找最后一个分隔符的位置
|
||
if (lastDotIndexs != -1) // 如果找到分隔符
|
||
{
|
||
var num = stringnumber.Substring(lastDotIndexs + 1);
|
||
number = Convert.ToDecimal(num); // 截取分隔符后面的子字符串
|
||
mmodel.MeteorologicalValue = number;
|
||
}
|
||
else
|
||
{
|
||
var num = Convert.ToDecimal(stringnumber);
|
||
mmodel.MeteorologicalValue = num;
|
||
}
|
||
mmodel.CreateTime = DateTime.Now;
|
||
mmodel.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
bll_meteorological.Add(mmodel);
|
||
}
|
||
if (item.dl.ContainsKey("雨雪状态1"))
|
||
{
|
||
var mmodel = new DataService.Model.meteorological_station();
|
||
//气象站
|
||
mmodel.MeteorologicalId = Guid.NewGuid().ToString("N");
|
||
mmodel.MeteorologicalNumber = name;
|
||
mmodel.MeteorologicalName = "雨雪状态";
|
||
decimal? number;
|
||
var stringnumber = item.dl["雨雪状态1"];
|
||
char delimiters = ':'; // 分隔符lastDotIndexs + 1
|
||
int lastDotIndexs = stringnumber.LastIndexOf(delimiters); // 查找最后一个分隔符的位置
|
||
if (lastDotIndexs != -1) // 如果找到分隔符
|
||
{
|
||
var num = stringnumber.Substring(lastDotIndexs + 1);
|
||
number = Convert.ToDecimal(num); // 截取分隔符后面的子字符串
|
||
mmodel.MeteorologicalValue = number;
|
||
}
|
||
else
|
||
{
|
||
var num = Convert.ToDecimal(stringnumber);
|
||
mmodel.MeteorologicalValue = num;
|
||
}
|
||
mmodel.CreateTime = DateTime.Now;
|
||
mmodel.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
bll_meteorological.Add(mmodel);
|
||
}
|
||
if (item.dl.ContainsKey("风向"))
|
||
{
|
||
var mmodel = new DataService.Model.meteorological_station();
|
||
//气象站
|
||
mmodel.MeteorologicalId = Guid.NewGuid().ToString("N");
|
||
mmodel.MeteorologicalNumber = name;
|
||
mmodel.MeteorologicalName = "风向";
|
||
decimal? number;
|
||
var stringnumber = item.dl["风向"];
|
||
char delimiters = ':'; // 分隔符
|
||
int lastDotIndexs = stringnumber.LastIndexOf(delimiters); // 查找最后一个分隔符的位置
|
||
if (lastDotIndexs != -1) // 如果找到分隔符
|
||
{
|
||
var num = stringnumber.Substring(lastDotIndexs + 1);
|
||
number = Convert.ToDecimal(num); // 截取分隔符后面的子字符串
|
||
mmodel.MeteorologicalValue = number;
|
||
}
|
||
else
|
||
{
|
||
var num = Convert.ToDecimal(stringnumber);
|
||
mmodel.MeteorologicalValue = num;
|
||
}
|
||
mmodel.CreateTime = DateTime.Now;
|
||
mmodel.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
bll_meteorological.Add(mmodel);
|
||
}
|
||
if (item.dl.ContainsKey("光照度高16位"))
|
||
{
|
||
var mmodel = new DataService.Model.meteorological_station();
|
||
//气象站
|
||
mmodel.MeteorologicalId = Guid.NewGuid().ToString("N");
|
||
mmodel.MeteorologicalNumber = name;
|
||
mmodel.MeteorologicalName = "光照度";
|
||
decimal? number;
|
||
var stringnumber = item.dl["光照度高16位"];
|
||
char delimiters = ':'; // 分隔符
|
||
int lastDotIndexs = stringnumber.LastIndexOf(delimiters); // 查找最后一个分隔符的位置
|
||
if (lastDotIndexs != -1) // 如果找到分隔符
|
||
{
|
||
var num = stringnumber.Substring(lastDotIndexs + 1);
|
||
number = Convert.ToDecimal(num); // 截取分隔符后面的子字符串
|
||
mmodel.MeteorologicalValue = number;
|
||
}
|
||
else
|
||
{
|
||
var num = Convert.ToDecimal(stringnumber);
|
||
mmodel.MeteorologicalValue = num;
|
||
}
|
||
mmodel.CreateTime = DateTime.Now;
|
||
mmodel.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
bll_meteorological.Add(mmodel);
|
||
}
|
||
if (item.dl.ContainsKey("风速"))
|
||
{
|
||
var mmodel = new DataService.Model.meteorological_station();
|
||
//气象站
|
||
mmodel.MeteorologicalId = Guid.NewGuid().ToString("N");
|
||
mmodel.MeteorologicalNumber = name;
|
||
mmodel.MeteorologicalName = "风速";
|
||
decimal? number;
|
||
var stringnumber = item.dl["风速"];
|
||
char delimiters = ':'; // 分隔符
|
||
int lastDotIndexs = stringnumber.LastIndexOf(delimiters); // 查找最后一个分隔符的位置
|
||
if (lastDotIndexs != -1) // 如果找到分隔符
|
||
{
|
||
var num = stringnumber.Substring(lastDotIndexs + 1);
|
||
number = Convert.ToDecimal(num); // 截取分隔符后面的子字符串
|
||
mmodel.MeteorologicalValue = number;
|
||
}
|
||
else
|
||
{
|
||
var num = Convert.ToDecimal(stringnumber);
|
||
mmodel.MeteorologicalValue = num;
|
||
}
|
||
mmodel.CreateTime = DateTime.Now;
|
||
mmodel.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
bll_meteorological.Add(mmodel);
|
||
}
|
||
if (item.dl.ContainsKey("PM2_5"))
|
||
{
|
||
var mmodel = new DataService.Model.meteorological_station();
|
||
//气象站
|
||
mmodel.MeteorologicalId = Guid.NewGuid().ToString("N");
|
||
mmodel.MeteorologicalNumber = name;
|
||
mmodel.MeteorologicalName = "空气质量";
|
||
decimal? number;
|
||
var stringnumber = item.dl["PM2_5"];
|
||
char delimiters = ':'; // 分隔符
|
||
int lastDotIndexs = stringnumber.LastIndexOf(delimiters); // 查找最后一个分隔符的位置
|
||
if (lastDotIndexs != -1) // 如果找到分隔符
|
||
{
|
||
var num = stringnumber.Substring(lastDotIndexs + 1);
|
||
number = Convert.ToDecimal(num); // 截取分隔符后面的子字符串
|
||
mmodel.MeteorologicalValue = number;
|
||
}
|
||
else
|
||
{
|
||
var num = Convert.ToDecimal(stringnumber);
|
||
mmodel.MeteorologicalValue = num;
|
||
}
|
||
mmodel.CreateTime = DateTime.Now;
|
||
mmodel.EntireTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:00:00"));
|
||
bll_meteorological.Add(mmodel);
|
||
}
|
||
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
log.Info("处理失败,数据:" + msg + ",原因:" + ex.Message);
|
||
}
|
||
}
|
||
|
||
protected override void OnStop()
|
||
{
|
||
// TODO: 在此处添加代码以执行停止服务所需的关闭操作。
|
||
}
|
||
|
||
/// <summary>
|
||
/// 时间戳转换为DATETIME格式
|
||
/// </summary>
|
||
/// <param name="timeStamp">时间戳字符串</param>
|
||
/// <returns></returns>
|
||
public static DateTime GetDateTime(string timeStamp)
|
||
{
|
||
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
|
||
string ts = timeStamp + "0000000";
|
||
if (timeStamp.Length == 13)
|
||
{
|
||
ts = timeStamp + "0000";
|
||
}
|
||
long lTime = long.Parse(ts);
|
||
TimeSpan toNow = new TimeSpan(lTime);
|
||
return dtStart.Add(toNow);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 获取配电室低压设备名称
|
||
/// </summary>
|
||
/// <param name="code"></param>
|
||
/// <returns></returns>
|
||
public static string GetDeviceName1(int code)
|
||
{
|
||
var list = new Dictionary<int, string>();
|
||
list.Add(1, "b1AL2");
|
||
list.Add(2, "3ATL-ZT1");
|
||
list.Add(3, "2ATL-ZT1");
|
||
list.Add(4, "1ATL-ZT1");
|
||
list.Add(5, "1ATL-ZT2");
|
||
list.Add(6, "夜景照明");
|
||
list.Add(7, "3ATL-JZ");
|
||
list.Add(8, "b1AT-YD12");
|
||
list.Add(9, "1AT-YD21 2AT-YD2");
|
||
list.Add(10, "3AP-KT21");
|
||
list.Add(11, "3AP-KT24");
|
||
list.Add(12, "b1AP-KT25");
|
||
list.Add(13, "b1AP-CF");
|
||
list.Add(14, "停车场");
|
||
list.Add(15, "3AT-DT1");
|
||
list.Add(16, "3AT-DT2");
|
||
list.Add(17, "3AT-HT");
|
||
list.Add(18, "b1AT-QW");
|
||
list.Add(19, "b1AT-RD");
|
||
list.Add(20, "b1AT-JK");
|
||
list.Add(21, "b1ATE-XF");
|
||
list.Add(22, "b1AT-BD");
|
||
list.Add(23, "b1AP-KT26");
|
||
list.Add(24, "2AP12");
|
||
list.Add(25, "2AP13");
|
||
list.Add(26, "2AP21");
|
||
list.Add(27, "2AP14");
|
||
list.Add(28, "2AP31");
|
||
list.Add(29, "b1ATE-XB");
|
||
list.Add(30, "b2ATE10");
|
||
list.Add(31, "b2ATE8-1");
|
||
list.Add(32, "b2ATE9-1");
|
||
list.Add(33, "b2ATE9-3");
|
||
list.Add(34, "3ATE-FJ1");
|
||
list.Add(35, "123ATE1");
|
||
list.Add(36, "2ATE-FJ1");
|
||
list.Add(37, "2ATE-FJ3");
|
||
list.Add(38, "1ATE2");
|
||
list.Add(39, "b1AL1-3AL1");
|
||
list.Add(40, "3ATL-ZT1");
|
||
list.Add(41, "2ATL-ZT1");
|
||
list.Add(42, "b1ATL");
|
||
list.Add(43, "1ATL-ZT2");
|
||
list.Add(44, "MWL7");
|
||
list.Add(45, "3ATL-JZ");
|
||
list.Add(46, "b1AT-YD1 3AT-YD1");
|
||
list.Add(47, "1AT-YD21 2AT-YD2");
|
||
list.Add(48, "b1AT-KT21");
|
||
list.Add(49, "b1AP-KT22");
|
||
list.Add(50, "b1AT-KT23");
|
||
list.Add(51, "3AT-DT1");
|
||
list.Add(52, "3AT-DT2");
|
||
list.Add(53, "3AT-HT");
|
||
list.Add(54, "b1AT-QW");
|
||
list.Add(55, "b1AT-RD");
|
||
list.Add(56, "b2AT-JK");
|
||
list.Add(57, "b1ATE-XF");
|
||
list.Add(58, "b2AT-BD");
|
||
list.Add(59, "AC1");
|
||
list.Add(60, "3AP-DBR");
|
||
list.Add(61, "1AP-LHD");
|
||
list.Add(62, "2AP11");
|
||
list.Add(63, "1AO-LED");
|
||
list.Add(64, "喷泉");
|
||
list.Add(65, "b1ATE-XB");
|
||
list.Add(66, "b1ATE10");
|
||
list.Add(67, "b1ATE8-1");
|
||
list.Add(68, "b1ATE9-1");
|
||
list.Add(69, "b1ATE9-3");
|
||
list.Add(70, "3ATE-PJ1");
|
||
list.Add(71, "1-3ATE1");
|
||
list.Add(72, "2ATE-FJ1");
|
||
list.Add(73, "2ATE-FJ3");
|
||
list.Add(74, "1ATE2");
|
||
if (!list.ContainsKey(code))
|
||
{
|
||
return "未知";
|
||
}
|
||
return list[code];
|
||
}
|
||
|
||
/// <summary>
|
||
/// 获取配电室高压设备名称
|
||
/// </summary>
|
||
/// <param name="code"></param>
|
||
/// <returns></returns>
|
||
public static string GetDeviceName2(int code)
|
||
{
|
||
var list = new Dictionary<int, string>();
|
||
list.Add(211, "场馆负一配电室高压进线柜");
|
||
list.Add(212, "场馆负一配电室高压进线柜");
|
||
if (!list.ContainsKey(code))
|
||
{
|
||
return "未知";
|
||
}
|
||
return list[code];
|
||
}
|
||
/// <summary>
|
||
/// 获取电能-室外箱变设备名称
|
||
/// </summary>
|
||
/// <param name="code"></param>
|
||
/// <returns></returns>
|
||
public static string GetDeviceName3(int code)
|
||
{
|
||
var list = new Dictionary<int, string>();
|
||
list.Add(1, "1-3号热泵机组");
|
||
list.Add(2, "4-6号热泵机组");
|
||
list.Add(3, "7-9号热泵机组");
|
||
list.Add(4, "10-12号热泵机组");
|
||
list.Add(5, "13-15号热泵机组");
|
||
list.Add(6, "16-18号热泵机组");
|
||
list.Add(7, "19-21号热泵机组");
|
||
list.Add(8, "22-24号热泵机组");
|
||
if (!list.ContainsKey(code))
|
||
{
|
||
return "未知";
|
||
}
|
||
return list[code];
|
||
}
|
||
/// <summary>
|
||
/// 获取配电室分类
|
||
/// </summary>
|
||
/// <param name="code"></param>
|
||
/// <returns></returns>
|
||
public static string GetDeviceName4(int code)
|
||
{
|
||
var list = new Dictionary<int, string>();
|
||
list.Add(1, "普通照明");
|
||
list.Add(2, "展览用电");
|
||
list.Add(3, "展览用电");
|
||
list.Add(4, "展览用电");
|
||
list.Add(5, "展览用电");
|
||
list.Add(6, "夜景照明");
|
||
list.Add(7, "基站用电");
|
||
list.Add(8, "室分机房");
|
||
list.Add(9, "室分机房");
|
||
list.Add(10, "空调动力");
|
||
list.Add(11, "空调动力");
|
||
list.Add(12, "空调动力");
|
||
list.Add(13, "扶梯");
|
||
list.Add(14, "停车场");
|
||
list.Add(15, "普通电梯");
|
||
list.Add(16, "普通电梯");
|
||
list.Add(17, "货梯");
|
||
list.Add(18, "潜污泵");
|
||
list.Add(19, "弱电");
|
||
list.Add(20, "监控室");
|
||
list.Add(21, "消防控制室");
|
||
list.Add(22, "变配电室");
|
||
list.Add(23, "空调室外机");
|
||
list.Add(24, "展陈用电");
|
||
list.Add(25, "展陈用电");
|
||
list.Add(26, "展陈用电");
|
||
list.Add(27, "展陈用电");
|
||
list.Add(28, "展陈用电");
|
||
list.Add(29, "消防水泵房");
|
||
list.Add(30, "消防风机");
|
||
list.Add(31, "消防风机");
|
||
list.Add(32, "");
|
||
list.Add(33, "消防风机");
|
||
list.Add(34, "消防风机");
|
||
list.Add(35, "消防风机");
|
||
list.Add(36, "消防风机");
|
||
list.Add(37, "消防风机");
|
||
list.Add(38, "消防电梯");
|
||
list.Add(39, "负一层普通照明");
|
||
list.Add(40, "台球厅展览用电");
|
||
list.Add(41, "展览用电");
|
||
list.Add(42, "展览用电");
|
||
list.Add(43, "展览用电");
|
||
list.Add(44, "夜景照明");
|
||
list.Add(45, "基站用电");
|
||
list.Add(46, "室分机房");
|
||
list.Add(47, "室分机房");
|
||
list.Add(48, "空调动力");
|
||
list.Add(49, "空调动力");
|
||
list.Add(50, "空调动力");
|
||
list.Add(51, "普通电梯");
|
||
list.Add(52, "普通电梯");
|
||
list.Add(53, "货梯");
|
||
list.Add(54, "潜污泵");
|
||
list.Add(55, "弱电");
|
||
list.Add(56, "监控室");
|
||
list.Add(57, "消防控制室");
|
||
list.Add(58, "变配电室");
|
||
list.Add(59, "空调动力站");
|
||
list.Add(60, "电伴热");
|
||
list.Add(61, "景观用电");
|
||
list.Add(62, "展陈用电");
|
||
list.Add(63, "老海岛展陈用电");
|
||
list.Add(64, "喷泉");
|
||
list.Add(65, "消防水泵房");
|
||
list.Add(66, "消防风机");
|
||
list.Add(67, "消防风机");
|
||
list.Add(68, "");
|
||
list.Add(69, "消防风机");
|
||
list.Add(70, "消防风机");
|
||
list.Add(71, "消防风机");
|
||
list.Add(72, "消防风机");
|
||
list.Add(73, "消防风机");
|
||
list.Add(74, "消防电梯");
|
||
if (!list.ContainsKey(code))
|
||
{
|
||
return "未知";
|
||
}
|
||
return list[code];
|
||
}
|
||
}
|
||
public class IdName
|
||
{
|
||
public string Id { get; set; }
|
||
public string Name { get; set; }
|
||
}
|
||
}
|