private static DeviceInfomation LoadDevInfo(object taskState) { DeviceInfomation info; var devCode = taskState.ToString(); if (SystemDevs.ContainsKey(devCode)) { info = SystemDevs[devCode]; return(info); } if (_dataSource == "web") { using (var ctx = new UnicomDbContext()) { var mtweDev = ctx.EmsDevices.FirstOrDefault(d => d.Name == devCode); if (mtweDev != null) { var prj = ctx.EmsProjects.First(p => p.Code == mtweDev.ProjectCode); info = new DeviceInfomation { DevCode = taskState.ToString(), UnicomDevCode = mtweDev.Code, StatCode = prj.Name, ProjectType = prj.ProjectType }; SystemDevs.Add(devCode, info); return(info); } } } else { if (int.TryParse(devCode, out int devId)) { var dev = EsMonitorDataProvider.GetDevs(devId); var stat = EsMonitorDataProvider.GetStatss(int.Parse(dev.StatId)); info = new DeviceInfomation { DevCode = taskState.ToString(), StatCode = stat.StatCode, StatId = dev.StatId, Country = stat.Country.ToString(), StatUpCode = stat.StatCodeUp }; SystemDevs.Add(devCode, info); return(info); } } return(null); }
private static void OutputError(resultData result, object devId, emsData emsData, EmsdataStatus status, DeviceInfomation device) { if (status == EmsdataStatus.NotFound) { _dataProvider.AddNewData(emsData, int.Parse(device.StatId), int.Parse(device.StatId), device.Country, device.StatUpCode); } else if (status == EmsdataStatus.Exceeded) { _dataProvider.UpdateNewData(emsData, int.Parse(device.StatId), int.Parse(device.StatId), device.Country, device.StatUpCode); } if (result.result.Length > 0) { foreach (var dataEntry in result.result) { Console.WriteLine($"Result Error=> devId:{devId} key:{dataEntry.key},value:{dataEntry.value}"); } } else { Console.WriteLine($"发送数据成功,时间:{DateTime.Now:yyyy-MM-dd hh:mm:ss},设备Id:{devId},TP值:{emsData.dust}"); AddToHistoryData(emsData); } }