public static bool ConvertDeleteConfig(EdgeConfig config, ref string payload) { // add by kelly start try { if (config == null) { return(false); } ConfigMessage msg = new ConfigMessage(); msg.ScadaList = new Dictionary <string, ConfigMessage.ScadaObject>(); ConfigMessage.ScadaObject scadaObj = new ConfigMessage.ScadaObject() { //Id = config.Scada.Id, //DeviceType = config.Scada.DeviceType, DeviceType = SCADAConfigType.SCADA, Description = config.Scada.Description, PortNumber = config.Scada.PortNumber, HeartBeat = config.Scada.HeartBeat, BackupDeviceId = config.Scada.BackupDeviceId, DeleteAllTags = 1 }; //scadaObj.UpdateTagList = new Dictionary<string, ConfigMessage.TagObject>(); msg.ScadaList.Add(config.Scada.Id, scadaObj); payload = JsonConvert.SerializeObject(msg, Formatting.None, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); return(true); } catch (Exception ex) { Console.WriteLine(ex.ToString()); return(false); } // add by kelly end return(true); }
public static bool ConvertCreateOrUpdateConfig(EdgeConfig config, ref string payload, int heartbeat = EdgeAgent.DEAFAULT_HEARTBEAT_INTERVAL) { try { if (config == null) { return(false); } ConfigMessage msg = new ConfigMessage(); msg.ScadaList = new Dictionary <string, ConfigMessage.ScadaObject>(); ConfigMessage.ScadaObject scadaObj = new ConfigMessage.ScadaObject() { //Id = config.Scada.Id, //DeviceType = config.Scada.DeviceType, DeviceType = SCADAConfigType.SCADA, Description = config.Scada.Description, PortNumber = config.Scada.PortNumber, HeartBeat = config.Scada.HeartBeat, BackupDeviceId = config.Scada.BackupDeviceId }; scadaObj.UpdateTagList = new Dictionary <string, ConfigMessage.TagObject>(); if (config.Scada.AnalogTagList != null) { foreach (var analogTag in config.Scada.AnalogTagList) { ConfigMessage.AnalogTagObject analogTagObject = new ConfigMessage.AnalogTagObject() { // Common Name = analogTag.Name, Type = TagType.Analog, Description = analogTag.Description, ReadOnly = (analogTag.ReadOnly != null) ? Convert.ToInt32(analogTag.ReadOnly) : ( int? )null, ArraySize = analogTag.ArraySize, // Detail AlarmEnable = analogTag.AlarmEnable, NeedLog = (analogTag.NeedLog != null) ? Convert.ToInt32(analogTag.NeedLog) : ( int? )null, SpanHigh = analogTag.SpanHigh, SpanLow = analogTag.SpanLow, EngineerUnit = analogTag.EngineerUnit, DisplayFormat = analogTag.DisplayFormat }; if (analogTag.AlarmEnable == true) { analogTagObject.HHPriority = analogTag.HHPriority; analogTagObject.HHAlarmLimit = analogTag.HHAlarmLimit; analogTagObject.HighPriority = analogTag.HighPriority; analogTagObject.HighAlarmLimit = analogTag.HighAlarmLimit; analogTagObject.LowPriority = analogTag.LowPriority; analogTagObject.LowAlarmLimit = analogTag.LowAlarmLimit; analogTagObject.LLPriority = analogTag.LLPriority; analogTagObject.LLAlarmLimit = analogTag.LLAlarmLimit; } scadaObj.UpdateTagList.Add(analogTagObject.Name, analogTagObject); } } if (config.Scada.DiscreteTagList != null) { foreach (var discreteTag in config.Scada.DiscreteTagList) { ConfigMessage.DiscreteTagObject discreteTagObject = new ConfigMessage.DiscreteTagObject() { // Common Name = discreteTag.Name, Type = TagType.Discrete, Description = discreteTag.Description, ReadOnly = (discreteTag.ReadOnly != null) ? Convert.ToInt32(discreteTag.ReadOnly) : (int?)null, ArraySize = discreteTag.ArraySize, // Detail AlarmEnable = discreteTag.AlarmEnable, State0 = discreteTag.State0, State1 = discreteTag.State1, State2 = discreteTag.State2, State3 = discreteTag.State3, State4 = discreteTag.State4, State5 = discreteTag.State5, State6 = discreteTag.State6, State7 = discreteTag.State7 }; if (discreteTag.AlarmEnable == true) { discreteTagObject.State0AlarmPriority = discreteTag.State0AlarmPriority; discreteTagObject.State1AlarmPriority = discreteTag.State1AlarmPriority; discreteTagObject.State2AlarmPriority = discreteTag.State2AlarmPriority; discreteTagObject.State3AlarmPriority = discreteTag.State3AlarmPriority; discreteTagObject.State4AlarmPriority = discreteTag.State4AlarmPriority; discreteTagObject.State5AlarmPriority = discreteTag.State5AlarmPriority; discreteTagObject.State6AlarmPriority = discreteTag.State6AlarmPriority; discreteTagObject.State7AlarmPriority = discreteTag.State7AlarmPriority; } scadaObj.UpdateTagList.Add(discreteTagObject.Name, discreteTagObject); } } if (config.Scada.TextTagList != null) { foreach (var textTag in config.Scada.TextTagList) { ConfigMessage.TextTagObject textTagObject = new ConfigMessage.TextTagObject() { // Common Name = textTag.Name, Type = TagType.Text, Description = textTag.Description, ReadOnly = (textTag.ReadOnly != null) ? Convert.ToInt32(textTag.ReadOnly) : (int?)null, ArraySize = textTag.ArraySize, }; scadaObj.UpdateTagList.Add(textTagObject.Name, textTagObject); } } msg.ScadaList.Add(config.Scada.Id, scadaObj); //msg.D.Id = scadaObj.Id; //msg.D.UpdateTagList = scadaObj.UpdateTagList; //msg.D.ScadaList.Add( config.Scada.Id, scadaObj ); payload = JsonConvert.SerializeObject(msg, Formatting.None, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); return(true); } catch (Exception ex) { Console.WriteLine(ex.ToString()); return(false); } }