Browse Source

新增SVID boat膜厚数据

jiangjy 1 month ago
parent
commit
b931ec21e2

+ 1 - 0
Furnace/FurnaceRT/Config/FurnaceGemModel.xml

@@ -52,6 +52,7 @@
     <SVID id="12" valueType="Ascii" logicalName="SpoolStartTime" value="" eventTrigger="" units="" description="" isArray="false" />
     <SVID id="13" valueType="Ascii" logicalName="SpoolState" value="" eventTrigger="" units="" description="" isArray="false" />
     <SVID id="14" valueType="Ascii" logicalName="SpoolSubstate" value="" eventTrigger="" units="" description="" isArray="false" />
+    <SVID id="100" valueType="Ascii" logicalName="Boat.CurrentFilmThickness" value="" eventTrigger="" units="" description="" isArray="false" />
     <SVID id="10010001" valueType="Ascii" logicalName="CJQueue_Space" value="" eventTrigger="" units="" description="" isArray="false" />
     <SVID id="10010002" valueType="Ascii" logicalName="PJQueue_Space" value="" eventTrigger="" units="" description="" isArray="false" />
     <SVID id="10010003" valueType="Boolean" logicalName="System.HasActiveAlarm" value="" eventTrigger="" units="" description="" isArray="false" />

+ 1 - 0
Furnace/FurnaceRT/Equipments/PMs/PMModule.cs

@@ -447,6 +447,7 @@ namespace FurnaceRT.Equipments.PMs
             });
             InitOtherData();
             InitN2PurgeData();
+            InitScheduleMaintenanceSubscribe();
         }
 
         private void InitStats()

+ 19 - 0
Furnace/FurnaceRT/Equipments/PMs/PMScheduleMaintenance.cs

@@ -32,7 +32,26 @@ namespace FurnaceRT.Equipments.PMs
 {
     public partial class PMModule
     {
+        public void InitScheduleMaintenanceSubscribe()
+        {
+            DATA.Subscribe($"Boat.CurrentFilmThickness", () => GetBoatCurrentFilmThicknes());
+        }
+
         private List<ScheduleMaintenanceDataItem> _dbRecords { get; set; } = new List<ScheduleMaintenanceDataItem>();
+
+        public string GetBoatCurrentFilmThicknes()
+        {
+            var item = _dbRecords.FirstOrDefault(a => a.Item == MaintenanceItemEnum.BoatRecipeThickness1.ToString() && a.Path == $"{DataItemEnum.Boat}");
+
+            if (item == null)
+                return "0";
+
+            if (item != null && item.Item == MaintenanceItemEnum.BoatRecipeThickness1.ToString())
+                return item.CurrentValue.ToString();
+
+            return "0";
+
+        }
         public void GetAllDBRecord()
         {
             _dbRecords.Clear();