public IODeviceNode FindDeviceTreeNode(Scada.Model.IO_SERVER Server, Scada.Model.IO_COMMUNICATION Communication, Scada.Model.IO_DEVICE Device) { for (int i = 0; i < this.IoTree.Nodes.Count; i++) { if (this.IoTree.Nodes[i] is IOServerNode) { IOServerNode sNode = this.IoTree.Nodes[i] as IOServerNode; if (sNode.Server == Server) { for (int j = 0; j < sNode.Nodes.Count; j++) { if (sNode.Nodes[j] is IOCommunicationNode) { IOCommunicationNode commNode = sNode.Nodes[j] as IOCommunicationNode; if (commNode.Communication == Communication) { for (int c = 0; c < commNode.Nodes.Count; c++) { if (commNode.Nodes[c] is IODeviceNode) { IODeviceNode deviceNode = commNode.Nodes[c] as IODeviceNode; if (deviceNode.Device == Device) { return(deviceNode); } } } } } } } } } return(null); }
public async void ReadRealDevice(Scada.Model.IO_SERVER server, Scada.Model.IO_COMMUNICATION communication, Scada.Model.IO_DEVICE device) { try { if (InfluxDbManager != null) { var result = await InfluxDbManager.DbQuery_Real(server, communication, device); if (result != null && result.Count() > 0) { Serie s = result.Last(); if (s != null && s.Values.Count > 0) { for (int i = 0; i < device.IOParas.Count; i++) { device.IOParas[i].IORealData = new Scada.IOStructure.IOData(); } var values = s.Values[s.Values.Count - 1]; for (int i = 0; i < s.Columns.Count; i++) { if (s.Columns[i].Split('_')[0].ToLower() == "field") { string paraname = s.Columns[i].Replace("field_", "").Replace("_value", "").Replace("_datetime", "").Replace("_qualitystamp", ""); Scada.Model.IO_PARA para = device.IOParas.Find(x => x.IO_NAME.Trim().ToLower() == paraname.ToLower()); if (para != null) { int length = s.Columns[i].Split('_').Length; if (s.Columns[i].Split('_')[length - 1].ToLower() == "value") { para.IORealData.ParaValue = InfluxDbManager.GetInfluxdbValue(values[i]).ToString(); } if (s.Columns[i].Split('_')[length - 1].ToLower() == "datetime") { para.IORealData.Date = Convert.ToDateTime(InfluxDbManager.GetInfluxdbValue(values[i]).ToString()); } if (s.Columns[i].Split('_')[length - 1].ToLower() == "qualitystamp") { para.IORealData.QualityStamp = (QualityStamp)Enum.Parse(typeof(QualityStamp), InfluxDbManager.GetInfluxdbValue(values[i]).ToString()); } } } } } } } } catch (Exception emx) { AddLog("ERROR=50001" + emx.Message); } }
/// <summary> /// 得到一个对象实体 /// </summary> public Scada.Model.IO_COMMUNICATION DataRowToModel(DataRow row) { Scada.Model.IO_COMMUNICATION model = new Scada.Model.IO_COMMUNICATION(); if (row != null) { if (row["IO_COMM_ID"] != null) { model.IO_COMM_ID = row["IO_COMM_ID"].ToString(); } if (row["IO_COMM_NAME"] != null) { model.IO_COMM_NAME = row["IO_COMM_NAME"].ToString(); } if (row["IO_COMM_LABEL"] != null) { model.IO_COMM_LABEL = row["IO_COMM_LABEL"].ToString(); } if (row["IO_COMM_REMARK"] != null && row["IO_COMM_REMARK"].ToString() != "") { model.IO_COMM_REMARK = row["IO_COMM_REMARK"].ToString(); } if (row["IO_COMM_STATUS"] != null && row["IO_COMM_STATUS"].ToString() != "") { model.IO_COMM_STATUS = int.Parse(row["IO_COMM_STATUS"].ToString()); } if (row["IO_COMM_DRIVER_ID"] != null) { model.IO_COMM_DRIVER_ID = row["IO_COMM_DRIVER_ID"].ToString(); } if (row["IO_COMM_PARASTRING"] != null) { model.IO_COMM_PARASTRING = row["IO_COMM_PARASTRING"].ToString(); } if (row["IO_SERVER_ID"] != null) { model.IO_SERVER_ID = row["IO_SERVER_ID"].ToString(); } //加载通道驱动信息 model.DriverInfo = driverDal.GetModel(model.IO_COMM_DRIVER_ID); } return(model); }
/// <summary> /// 得到一个对象实体 /// </summary> public Scada.Model.IO_COMMUNICATION GetModel(string IO_COMM_ID) { StringBuilder strSql = new StringBuilder(); strSql.Append("select "); strSql.Append(" IO_COMM_ID,IO_COMM_NAME,IO_COMM_LABEL,IO_COMM_REMARK,IO_COMM_STATUS,IO_COMM_DRIVER_ID,IO_SERVER_ID,IO_COMM_PARASTRING "); strSql.Append(" from IO_COMMUNICATION "); strSql.Append(" where IO_COMM_ID='" + IO_COMM_ID + "'"); Scada.Model.IO_COMMUNICATION model = new Scada.Model.IO_COMMUNICATION(); DataSet ds = DbHelperSQLite.Query(strSql.ToString()); if (ds.Tables[0].Rows.Count > 0) { return(DataRowToModel(ds.Tables[0].Rows[0])); } else { return(null); } }
/// <summary> /// 增加一条数据 /// </summary> public bool Add(Scada.Model.IO_COMMUNICATION model) { StringBuilder strSql = new StringBuilder(); StringBuilder strSql1 = new StringBuilder(); StringBuilder strSql2 = new StringBuilder(); if (model.IO_COMM_ID != null) { strSql1.Append("IO_COMM_ID,"); strSql2.Append("'" + model.IO_COMM_ID + "',"); } if (model.IO_COMM_NAME != null) { strSql1.Append("IO_COMM_NAME,"); strSql2.Append("'" + model.IO_COMM_NAME + "',"); } if (model.IO_COMM_LABEL != null) { strSql1.Append("IO_COMM_LABEL,"); strSql2.Append("'" + model.IO_COMM_LABEL + "',"); } if (model.IO_COMM_REMARK != null) { strSql1.Append("IO_COMM_REMARK,"); strSql2.Append("'" + model.IO_COMM_REMARK + "',"); } if (model.IO_COMM_PARASTRING != null) { strSql1.Append("IO_COMM_PARASTRING,"); strSql2.Append("'" + model.IO_COMM_PARASTRING + "',"); } strSql1.Append("IO_COMM_STATUS,"); strSql2.Append("" + model.IO_COMM_STATUS + ","); if (model.IO_COMM_DRIVER_ID != null) { strSql1.Append("IO_COMM_DRIVER_ID,"); strSql2.Append("'" + model.IO_COMM_DRIVER_ID + "',"); } if (model.IO_SERVER_ID != null) { strSql1.Append("IO_SERVER_ID,"); strSql2.Append("'" + model.IO_SERVER_ID + "',"); } strSql.Append("insert into IO_COMMUNICATION("); strSql.Append(strSql1.ToString().Remove(strSql1.Length - 1)); strSql.Append(")"); strSql.Append(" values ("); strSql.Append(strSql2.ToString().Remove(strSql2.Length - 1)); strSql.Append(")"); int rows = DbHelperSQLite.ExecuteSql(strSql.ToString()); if (rows > 0) { return(true); } else { return(false); } }
public void Add(List <Scada.Model.IO_COMMUNICATION> models) { ArrayList sqlArray = new ArrayList(); for (int i = 0; i < models.Count; i++) { Scada.Model.IO_COMMUNICATION model = models[i]; model.IO_COMM_STATUS = 0; StringBuilder strSql = new StringBuilder(); StringBuilder strSql1 = new StringBuilder(); StringBuilder strSql2 = new StringBuilder(); if (model.IO_COMM_ID != null) { strSql1.Append("IO_COMM_ID,"); strSql2.Append("'" + model.IO_COMM_ID + "',"); } if (model.IO_COMM_NAME != null) { strSql1.Append("IO_COMM_NAME,"); strSql2.Append("'" + model.IO_COMM_NAME + "',"); } if (model.IO_COMM_LABEL != null) { strSql1.Append("IO_COMM_LABEL,"); strSql2.Append("'" + model.IO_COMM_LABEL + "',"); } if (model.IO_COMM_REMARK != null) { strSql1.Append("IO_COMM_REMARK,"); strSql2.Append("'" + model.IO_COMM_REMARK + "',"); } if (model.IO_COMM_PARASTRING != null) { strSql1.Append("IO_COMM_PARASTRING,"); strSql2.Append("'" + model.IO_COMM_PARASTRING + "',"); } strSql1.Append("IO_COMM_STATUS,"); strSql2.Append("" + model.IO_COMM_STATUS + ","); if (model.IO_COMM_DRIVER_ID != null) { strSql1.Append("IO_COMM_DRIVER_ID,"); strSql2.Append("'" + model.IO_COMM_DRIVER_ID + "',"); } if (model.IO_SERVER_ID != null) { strSql1.Append("IO_SERVER_ID,"); strSql2.Append("'" + model.IO_SERVER_ID + "',"); } strSql.Append("insert into IO_COMMUNICATION("); strSql.Append(strSql1.ToString().Remove(strSql1.Length - 1)); strSql.Append(")"); strSql.Append(" values ("); strSql.Append(strSql2.ToString().Remove(strSql2.Length - 1)); strSql.Append(")"); sqlArray.Add(strSql); } DbHelperSQLite.ExecuteSqlTran(sqlArray); sqlArray.Clear(); sqlArray = null; }
/// <summary> /// 更新一条数据 /// </summary> public bool Update(Scada.Model.IO_COMMUNICATION model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update IO_COMMUNICATION set "); if (model.IO_COMM_ID != null) { strSql.Append("IO_COMM_ID='" + model.IO_COMM_ID + "',"); } if (model.IO_COMM_NAME != null) { strSql.Append("IO_COMM_NAME='" + model.IO_COMM_NAME + "',"); } if (model.IO_COMM_LABEL != null) { strSql.Append("IO_COMM_LABEL='" + model.IO_COMM_LABEL + "',"); } if (model.IO_COMM_REMARK != null) { strSql.Append("IO_COMM_REMARK='" + model.IO_COMM_REMARK + "',"); } else { strSql.Append("IO_COMM_REMARK= null ,"); } if (model.IO_COMM_PARASTRING != null) { strSql.Append("IO_COMM_PARASTRING='" + model.IO_COMM_PARASTRING + "',"); } else { strSql.Append("IO_COMM_PARASTRING= null ,"); } strSql.Append("IO_COMM_STATUS=" + model.IO_COMM_STATUS + ","); if (model.IO_COMM_DRIVER_ID != null) { strSql.Append("IO_COMM_DRIVER_ID='" + model.IO_COMM_DRIVER_ID + "',"); } if (model.IO_SERVER_ID != null) { strSql.Append("IO_SERVER_ID='" + model.IO_SERVER_ID + "',"); } int n = strSql.ToString().LastIndexOf(","); strSql.Remove(n, 1); strSql.Append(" where IO_COMM_ID='" + model.IO_COMM_ID + "'"); int rowsAffected = DbHelperSQLite.ExecuteSql(strSql.ToString()); if (rowsAffected > 0) { return(true); } else { return(false); } }
public async Task <InfluxDBHistoryData> ReadHistoryAlarmConfigsDevice(Scada.Model.IO_SERVER server, Scada.Model.IO_COMMUNICATION communication, Scada.Model.IO_DEVICE device, DateTime SDate, DateTime EDate, int PageSize, int PageIndex) { if (InfluxDbManager != null) { var result = await InfluxDbManager.DbQuery_AlarmConfigs(server, communication, device, SDate, EDate, PageSize, PageIndex); return(result); } return(null); }
public async Task <InfluxDBHistoryData> ReadHistoryStaticsDevice(Scada.Model.IO_SERVER server, Scada.Model.IO_COMMUNICATION communication, Scada.Model.IO_DEVICE device, DateTime SDate, DateTime EDate, int PageSize, int PageIndex, string selected, string timespan) { if (InfluxDbManager != null) { var result = await InfluxDbManager.DbQuery_HistoryStatics(server, communication, device, SDate, EDate, PageSize, PageIndex, selected, timespan); return(result); } return(null); }
private void IOMonitorManager_OnMonitorReceive(Scada.Model.IO_SERVER server, Scada.Model.IO_COMMUNICATION comm, Scada.Model.IO_DEVICE device, byte[] sourceBytes) { MonitorFormManager.MonitorIODataShowView(server, comm, device); }
public IOCommunicationNode FindCommunicationTreeNode(Scada.Model.IO_SERVER Server, Scada.Model.IO_COMMUNICATION Communication) { for (int i = 0; i < this.IoTree.Nodes.Count; i++) { if (this.IoTree.Nodes[i] is IOServerNode) { IOServerNode sNode = this.IoTree.Nodes[i] as IOServerNode; if (sNode.Server == Server) { for (int j = 0; j < sNode.Nodes.Count; j++) { if (sNode.Nodes[j] is IOCommunicationNode) { IOCommunicationNode commNode = sNode.Nodes[j] as IOCommunicationNode; if (commNode.Communication == Communication) { return(commNode); } } } } } } return(null); }