瀏覽代碼

设备信号查询add

xu.lu 3 年之前
父節點
當前提交
576c48b980

+ 891 - 7
WCS_Client/Extensions/JsonExtensions.cs

@@ -106,12 +106,223 @@ namespace WCS_Client
 
                 switch (proname)
                 {
-                    default:
+                    case "Alarm":
+                        describle = "警报";
+                        break;
+                    case "Col_1":
+                        describle = "当前列";
+                        break;
+                    case "Col_2":
+                        describle = "当前列";
+                        break;
+                    case "DEVICE":
+                        describle = "设备";
+                        break;
+                    case "ECol_1":
+                        describle = "目标列";
+                        break;
+                    case "ECol_2":
+                        describle = "目标列";
+                        break;
+                    case "EDepth_1":
+                        describle = "目标深度";
+                        break;
+                    case "EDepth_2":
+                        describle = "目标深度";
+                        break;
+                    case "ELayer_1":
+                        describle = "目标层";
+                        break;
+                    case "ELayer_2":
+                        describle = "目标层";
+                        break;
+                    case "ELine_1":
+                        describle = "目标行";
+                        break;
+                    case "ELine_2":
+                        describle = "目标行";
+                        break;
+                    case "ENALBLE":
+                        describle = "是否可用";
+                        break;
+                    case "FRAME":
+                        describle = "时间";
+                        break;
+                    case "FinishedTask_1":
+                        describle = "已完成任务号";
+                        break;
+                    case "FinishedTask_2":
+                        describle = "已完成任务号";
+                        break;
+                    case "ForkPos_1":
+                        describle = "Z轴位置 货叉";
+                        break;
+                    case "ForkPos_2":
+                        describle = "Z轴位置 货叉";
+                        break;
+                    case "ForkStatus_1":
+                        describle = "货叉状态";
+                        break;
+                    case "ForkStatus_2":
+                        describle = "货叉状态";
+                        break;
+                    case "GoodsType_1":
+                        describle = "货物类型";
+                        break;
+                    case "GoodsType_2":
+                        describle = "货物类型";
+                        break;
+                    case "ID":
+                        describle = "";
+                        break;
+                    case "ISLAST":
+                        describle = "";
+                        break;
+                    case "Layer_1":
+                        describle = "当前层";
+                        break;
+                    case "Layer_2":
+                        describle = "当前层";
+                        break;
+                    case "LiftPos_1":
+                        describle = "Y轴位置 提升";
+                        break;
+                    case "LiftPos_2":
+                        describle = "Y轴位置 提升";
+                        break;
+                    case "Line_1":
+                        describle = "当前行";
+                        break;
+                    case "Line_2":
+                        describle = "当前行";
+                        break;
+                    case "Mode_1":
+                        describle = "模式";
+                        break;
+                    case "Mode_2":
+                        describle = "模式";
+                        break;
+                    case "RES9_1":
+                        describle = "备用 PLCname=Start_number1";
+                        break;
+                    case "RES9_2":
+                        describle = "备用 PLCname=Start_number2";
+                        break;
+                    case "RES10_1":
+                        describle = "备用 PLCname=End_number1";
+                        break;
+                    case "RES10_2":
+                        describle = "备用 PLCname=End_number2";
+                        break;
+                    case "RES11_1":
+                        describle = "备用";
+                        break;
+                    case "RES11_2":
+                        describle = "备用";
+                        break;
+                    case "RES12_1":
+                        describle = "备用";
+                        break;
+                    case "RES12_2":
+                        describle = "备用";
+                        break;
+                    case "RES13_1":
+                        describle = "备用";
+                        break;
+                    case "RES13_2":
+                        describle = "备用";
+                        break;
+                    case "RES14_1":
+                        describle = "备用";
+                        break;
+                    case "RES14_2":
+                        describle = "备用";
+                        break;
+                    case "RunTime":
+                        describle = "运行时间";
+                        break;
+                    case "RunTime_1":
+                        describle = "运行时长";
+                        break;
+                    case "RunTime_2":
+                        describle = "运行时长";
+                        break;
+                    case "SCol_1":
+                        describle = "起始列";
+                        break;
+                    case "SCol_2":
+                        describle = "起始列";
+                        break;
+                    case "SDepth_1":
+                        describle = "起始深度";
+                        break;
+                    case "SDepth_2":
+                        describle = "起始深度";
+                        break;
+                    case "SLayer_1":
+                        describle = "起始层";
+                        break;
+                    case "SLayer_2":
+                        describle = "起始层";
+                        break;
+                    case "SLine_1":
+                        describle = "起始行";
+                        break;
+                    case "SLine_2":
+                        describle = "起始行";
+                        break;
+                    case "SRMMode":
+                        describle = "模式";
+                        break;
+                    case "SRMStatus":
+                        describle = "状态";
+                        break;
+                    case "Status_1":
+                        describle = "2状态";
+                        break;
+                    case "Status_2":
+                        describle = "1状态";
+                        break;
+                    case "TaskID_1":
+                        describle = "任务号";
+                        break;
+                    case "TaskID_2":
+                        describle = "任务号";
+                        break;
+                    case "TotalKM_1":
+                        describle = "总里程";
+                        break;
+                    case "TotalKM_2":
+                        describle = "总里程";
+                        break;
+                    case "TralelPos_1":
+                        describle = "X轴位置(0.1毫米) 行走";
+                        break;
+                    case "TralelPos_2":
+                        describle = "X轴位置(0.1毫米) 行走";
+                        break;
+                    case "UPDATETIME":
+                        describle = "更新时间";
+                        break;
+                    case "UPDATEUSER":
+                        describle = "更新用户";
+                        break;
+                    case "VER":
+                        describle = "版本";
+                        break;
+                    case "VoucherNo_1":
+                        describle = "触发信号";
+                        break;
+                    case "VoucherNo_2":
+                        describle = "触发信号";
+                        break;
+                    case "WCSVERSION":
+                        describle = "WCS版本";
                         break;
                 }
                 var values = new object[3];
                 values[0] = describle;
-                values[1] = proname;
+                values[1] = "DB521_" + proname;
                 values[2] = abc;
                 tb.Rows.Add(values);
             }
@@ -124,13 +335,152 @@ namespace WCS_Client
                 var abc = pi.GetValue(obj.D520, null);
 
                 switch (proname)
-                {
-                    default:
+                {                    
+                    case "SLine_1":
+                        describle = "起始行";
+                        break;
+                    case "SLine_2":
+                        describle = "起始行";
+                        break;
+                    case "SCol_1":
+                        describle = "起始列";
+                        break;
+                    case "SCol_2":
+                        describle = "起始列";
+                        break;
+                    case "SLayer_1":
+                        describle = "起始层";
+                        break;
+                    case "SLayer_2":
+                        describle = "起始层";
+                        break;
+                    case "SDepth_1":
+                        describle = "起始深度";
+                        break;
+                    case "SDepth_2":
+                        describle = "起始深度";
+                        break;
+                    case "Col_1":
+                        describle = "当前列";
+                        break;
+                    case "Col_2":
+                        describle = "当前列";
+                        break;
+                    case "ELine_1":
+                        describle = "目标行";
+                        break;
+                    case "ELine_2":
+                        describle = "目标行";
+                        break;
+                    case "ECol_1":
+                        describle = "目标列";
+                        break;
+                    case "ECol_2":
+                        describle = "目标列";
+                        break;
+                    case "ELayer_1":
+                        describle = "目标层";
+                        break;
+                    case "ELayer_2":
+                        describle = "目标层";
+                        break;
+                    case "EDepth_1":
+                        describle = "目标深度";
+                        break;
+                    case "EDepth_2":
+                        describle = "目标深度";
+                        break;
+                    case "DEVICE":
+                        describle = "设备";
+                        break;                    
+                    case "ENALBLE":
+                        describle = "是否可用";
+                        break;
+                    case "FRAME":
+                        describle = "时间";
+                        break;
+                    case "FinishedACK_1":
+                        describle = "完成任务触发";
+                        break;
+                    case "FinishedACK_2":
+                        describle = "完成任务触发";
+                        break;
+                    case "GoodsType_1":
+                        describle = "货物类型";
+                        break;
+                    case "GoodsType_2":
+                        describle = "货物类型";
+                        break;
+                    case "Handshake_1":
+                        describle = "WCS心跳信号";
+                        break;
+                    case "Handshake_2":
+                        describle = "WCS心跳信号";
+                        break;
+                    case "ID":
+                        describle = "ID";
+                        break;
+                    case "ISLAST":
+                        describle = "";
+                        break;
+                    case "RES1_1":
+                        describle = "货物数量";
+                        break;
+                    case "RES1_2":
+                        describle = "货物数量";
+                        break;
+                    case "RES2_1":
+                        describle = "备用";
+                        break;
+                    case "RES2_2":
+                        describle = "备用";
+                        break;
+                    case "RES3_1":
+                        describle = "备用";
+                        break;
+                    case "RES3_2":
+                        describle = "备用";
+                        break;
+                    case "RES4_1":
+                        describle = "备用";
+                        break;
+                    case "RES4_2":
+                        describle = "备用";
+                        break;
+                    case "SCSpeedMode_1":
+                        describle = "行驶速度";
+                        break;
+                    case "SCSpeedMode_2":
+                        describle = "行驶速度";
+                        break;
+                    case "TaskID_1":
+                        describle = "任务号";
+                        break;
+                    case "TaskID_2":
+                        describle = "任务号";
+                        break;
+                    case "UPDATETIME":
+                        describle = "更新时间";
+                        break;
+                    case "UPDATEUSER":
+                        describle = "更新用户";
+                        break;
+                    case "VER":
+                        describle = "版本";
+                        break;
+                    case "VoucherNo_1":
+                        describle = "触发信号";
+                        break;
+                    case "VoucherNo_2":
+                        describle = "触发信号";
+                        break;
+                    case "WCSVERSION":
+                        describle = "WCS版本";
                         break;
                 }
                 var values = new object[3];
                 values[0] = describle;
-                values[1] = proname;
+                values[1] = "DB520_" + proname;
                 values[2] = abc;
                 tb.Rows.Add(values);
             }
@@ -139,14 +489,548 @@ namespace WCS_Client
                 AttributeCollection attributes = TypeDescriptor.GetProperties(obj.D537.GetType())[pi.Name].Attributes;
                 DescriptionAttribute myAttribute = (DescriptionAttribute)attributes[typeof(DescriptionAttribute)];
                 string describle = myAttribute.Description;
-                string proname = "DB537" + pi.Name;
+                string proname = "DB537_" + pi.Name;
                 var abc = pi.GetValue(obj.D537, null);
 
                 switch (pi.Name)
                 {
-                    case "TASKNUM":
+                    case "DEVICE":
+                        describle = "设备";
+                        break;
+                    case "ENALBLE":
+                        describle = "是否可用";
+                        break;
+                    case "FRAME":
+                        describle = "时间";
+                        break;                  
+                    case "ID":
+                        describle = "ID";
+                        break;
+                    case "ISLAST":
+                        describle = "";
+                        break;
+                    case "SCAlarm":
+                        describle = "警报";
+                        break;
+                    case "UPDATETIME":
+                        describle = "更新时间";
+                        break;
+                    case "UPDATEUSER":
+                        describle = "更新用户";
+                        break;
+                    case "VER":
+                        describle = "版本";
+                        break;                 
+                    case "WCSVERSION":
+                        describle = "WCS版本";
+                        break;
+                }
+                var values = new object[3];
+                values[0] = describle;
+                values[1] = proname;
+                values[2] = abc;
+                tb.Rows.Add(values);
+            }
+
+            //属性遍历
+
+            return tb;
+        }
+
+        public static DataTable GetAttributesDataTable(this StationData obj)
+        {
+            var tb = new DataTable(obj.GetType().Name);
+            tb.Columns.Add("信号说明", typeof(string));
+            tb.Columns.Add("信号名称", typeof(string));
+            tb.Columns.Add("信号值", typeof(string));
+
+            foreach (PropertyInfo pi in obj.D521.GetType().GetProperties())
+            {
+                AttributeCollection attributes = TypeDescriptor.GetProperties(obj.D521.GetType())[pi.Name].Attributes;
+                DescriptionAttribute myAttribute = (DescriptionAttribute)attributes[typeof(DescriptionAttribute)];
+                string describle = myAttribute.Description;
+                string proname = pi.Name;
+                var abc = pi.GetValue(obj.D521, null);
+
+                switch (proname)
+                {
+                    case "Tasknum":
                         describle = "任务号";
                         break;
+                    case "CmdType":
+                        describle = "命令类型";
+                        break;
+                    case "DEVICE":
+                        describle = "设备";
+                        break;
+                    case "ENABLED":
+                        describle = "";
+                        break;
+                    case "FRAME":
+                        describle = "";
+                        break;
+                    case "GoodsSize":
+                        describle = "货物高度";
+                        break;
+                    case "Goodscode":
+                        describle = "货物数条码";
+                        break;
+                    case "Goodsend":
+                        describle = "目标地址";
+                        break;
+
+                    case "Goodsnum":
+                        describle = "货物数量(1.两个位置放1个货物,2.两个位置放2个货物)";
+                        break;
+                    case "Goodsstart":
+                        describle = "起始地址";
+                        break;
+                    case "ID":
+                        describle = "";
+                        break;
+                    case "ISLAST":
+                        describle = "";
+                        break;
+                    case "Request":
+                        describle = "请求";
+                        break;
+                    case "Status":
+                        describle = "输送机状态";
+                        break;
+                    case "UPTATETIME":
+                        describle = "更新时间";
+                        break;
+                    case "UPDATEUSER":
+                        describle = "更新用户";
+                        break;
+                    case "VER":
+                        describle = "";
+                        break;
+                    case "VoucherNo":
+                        describle = "凭证号 每次累加";
+                        break;
+                    case "WCSVERSION":
+                        describle = "WCS版本";
+                        break;
+
+                }
+                var values = new object[3];
+                values[0] = describle;
+                values[1] = "DB521_" + proname;
+                values[2] = abc;
+                tb.Rows.Add(values);
+            }
+            foreach (PropertyInfo pi in obj.D520.GetType().GetProperties())
+            {
+                AttributeCollection attributes = TypeDescriptor.GetProperties(obj.D520.GetType())[pi.Name].Attributes;
+                DescriptionAttribute myAttribute = (DescriptionAttribute)attributes[typeof(DescriptionAttribute)];
+                string describle = myAttribute.Description;
+                string proname = pi.Name;
+                var abc = pi.GetValue(obj.D520, null);
+
+                switch (proname)
+                {
+                    case "Tasknum":
+                        describle = "任务号";
+                        break;
+                    case "CmdType":
+                        describle = "命令类型";
+                        break;
+                    case "DEVICE":
+                        describle = "设备";
+                        break;
+                    case "ENABLED":
+                        describle = "";
+                        break;
+                    case "FRAME":
+                        describle = "";
+                        break;
+                    case "GoodsSize":
+                        describle = "货物高度";
+                        break;
+                    case "Goodscode":
+                        describle = "货物数条码";
+                        break;
+                    case "Goodsend":
+                        describle = "目标地址";
+                        break;
+
+                    case "Goodsnum":
+                        describle = "货物数量(1.两个位置放1个货物,2.两个位置放2个货物)";
+                        break;
+                    case "Goodsstart":
+                        describle = "起始地址";
+                        break;
+                    case "ID":
+                        describle = "";
+                        break;
+                    case "ISLAST":
+                        describle = "";
+                        break;
+                    case "Request":
+                        describle = "请求";
+                        break;
+                    case "Istation521Status":
+                        describle = "输送机状态";
+                        break;
+                    case "UPTATETIME":
+                        describle = "更新时间";
+                        break;
+                    case "UPDATEUSER":
+                        describle = "更新用户";
+                        break;
+                    case "VER":
+                        describle = "";
+                        break;
+                    case "VoucherNo":
+                        describle = "凭证号 每次累加";
+                        break;
+                    case "WCSVERSION":
+                        describle = "WCS版本";
+                        break;
+                }
+                var values = new object[3];
+                values[0] = describle;
+                values[1] = "DB520_" + proname;
+                values[2] = abc;
+                tb.Rows.Add(values);
+            }
+            foreach (PropertyInfo pi in obj.D523.GetType().GetProperties())
+            {
+                AttributeCollection attributes = TypeDescriptor.GetProperties(obj.D523.GetType())[pi.Name].Attributes;
+                DescriptionAttribute myAttribute = (DescriptionAttribute)attributes[typeof(DescriptionAttribute)];
+                string describle = myAttribute.Description;
+                string proname = "DB523_" + pi.Name;
+                var abc = pi.GetValue(obj.D523, null);
+
+                switch (pi.Name)
+                {
+                    case "Alarm":
+                        describle = "警报";
+                        break;
+                    case "DEVICE":
+                        describle = "设备";
+                        break;
+                    case "ENABLED":
+                        describle = "是否可用";
+                        break;
+                    case "FRAME":
+                        describle = "时间";
+                        break;
+                    case "ID":
+                        describle = "编码";
+                        break;
+                    case "ISLAST":
+                        describle = "";
+                        break;
+
+                    case "RES":
+                        describle = "备用";
+                        break;
+                    case "RunTime":
+                        describle = "运行时间";
+                        break;
+                    case "Status":
+                        describle = "输送机状态";
+                        break;
+                    case "UPDATETIME":
+                        describle = "更新时间";
+                        break;
+                    case "UPDATEUSER":
+                        describle = "更新用户";
+                        break;
+                    case "VER":
+                        describle = "版本";
+                        break;
+                    case "WCSVERSION":
+                        describle = "WCS版本";
+                        break;
+                }
+                var values = new object[3];
+                values[0] = describle;
+                values[1] = proname;
+                values[2] = abc;
+                tb.Rows.Add(values);
+            }
+
+            //属性遍历
+
+            return tb;
+        }
+
+        public static DataTable GetAttributesDataTable(this RGVData obj)
+        {
+            var tb = new DataTable(obj.GetType().Name);
+            tb.Columns.Add("信号说明", typeof(string));
+            tb.Columns.Add("信号名称", typeof(string));
+            tb.Columns.Add("信号值", typeof(string));
+
+            foreach (PropertyInfo pi in obj.D521.GetType().GetProperties())
+            {
+                AttributeCollection attributes = TypeDescriptor.GetProperties(obj.D521.GetType())[pi.Name].Attributes;
+                DescriptionAttribute myAttribute = (DescriptionAttribute)attributes[typeof(DescriptionAttribute)];
+                string describle = myAttribute.Description;
+                string proname = pi.Name;
+                var abc = pi.GetValue(obj.D521, null);
+
+                switch (proname)
+                {
+                    case "DEVICE":
+                        describle = "设备";
+                        break;
+                    case "DestPosition_1":
+                        describle = "目标站台";
+                        break;
+                    case "DestPosition_2":
+                        describle = "目标站台";
+                        break;                   
+                    case "ENALBLE":
+                        describle = "是否可用";
+                        break;
+                    case "FRAME":
+                        describle = "时间";
+                        break;
+                    case "ID":
+                        describle = "ID";
+                        break;
+                    case "ISLAST":
+                        describle = "";
+                        break;
+                    case "Mileage":
+                        describle = "里程";
+                        break;
+                    case "PRIORITY_1":
+                        describle = "优先级";
+                        break;
+                    case "PRIORITY_2":
+                        describle = "优先级";
+                        break;
+                    case "Position":
+                        describle = "位置";
+                        break;
+                    case "RES1_1":
+                        describle = "备用";
+                        break;
+                    case "RES1_2":
+                        describle = "备用";
+                        break;
+                    case "RES2_1":
+                        describle = "备用";
+                        break;
+                    case "RES2_2":
+                        describle = "备用";
+                        break;
+                    case "RES_6":
+                        describle = "备用";
+                        break;
+                    case "RunTime":
+                        describle = "运行时间";
+                        break;
+                    case "StartPosition_1":
+                        describle = "起始站台";
+                        break;
+                    case "StartPosition_2":
+                        describle = "起始站台";
+                        break;
+                    case "Status_1":
+                        describle = "RGV运行状态";
+                        break;
+                    case "Status_2":
+                        describle = "RGV运行状态";
+                        break;
+                    case "SystemStatus":
+                        describle = "系统状态";
+                        break;
+                    case "TaskID_1":
+                        describle = "任务号";
+                        break;
+                    case "TaskID_2":
+                        describle = "任务号";
+                        break;
+                    case "TaskType_1":
+                        describle = "任务类型";
+                        break;
+                    case "TaskType_2":
+                        describle = "任务类型";
+                        break;
+                    case "Trigger_1":
+                        describle = "触发信号";
+                        break;
+                    case "Trigger_2":
+                        describle = "触发信号";
+                        break;                    
+                    case "UPDATETIME":
+                        describle = "更新时间";
+                        break;
+                    case "UPDATEUSER":
+                        describle = "更新用户";
+                        break;
+                    case "VER":
+                        describle = "版本";
+                        break;
+                    case "WCSVERSION":
+                        describle = "WCS版本";
+                        break;
+                    case "WorkMode":
+                        describle = "RGV运行模式";
+                        break;
+                }
+                var values = new object[3];
+                values[0] = describle;
+                values[1] = "DB521_" + proname;
+                values[2] = abc;
+                tb.Rows.Add(values);
+            }
+            foreach (PropertyInfo pi in obj.D520.GetType().GetProperties())
+            {
+                AttributeCollection attributes = TypeDescriptor.GetProperties(obj.D520.GetType())[pi.Name].Attributes;
+                DescriptionAttribute myAttribute = (DescriptionAttribute)attributes[typeof(DescriptionAttribute)];
+                string describle = myAttribute.Description;
+                string proname = pi.Name;
+                var abc = pi.GetValue(obj.D520, null);
+
+                switch (proname)
+                {
+                    case "DEVICE":
+                        describle = "设备";
+                        break;
+                    case "DestPosition_1":
+                        describle = "目标站台";
+                        break;
+                    case "DestPosition_2":
+                        describle = "目标站台";
+                        break;
+                    case "ENALBLE":
+                        describle = "是否可用";
+                        break;
+                    case "FRAME":
+                        describle = "时间";
+                        break;
+                    case "ID":
+                        describle = "ID";
+                        break;
+                    case "ISLAST":
+                        describle = "";
+                        break;
+                    case "PRIORITY_1":
+                        describle = "优先级";
+                        break;
+                    case "PRIORITY_2":
+                        describle = "优先级";
+                        break;
+                    case "Position":
+                        describle = "位置";
+                        break;
+                    case "RES1_1":
+                        describle = "备用";
+                        break;
+                    case "RES1_2":
+                        describle = "备用";
+                        break;
+                    case "RES2_1":
+                        describle = "备用";
+                        break;
+                    case "RES2_2":
+                        describle = "备用";
+                        break;
+                    case "StartPosition_1":
+                        describle = "起始地址,环穿RGV无起始地址,只有目标地址";
+                        break;
+                    case "StartPosition_2":
+                        describle = "起始地址,环穿RGV无起始地址,只有目标地址";
+                        break;
+                    case "TaskID_1":
+                        describle = "任务号";
+                        break;
+                    case "TaskID_2":
+                        describle = "任务号";
+                        break;
+                    case "TaskType_1":
+                        describle = "任务类型";
+                        break;
+                    case "TaskType_2":
+                        describle = "任务类型";
+                        break;
+                    case "Trigger_1":
+                        describle = "触发信号";
+                        break;
+                    case "Trigger_2":
+                        describle = "触发信号";
+                        break;
+                    case "UPDATETIME":
+                        describle = "更新时间";
+                        break;
+                    case "UPDATEUSER":
+                        describle = "更新用户";
+                        break;
+                    case "VER":
+                        describle = "版本";
+                        break;
+                    case "WCSVERSION":
+                        describle = "WCS版本";
+                        break;
+                }
+                var values = new object[3];
+                values[0] = describle;
+                values[1] = "DB520_" + proname;
+                values[2] = abc;
+                tb.Rows.Add(values);
+            }
+            foreach (PropertyInfo pi in obj.D523.GetType().GetProperties())
+            {
+                AttributeCollection attributes = TypeDescriptor.GetProperties(obj.D523.GetType())[pi.Name].Attributes;
+                DescriptionAttribute myAttribute = (DescriptionAttribute)attributes[typeof(DescriptionAttribute)];
+                string describle = myAttribute.Description;
+                string proname = "DB523_" + pi.Name;
+                var abc = pi.GetValue(obj.D523, null);
+
+                switch (pi.Name)
+                {
+                    case "DEVICE":
+                        describle = "设备";
+                        break;
+                    case "ENALBLE":
+                        describle = "是否可用";
+                        break;
+                    case "FRAME":
+                        describle = "时间";
+                        break;
+                    case "Fault":
+                        describle = "RGV故障";
+                        break;
+                    case "Fault_1":
+                        describle = "RGV1工位故障";
+                        break;
+                    case "Fault_2":
+                        describle = "RGV2工位故障";
+                        break;
+                    case "ISLAST":
+                        describle = "";
+                        break;
+                    case "Status":
+                        describle = "环穿状态";
+                        break;
+                    case "Status_1":
+                        describle = "1工位状态";
+                        break;
+                    case "Status_2":
+                        describle = "2工位状态";
+                        break;
+                    case "ID":
+                        describle = "ID";
+                        break;
+                    case "UPDATETIME":
+                        describle = "更新时间";
+                        break;
+                    case "UPDATEUSER":
+                        describle = "更新用户";
+                        break;
+                    case "VER":
+                        describle = "版本";
+                        break;
+                    case "WCSVERSION":
+                        describle = "WCS版本";
+                        break;
                 }
                 var values = new object[3];
                 values[0] = describle;

+ 7 - 1
WCS_Client/Frm/MBtn_Monitor/FrmEquMsg.cs

@@ -39,6 +39,11 @@ namespace WCS_Client.Frm
             //LCIList.Add(LCItemUtil.Add_TextboxX("STA_PLCNAME", "PLC名称:", 20, SubmitMethods, null));
             //LCIList[LCIList.Count - 1].Tag = new LCWhereInfo() { QWhereText = "Equ_PlcName like '%{0}%'" };
 
+            //LCIList.Add(LCItemUtil.Add_TextboxX("STA_EQUIPTYPE", "设备类型:", 20, SubmitMethods, null));
+            //LCIList[LCIList.Count - 1].Tag = new LCWhereInfo() { QWhereText = "Equ_Type like '%{0}%'" };
+
+
+
             LCIList.Add(LCItemUtil.Add_ButtonX("btn_QDB", "查询", 80, 30, SubmitMethods));
             LCIList.Add(LCItemUtil.Add_ButtonX("btn_QClear", "重置", 80, 30, SubmitMethods));
             //LCIList.Add(LCItemUtil.Add_ButtonX("updateEquNotes", "修改备注", 100, 30, SubmitMethods));
@@ -52,7 +57,8 @@ namespace WCS_Client.Frm
 
         private PageData QueryPageDataMethodsms(int PageIndex, int PageSize)
         {
-            string _SQLText = string.Format(@"SELECT distinct(DEVICECODE) FROM [dbo].[WCS_DEVICEPROTOCOL] WHERE ENABLED=1 ");
+
+            string _SQLText = string.Format(@"SELECT distinct(DEVICECODE) FROM [dbo].[WCS_DEVICEPROTOCOL] WHERE ENABLED=1 AND DEVICECODE NOT LIKE 'BCR%'");
             string _Orderby = "DEVICECODE asc";
 
             PageData pd = BaseWorkflow.QueryPageData(_SQLText, _Orderby, uC_QueryPage1.GetQueryWhere(), PageIndex, 3000);

+ 8 - 3
WCS_Client/Frm/MBtn_Monitor/FrmEquMsg_dtl.cs

@@ -24,6 +24,11 @@ namespace WCS_Client.Frm
         private void InitFrm()
         {
             var pack = eqpData.deviceDataPack;
+            if (pack is null)
+            {
+                MessageBox.Show("该设备无数据。");
+                return;
+            }
             if (pack.StationDatas.Datas.Any(p => p.Code == DEVICECODE))
             {
                 var convdata = pack.StationDatas;//输送机数据
@@ -38,11 +43,11 @@ namespace WCS_Client.Frm
 
             if (pack.RGVDatas.Datas.Any(p => p.Code == DEVICECODE))
             {
-                var rgvdata = pack.RGVDatas;//输送机数据
+                var rgvdata = pack.RGVDatas;//RGV数据
                 var plcItem = pack.RGVDatas.Datas.Where(o => o.Code == DEVICECODE).FirstOrDefault();
                 if (plcItem == null)
                 {
-                    MessageBox.Show("该设备无数据。");
+                    MessageBox.Show("该设备无数据。");                                             
                     return;
                 }
                 dt = plcItem.GetAttributesDataTable();
@@ -50,7 +55,7 @@ namespace WCS_Client.Frm
 
             if (pack.SCDatas.Datas.Any(p => p.Code == DEVICECODE))
             {
-                var rgvdata = pack.SCDatas;//输送机数据
+                var rgvdata = pack.SCDatas;//堆垛机数据
                 var plcItem = pack.SCDatas.Datas.Where(o => o.Code == DEVICECODE).FirstOrDefault();
                 if (plcItem == null)
                 {

+ 6 - 4
WCS_Client/Workflow/BaseWorkflow.cs

@@ -116,13 +116,15 @@ namespace WCS_Client
             int endRecord = startRecord + PageSize - 1;
             try
             {
-                int count = dt.Rows.Count;
-                int PageCount = count / PageSize;
-                if (count % PageSize > 0)
-                    PageCount += 1;
+                
 
                 if (dt != null && dt.Rows.Count > 0)
                 {
+                    int count = dt.Rows.Count;
+                    int PageCount = count / PageSize;
+                    if (count % PageSize > 0)
+                        PageCount += 1;
+
                     PageData PageDataItem = new PageData();
                     PageDataItem.PageIndex = PageIndex;
                     PageDataItem.PageSize = PageSize;