Forráskód Böngészése

Merge branch 'master' of ssh://10.10.100.21/source/mes-client

Hcsy 6 éve
szülő
commit
5b12e7242a
56 módosított fájl, 1396 hozzáadás és 65 törlés
  1. 1 1
      UAS-出货标签管理/UAS_出货标签管理.cs
  2. 5 4
      UAS-出货标签管理/生成条码.cs
  3. 6 0
      UAS_AutoPass/App.config
  4. 10 2
      UAS_AutoPass/AutoAnalysisXml.Designer.cs
  5. 5 2
      UAS_AutoPass/AutoAnalysisXml.cs
  6. 3 0
      UAS_AutoPass/AutoAnalysisXml.resx
  7. 0 3
      UAS_AutoPass/AutoPassDataCollect.cs
  8. 0 1
      UAS_AutoPass/Login.cs
  9. 2 2
      UAS_AutoPass/Properties/Settings.Designer.cs
  10. 2 2
      UAS_AutoPass/Properties/Settings.settings
  11. 0 3
      UAS_AutoPass/UAS_AutoPass.csproj
  12. 0 2
      UAS_DeviceMonitor/CustomerControl/PictureEditWithText/PictureEditWithText.cs
  13. 36 0
      UAS_DeviceMonitor/CustomerControl/ValueLabel/ValueLabel.Designer.cs
  14. 19 0
      UAS_DeviceMonitor/CustomerControl/ValueLabel/ValueLabel.cs
  15. 286 0
      UAS_DeviceMonitor/Device/Information/DeviceDetailInfo.Designer.cs
  16. 80 0
      UAS_DeviceMonitor/Device/Information/DeviceDetailInfo.cs
  17. 120 0
      UAS_DeviceMonitor/Device/Information/DeviceDetailInfo.resx
  18. 358 0
      UAS_DeviceMonitor/Device/Information/DeviceStatusInfo.Designer.cs
  19. 55 0
      UAS_DeviceMonitor/Device/Information/DeviceStatusInfo.cs
  20. 120 0
      UAS_DeviceMonitor/Device/Information/DeviceStatusInfo.resx
  21. 8 7
      UAS_DeviceMonitor/Main.Designer.cs
  22. 59 16
      UAS_DeviceMonitor/Main.cs
  23. 1 0
      UAS_DeviceMonitor/Program.cs
  24. 104 0
      UAS_DeviceMonitor/PublicMethod/BaseUtil.cs
  25. BIN
      UAS_DeviceMonitor/Tool/DevExpress.Charts.Designer.v15.2.dll
  26. BIN
      UAS_DeviceMonitor/Tool/DevExpress.Data.v15.2.dll
  27. BIN
      UAS_DeviceMonitor/Tool/DevExpress.Printing.v15.2.Core.dll
  28. BIN
      UAS_DeviceMonitor/Tool/DevExpress.SpellChecker.v15.2.Core.dll
  29. BIN
      UAS_DeviceMonitor/Tool/DevExpress.Utils.v15.2.dll
  30. BIN
      UAS_DeviceMonitor/Tool/DevExpress.Xpo.v15.2.dll
  31. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraBars.v15.2.dll
  32. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraCharts.v15.2.UI.dll
  33. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraCharts.v15.2.Wizard.dll
  34. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraCharts.v15.2.dll
  35. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraEditors.v15.2.dll
  36. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraGrid.v15.2.dll
  37. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraPrinting.v15.2.dll
  38. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraReports.v15.2.Extensions.dll
  39. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraReports.v15.2.Service.dll
  40. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraReports.v15.2.dll
  41. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraRichEdit.v15.2.Extensions.dll
  42. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraRichEdit.v15.2.dll
  43. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraScheduler.v15.2.Core.dll
  44. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraScheduler.v15.2.Extensions.dll
  45. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraScheduler.v15.2.Reporting.Extensions.dll
  46. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraScheduler.v15.2.Reporting.dll
  47. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraScheduler.v15.2.dll
  48. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraSpellChecker.v15.2.dll
  49. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraSpreadsheet.v15.2.dll
  50. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraTreeList.v15.2.dll
  51. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraVerticalGrid.v15.2.dll
  52. BIN
      UAS_DeviceMonitor/Tool/DevExpress.XtraWizard.v15.2.dll
  53. BIN
      UAS_DeviceMonitor/Tool/zh-CHS/DevExpress.XtraGrid.v15.2.Design.resources.dll
  54. BIN
      UAS_DeviceMonitor/Tool/zh-CHS/DevExpress.XtraGrid.v15.2.resources.dll
  55. 115 19
      UAS_DeviceMonitor/UAS_DeviceMonitor.csproj
  56. 1 1
      UAS_DeviceMonitor/app.config

+ 1 - 1
UAS-出货标签管理/UAS_出货标签管理.cs

@@ -1988,7 +1988,7 @@ namespace UAS_LabelMachine
             if (DataHelper.DBConnectionString.Contains("richwell") || DataHelper.DBConnectionString.Contains("192.168.0.88"))
             {
                 sql.Clear();
-                sql.Append("select pd_custprodcode,pd_pocode,pd_inoutno,pib_cusbarcode,pib_cusoutboxcode,pib_id,pib_pdid,pib_piid,pib_pdno,pib_prodcode,");
+                sql.Append("select pd_custprodcode,pd_pocode,pd_inoutno,pib_custbarcode,pib_brand,pib_cusbarcode,pib_cusoutboxcode,pib_id,pib_pdid,pib_piid,pib_pdno,pib_prodcode,");
                 sql.Append("pr_brand,pr_vendprodcode,pib_lotno,pib_datecode,pib_qty,pib_barcode,pib_outboxcode1,pib_outboxcode2,pib_ifpick,pib_ifprint,");
                 sql.Append("pr_spec,pd_prodcode,pd_pocode,pr_code from prodiobarcode  left join prodiodetail on pib_piid=pd_piid and pd_pdno=pib_pdno ");
                 sql.Append("and pd_prodcode=pib_prodcode left join product on pr_code=pib_prodcode left join (select pd_prodcode ");

+ 5 - 4
UAS-出货标签管理/生成条码.cs

@@ -148,7 +148,7 @@ namespace UAS_LabelMachine
                     //流水需要通过MaxNumber去取
                     case "流水":
                         NrData[m] = dh.getFieldDataByCondition("RuleMaxNum", "rmn_maxnumber", "rmn_nrcode='" + CustCode + "'").ToString();
-                        Suffix ="";
+                        Suffix = "";
                         PrefixFixed = Prefix;
                         //设置当前流水
                         custserialnum = int.Parse(NrData[m] == "" ? "0" : NrData[m]);
@@ -189,6 +189,7 @@ namespace UAS_LabelMachine
                     string pd_ordercode = ProdIoInfDGV.Rows[i].Cells["pd_ordercode"].FormattedValue.ToString();
                     string pd_pdno = ProdIoInfDGV.Rows[i].Cells["pd_pdno"].FormattedValue.ToString();
                     string pd_orderdetno = ProdIoInfDGV.Rows[i].Cells["pd_orderdetno"].FormattedValue.ToString();
+                    string pr_brand = ProdIoInfDGV.Rows[i].Cells["pr_brand"].FormattedValue.ToString();
                     //总数
                     int pd_totalqty = int.Parse(ProdIoInfDGV.Rows[i].Cells["pd_totalqty"].FormattedValue.ToString());
                     //本次数量
@@ -248,9 +249,9 @@ namespace UAS_LabelMachine
                     {
                         //插入条码
                         sql.Clear();
-                        sql.Append("insert into prodiobarcode (PIB_ID,PIB_PRODCODE,PIB_INDATE,PIB_INOUTNO,PIB_PIID,PIB_BARCODE,PIB_CUSTBARCODE,PIB_PDNO,");
+                        sql.Append("insert into prodiobarcode (PIB_ID,PIB_PRODCODE,PIB_INDATE,PIB_INOUTNO,PIB_PIID,pib_brand,PIB_BARCODE,PIB_CUSTBARCODE,PIB_PDNO,");
                         sql.Append("PIB_PDID,PIB_PICLASS,PIB_QTY,PIB_PRODID,PIB_OUTBOXCODE1,PIB_IFPRINT,PIB_IFPICK,PIB_ORDERCODE,PIB_CUSTPO,pib_orderdetno)");
-                        sql.Append(" values (prodiobarcode_seq.nextval,'" + pd_prodcode + "',sysdate,'" + pi_inoutno.Text + "'," + pi_id + ",:barcode,:custbarcode,'" + pd_pdno + "','" + pd_id + "',");
+                        sql.Append(" values (prodiobarcode_seq.nextval,'" + pd_prodcode + "',sysdate,'" + pi_inoutno.Text + "'," + pi_id + ",'" + pr_brand + "',:barcode,:custbarcode,'" + pd_pdno + "','" + pd_id + "',");
                         sql.Append("'" + pi_class.Text + "',:pib_inqty,'" + pr_id + "',:midcode,0,0,'" + pd_ordercode + "','','" + pd_orderdetno + "')");
                         dh.BatchInsert(sql.ToString(), new string[] { "barcode", "custbarcode", "pib_inqty", "midcode" }, barcode.ToArray(), custbarcode.ToArray(), pib_inqty.ToArray(), midcode.ToArray());
                         //更新最大流水号
@@ -315,7 +316,7 @@ namespace UAS_LabelMachine
         }
 
         //生成客户条码
-        public string BarcodeMethod1(string Prefix,string Suffix,int Index, int Length, int radix)
+        public string BarcodeMethod1(string Prefix, string Suffix, int Index, int Length, int radix)
         {
             string str = Prefix;
             //如果是流水则需要在前面加0

+ 6 - 0
UAS_AutoPass/App.config

@@ -2,6 +2,7 @@
 <configuration>
     <configSections>
         <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+            <section name="UAS_AutoPass.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
             <section name="UAS_AutoPast.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false"/>
         </sectionGroup>
     </configSections>
@@ -9,6 +10,11 @@
         <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
     </startup>
     <userSettings>
+        <UAS_AutoPass.Properties.Settings>
+            <setting name="MES" serializeAs="String">
+                <value>Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=MES;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=yitoadt.wicp.io)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));</value>
+            </setting>
+        </UAS_AutoPass.Properties.Settings>
         <UAS_AutoPast.Properties.Settings>
             <setting name="MES" serializeAs="String">
                 <value>Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=MES;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.230.200)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));</value>

+ 10 - 2
UAS_AutoPass/AutoAnalysisXml.Designer.cs

@@ -28,6 +28,7 @@
         /// </summary>
         private void InitializeComponent()
         {
+            this.components = new System.ComponentModel.Container();
             this.XmlWatcher = new System.IO.FileSystemWatcher();
             this.XmlFolder = new System.Windows.Forms.FolderBrowserDialog();
             this.StartWatch = new System.Windows.Forms.Button();
@@ -46,6 +47,7 @@
             this.AutoStart = new System.Windows.Forms.CheckBox();
             this.ma_code = new System.Windows.Forms.TextBox();
             this.BatchAnalysus = new System.Windows.Forms.Button();
+            this.Timer = new System.Windows.Forms.Timer(this.components);
             ((System.ComponentModel.ISupportInitialize)(this.XmlWatcher)).BeginInit();
             this.SuspendLayout();
             // 
@@ -188,7 +190,7 @@
             this.Master.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
             this.Master.FormattingEnabled = true;
             this.Master.Location = new System.Drawing.Point(149, 29);
-            this.Master.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+            this.Master.Margin = new System.Windows.Forms.Padding(4);
             this.Master.Name = "Master";
             this.Master.Size = new System.Drawing.Size(292, 23);
             this.Master.TabIndex = 15;
@@ -197,7 +199,7 @@
             // 
             this.AutoStart.AutoSize = true;
             this.AutoStart.Location = new System.Drawing.Point(457, 32);
-            this.AutoStart.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+            this.AutoStart.Margin = new System.Windows.Forms.Padding(4);
             this.AutoStart.Name = "AutoStart";
             this.AutoStart.Size = new System.Drawing.Size(119, 19);
             this.AutoStart.TabIndex = 16;
@@ -225,6 +227,11 @@
             this.BatchAnalysus.UseVisualStyleBackColor = true;
             this.BatchAnalysus.Click += new System.EventHandler(this.BatchAnalysus_Click);
             // 
+            // Timer
+            // 
+            this.Timer.Interval = 10000;
+            this.Timer.Tick += new System.EventHandler(this.Timer_Tick);
+            // 
             // AutoAnalysisXml
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 15F);
@@ -278,6 +285,7 @@
         private System.Windows.Forms.CheckBox AutoStart;
         private System.Windows.Forms.TextBox ma_code;
         private System.Windows.Forms.Button BatchAnalysus;
+        private System.Windows.Forms.Timer Timer;
     }
 }
 

+ 5 - 2
UAS_AutoPass/AutoAnalysisXml.cs

@@ -7,7 +7,6 @@ using System.Threading;
 using System.Windows.Forms;
 using System.Xml;
 using UAS_AutoPass.ToolClass;
-using BenQGuru.eMES.DLLService;
 using System.Text;
 
 namespace UAS_AutoPass
@@ -21,7 +20,6 @@ namespace UAS_AutoPass
 
         DataTable DB;
 
-        MESHelper helper = new MESHelper();
         /// <summary>
         /// 用户编号
         /// </summary>
@@ -696,5 +694,10 @@ namespace UAS_AutoPass
                 }
             }
         }
+
+        private void Timer_Tick(object sender, EventArgs e)
+        {
+            dh.ExecuteSql("select sysdate from dual", "select");
+        }
     }
 }

+ 3 - 0
UAS_AutoPass/AutoAnalysisXml.resx

@@ -123,4 +123,7 @@
   <metadata name="XmlFolder.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>164, 17</value>
   </metadata>
+  <metadata name="Timer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>296, 17</value>
+  </metadata>
 </root>

+ 0 - 3
UAS_AutoPass/AutoPassDataCollect.cs

@@ -1,6 +1,5 @@
 using System;
 using System.Windows.Forms;
-using BenQGuru.eMES.DLLService;
 using System.Collections.Generic;
 using UAS_AutoPass.ToolClass;
 
@@ -8,7 +7,6 @@ namespace UAS_AutoPass
 {
     public partial class AutoPassDataCollect : Form
     {
-        MESHelper helper;
 
         List<string> Data = new List<string>();
         //Queue<string> que = new Queue<string>();
@@ -29,7 +27,6 @@ namespace UAS_AutoPass
         private void Form1_Load(object sender, EventArgs e)
         {
             //dh = new DataHelper();
-            helper = new MESHelper();
             AutoPastTimer.Interval = 1000;
             AutoPastTimer.Tick += AutoPastTimer_Tick;
         }

+ 0 - 1
UAS_AutoPass/Login.cs

@@ -1,6 +1,5 @@
 using System;
 using System.Windows.Forms;
-using BenQGuru.eMES.DLLService;
 using UAS_AutoPass.ToolClass;
 
 namespace UAS_AutoPass

+ 2 - 2
UAS_AutoPass/Properties/Settings.Designer.cs

@@ -26,8 +26,8 @@ namespace UAS_AutoPass.Properties {
         [global::System.Configuration.UserScopedSettingAttribute()]
         [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
         [global::System.Configuration.DefaultSettingValueAttribute("Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=MES;Pooling=false" +
-            ";Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.230" +
-            ".200)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));")]
+            ";Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=yitoadt.wic" +
+            "p.io)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));")]
         public string MES {
             get {
                 return ((string)(this["MES"]));

+ 2 - 2
UAS_AutoPass/Properties/Settings.settings

@@ -1,9 +1,9 @@
 <?xml version='1.0' encoding='utf-8'?>
-<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="UAS_AutoPast.Properties" GeneratedClassName="Settings">
+<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="UAS_AutoPass.Properties" GeneratedClassName="Settings">
   <Profiles />
   <Settings>
     <Setting Name="MES" Type="System.String" Scope="User">
-      <Value Profile="(Default)">Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=MES;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.230.200)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));</Value>
+      <Value Profile="(Default)">Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=MES;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=yitoadt.wicp.io)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));</Value>
     </Setting>
   </Settings>
 </SettingsFile>

+ 0 - 3
UAS_AutoPass/UAS_AutoPass.csproj

@@ -70,9 +70,6 @@
     <SignManifests>false</SignManifests>
   </PropertyGroup>
   <ItemGroup>
-    <Reference Include="BenQGuru.eMES.DLLService">
-      <HintPath>..\UAS_DLLTest\tool\BenQGuru.eMES.DLLService.dll</HintPath>
-    </Reference>
     <Reference Include="Oracle.ManagedDataAccess">
       <HintPath>..\UAS_DLLTest\tool\Oracle.ManagedDataAccess.dll</HintPath>
     </Reference>

+ 0 - 2
UAS_DeviceMonitor/CustomerControl/PictureEditWithText/PictureEditWithText.cs

@@ -52,8 +52,6 @@ namespace UAS_DeviceMonitor.CustomerControl.PictureEditWithText
             }
         }
 
-        private string deviceName;
-
         public PictureEditWithText()
         {
             InitializeComponent();

+ 36 - 0
UAS_DeviceMonitor/CustomerControl/ValueLabel/ValueLabel.Designer.cs

@@ -0,0 +1,36 @@
+namespace UAS_DeviceMonitor.CustomerControl.ValueLabel
+{
+    partial class ValueLabel
+    {
+        /// <summary> 
+        /// 必需的设计器变量。
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary> 
+        /// 清理所有正在使用的资源。
+        /// </summary>
+        /// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region 组件设计器生成的代码
+
+        /// <summary> 
+        /// 设计器支持所需的方法 - 不要修改
+        /// 使用代码编辑器修改此方法的内容。
+        /// </summary>
+        private void InitializeComponent()
+        {
+            components = new System.ComponentModel.Container();
+        }
+
+        #endregion
+    }
+}

+ 19 - 0
UAS_DeviceMonitor/CustomerControl/ValueLabel/ValueLabel.cs

@@ -0,0 +1,19 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Data;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+namespace UAS_DeviceMonitor.CustomerControl.ValueLabel
+{
+    public partial class ValueLabel : DevExpress.XtraEditors.LabelControl
+    {
+        public ValueLabel()
+        {
+            InitializeComponent();
+        }
+    }
+}

+ 286 - 0
UAS_DeviceMonitor/Device/Information/DeviceDetailInfo.Designer.cs

@@ -0,0 +1,286 @@
+using UAS_DeviceMonitor.CustomerControl.ValueLabel;
+
+namespace UAS_DeviceMonitor.Device.Infomation
+{
+    partial class DeviceDetailInfo
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.groupControl1 = new DevExpress.XtraEditors.GroupControl();
+            this.dnc_type = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.dnc_upperip = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.dnc_type_label = new DevExpress.XtraEditors.LabelControl();
+            this.dnc_upperip_label = new DevExpress.XtraEditors.LabelControl();
+            this.dnc_mac = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.dnc_gateway = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.dnc_mac_label = new DevExpress.XtraEditors.LabelControl();
+            this.dnc_port = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.dnc_gateway_label = new DevExpress.XtraEditors.LabelControl();
+            this.dnc_ip = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.dnc_port_label = new DevExpress.XtraEditors.LabelControl();
+            this.dnc_ip_label = new DevExpress.XtraEditors.LabelControl();
+            this.GridDeviceDetailInfo = new DevExpress.XtraGrid.GridControl();
+            this.GridViewDeviceDetailInfo = new DevExpress.XtraGrid.Views.Grid.GridView();
+            this.DC_CODE = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.DC_NAME = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.DPC_ENABLE = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.repositoryItemCheckEdit1 = new DevExpress.XtraEditors.Repository.RepositoryItemCheckEdit();
+            ((System.ComponentModel.ISupportInitialize)(this.groupControl1)).BeginInit();
+            this.groupControl1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.GridDeviceDetailInfo)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.GridViewDeviceDetailInfo)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.repositoryItemCheckEdit1)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // groupControl1
+            // 
+            this.groupControl1.Controls.Add(this.dnc_type);
+            this.groupControl1.Controls.Add(this.dnc_upperip);
+            this.groupControl1.Controls.Add(this.dnc_type_label);
+            this.groupControl1.Controls.Add(this.dnc_upperip_label);
+            this.groupControl1.Controls.Add(this.dnc_mac);
+            this.groupControl1.Controls.Add(this.dnc_gateway);
+            this.groupControl1.Controls.Add(this.dnc_mac_label);
+            this.groupControl1.Controls.Add(this.dnc_port);
+            this.groupControl1.Controls.Add(this.dnc_gateway_label);
+            this.groupControl1.Controls.Add(this.dnc_ip);
+            this.groupControl1.Controls.Add(this.dnc_port_label);
+            this.groupControl1.Controls.Add(this.dnc_ip_label);
+            this.groupControl1.Location = new System.Drawing.Point(12, 12);
+            this.groupControl1.Name = "groupControl1";
+            this.groupControl1.Size = new System.Drawing.Size(286, 349);
+            this.groupControl1.TabIndex = 0;
+            this.groupControl1.Text = "设备联网信息";
+            // 
+            // dnc_type
+            // 
+            this.dnc_type.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dnc_type.Location = new System.Drawing.Point(79, 164);
+            this.dnc_type.Name = "dnc_type";
+            this.dnc_type.Size = new System.Drawing.Size(0, 16);
+            this.dnc_type.TabIndex = 23;
+            // 
+            // dnc_upperip
+            // 
+            this.dnc_upperip.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dnc_upperip.Location = new System.Drawing.Point(79, 194);
+            this.dnc_upperip.Name = "dnc_upperip";
+            this.dnc_upperip.Size = new System.Drawing.Size(0, 16);
+            this.dnc_upperip.TabIndex = 22;
+            // 
+            // dnc_type_label
+            // 
+            this.dnc_type_label.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dnc_type_label.Location = new System.Drawing.Point(13, 164);
+            this.dnc_type_label.Name = "dnc_type_label";
+            this.dnc_type_label.Size = new System.Drawing.Size(32, 16);
+            this.dnc_type_label.TabIndex = 21;
+            this.dnc_type_label.Text = "类型";
+            // 
+            // dnc_upperip_label
+            // 
+            this.dnc_upperip_label.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dnc_upperip_label.Location = new System.Drawing.Point(13, 194);
+            this.dnc_upperip_label.Name = "dnc_upperip_label";
+            this.dnc_upperip_label.Size = new System.Drawing.Size(48, 16);
+            this.dnc_upperip_label.TabIndex = 20;
+            this.dnc_upperip_label.Text = "上级IP";
+            // 
+            // dnc_mac
+            // 
+            this.dnc_mac.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dnc_mac.Location = new System.Drawing.Point(79, 71);
+            this.dnc_mac.Name = "dnc_mac";
+            this.dnc_mac.Size = new System.Drawing.Size(0, 16);
+            this.dnc_mac.TabIndex = 19;
+            // 
+            // dnc_gateway
+            // 
+            this.dnc_gateway.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dnc_gateway.Location = new System.Drawing.Point(79, 132);
+            this.dnc_gateway.Name = "dnc_gateway";
+            this.dnc_gateway.Size = new System.Drawing.Size(0, 16);
+            this.dnc_gateway.TabIndex = 18;
+            // 
+            // dnc_mac_label
+            // 
+            this.dnc_mac_label.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dnc_mac_label.Location = new System.Drawing.Point(13, 71);
+            this.dnc_mac_label.Name = "dnc_mac_label";
+            this.dnc_mac_label.Size = new System.Drawing.Size(24, 16);
+            this.dnc_mac_label.TabIndex = 6;
+            this.dnc_mac_label.Text = "MAC";
+            // 
+            // dnc_port
+            // 
+            this.dnc_port.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dnc_port.Location = new System.Drawing.Point(79, 100);
+            this.dnc_port.Name = "dnc_port";
+            this.dnc_port.Size = new System.Drawing.Size(0, 16);
+            this.dnc_port.TabIndex = 17;
+            // 
+            // dnc_gateway_label
+            // 
+            this.dnc_gateway_label.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dnc_gateway_label.Location = new System.Drawing.Point(13, 132);
+            this.dnc_gateway_label.Name = "dnc_gateway_label";
+            this.dnc_gateway_label.Size = new System.Drawing.Size(32, 16);
+            this.dnc_gateway_label.TabIndex = 5;
+            this.dnc_gateway_label.Text = "网关";
+            // 
+            // dnc_ip
+            // 
+            this.dnc_ip.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dnc_ip.Location = new System.Drawing.Point(79, 41);
+            this.dnc_ip.Name = "dnc_ip";
+            this.dnc_ip.Size = new System.Drawing.Size(0, 16);
+            this.dnc_ip.TabIndex = 16;
+            // 
+            // dnc_port_label
+            // 
+            this.dnc_port_label.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dnc_port_label.Location = new System.Drawing.Point(13, 100);
+            this.dnc_port_label.Name = "dnc_port_label";
+            this.dnc_port_label.Size = new System.Drawing.Size(32, 16);
+            this.dnc_port_label.TabIndex = 4;
+            this.dnc_port_label.Text = "端口";
+            // 
+            // dnc_ip_label
+            // 
+            this.dnc_ip_label.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dnc_ip_label.Location = new System.Drawing.Point(13, 41);
+            this.dnc_ip_label.Name = "dnc_ip_label";
+            this.dnc_ip_label.Size = new System.Drawing.Size(16, 16);
+            this.dnc_ip_label.TabIndex = 0;
+            this.dnc_ip_label.Text = "IP";
+            // 
+            // GridDeviceDetailInfo
+            // 
+            this.GridDeviceDetailInfo.Location = new System.Drawing.Point(310, 12);
+            this.GridDeviceDetailInfo.MainView = this.GridViewDeviceDetailInfo;
+            this.GridDeviceDetailInfo.Name = "GridDeviceDetailInfo";
+            this.GridDeviceDetailInfo.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
+            this.repositoryItemCheckEdit1});
+            this.GridDeviceDetailInfo.Size = new System.Drawing.Size(431, 349);
+            this.GridDeviceDetailInfo.TabIndex = 2;
+            this.GridDeviceDetailInfo.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
+            this.GridViewDeviceDetailInfo});
+            // 
+            // GridViewDeviceDetailInfo
+            // 
+            this.GridViewDeviceDetailInfo.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
+            this.DC_CODE,
+            this.DC_NAME,
+            this.DPC_ENABLE});
+            this.GridViewDeviceDetailInfo.GridControl = this.GridDeviceDetailInfo;
+            this.GridViewDeviceDetailInfo.Name = "GridViewDeviceDetailInfo";
+            // 
+            // DC_CODE
+            // 
+            this.DC_CODE.Caption = "指令编号";
+            this.DC_CODE.FieldName = "DC_CODE";
+            this.DC_CODE.Name = "DC_CODE";
+            this.DC_CODE.OptionsColumn.AllowEdit = false;
+            this.DC_CODE.Visible = true;
+            this.DC_CODE.VisibleIndex = 0;
+            // 
+            // DC_NAME
+            // 
+            this.DC_NAME.Caption = "指令名称";
+            this.DC_NAME.FieldName = "DC_NAME";
+            this.DC_NAME.Name = "DC_NAME";
+            this.DC_NAME.OptionsColumn.AllowEdit = false;
+            this.DC_NAME.Visible = true;
+            this.DC_NAME.VisibleIndex = 1;
+            // 
+            // DPC_ENABLE
+            // 
+            this.DPC_ENABLE.Caption = "是否启用";
+            this.DPC_ENABLE.ColumnEdit = this.repositoryItemCheckEdit1;
+            this.DPC_ENABLE.FieldName = "DPC_ENABLE";
+            this.DPC_ENABLE.Name = "DPC_ENABLE";
+            this.DPC_ENABLE.OptionsColumn.AllowEdit = false;
+            this.DPC_ENABLE.Visible = true;
+            this.DPC_ENABLE.VisibleIndex = 2;
+            // 
+            // repositoryItemCheckEdit1
+            // 
+            this.repositoryItemCheckEdit1.AutoHeight = false;
+            this.repositoryItemCheckEdit1.Name = "repositoryItemCheckEdit1";
+            this.repositoryItemCheckEdit1.NullStyle = DevExpress.XtraEditors.Controls.StyleIndeterminate.Unchecked;
+            this.repositoryItemCheckEdit1.NullText = "0";
+            this.repositoryItemCheckEdit1.ValueChecked = "-1";
+            this.repositoryItemCheckEdit1.ValueUnchecked = "0";
+            // 
+            // DeviceDetailInfo
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(747, 373);
+            this.Controls.Add(this.GridDeviceDetailInfo);
+            this.Controls.Add(this.groupControl1);
+            this.FormBorderEffect = DevExpress.XtraEditors.FormBorderEffect.None;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.Name = "DeviceDetailInfo";
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+            this.Text = " ";
+            this.Load += new System.EventHandler(this.DeviceDetailInfo_Load);
+            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.DeviceDetailInfo_KeyDown);
+            ((System.ComponentModel.ISupportInitialize)(this.groupControl1)).EndInit();
+            this.groupControl1.ResumeLayout(false);
+            this.groupControl1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.GridDeviceDetailInfo)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.GridViewDeviceDetailInfo)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.repositoryItemCheckEdit1)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private DevExpress.XtraEditors.GroupControl groupControl1;
+        private DevExpress.XtraEditors.LabelControl dnc_mac_label;
+        private DevExpress.XtraEditors.LabelControl dnc_gateway_label;
+        private DevExpress.XtraEditors.LabelControl dnc_port_label;
+        private DevExpress.XtraEditors.LabelControl dnc_ip_label;
+        private ValueLabel dnc_mac;
+        private ValueLabel dnc_gateway;
+        private ValueLabel dnc_port;
+        private ValueLabel dnc_ip;
+        private DevExpress.XtraGrid.GridControl GridDeviceDetailInfo;
+        private DevExpress.XtraGrid.Views.Grid.GridView GridViewDeviceDetailInfo;
+        private DevExpress.XtraEditors.LabelControl dnc_upperip_label;
+        private DevExpress.XtraEditors.LabelControl dnc_type_label;
+        private ValueLabel dnc_type;
+        private ValueLabel dnc_upperip;
+        private DevExpress.XtraGrid.Columns.GridColumn DC_CODE;
+        private DevExpress.XtraGrid.Columns.GridColumn DC_NAME;
+        private DevExpress.XtraGrid.Columns.GridColumn DPC_ENABLE;
+        private DevExpress.XtraEditors.Repository.RepositoryItemCheckEdit repositoryItemCheckEdit1;
+    }
+}

+ 80 - 0
UAS_DeviceMonitor/Device/Information/DeviceDetailInfo.cs

@@ -0,0 +1,80 @@
+using System;
+using DevExpress.XtraEditors;
+using UAS_DeviceMonitor.DataOperate;
+using UAS_DeviceMonitor.Entity;
+using System.Data;
+using System.Text;
+using UAS_DeviceMonitor.PublicMethod;
+using System.Windows.Forms;
+
+namespace UAS_DeviceMonitor.Device.Infomation
+{
+    public partial class DeviceDetailInfo : XtraForm
+    {
+        DataHelper dh = SystemInf.dh;
+
+        StringBuilder sql = new StringBuilder();
+
+        string de_code = "";
+
+        public DeviceDetailInfo()
+        {
+            InitializeComponent();
+            repositoryItemCheckEdit1.QueryCheckStateByValue += RepositoryItemCheckEdit1_QueryCheckStateByValue;
+        }
+
+        private void RepositoryItemCheckEdit1_QueryCheckStateByValue(object sender, DevExpress.XtraEditors.Controls.QueryCheckStateByValueEventArgs e)
+        {
+            string val = "";
+            if (e.Value != null)
+            {
+                val = e.Value.ToString();
+            }
+            else
+            {
+                val = "FALSE";//默认为不选   
+            }
+            switch (val.ToUpper())
+            {
+                case "TRUE":
+                case "YES":
+                case "1":
+                    e.CheckState = CheckState.Checked;
+                    break;
+                case "FALSE":
+                case "NO":
+                case "0":
+                    e.CheckState = CheckState.Unchecked;
+                    break;
+                default:
+                    e.CheckState = CheckState.Checked;
+                    break;
+            }
+            e.Handled = true;
+        }
+
+        public DeviceDetailInfo(string DevcieCode)
+        {
+            InitializeComponent();
+            de_code = DevcieCode;
+            Text = DevcieCode;
+        }
+
+        private void DeviceDetailInfo_Load(object sender, EventArgs e)
+        {
+            DataTable dt = (DataTable)dh.ExecuteSql("select * from devicenetconfig where dnc_decode='" + de_code + "'", "select");
+            if (dt.Rows.Count > 0)
+            {
+                BaseUtil.SetFormValue(Controls, dt);
+            }
+            dt = (DataTable)dh.ExecuteSql("SELECT DC_CODE,DC_NAME,to_char(DPC_ENABLE)DPC_ENABLE FROM DEVICEPOLLINGCONFIG LEFT JOIN DEVICECOMMAND ON DPC_DCCODE=DC_CODE WHERE DPC_DECODE='" + de_code + "'", "select");
+            GridDeviceDetailInfo.DataSource = dt;
+        }
+
+        private void DeviceDetailInfo_KeyDown(object sender, KeyEventArgs e)
+        {
+            if (e.KeyCode == Keys.Escape)
+                Close();
+        }
+    }
+}

+ 120 - 0
UAS_DeviceMonitor/Device/Information/DeviceDetailInfo.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 358 - 0
UAS_DeviceMonitor/Device/Information/DeviceStatusInfo.Designer.cs

@@ -0,0 +1,358 @@
+using UAS_DeviceMonitor.CustomerControl.ValueLabel;
+
+namespace UAS_DeviceMonitor.Device.Infomation
+{
+    partial class DeviceStatusInfo
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.groupControl1 = new DevExpress.XtraEditors.GroupControl();
+            this.labelControl4 = new DevExpress.XtraEditors.LabelControl();
+            this.labelControl3 = new DevExpress.XtraEditors.LabelControl();
+            this.labelControl2 = new DevExpress.XtraEditors.LabelControl();
+            this.labelControl1 = new DevExpress.XtraEditors.LabelControl();
+            this.groupControl2 = new DevExpress.XtraEditors.GroupControl();
+            this.labelControl5 = new DevExpress.XtraEditors.LabelControl();
+            this.labelControl6 = new DevExpress.XtraEditors.LabelControl();
+            this.labelControl8 = new DevExpress.XtraEditors.LabelControl();
+            this.labelControl7 = new DevExpress.XtraEditors.LabelControl();
+            this.labelControl11 = new DevExpress.XtraEditors.LabelControl();
+            this.labelControl12 = new DevExpress.XtraEditors.LabelControl();
+            this.labelControl10 = new DevExpress.XtraEditors.LabelControl();
+            this.labelControl9 = new DevExpress.XtraEditors.LabelControl();
+            this.labelControl14 = new DevExpress.XtraEditors.LabelControl();
+            this.groupControl3 = new DevExpress.XtraEditors.GroupControl();
+            this.dpg_count = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.dpg_receivedatasize = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.dpg_senddatasize = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.dpg_starttime = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.de_linecode = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.de_address = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.de_wccode = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.de_name = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            this.dpg_runtime = new UAS_DeviceMonitor.CustomerControl.ValueLabel.ValueLabel();
+            ((System.ComponentModel.ISupportInitialize)(this.groupControl1)).BeginInit();
+            this.groupControl1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.groupControl2)).BeginInit();
+            this.groupControl2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.groupControl3)).BeginInit();
+            this.groupControl3.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // groupControl1
+            // 
+            this.groupControl1.Controls.Add(this.de_linecode);
+            this.groupControl1.Controls.Add(this.de_address);
+            this.groupControl1.Controls.Add(this.labelControl4);
+            this.groupControl1.Controls.Add(this.de_wccode);
+            this.groupControl1.Controls.Add(this.labelControl3);
+            this.groupControl1.Controls.Add(this.de_name);
+            this.groupControl1.Controls.Add(this.labelControl2);
+            this.groupControl1.Controls.Add(this.labelControl1);
+            this.groupControl1.Location = new System.Drawing.Point(12, 12);
+            this.groupControl1.Name = "groupControl1";
+            this.groupControl1.Size = new System.Drawing.Size(187, 175);
+            this.groupControl1.TabIndex = 0;
+            this.groupControl1.Text = "设备信息";
+            // 
+            // labelControl4
+            // 
+            this.labelControl4.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.labelControl4.Location = new System.Drawing.Point(13, 137);
+            this.labelControl4.Name = "labelControl4";
+            this.labelControl4.Size = new System.Drawing.Size(32, 16);
+            this.labelControl4.TabIndex = 6;
+            this.labelControl4.Text = "线体";
+            // 
+            // labelControl3
+            // 
+            this.labelControl3.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.labelControl3.Location = new System.Drawing.Point(13, 106);
+            this.labelControl3.Name = "labelControl3";
+            this.labelControl3.Size = new System.Drawing.Size(32, 16);
+            this.labelControl3.TabIndex = 5;
+            this.labelControl3.Text = "区域";
+            // 
+            // labelControl2
+            // 
+            this.labelControl2.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.labelControl2.Location = new System.Drawing.Point(13, 74);
+            this.labelControl2.Name = "labelControl2";
+            this.labelControl2.Size = new System.Drawing.Size(32, 16);
+            this.labelControl2.TabIndex = 4;
+            this.labelControl2.Text = "车间";
+            // 
+            // labelControl1
+            // 
+            this.labelControl1.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.labelControl1.Location = new System.Drawing.Point(13, 41);
+            this.labelControl1.Name = "labelControl1";
+            this.labelControl1.Size = new System.Drawing.Size(32, 16);
+            this.labelControl1.TabIndex = 0;
+            this.labelControl1.Text = "设备";
+            // 
+            // groupControl2
+            // 
+            this.groupControl2.Controls.Add(this.labelControl5);
+            this.groupControl2.Controls.Add(this.labelControl6);
+            this.groupControl2.Controls.Add(this.labelControl8);
+            this.groupControl2.Controls.Add(this.labelControl7);
+            this.groupControl2.Location = new System.Drawing.Point(12, 202);
+            this.groupControl2.Name = "groupControl2";
+            this.groupControl2.Size = new System.Drawing.Size(187, 159);
+            this.groupControl2.TabIndex = 1;
+            this.groupControl2.Text = "生产信息";
+            // 
+            // labelControl5
+            // 
+            this.labelControl5.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.labelControl5.Location = new System.Drawing.Point(13, 128);
+            this.labelControl5.Name = "labelControl5";
+            this.labelControl5.Size = new System.Drawing.Size(32, 16);
+            this.labelControl5.TabIndex = 10;
+            this.labelControl5.Text = "数量";
+            // 
+            // labelControl6
+            // 
+            this.labelControl6.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.labelControl6.Location = new System.Drawing.Point(13, 97);
+            this.labelControl6.Name = "labelControl6";
+            this.labelControl6.Size = new System.Drawing.Size(32, 16);
+            this.labelControl6.TabIndex = 9;
+            this.labelControl6.Text = "批次";
+            // 
+            // labelControl8
+            // 
+            this.labelControl8.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.labelControl8.Location = new System.Drawing.Point(13, 32);
+            this.labelControl8.Name = "labelControl8";
+            this.labelControl8.Size = new System.Drawing.Size(32, 16);
+            this.labelControl8.TabIndex = 7;
+            this.labelControl8.Text = "工单";
+            // 
+            // labelControl7
+            // 
+            this.labelControl7.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.labelControl7.Location = new System.Drawing.Point(13, 65);
+            this.labelControl7.Name = "labelControl7";
+            this.labelControl7.Size = new System.Drawing.Size(32, 16);
+            this.labelControl7.TabIndex = 8;
+            this.labelControl7.Text = "产品";
+            // 
+            // labelControl11
+            // 
+            this.labelControl11.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.labelControl11.Location = new System.Drawing.Point(21, 41);
+            this.labelControl11.Name = "labelControl11";
+            this.labelControl11.Size = new System.Drawing.Size(64, 16);
+            this.labelControl11.TabIndex = 11;
+            this.labelControl11.Text = "开始时间";
+            // 
+            // labelControl12
+            // 
+            this.labelControl12.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.labelControl12.Location = new System.Drawing.Point(21, 74);
+            this.labelControl12.Name = "labelControl12";
+            this.labelControl12.Size = new System.Drawing.Size(64, 16);
+            this.labelControl12.TabIndex = 12;
+            this.labelControl12.Text = "持续时长";
+            // 
+            // labelControl10
+            // 
+            this.labelControl10.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.labelControl10.Location = new System.Drawing.Point(21, 106);
+            this.labelControl10.Name = "labelControl10";
+            this.labelControl10.Size = new System.Drawing.Size(64, 16);
+            this.labelControl10.TabIndex = 13;
+            this.labelControl10.Text = "发送字节";
+            // 
+            // labelControl9
+            // 
+            this.labelControl9.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.labelControl9.Location = new System.Drawing.Point(21, 139);
+            this.labelControl9.Name = "labelControl9";
+            this.labelControl9.Size = new System.Drawing.Size(64, 16);
+            this.labelControl9.TabIndex = 14;
+            this.labelControl9.Text = "接收字节";
+            // 
+            // labelControl14
+            // 
+            this.labelControl14.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.labelControl14.Location = new System.Drawing.Point(21, 172);
+            this.labelControl14.Name = "labelControl14";
+            this.labelControl14.Size = new System.Drawing.Size(64, 16);
+            this.labelControl14.TabIndex = 15;
+            this.labelControl14.Text = "轮询次数";
+            // 
+            // groupControl3
+            // 
+            this.groupControl3.Controls.Add(this.dpg_runtime);
+            this.groupControl3.Controls.Add(this.dpg_count);
+            this.groupControl3.Controls.Add(this.dpg_receivedatasize);
+            this.groupControl3.Controls.Add(this.dpg_senddatasize);
+            this.groupControl3.Controls.Add(this.labelControl14);
+            this.groupControl3.Controls.Add(this.dpg_starttime);
+            this.groupControl3.Controls.Add(this.labelControl9);
+            this.groupControl3.Controls.Add(this.labelControl10);
+            this.groupControl3.Controls.Add(this.labelControl12);
+            this.groupControl3.Controls.Add(this.labelControl11);
+            this.groupControl3.Location = new System.Drawing.Point(216, 12);
+            this.groupControl3.Name = "groupControl3";
+            this.groupControl3.Size = new System.Drawing.Size(250, 349);
+            this.groupControl3.TabIndex = 2;
+            this.groupControl3.Text = "运行信息";
+            // 
+            // dpg_count
+            // 
+            this.dpg_count.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dpg_count.Location = new System.Drawing.Point(101, 172);
+            this.dpg_count.Name = "dpg_count";
+            this.dpg_count.Size = new System.Drawing.Size(0, 16);
+            this.dpg_count.TabIndex = 3;
+            // 
+            // dpg_receivedatasize
+            // 
+            this.dpg_receivedatasize.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dpg_receivedatasize.Location = new System.Drawing.Point(101, 139);
+            this.dpg_receivedatasize.Name = "dpg_receivedatasize";
+            this.dpg_receivedatasize.Size = new System.Drawing.Size(0, 16);
+            this.dpg_receivedatasize.TabIndex = 2;
+            // 
+            // dpg_senddatasize
+            // 
+            this.dpg_senddatasize.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dpg_senddatasize.Location = new System.Drawing.Point(101, 106);
+            this.dpg_senddatasize.Name = "dpg_senddatasize";
+            this.dpg_senddatasize.Size = new System.Drawing.Size(0, 16);
+            this.dpg_senddatasize.TabIndex = 1;
+            // 
+            // dpg_starttime
+            // 
+            this.dpg_starttime.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dpg_starttime.Location = new System.Drawing.Point(101, 41);
+            this.dpg_starttime.Name = "dpg_starttime";
+            this.dpg_starttime.Size = new System.Drawing.Size(0, 16);
+            this.dpg_starttime.TabIndex = 0;
+            // 
+            // de_linecode
+            // 
+            this.de_linecode.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.de_linecode.Location = new System.Drawing.Point(70, 137);
+            this.de_linecode.Name = "de_linecode";
+            this.de_linecode.Size = new System.Drawing.Size(0, 16);
+            this.de_linecode.TabIndex = 19;
+            // 
+            // de_address
+            // 
+            this.de_address.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.de_address.Location = new System.Drawing.Point(70, 106);
+            this.de_address.Name = "de_address";
+            this.de_address.Size = new System.Drawing.Size(0, 16);
+            this.de_address.TabIndex = 18;
+            // 
+            // de_wccode
+            // 
+            this.de_wccode.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.de_wccode.Location = new System.Drawing.Point(70, 74);
+            this.de_wccode.Name = "de_wccode";
+            this.de_wccode.Size = new System.Drawing.Size(0, 16);
+            this.de_wccode.TabIndex = 17;
+            // 
+            // de_name
+            // 
+            this.de_name.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.de_name.Location = new System.Drawing.Point(70, 41);
+            this.de_name.Name = "de_name";
+            this.de_name.Size = new System.Drawing.Size(0, 16);
+            this.de_name.TabIndex = 16;
+            // 
+            // dpg_runtime
+            // 
+            this.dpg_runtime.Appearance.Font = new System.Drawing.Font("黑体", 12F);
+            this.dpg_runtime.Location = new System.Drawing.Point(101, 74);
+            this.dpg_runtime.Name = "dpg_runtime";
+            this.dpg_runtime.Size = new System.Drawing.Size(0, 16);
+            this.dpg_runtime.TabIndex = 16;
+            // 
+            // DeviceStatusInfo
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(478, 373);
+            this.Controls.Add(this.groupControl3);
+            this.Controls.Add(this.groupControl2);
+            this.Controls.Add(this.groupControl1);
+            this.FormBorderEffect = DevExpress.XtraEditors.FormBorderEffect.None;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.Name = "DeviceStatusInfo";
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+            this.Text = " ";
+            this.Load += new System.EventHandler(this.DeviceStatusInfo_Load);
+            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.DeviceStatusInfo_KeyDown);
+            ((System.ComponentModel.ISupportInitialize)(this.groupControl1)).EndInit();
+            this.groupControl1.ResumeLayout(false);
+            this.groupControl1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.groupControl2)).EndInit();
+            this.groupControl2.ResumeLayout(false);
+            this.groupControl2.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.groupControl3)).EndInit();
+            this.groupControl3.ResumeLayout(false);
+            this.groupControl3.PerformLayout();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private DevExpress.XtraEditors.GroupControl groupControl1;
+        private DevExpress.XtraEditors.GroupControl groupControl2;
+        private DevExpress.XtraEditors.LabelControl labelControl4;
+        private DevExpress.XtraEditors.LabelControl labelControl3;
+        private DevExpress.XtraEditors.LabelControl labelControl2;
+        private DevExpress.XtraEditors.LabelControl labelControl1;
+        private DevExpress.XtraEditors.LabelControl labelControl5;
+        private DevExpress.XtraEditors.LabelControl labelControl6;
+        private DevExpress.XtraEditors.LabelControl labelControl8;
+        private DevExpress.XtraEditors.LabelControl labelControl7;
+        private DevExpress.XtraEditors.LabelControl labelControl11;
+        private DevExpress.XtraEditors.LabelControl labelControl12;
+        private DevExpress.XtraEditors.LabelControl labelControl10;
+        private DevExpress.XtraEditors.LabelControl labelControl9;
+        private ValueLabel dpg_starttime;
+        private DevExpress.XtraEditors.LabelControl labelControl14;
+        private ValueLabel dpg_senddatasize;
+        private ValueLabel dpg_receivedatasize;
+        private ValueLabel dpg_count;
+        private DevExpress.XtraEditors.GroupControl groupControl3;
+        private ValueLabel de_linecode;
+        private ValueLabel de_address;
+        private ValueLabel de_wccode;
+        private ValueLabel de_name;
+        private ValueLabel dpg_runtime;
+    }
+}

+ 55 - 0
UAS_DeviceMonitor/Device/Information/DeviceStatusInfo.cs

@@ -0,0 +1,55 @@
+using System;
+using DevExpress.XtraEditors;
+using UAS_DeviceMonitor.DataOperate;
+using UAS_DeviceMonitor.Entity;
+using System.Data;
+using System.Text;
+using UAS_DeviceMonitor.PublicMethod;
+using System.Windows.Forms;
+
+namespace UAS_DeviceMonitor.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 from device ");
+            sql.Append("where de_code='" + de_code + "'");
+            DataTable dt = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
+            if (dt.Rows.Count > 0)
+            {
+                BaseUtil.SetFormValue(Controls, dt);
+            }
+            dt = (DataTable)dh.ExecuteSql("select dpg_count,round((sysdate-dpg_starttime)*1440)||'分钟' dpg_runtime,dpg_starttime,dpg_senddatasize,dpg_receivedatasize from DEVICEPOLLINGLOG where dpg_id=(select max(dpg_id) from DEVICEPOLLINGLOG where dpg_decode='" + de_code + "') and dpg_status='Running'", "select");
+            if (dt.Rows.Count > 0)
+            {
+                BaseUtil.SetFormValue(Controls, dt);
+            }
+        }
+
+        private void DeviceStatusInfo_KeyDown(object sender, KeyEventArgs e)
+        {
+            if (e.KeyCode == Keys.Escape)
+                Close();
+        }
+    }
+}

+ 120 - 0
UAS_DeviceMonitor/Device/Information/DeviceStatusInfo.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 8 - 7
UAS_DeviceMonitor/Main.Designer.cs

@@ -296,7 +296,6 @@ namespace UAS_DeviceMonitor
             // RibDeviceCommand
             // 
             this.RibDeviceCommand.ItemLinks.Add(this.ButtonDeviceStatus);
-            this.RibDeviceCommand.ItemLinks.Add(this.ButtonWorkCenterStatus);
             this.RibDeviceCommand.Name = "RibDeviceCommand";
             this.RibDeviceCommand.Text = "ribbonPageGroup3";
             // 
@@ -373,6 +372,7 @@ namespace UAS_DeviceMonitor
             this.GridViewDeviceList.IndicatorWidth = 30;
             this.GridViewDeviceList.Name = "GridViewDeviceList";
             this.GridViewDeviceList.OptionsView.ShowGroupPanel = false;
+            this.GridViewDeviceList.RowCellClick += new DevExpress.XtraGrid.Views.Grid.RowCellClickEventHandler(this.GridViewDeviceList_RowCellClick);
             // 
             // de_id
             // 
@@ -940,7 +940,7 @@ namespace UAS_DeviceMonitor
             // 
             // dpc_interval
             // 
-            this.dpc_interval.Caption = "轮询间隔";
+            this.dpc_interval.Caption = "轮询间隔(秒)";
             this.dpc_interval.FieldName = "DPC_INTERVAL";
             this.dpc_interval.Name = "dpc_interval";
             this.dpc_interval.Visible = true;
@@ -1212,7 +1212,7 @@ namespace UAS_DeviceMonitor
             // 
             // ComboxDeviceStatusWC
             // 
-            this.ComboxDeviceStatusWC.Location = new System.Drawing.Point(50, 7);
+            this.ComboxDeviceStatusWC.Location = new System.Drawing.Point(61, 10);
             this.ComboxDeviceStatusWC.MenuManager = this.RibbonNav;
             this.ComboxDeviceStatusWC.Name = "ComboxDeviceStatusWC";
             this.ComboxDeviceStatusWC.Properties.Appearance.Font = new System.Drawing.Font("黑体", 11F);
@@ -1226,7 +1226,7 @@ namespace UAS_DeviceMonitor
             // 
             // ComboxDeviceStatusLC
             // 
-            this.ComboxDeviceStatusLC.Location = new System.Drawing.Point(202, 7);
+            this.ComboxDeviceStatusLC.Location = new System.Drawing.Point(213, 10);
             this.ComboxDeviceStatusLC.MenuManager = this.RibbonNav;
             this.ComboxDeviceStatusLC.Name = "ComboxDeviceStatusLC";
             this.ComboxDeviceStatusLC.Properties.Appearance.Font = new System.Drawing.Font("黑体", 11F);
@@ -1240,7 +1240,7 @@ namespace UAS_DeviceMonitor
             // 
             // CheckEditDeviceStatusEnable
             // 
-            this.CheckEditDeviceStatusEnable.Location = new System.Drawing.Point(321, 9);
+            this.CheckEditDeviceStatusEnable.Location = new System.Drawing.Point(332, 12);
             this.CheckEditDeviceStatusEnable.MenuManager = this.RibbonNav;
             this.CheckEditDeviceStatusEnable.Name = "CheckEditDeviceStatusEnable";
             this.CheckEditDeviceStatusEnable.Properties.Appearance.Font = new System.Drawing.Font("黑体", 10F);
@@ -1253,7 +1253,7 @@ namespace UAS_DeviceMonitor
             // ComboxDeviceStatusLC_label
             // 
             this.ComboxDeviceStatusLC_label.Appearance.Font = new System.Drawing.Font("黑体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.ComboxDeviceStatusLC_label.Location = new System.Drawing.Point(162, 10);
+            this.ComboxDeviceStatusLC_label.Location = new System.Drawing.Point(173, 13);
             this.ComboxDeviceStatusLC_label.Name = "ComboxDeviceStatusLC_label";
             this.ComboxDeviceStatusLC_label.Size = new System.Drawing.Size(32, 16);
             this.ComboxDeviceStatusLC_label.TabIndex = 4;
@@ -1262,7 +1262,7 @@ namespace UAS_DeviceMonitor
             // ComboxDeviceStatusWC_label
             // 
             this.ComboxDeviceStatusWC_label.Appearance.Font = new System.Drawing.Font("黑体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.ComboxDeviceStatusWC_label.Location = new System.Drawing.Point(11, 10);
+            this.ComboxDeviceStatusWC_label.Location = new System.Drawing.Point(22, 13);
             this.ComboxDeviceStatusWC_label.Name = "ComboxDeviceStatusWC_label";
             this.ComboxDeviceStatusWC_label.Size = new System.Drawing.Size(32, 16);
             this.ComboxDeviceStatusWC_label.TabIndex = 2;
@@ -1337,6 +1337,7 @@ namespace UAS_DeviceMonitor
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
             this.Text = "设备监控管理平台";
             this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Main_FormClosing);
             this.Load += new System.EventHandler(this.Main_Load);
             ((System.ComponentModel.ISupportInitialize)(this.RibbonNav)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.MainTabControl)).EndInit();

+ 59 - 16
UAS_DeviceMonitor/Main.cs

@@ -14,6 +14,7 @@ using UAS_DeviceMonitor.CustomerControl.PictureEditWithText;
 using System.Windows.Forms;
 using DevExpress.XtraEditors.Controls;
 using DevExpress.XtraEditors;
+using UAS_DeviceMonitor.Device.Infomation;
 
 namespace UAS_DeviceMonitor
 {
@@ -21,7 +22,7 @@ namespace UAS_DeviceMonitor
     {
 
         StringBuilder sql = new StringBuilder();
-
+        //用于设备状态查询界面SQL查看
         StringBuilder DeviceStatusQuerySQL = new StringBuilder();
         DataHelper dh;
         ModeBusTCPServer mbt = new ModeBusTCPServer();
@@ -77,7 +78,7 @@ namespace UAS_DeviceMonitor
         private void Main_Load(object sender, EventArgs e)
         {
             //设备列表
-            GridDeviceList.GetDataSQL = "select de_id,de_code,de_name,de_spec,de_indate,de_runstatus,de_address,de_wccode,de_vendcode,de_vendname from device".ToUpper();
+            GridDeviceList.GetDataSQL = "select de_id,de_code,de_name,de_spec,de_indate,de_runstatus,de_address,de_wccode,de_vendcode,de_vendname from device order by de_code".ToUpper();
             ToolPageControlDeviceList.Gridcontrol = GridDeviceList;
             //轮询业务
             //GridPolling.GetDataSQL = "select 0 CHECKEDCOLUMN,pl_id,pl_code,pl_name,pl_type,pl_dccode,pl_remark from polling".ToUpper();
@@ -117,6 +118,26 @@ namespace UAS_DeviceMonitor
 
             Ptime = new Dictionary<int, PollingTimer>();
         }
+        /// <summary>
+        /// 关闭前将所有设备离线,状态更新为离线
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void Main_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            dh.ExecuteSql("update devicepollingconfig set dpc_status='Stop' where dpc_status='Running'", "update");
+            dh.ExecuteSql("update devicepollinglog set dpg_status='Stop' where dpg_status='Running'", "update");
+        }
+        #endregion
+
+        #region 设备列表界面
+        private void GridViewDeviceList_RowCellClick(object sender, RowCellClickEventArgs e)
+        {
+            string de_code = GridViewDeviceList.GetRowCellValue(e.RowHandle, "DE_CODE").ToString();
+            DeviceDetailInfo ddi = new DeviceDetailInfo(de_code);
+            ddi.StartPosition = FormStartPosition.CenterScreen;
+            ddi.ShowDialog();
+        }
         #endregion
 
         #region 界面通用事件
@@ -166,15 +187,15 @@ namespace UAS_DeviceMonitor
                 case "TRUE":
                 case "YES":
                 case "1":
-                    e.CheckState = System.Windows.Forms.CheckState.Checked;
+                    e.CheckState = CheckState.Checked;
                     break;
                 case "FALSE":
                 case "NO":
                 case "0":
-                    e.CheckState = System.Windows.Forms.CheckState.Unchecked;
+                    e.CheckState = CheckState.Unchecked;
                     break;
                 default:
-                    e.CheckState = System.Windows.Forms.CheckState.Checked;
+                    e.CheckState = CheckState.Checked;
                     break;
             }
             e.Handled = true;
@@ -202,6 +223,7 @@ namespace UAS_DeviceMonitor
         {
             if (PageCommandSet.PageVisible)
             {
+
                 DataTable dt = (DataTable)SystemInf.dh.ExecuteSql("select * from devicebrand", "select");
                 BaseUtil.FillComBoxEditWidthDataTable(Brand, "db_name", "db_code", dt);
                 GridCommandSetting.Condition = " where dc_debrand='" + BaseUtil.GetComboxEditValue(Brand) + "' order by dc_id";
@@ -227,7 +249,7 @@ namespace UAS_DeviceMonitor
         private void ButtonStartPolling_Click(object sender, EventArgs e)
         {
             GridView grid = GridViewPollSetting;
-            mbt.Open();
+
             for (int i = 0; i < GridPollingSetting.RowCount; i++)
             {
                 Polling pl = new Polling();
@@ -327,14 +349,16 @@ namespace UAS_DeviceMonitor
                     //更新轮询状态
                     sql.Clear();
                     sql.Append("update DEVICEPOLLINGCONFIG set dpc_status='Running' where dpc_decode='" + Decode + "' and dpc_dccode='" + Dccode + "'");
-                    SQL.Add(sql.ToString());
+                    dh.ExecuteSql(sql.ToString(), "update");
+                    //SQL.Add(sql.ToString());
                     //更新轮询日志状态
                     sql.Clear();
                     sql.Append("update DEVICEPOLLINGLOG set dpg_status='Running',dpg_senddatasize=nvl(dpg_senddatasize,0)+" + SendCommandByteSize);
                     sql.Append(",dpg_receivedatasize=nvl(dpg_receivedatasize,0)+" + ReceiveCommandByteSize + ",dpg_count=nvl(dpg_count,0)+1 ");
                     sql.Append(" where dpg_id=(select max(dpg_id) from DEVICEPOLLINGLOG where dpg_decode='" + Decode + "')");
-                    SQL.Add(sql.ToString());
-                    dh.ExecuteSQLTran(SQL.ToArray());
+                    //SQL.Add(sql.ToString());
+                    dh.ExecuteSql(sql.ToString(), "update");
+                    //dh.ExecuteSQLTran(SQL.ToArray());
                 }
                 else
                 {
@@ -342,14 +366,16 @@ namespace UAS_DeviceMonitor
                     //更新轮询状态
                     sql.Clear();
                     sql.Append("update DEVICEPOLLINGCONFIG set dpc_status='Stop' where dpc_decode='" + Decode + "' and dpc_dccode='" + Dccode + "'");
-                    SQL.Add(sql.ToString());
+                    //SQL.Add(sql.ToString());
+                    dh.ExecuteSql(sql.ToString(), "update");
                     //更新轮询日志状态
                     sql.Clear();
                     sql.Append("update DEVICEPOLLINGLOG set dpg_status='Running',dpg_senddatasize=nvl(dpg_senddatasize,0)+");
                     sql.Append(SendCommandByteSize + ",dpg_count=nvl(dpg_count,0)+1 ");
                     sql.Append("where dpg_id=(select max(dpg_id) from DEVICEPOLLINGLOG where dpg_decode='" + Decode + "')");
-                    SQL.Add(sql.ToString());
-                    dh.ExecuteSQLTran(SQL.ToArray());
+                    //SQL.Add(sql.ToString());
+                    dh.ExecuteSql(sql.ToString(), "update");
+                    //dh.ExecuteSQLTran(SQL.ToArray());
                 }
             }
         }
@@ -409,6 +435,9 @@ namespace UAS_DeviceMonitor
         {
             if (PagePollingSetting.PageVisible)
             {
+                //如果未开启则进行开启
+                if (!mbt.IsOpen)
+                    mbt.Open();
                 DataTable dt = (DataTable)SystemInf.dh.ExecuteSql("SELECT DC_CODE,DC_NAME,DC_REMARK FROM DEVICECOMMAND", "select");
                 PollSettingItemSearchLookUpEdit.DataSource = dt;
                 PollSettingItemSearchLookUpEdit.DisplayMember = "DC_CODE";
@@ -483,17 +512,19 @@ namespace UAS_DeviceMonitor
                 if (WC != "全部")
                     DeviceStatusQuerySQL.Append(" and de_wccode='" + WC + "' ");
                 if (LC != "全部")
-                    DeviceStatusQuerySQL.Append(" and de_linecode='"+LC+"' ");
+                    DeviceStatusQuerySQL.Append(" and de_linecode='" + LC + "' ");
                 DeviceStatusQuerySQL.Append(" order by de_code");
             }
             else
             {
                 DeviceStatusQuerySQL.Append("select distinct de_code,de_name,dpc_status,dpc_id from device left join ");
                 DeviceStatusQuerySQL.Append("DEVICEPOLLINGCONFIG on dpc_decode=de_code ");
-                if (WC != "全部")
+                if (WC != "全部" && LC != "全部")
+                    DeviceStatusQuerySQL.Append(" where de_wccode='" + WC + "' and de_linecode='" + LC + "' ");
+                if (WC == "全部" && LC != "全部")
+                    DeviceStatusQuerySQL.Append(" where de_linecode='" + LC + "' ");
+                if (WC != "全部" && LC == "全部")
                     DeviceStatusQuerySQL.Append(" where de_wccode='" + WC + "' ");
-                if (LC != "全部")
-                    DeviceStatusQuerySQL.Append(" and de_linecode='" + LC + "' ");
                 DeviceStatusQuerySQL.Append("order by de_code");
             }
             PaintDeviceStatusControl(DeviceStatusQuerySQL.ToString());
@@ -515,6 +546,7 @@ namespace UAS_DeviceMonitor
                 {
                     PanelDeviceStatus.Controls[i].Dispose();
                 }
+                ContextMenu ContextMenu = new ContextMenu();
                 for (int j = 0; j < RowCount; j++)
                 {
                     //如果是最后一行则循环尾数
@@ -527,6 +559,8 @@ namespace UAS_DeviceMonitor
                         PictureEditWithText pic = new PictureEditWithText();
                         pic.DeviceName = dt.Rows[j * CountPerRow + i]["de_name"].ToString();
                         pic.Picedit.ToolTipController = CommonTipController;
+                        pic.Picedit.ContextMenu = ContextMenu;
+                        pic.Picedit.Click += Pic_Click;
                         pic.Name = dt.Rows[j * CountPerRow + i]["de_code"].ToString() + i + j;
                         pic.Anchor = AnchorStyles.Left;
                         pic.Anchor = AnchorStyles.Top;
@@ -552,8 +586,17 @@ namespace UAS_DeviceMonitor
             }
         }
 
+        private void Pic_Click(object sender, EventArgs e)
+        {
+            PictureEdit pic = sender as PictureEdit;
+            DeviceStatusInfo dsi = new DeviceStatusInfo(pic.Name);
+            dsi.StartPosition = FormStartPosition.CenterScreen;
+            dsi.ShowDialog();
+        }
+
         private void Pic_MouseHover(object sender, EventArgs e)
         {
+            //使用Tip显示轮询数据
             PictureEdit pic = sender as PictureEdit;
             DataTable dt = (DataTable)dh.ExecuteSql("select * from DEVICEPOLLINGLOG where dpg_id=(select max(dpg_id) from DEVICEPOLLINGLOG where dpg_decode='" + pic.Name + "')", "select");
             if (dt.Rows.Count > 0)

+ 1 - 0
UAS_DeviceMonitor/Program.cs

@@ -34,6 +34,7 @@ namespace UAS_DeviceMonitor
                 string sysdisc = Environment.GetEnvironmentVariable("windir").Substring(0, 1);
                 if (!Directory.Exists(SystemInf.LogFolder))
                     Directory.CreateDirectory(SystemInf.LogFolder);
+                System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("zh-CHS");
                 FileStream fs = new FileStream(SystemInf.LogFolder + DateTime.Now.ToString("yyyy-MM-dd") + ".txt", FileMode.OpenOrCreate, FileAccess.ReadWrite);
                 fs.Close();
                 //创建存储登录信息的文件

+ 104 - 0
UAS_DeviceMonitor/PublicMethod/BaseUtil.cs

@@ -7,6 +7,7 @@ using System.Text;
 using System.Windows.Forms;
 using UAS_DeviceMonitor.DataOperate;
 using DevExpress.Utils;
+using UAS_DeviceMonitor.CustomerControl.ValueLabel;
 
 namespace UAS_DeviceMonitor.PublicMethod
 {
@@ -165,5 +166,108 @@ namespace UAS_DeviceMonitor.PublicMethod
 
             }
         }
+
+        /// <summary>
+        ///  传入控件的集合和DataTable,通过判断控件的名称和数据源的列的描述来匹配,支持单层的GroupBox和Panel
+        /// </summary>
+        /// <param name="collection"></param>
+        /// <param name="dt"></param>
+        public static void SetFormValue(Control.ControlCollection collection, DataTable dt)
+        {
+            //DataTable存在数据才进行赋值操作
+            if (dt.Rows.Count > 0)
+            {
+                for (int i = 0; i < collection.Count; i++)
+                {
+                    //如果含有子控件则进行递归调用
+                    if (collection[i].Controls.Count > 0)
+                        SetFormValue(collection[i].Controls, dt);
+                    string controlName = collection[i].Name;
+                    string controlsTag = collection[i].Tag == null ? "" : collection[i].Tag.ToString();
+                    //默认给TextBox和Label赋值
+                    if (collection[i] is TextBox || collection[i] is ValueLabel || collection[i] is NumericUpDown)
+                    {
+                        for (int j = 0; j < dt.Columns.Count; j++)
+                        {
+                            if (controlName.ToUpper() == dt.Columns[j].Caption.ToUpper() || controlsTag.ToUpper() == dt.Columns[j].Caption.ToUpper())
+                            {
+                                //字段含有Status内容的才进行转换
+                                if (controlName.ToUpper().Contains("STATUS") || controlsTag.ToUpper().Contains("STATUS"))
+                                {
+                                    //对审批状态进行判断
+                                    switch (dt.Rows[0][j].ToString().ToUpper())
+                                    {
+                                        case "ENTERING":
+                                            collection[i].Text = "在录入";
+                                            break;
+                                        case "UNAPPROVED":
+                                            collection[i].Text = "未批准";
+                                            break;
+                                        case "COMMITED":
+                                            collection[i].Text = "已提交";
+                                            break;
+                                        case "APPROVE":
+                                            collection[i].Text = "已批准";
+                                            break;
+                                        case "AUDITED":
+                                            collection[i].Text = "已审核";
+                                            break;
+                                        case "STARTED":
+                                            collection[i].Text = "已下放";
+                                            break;
+                                        case "UNCHECK":
+                                            collection[i].Text = "待检验";
+                                            break;
+                                        case "CHECKING":
+                                            collection[i].Text = "检验中";
+                                            break;
+                                        default:
+                                            collection[i].Text = dt.Rows[0][j].ToString();
+                                            break;
+                                    }
+                                }
+                                else
+                                    collection[i].Text = dt.Rows[0][j].ToString();
+                            }
+                        }
+                    }
+                    //对封装在GroupBox的和Panel的控件进行批量赋值
+                    if (collection[i] is GroupControl || collection[i] is Panel)
+                    {
+                        for (int j = 0; j < collection[i].Controls.Count; j++)
+                        {
+                            controlName = collection[i].Controls[j].Name;
+                            if (collection[i].Controls[j] is TextBox || collection[i].Controls[j] is ValueLabel)
+                            {
+                                for (int k = 0; k < dt.Columns.Count; k++)
+                                {
+                                    if (controlName.ToUpper() == dt.Columns[k].Caption.ToUpper())
+                                    {
+                                        collection[i].Controls[j].Text = dt.Rows[0][k].ToString();
+                                    }
+                                }
+                            }
+                        }
+                    }
+                }
+            }
+            //如果没有记录的话,将dt中含有的列的对应值设置为空
+            else
+            {
+                for (int i = 0; i < collection.Count; i++)
+                {
+                    if (collection[i] is TextBox || collection[i] is ValueLabel)
+                    {
+                        for (int j = 0; j < dt.Columns.Count; j++)
+                        {
+                            if (collection[i].Name.ToUpper() == dt.Columns[j].Caption.ToUpper())
+                            {
+                                collection[i].Text = "";
+                            }
+                        }
+                    }
+                }
+            }
+        }
     }
 }

BIN
UAS_DeviceMonitor/Tool/DevExpress.Charts.Designer.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.Data.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.Printing.v15.2.Core.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.SpellChecker.v15.2.Core.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.Utils.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.Xpo.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraBars.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraCharts.v15.2.UI.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraCharts.v15.2.Wizard.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraCharts.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraEditors.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraGrid.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraPrinting.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraReports.v15.2.Extensions.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraReports.v15.2.Service.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraReports.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraRichEdit.v15.2.Extensions.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraRichEdit.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraScheduler.v15.2.Core.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraScheduler.v15.2.Extensions.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraScheduler.v15.2.Reporting.Extensions.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraScheduler.v15.2.Reporting.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraScheduler.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraSpellChecker.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraSpreadsheet.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraTreeList.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraVerticalGrid.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/DevExpress.XtraWizard.v15.2.dll


BIN
UAS_DeviceMonitor/Tool/zh-CHS/DevExpress.XtraGrid.v15.2.Design.resources.dll


BIN
UAS_DeviceMonitor/Tool/zh-CHS/DevExpress.XtraGrid.v15.2.resources.dll


+ 115 - 19
UAS_DeviceMonitor/UAS_DeviceMonitor.csproj

@@ -32,24 +32,97 @@
     <WarningLevel>4</WarningLevel>
   </PropertyGroup>
   <ItemGroup>
-    <Reference Include="DevExpress.Charts.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.Data.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.Printing.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.Sparkline.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.SpellChecker.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.Utils.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.Xpo.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraBars.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraCharts.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.XtraCharts.v15.2.UI, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraCharts.v15.2.Wizard, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.XtraEditors.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraGrid.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraLayout.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.XtraPrinting.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.XtraSpellChecker.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraVerticalGrid.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraWizard.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
+    <Reference Include="DevExpress.Charts.Designer.v15.2">
+      <HintPath>Tool\DevExpress.Charts.Designer.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.Data.v15.2">
+      <HintPath>Tool\DevExpress.Data.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.Printing.v15.2.Core">
+      <HintPath>Tool\DevExpress.Printing.v15.2.Core.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.SpellChecker.v15.2.Core">
+      <HintPath>Tool\DevExpress.SpellChecker.v15.2.Core.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.Utils.v15.2">
+      <HintPath>Tool\DevExpress.Utils.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.Xpo.v15.2">
+      <HintPath>Tool\DevExpress.Xpo.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraBars.v15.2">
+      <HintPath>Tool\DevExpress.XtraBars.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraCharts.v15.2">
+      <HintPath>Tool\DevExpress.XtraCharts.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraCharts.v15.2.UI">
+      <HintPath>Tool\DevExpress.XtraCharts.v15.2.UI.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraCharts.v15.2.Wizard">
+      <HintPath>Tool\DevExpress.XtraCharts.v15.2.Wizard.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraEditors.v15.2">
+      <HintPath>Tool\DevExpress.XtraEditors.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraGrid.v15.2">
+      <HintPath>Tool\DevExpress.XtraGrid.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraGrid.v15.2.Design.resources">
+      <HintPath>Tool\zh-CHS\DevExpress.XtraGrid.v15.2.Design.resources.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraGrid.v15.2.resources, Version=15.2.0.0, Culture=de, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>Tool\zh-CHS\DevExpress.XtraGrid.v15.2.resources.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraPrinting.v15.2">
+      <HintPath>Tool\DevExpress.XtraPrinting.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraReports.v15.2">
+      <HintPath>Tool\DevExpress.XtraReports.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraReports.v15.2.Extensions">
+      <HintPath>Tool\DevExpress.XtraReports.v15.2.Extensions.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraReports.v15.2.Service">
+      <HintPath>Tool\DevExpress.XtraReports.v15.2.Service.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraRichEdit.v15.2">
+      <HintPath>Tool\DevExpress.XtraRichEdit.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraRichEdit.v15.2.Extensions">
+      <HintPath>Tool\DevExpress.XtraRichEdit.v15.2.Extensions.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraScheduler.v15.2">
+      <HintPath>Tool\DevExpress.XtraScheduler.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraScheduler.v15.2.Core">
+      <HintPath>Tool\DevExpress.XtraScheduler.v15.2.Core.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraScheduler.v15.2.Extensions">
+      <HintPath>Tool\DevExpress.XtraScheduler.v15.2.Extensions.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraScheduler.v15.2.Reporting">
+      <HintPath>Tool\DevExpress.XtraScheduler.v15.2.Reporting.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraScheduler.v15.2.Reporting.Extensions">
+      <HintPath>Tool\DevExpress.XtraScheduler.v15.2.Reporting.Extensions.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraSpellChecker.v15.2">
+      <HintPath>Tool\DevExpress.XtraSpellChecker.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraSpreadsheet.v15.2">
+      <HintPath>Tool\DevExpress.XtraSpreadsheet.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraTreeList.v15.2">
+      <HintPath>Tool\DevExpress.XtraTreeList.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraVerticalGrid.v15.2">
+      <HintPath>Tool\DevExpress.XtraVerticalGrid.v15.2.dll</HintPath>
+    </Reference>
+    <Reference Include="DevExpress.XtraWizard.v15.2">
+      <HintPath>Tool\DevExpress.XtraWizard.v15.2.dll</HintPath>
+    </Reference>
     <Reference Include="Oracle.ManagedDataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=MSIL" />
     <Reference Include="System" />
     <Reference Include="System.Configuration" />
@@ -110,6 +183,12 @@
     <Compile Include="CustomerControl\PictureEditWithText\PictureEditWithText.Designer.cs">
       <DependentUpon>PictureEditWithText.cs</DependentUpon>
     </Compile>
+    <Compile Include="CustomerControl\ValueLabel\ValueLabel.cs">
+      <SubType>Component</SubType>
+    </Compile>
+    <Compile Include="CustomerControl\ValueLabel\ValueLabel.Designer.cs">
+      <DependentUpon>ValueLabel.cs</DependentUpon>
+    </Compile>
     <Compile Include="DataOperate\ComboBoxData.cs" />
     <Compile Include="DataOperate\DataHelper.cs" />
     <Compile Include="Device\Command\FormNewCommand.cs">
@@ -118,6 +197,18 @@
     <Compile Include="Device\Command\FormNewCommand.Designer.cs">
       <DependentUpon>FormNewCommand.cs</DependentUpon>
     </Compile>
+    <Compile Include="Device\Information\DeviceDetailInfo.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Device\Information\DeviceDetailInfo.Designer.cs">
+      <DependentUpon>DeviceDetailInfo.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Device\Information\DeviceStatusInfo.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Device\Information\DeviceStatusInfo.Designer.cs">
+      <DependentUpon>DeviceStatusInfo.cs</DependentUpon>
+    </Compile>
     <Compile Include="Entity\Polling.cs" />
     <Compile Include="Entity\SocketObject.cs" />
     <Compile Include="Entity\SystemInf.cs" />
@@ -160,6 +251,12 @@
     <EmbeddedResource Include="Device\Command\FormNewCommand.resx">
       <DependentUpon>FormNewCommand.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="Device\Information\DeviceDetailInfo.resx">
+      <DependentUpon>DeviceDetailInfo.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Device\Information\DeviceStatusInfo.resx">
+      <DependentUpon>DeviceStatusInfo.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Main.resx">
       <DependentUpon>Main.cs</DependentUpon>
     </EmbeddedResource>
@@ -201,7 +298,6 @@
     <Content Include="Tool\Oracle.ManagedDataAccess.dll" />
   </ItemGroup>
   <ItemGroup>
-    <Folder Include="Device\Information\" />
     <Folder Include="Device\Transfer\" />
   </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

+ 1 - 1
UAS_DeviceMonitor/app.config

@@ -8,7 +8,7 @@
     <userSettings>
         <UAS_DeviceMonitor.Properties.Settings>
             <setting name="MES" serializeAs="String">
-                <value>Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=UAS_MES_PROD;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.253.6)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));</value>
+                <value>Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=UAS_MES_PROD;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=218.17.158.219)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));</value>
             </setting>
         </UAS_DeviceMonitor.Properties.Settings>
     </userSettings>