From 1e38f44af86775a341e4d0e4411d24ad35e417d3 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期五, 28 六月 2024 07:49:36 +0800
Subject: [PATCH] 调整平面图调用接口时间

---
 代码管理/PCS/WCS_Server/WIDESEA_WCS/Common/equipment/GetWheelDate.cs |  345 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 343 insertions(+), 2 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/equipment/GetWheelDate.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/equipment/GetWheelDate.cs"
index 87113ed..25dbade 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/equipment/GetWheelDate.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/equipment/GetWheelDate.cs"
@@ -3,8 +3,10 @@
 using System.Linq;
 using System.Reflection;
 using System.Text;
+using System.Text.RegularExpressions;
 using System.Threading.Tasks;
 using WIDESEA_Comm;
+using WIDESEA_Core.Extensions;
 using WIDESEA_WCS.WCSClient;
 
 namespace WIDESEA_WCS
@@ -12,13 +14,13 @@
     public class GetDate
     {
         /// <summary>
-        /// 鑾峰彇杞﹁疆鏁版嵁
+        /// 鑾峰彇杞﹁疆鏁版嵁淇℃伅
         /// </summary>
         public static List<WheelDBItem> GetWheelDate(PLCClient client)
         {
             List<WheelDBItem> wheelDBItems = new List<WheelDBItem>();
             PropertyInfo[] propertyInfos = typeof(WheelDBItem).GetProperties();
-            var groups = client.itemGroups.OrderBy(x => x.Methods).ThenBy(x => x.name).GroupBy(x => x.Methods).ToList();
+            var groups = client.itemGroups.Where(x => x.opratortype == "wheel").OrderBy(x => x.Methods).ThenBy(x => x.name).GroupBy(x => x.Methods).ToList();
             foreach (var key in groups)
             {
                 WheelDBItem StackerDBItem = new WheelDBItem();
@@ -56,5 +58,344 @@
             }
             return wheelDBItems;
         }
+        /// <summary>
+        /// 鑾峰彇VK鐘舵�佷俊鎭�
+        /// </summary>
+        /// <param name="client"></param>
+        /// <returns></returns>
+        public static List<VKDBItem> GetVKDate(PLCClient client)
+        {
+            List<VKDBItem> vKDBItems = new List<VKDBItem>();
+            PropertyInfo[] propertyInfos = typeof(VKDBItem).GetProperties();
+            var groups = client.itemGroups.Where(x => x.opratortype == "VK").OrderBy(x => x.Methods).ThenBy(x => x.name).GroupBy(x => x.Methods).ToList();
+            foreach (var key in groups)
+            {
+                VKDBItem StackerDBItem = new VKDBItem();
+                foreach (var propertyInfo in propertyInfos)
+                {
+                    if (propertyInfo.Name == "Name")
+                    {
+                        StackerDBItem.Name = key.Key;
+                    }
+                    else
+                    {
+                        DBItemGroup group = key.FirstOrDefault(x => x.name == propertyInfo.Name);
+                        if (group != null)
+                        {
+                            var readData = DBExtension.Read(group, client);
+                            switch (propertyInfo.Name)
+                            {
+                                case "power_on":
+                                    StackerDBItem.power_on = Convert.ToBoolean(readData);
+                                    break;
+                                case "ready_for_operate":
+                                    StackerDBItem.ready_for_operate = Convert.ToBoolean(readData);
+                                    break;
+                                case "ready_for_auto_start":
+                                    StackerDBItem.ready_for_auto_start = Convert.ToBoolean(readData);
+                                    break;
+                                case "VK_Fault":
+                                    StackerDBItem.VK_Fault = Convert.ToBoolean(readData);
+                                    break;
+                                case "bag_out_1_Fault":
+                                    StackerDBItem.bag_out_1_Fault = Convert.ToBoolean(readData);
+                                    break;
+                                case "bag_in_1_Fault":
+                                    StackerDBItem.bag_in_1_Fault = Convert.ToBoolean(readData);
+                                    break;
+                                case "bag_out_2_Fault":
+                                    StackerDBItem.bag_out_2_Fault = Convert.ToBoolean(readData);
+                                    break;
+                                case "bag_in_2_Fault":
+                                    StackerDBItem.bag_in_2_Fault = Convert.ToBoolean(readData);
+                                    break;
+                                case "safety_OK":
+                                    StackerDBItem.safety_OK = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_JOG_bag1":
+                                    StackerDBItem.state_JOG_bag1 = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_AUTO_bag1":
+                                    StackerDBItem.state_AUTO_bag1 = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_JOG_bag2":
+                                    StackerDBItem.state_JOG_bag2 = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_AUTO_bag2":
+                                    StackerDBItem.state_AUTO_bag2 = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_JOG_bag3":
+                                    StackerDBItem.state_JOG_bag3 = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_AUTO_bag3":
+                                    StackerDBItem.state_AUTO_bag3 = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_JOG_bag4":
+                                    StackerDBItem.state_JOG_bag4 = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_AUTO_bag4":
+                                    StackerDBItem.state_AUTO_bag4 = Convert.ToBoolean(readData);
+                                    break;
+                                case "safetydoor_1_closed":
+                                    StackerDBItem.safetydoor_1_closed = Convert.ToBoolean(readData);
+                                    break;
+                                case "safetydoor_2_closed":
+                                    StackerDBItem.safetydoor_2_closed = Convert.ToBoolean(readData);
+                                    break;
+                                case "safetydoor_3_closed":
+                                    StackerDBItem.safetydoor_3_closed = Convert.ToBoolean(readData);
+                                    break;
+                                case "safetydoor_4_closed":
+                                    StackerDBItem.safetydoor_4_closed = Convert.ToBoolean(readData);
+                                    break;
+                                case "safetydoor_5_closed":
+                                    StackerDBItem.safetydoor_5_closed = Convert.ToBoolean(readData);
+                                    break;
+                                case "safetydoor_6_closed":
+                                    StackerDBItem.safetydoor_6_closed = Convert.ToBoolean(readData);
+                                    break;
+                                case "safetydoor_7_closed":
+                                    StackerDBItem.safetydoor_7_closed = Convert.ToBoolean(readData);
+                                    break;
+                                case "safetydoor_8_closed":
+                                    StackerDBItem.safetydoor_8_closed = Convert.ToBoolean(readData);
+                                    break;
+                                case "safetydoor_9_closed":
+                                    StackerDBItem.safetydoor_9_closed = Convert.ToBoolean(readData);
+                                    break;
+                                case "vk_state":
+                                    StackerDBItem.vk_state = Convert.ToInt16(readData);
+                                    break;
+                            }
+                        }
+                    }
+                }
+                vKDBItems.Add(StackerDBItem);
+            }
+            return vKDBItems;
+        }
+        /// <summary>
+        /// 鑾峰彇鏈哄簥鐘舵�佷俊鎭�
+        /// </summary>
+        /// <param name="client"></param>
+        /// <returns></returns>
+        public static List<MachineDBItem> GetMachineDate(PLCClient client)
+        {
+            List<MachineDBItem> machineDBItems = new List<MachineDBItem>();
+            PropertyInfo[] propertyInfos = typeof(MachineDBItem).GetProperties();
+            var groups = client.itemGroups.Where(x => x.opratortype == "machine").OrderBy(x => x.Methods).ThenBy(x => x.name).GroupBy(x => x.Methods).ToList();
+            foreach (var key in groups)
+            {
+                MachineDBItem StackerDBItem = new MachineDBItem();
+                foreach (var propertyInfo in propertyInfos)
+                {
+                    if (propertyInfo.Name == "Name")
+                    {
+                        StackerDBItem.Name = key.Key;
+                    }
+                    else
+                    {
+                        DBItemGroup group = key.FirstOrDefault(x => x.name == propertyInfo.Name);
+                        if (group != null)
+                        {
+                            var readData = DBExtension.Read(group, client);
+                            switch (propertyInfo.Name)
+                            {
+                                case "Power_on":
+                                    StackerDBItem.Power_on = Convert.ToBoolean(readData);
+                                    break;
+                                case "Ready_for_operate":
+                                    StackerDBItem.Ready_for_operate = Convert.ToBoolean(readData);
+                                    break;
+                                case "Ready_for_Auto_start":
+                                    StackerDBItem.Ready_for_Auto_start = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_JOG":
+                                    StackerDBItem.state_JOG = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_MDA":
+                                    StackerDBItem.state_MDA = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_AUTO":
+                                    StackerDBItem.state_AUTO = Convert.ToBoolean(readData);
+                                    break;
+                                case "Safetydoors_closed":
+                                    StackerDBItem.Safetydoors_closed = Convert.ToBoolean(readData);
+                                    break;
+                                case "Spindel_running":
+                                    StackerDBItem.Spindel_running = Convert.ToBoolean(readData);
+                                    break;
+                                case "Kommunikation_IO":
+                                    StackerDBItem.Kommunikation_IO = Convert.ToBoolean(readData);
+                                    break;
+                                case "Hydraulik_fault":
+                                    StackerDBItem.Hydraulik_fault = Convert.ToBoolean(readData);
+                                    break;
+                                case "feeddrive_fault":
+                                    StackerDBItem.feeddrive_fault = Convert.ToBoolean(readData);
+                                    break;
+                                case "Maindrive_fault":
+                                    StackerDBItem.Maindrive_fault = Convert.ToBoolean(readData);
+                                    break;
+                                case "Machine_fault":
+                                    StackerDBItem.Machine_fault = Convert.ToBoolean(readData);
+                                    break;
+                                case "Coolant_fault":
+                                    StackerDBItem.Coolant_fault = Convert.ToBoolean(readData);
+                                    break;
+                                case "Chipremoval_fault":
+                                    StackerDBItem.Chipremoval_fault = Convert.ToBoolean(readData);
+                                    break;
+                                case "Coolant_ready_operate":
+                                    StackerDBItem.Coolant_ready_operate = Convert.ToBoolean(readData);
+                                    break;
+                                case "Chipremoval_ready_operat":
+                                    StackerDBItem.Chipremoval_ready_operat = Convert.ToBoolean(readData);
+                                    break;
+                                case "Emergency_Stop_machine":
+                                    StackerDBItem.Emergency_Stop_machine = Convert.ToBoolean(readData);
+                                    break;
+                                case "Breakdown_repair":
+                                    StackerDBItem.Breakdown_repair = Convert.ToBoolean(readData);
+                                    break;
+                                case "Breakdown_maintenance":
+                                    StackerDBItem.Breakdown_maintenance = Convert.ToBoolean(readData);
+                                    break;
+                                case "Breakdown_Toolchange":
+                                    StackerDBItem.Breakdown_Toolchange = Convert.ToBoolean(readData);
+                                    break;
+                                case "Breakdown_changeover":
+                                    StackerDBItem.Breakdown_changeover = Convert.ToBoolean(readData);
+                                    break;
+                                case "Programm_running":
+                                    StackerDBItem.Programm_running = Convert.ToBoolean(readData);
+                                    break;
+                                case "Prog_sel_side_1":
+                                    StackerDBItem.Prog_sel_side_1 = Convert.ToBoolean(readData);
+                                    break;
+                                case "Prog_sel_side_2":
+                                    StackerDBItem.Prog_sel_side_2 = Convert.ToBoolean(readData);
+                                    break;
+                                case "programm_side_1_finished":
+                                    StackerDBItem.programm_side_1_finished = Convert.ToBoolean(readData);
+                                    break;
+                                case "load_side_1_finished":
+                                    StackerDBItem.load_side_1_finished = Convert.ToBoolean(readData);
+                                    break;
+                                case "programm_side_2_finished":
+                                    StackerDBItem.programm_side_2_finished = Convert.ToBoolean(readData);
+                                    break;
+                                case "load_side_2_finished":
+                                    StackerDBItem.load_side_2_finished = Convert.ToBoolean(readData);
+                                    break;
+                                case "Toolchange_magazine_1":
+                                    StackerDBItem.Toolchange_magazine_1 = Convert.ToBoolean(readData);
+                                    break;
+                                case "Toolchange_magazine_2":
+                                    StackerDBItem.Toolchange_magazine_2 = Convert.ToBoolean(readData);
+                                    break;
+                                case "Changed_tool_mag_1":
+                                    StackerDBItem.Changed_tool_mag_1 = Convert.ToInt16(readData);
+                                    break;
+                                case "Dupl_tool_mag_1":
+                                    StackerDBItem.Dupl_tool_mag_1 = Convert.ToInt16(readData);
+                                    break;
+                                case "Changed_tool_mag_2":
+                                    StackerDBItem.Changed_tool_mag_2 = Convert.ToInt16(readData);
+                                    break;
+                                case "Dupl_tool_mag_2":
+                                    StackerDBItem.Dupl_tool_mag_2 = Convert.ToInt16(readData);
+                                    break;
+                                case "Parttype":
+                                    StackerDBItem.Parttype = Convert.ToInt16(readData);
+                                    break;
+                                case "partcounter":
+                                    StackerDBItem.partcounter = Convert.ToInt32(readData);
+                                    break;
+                                case "operator_ID":
+                                    StackerDBItem.operator_ID = Convert.ToInt16(readData);
+                                    break;
+                                case "machine_state":
+                                    StackerDBItem.machine_state = Convert.ToInt16(readData);
+                                    break;
+                            }
+                        }
+                    }
+                }
+                machineDBItems.Add(StackerDBItem);
+            }
+            return machineDBItems;
+        }
+        /// <summary>
+        /// 鑾峰彇妗佹灦鏈烘鎵嬬姸鎬佷俊鎭�
+        /// </summary>
+        /// <param name="client"></param>
+        /// <returns></returns>
+        public static List<GantryDBItem> GetGantryDate(PLCClient client)
+        {
+            List<GantryDBItem> gantryDBItems = new List<GantryDBItem>();
+            PropertyInfo[] propertyInfos = typeof(GantryDBItem).GetProperties();
+            var groups = client.itemGroups.Where(x => x.opratortype == "Gantry").OrderBy(x => x.Methods).ThenBy(x => x.name).GroupBy(x => x.Methods).ToList();
+            foreach (var key in groups)
+            {
+                GantryDBItem StackerDBItem = new GantryDBItem();
+                foreach (var propertyInfo in propertyInfos)
+                {
+                    if (propertyInfo.Name == "Name")
+                    {
+                        StackerDBItem.Name = key.Key;
+                    }
+                    else
+                    {
+                        DBItemGroup group = key.FirstOrDefault(x => x.name == propertyInfo.Name);
+                        if (group != null)
+                        {
+                            var readData = DBExtension.Read(group, client);
+                            switch (propertyInfo.Name)
+                            {
+                                case "power_on":
+                                    StackerDBItem.power_on = Convert.ToBoolean(readData);
+                                    break;
+                                case "ready_for_operate":
+                                    StackerDBItem.ready_for_operate = Convert.ToBoolean(readData);
+                                    break;
+                                case "ready_for_auto_start":
+                                    StackerDBItem.ready_for_auto_start = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_JOG":
+                                    StackerDBItem.state_JOG = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_MDA":
+                                    StackerDBItem.state_MDA = Convert.ToBoolean(readData);
+                                    break;
+                                case "state_AUTO":
+                                    StackerDBItem.state_AUTO = Convert.ToBoolean(readData);
+                                    break;
+                                case "communication_IO":
+                                    StackerDBItem.communication_IO = Convert.ToBoolean(readData);
+                                    break;
+                                case "drive_fault":
+                                    StackerDBItem.drive_fault = Convert.ToBoolean(readData);
+                                    break;
+                                case "portal_fault":
+                                    StackerDBItem.portal_fault = Convert.ToBoolean(readData);
+                                    break;
+                                case "emergency_stop_portal":
+                                    StackerDBItem.emergency_stop_portal = Convert.ToBoolean(readData);
+                                    break;
+                                case "programm_running":
+                                    StackerDBItem.programm_running = Convert.ToBoolean(readData);
+                                    break;
+                                case "gantry_state":
+                                    StackerDBItem.gantry_state = Convert.ToInt16(readData);
+                                    break;
+                            }
+                        }
+                    }
+                }
+                gantryDBItems.Add(StackerDBItem);
+            }
+            return gantryDBItems;
+        }
     }
 }

--
Gitblit v1.9.3