Explorar o código

fix VIDManager2 调整

jiangjy hai 2 semanas
pai
achega
0bbcfeda0b
Modificáronse 2 ficheiros con 1263 adicións e 1205 borrados
  1. 53 21
      FrameworkLocal/Common/FAServices/VIDManager2.cs
  2. 1210 1184
      Furnace/FurnaceRT/Config/FurnaceGemModel.xml

+ 53 - 21
FrameworkLocal/Common/FAServices/VIDManager2.cs

@@ -234,7 +234,7 @@ namespace MECF.Framework.Common.FAServices
                     data.UnitIndex = 1;
                     data.ParameterIndex = 1;
 
-                    moduleTypeParamIndex[data.Module][data.Type + data.Unit][data.Parameter] = long.Parse($"{ data.ModuleIndex}{data.TypeIndex.ToString().PadLeft(3, '0')}{ data.ParameterIndex.ToString().PadLeft(4, '0')}");
+                    moduleTypeParamIndex[data.Module][data.Type + data.Unit][data.Parameter] = long.Parse($"{data.ModuleIndex}{data.TypeIndex.ToString().PadLeft(2, '0')}{data.ParameterIndex.ToString().PadLeft(4, '0')}");
                     data.Index = moduleTypeParamIndex[data.Module][data.Type + data.Unit][data.Parameter];
                     continue;
                 }
@@ -248,7 +248,7 @@ namespace MECF.Framework.Common.FAServices
                     data.UnitIndex = 1;
                     data.ParameterIndex = 1;
 
-                    moduleTypeParamIndex[data.Module][data.Type + data.Unit][data.Parameter] = long.Parse($"{ data.ModuleIndex}{data.TypeIndex.ToString().PadLeft(3, '0')}{ data.ParameterIndex.ToString().PadLeft(4, '0')}");
+                    moduleTypeParamIndex[data.Module][data.Type + data.Unit][data.Parameter] = long.Parse($"{data.ModuleIndex}{data.TypeIndex.ToString().PadLeft(2, '0')}{data.ParameterIndex.ToString().PadLeft(4, '0')}");
                     data.Index = moduleTypeParamIndex[data.Module][data.Type + data.Unit][data.Parameter];
                     continue;
                 }
@@ -304,6 +304,10 @@ namespace MECF.Framework.Common.FAServices
             var svid = new VIDGenerator2("SVID", $"{PathManager.GetCfgDir().Replace("\\bin\\Debug", "")}VIDs\\_SVID.xml");
             svid.Initialize();
             svid.GenerateId(Singleton<DataManager>.Instance.VidDataList);
+            //foreach (var item in OriginalSvids)
+            //{
+            //    svid.VIDList.Add(item);
+            //}
             ExportSvid(svid.VIDList, true, true);
 
             //ECID
@@ -374,6 +378,11 @@ namespace MECF.Framework.Common.FAServices
             new VIDItem(){Name = "SpoolStartTime",Index = 12,DataType = "Ascii"},
             new VIDItem(){Name = "SpoolState",Index = 13,DataType = "Ascii"},
             new VIDItem(){Name = "SpoolSubstate",Index = 14,DataType = "Ascii"},
+            new VIDItem(){Name = "System.SideDummyAccuThickness",Index = 15,DataType = "List"},
+            new VIDItem(){Name = "System.SideDummyUseCount",Index = 16,DataType = "List"},
+            new VIDItem(){Name = "System.ExtraDummyAccuThickness",Index = 17,DataType = "List"},
+            new VIDItem(){Name = "System.ExtraDummyUseCount",Index = 18,DataType = "List"},
+
         };
 
         private List<VIDItem> OriginalEcids = new List<VIDItem>()
@@ -410,6 +419,8 @@ namespace MECF.Framework.Common.FAServices
                 ds.Tables[0].Columns.Add("ALID");
                 ds.Tables[0].Columns.Add("Name");
                 ds.Tables[0].Columns.Add("Description");
+                ds.Tables[0].Columns.Add("AlarmSet");
+                ds.Tables[0].Columns.Add("AlarmClear");
 
                 Dictionary<int, int> IdDictionary = new Dictionary<int, int>();
                 foreach (var item in lists)
@@ -431,6 +442,8 @@ namespace MECF.Framework.Common.FAServices
                     {
                         row[2] = item.Description;
                     }
+                    row[3] = $"10{item.ModuleIndex.ToString().PadLeft(3, '0')}01";
+                    row[4] = $"20{item.ModuleIndex.ToString().PadLeft(3, '0')}01";
                     ds.Tables[0].Rows.Add(row);
                 }
 
@@ -796,6 +809,27 @@ namespace MECF.Framework.Common.FAServices
                     }
                 }
 
+                var moduleAlarmEventsDictionary = new Dictionary<int, string>();
+                if (Alids != null)
+                {
+                    XmlNode itemNodes = xml.SelectSingleNode("Equipment/Alarms");
+                    itemNodes.RemoveAll();
+
+                    foreach (var alid in Alids)
+                    {
+                        XmlElement subNode = xml.CreateElement("ALID");
+                        subNode.SetAttribute("id", alid.Index.ToString());
+                        subNode.SetAttribute("logicalName", alid.Name);
+                        subNode.SetAttribute("description", alid.Description);
+                        subNode.SetAttribute("category", "EquipmentStatusWarning");
+                        subNode.SetAttribute("enabled", "false");
+                        subNode.SetAttribute("eventSet", $"10{alid.ModuleIndex.ToString().PadLeft(3, '0')}01");
+                        subNode.SetAttribute("eventClear", $"20{alid.ModuleIndex.ToString().PadLeft(3, '0')}01");
+                        itemNodes.AppendChild(subNode);
+                        moduleAlarmEventsDictionary[alid.ModuleIndex] = alid.Module;
+                    }
+                }
+
                 if (Ceids != null)
                 {
                     int reportID = 0;
@@ -860,29 +894,26 @@ namespace MECF.Framework.Common.FAServices
                         CEIDNodes.AppendChild(CEID);
                     }
 
-
+                    foreach (var alarmEvent in moduleAlarmEventsDictionary)
+                    {
+                        XmlElement EventSet = xml.CreateElement("CEID");
+                        EventSet.SetAttribute("id", $"10{alarmEvent.Key.ToString().PadLeft(3, '0')}01");
+                        EventSet.SetAttribute("logicalName", $"__SYSTEM__10{alarmEvent.Key.ToString().PadLeft(3, '0')}01__ALARMSET");
+                        EventSet.SetAttribute("description", $"Alarm Set : {alarmEvent.Value} Error");
+                        EventSet.SetAttribute("enabled", "true");
+                        CEIDNodes.AppendChild(EventSet);
+
+                        XmlElement EventClear = xml.CreateElement("CEID");
+                        EventClear.SetAttribute("id", $"20{alarmEvent.Key.ToString().PadLeft(3, '0')}01");
+                        EventClear.SetAttribute("logicalName", $"__SYSTEM__20{alarmEvent.Key.ToString().PadLeft(3, '0')}01__ALARMCLEAR");
+                        EventClear.SetAttribute("description", $"Alarm Clear : {alarmEvent.Value} Error");
+                        EventClear.SetAttribute("enabled", "true");
+                        CEIDNodes.AppendChild(EventClear);
+                    }
 
 
                 }
 
-                if (Alids != null)
-                {
-                    XmlNode itemNodes = xml.SelectSingleNode("Equipment/Alarms");
-                    itemNodes.RemoveAll();
-
-                    foreach (var alid in Alids)
-                    {
-                        XmlElement subNode = xml.CreateElement("ALID");
-                        subNode.SetAttribute("id", alid.Index.ToString());
-                        subNode.SetAttribute("logicalName", alid.Name);
-                        subNode.SetAttribute("description", alid.Description);
-                        subNode.SetAttribute("category", "EquipmentStatusWarning");
-                        subNode.SetAttribute("enabled", "false");
-                        subNode.SetAttribute("eventSet", "1" + alid.Index);
-                        subNode.SetAttribute("eventClear", "2" + alid.Index);
-                        itemNodes.AppendChild(subNode);
-                    }
-                }
 
                 xml.Save(_defaultPathFile);
             }
@@ -897,6 +928,7 @@ namespace MECF.Framework.Common.FAServices
             switch (VIDItemType.Replace("System.", ""))
             {
                 case "List":
+                case "FabConnect.SecsGemInterface.Common.SECsDataItem":
                     return "List";
                 case "I1":
                     return "I1";

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 1210 - 1184
Furnace/FurnaceRT/Config/FurnaceGemModel.xml