123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- using System;
- using DevExpress.XtraEditors;
- using UAS_PLCDataReader.DataOperate;
- using UAS_PLCDataReader.Entity;
- using System.Data;
- using System.Text;
- using UAS_PLCDataReader.PublicMethod;
- using System.Windows.Forms;
- using System.Collections.Generic;
- namespace UAS_PLCDataReader.Device.Infomation
- {
- public partial class DeviceStatusInfo : XtraForm
- {
- DataHelper dh = SystemInf.dh;
- StringBuilder sql = new StringBuilder();
- string de_code = "";
- public DeviceStatusInfo()
- {
- InitializeComponent();
- }
- public DeviceStatusInfo(string DevcieCode)
- {
- InitializeComponent();
- de_code = DevcieCode;
- Text = DevcieCode;
- }
- private void DeviceStatusInfo_Load(object sender, EventArgs e)
- {
- //查询设备基础信息
- sql.Clear();
- sql.Append("select de_linecode,de_wccode,de_name,de_address,de_sourcecode,sc_name from device ");
- sql.Append("left join source on sc_code=de_sourcecode where de_code='" + de_code + "'");
- DataTable dt = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
- if (dt.Rows.Count > 0)
- {
- BaseUtil.SetFormValue(Controls, dt);
- }
- //查询设备参数信息
- sql.Clear();
- sql.Append("select dc_name,case when dc_type='INQTY' then dr_qty when dc_type='OUTQTY' then dr_okqty end data ");
- sql.Append("from DEVICEPOLLINGCONFIG left join devicecommand on dpc_dccode = dc_code left join DEVICERUNSTATUS ");
- sql.Append("on dpc_decode = dr_decode where dpc_decode = '" + de_code + "'");
- GridDeivceStatusInfo.DataSource = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
- sql.Clear();
- //查询设备运行日志
- sql.Append("select * from DEVICERUNRECORD");
- GridDeviceRunLog.DataSource = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
- sql.Clear();
- sql.Append("select '接收'||nvl(dpg_senddatasize,0)||'字节' dpg_receivedatasize,'发送'||nvl(dpg_receivedatasize,0)||'字节' dpg_senddatasize");
- sql.Append(",dpg_onlinetime,dpg_offlinetime,'IP:'||dnc_ip dpg_interval,'端口:'|| dnc_port||',间隔'||dpg_interval||'S' dnc_port ");
- sql.Append("from devicepollinglog left join DEVICENETCONFIG on dnc_decode=dpg_decode ");
- sql.Append("where dpg_id=(select max(dpg_id) from devicepollinglog where dpg_decode='"+de_code+"')");
- dt = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
- if (dt.Rows.Count > 0)
- {
- BaseUtil.SetFormValue(this.Controls, dt);
- }
- if (Main.ReturnData.ContainsKey(de_code))
- {
- dpg_interval.Text = Main.ReturnData[de_code].SendCount.ToString();
- dpg_runtime.Text = (DateTime.Now - Main.ReturnData[de_code].StartTime).TotalMinutes.ToString("f1") + "分钟";
- dpg_onlinetime.Text = Main.ReturnData[de_code].StartTime.ToString("yyyy-MM-dd HH:mm:ss");
- dpg_senddatasize.Text = Main.ReturnData[de_code].ReceiveDataSize.ToString();
- Dictionary<string, string> ItemData = Main.ReturnData[de_code].ItemData;
- if (ItemData != null && ItemData.Count > 0)
- {
- foreach (var item in ItemData)
- {
- switch (item.Key)
- {
- case "INQTY":
- INQTY.Text = item.Value;
- break;
- case "OUTQTY":
- OUTQTY.Text = item.Value;
- break;
- case "TEMPERATURE":
- break;
- default:
- break;
- }
- }
- }
- }
- }
- private void DeviceStatusInfo_KeyDown(object sender, KeyEventArgs e)
- {
- if (e.KeyCode == Keys.Escape)
- Close();
- }
- }
- }
|