Example #1
0
        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);
        }
Example #2
0
 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);
     }
 }