| | |
| | | using System.Text.RegularExpressions; |
| | | using System.Threading.Tasks; |
| | | using WIDESEA_Comm; |
| | | using WIDESEA_Comm.PLCDBItem; |
| | | using WIDESEA_Core.Extensions; |
| | | using WIDESEA_WCS.WCSClient; |
| | | |
| | |
| | | } |
| | | return gantryDBItems; |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// è·åæ¶æ²¹æºä¿¡æ¯ |
| | | /// </summary> |
| | | /// <param name="client"></param> |
| | | /// <returns></returns> |
| | | public static List<Oiling_machine> GetOiling_machine(PLCClient client) |
| | | { |
| | | List<Oiling_machine> gantryDBItems = new List<Oiling_machine>(); |
| | | PropertyInfo[] propertyInfos = typeof(Oiling_machine).GetProperties(); |
| | | var groups = client.itemGroups.Where(x => x.opratortype == "oiler").OrderBy(x => x.Methods).ThenBy(x => x.name).GroupBy(x => x.Methods).ToList(); |
| | | foreach (var key in groups) |
| | | { |
| | | try |
| | | { |
| | | Oiling_machine StackerDBItem = new Oiling_machine(); |
| | | 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 "R_Automatic_mode": |
| | | StackerDBItem.R_Automatic_mode = Convert.ToBoolean(readData); |
| | | break; |
| | | case "R_Manual_mode": |
| | | StackerDBItem.R_Manual_mode = Convert.ToBoolean(readData); |
| | | break; |
| | | case "R_AutoRunning": |
| | | StackerDBItem.R_AutoRunning = Convert.ToBoolean(readData); |
| | | break; |
| | | case "R_NO_FAULT": |
| | | StackerDBItem.R_NO_FAULT = Convert.ToBoolean(readData); |
| | | break; |
| | | case "R_state_power_on": |
| | | StackerDBItem.R_state_power_on = Convert.ToBoolean(readData); |
| | | break; |
| | | case "R_state_automatic_se_lected": |
| | | StackerDBItem.R_state_automatic_se_lected = Convert.ToBoolean(readData); |
| | | break; |
| | | case "R_EstopOK": |
| | | StackerDBItem.R_EstopOK = Convert.ToBoolean(readData); |
| | | break; |
| | | case "R_WheelOnPosition": |
| | | StackerDBItem.R_WheelOnPosition = Convert.ToBoolean(readData); |
| | | break; |
| | | case "R_Wheel_SN": |
| | | StackerDBItem.R_Wheel_SN = Convert.ToString(readData); |
| | | break; |
| | | case "R_Wheel_Type": |
| | | StackerDBItem.R_Wheel_Type = Convert.ToInt16(readData); |
| | | break; |
| | | case "R_Part_Status": |
| | | StackerDBItem.R_Part_Status = Convert.ToByte(readData); |
| | | break; |
| | | case "R_Part_Process": |
| | | StackerDBItem.R_Part_Process = Convert.ToByte(readData); |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | gantryDBItems.Add(StackerDBItem); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | |
| | | } |
| | | |
| | | } |
| | | return gantryDBItems; |
| | | } |
| | | |
| | | } |
| | | } |