From f2fa6dc87e1d47223f6eef349fa0c9679643d0a4 Mon Sep 17 00:00:00 2001 From: Lucio Maranta Date: Fri, 13 Apr 2018 15:45:38 +0200 Subject: [PATCH] Moved restorationIsActive field to signalR alarms Channel --- Step.Config/ServerConfigController.cs | 9 ++++++++- Step.Model/DTOModels/DTOAlarmsModel.cs | 15 +++++++++------ Step.NC/NcHandler.cs | 16 +++++++++++++--- Step/wwwroot/src/@types/signalr.alarms.d.ts | 3 ++- Step/wwwroot/src/modules/alarms-list.vue | 1 + Step/wwwroot/src/modules/alarms/alarm-detail.vue | 10 +--------- Step/wwwroot/src/store/alarms.store.ts | 3 +++ 7 files changed, 37 insertions(+), 20 deletions(-) diff --git a/Step.Config/ServerConfigController.cs b/Step.Config/ServerConfigController.cs index 34ae6404..79aa36d8 100644 --- a/Step.Config/ServerConfigController.cs +++ b/Step.Config/ServerConfigController.cs @@ -25,9 +25,16 @@ namespace Step.Config ReadAlarmsConfig(); ReadHeadsConfig(); } + catch (System.Xml.XmlException ex) + { + ExceptionManager.Manage(ERROR_LEVEL.FATAL, + "Error while reading file: " + ex.SourceUri + + "\n Error: " + ex.Message + ); + } catch (Exception ex) { - ExceptionManager.Manage(ex); + ExceptionManager.Manage(ERROR_LEVEL.FATAL, ex.Message); } } diff --git a/Step.Model/DTOModels/DTOAlarmsModel.cs b/Step.Model/DTOModels/DTOAlarmsModel.cs index 7bc6f2dc..f21174be 100644 --- a/Step.Model/DTOModels/DTOAlarmsModel.cs +++ b/Step.Model/DTOModels/DTOAlarmsModel.cs @@ -94,6 +94,7 @@ namespace Step.Model.DTOModels public uint Id; public string Message; public DateTime DateTime; + public bool RestorationIsEnabled; public override bool Equals(object obj) { @@ -114,12 +115,9 @@ namespace Step.Model.DTOModels } } - public class ProcessAlarmModel + public class ProcessAlarmModel : GenericAlarmModel { - public uint Id; - public string Message; public int Process; - public DateTime DateTime; public override bool Equals(object obj) { @@ -128,7 +126,10 @@ namespace Step.Model.DTOModels if (item == null) return false; - if (item.Process == Process && item.Id == Id) + if (!base.Equals(item)) + return false; + + if (item.Process == Process) return true; else return false; @@ -142,7 +143,9 @@ namespace Step.Model.DTOModels public class DTOPlcAlarmModel : PlcAlarmModel { - public DateTime dateTime; + public DateTime DateTime; + public bool RestorationIsEnabled; + public override bool Equals(object obj) { var item = obj as DTOPlcAlarmModel; diff --git a/Step.NC/NcHandler.cs b/Step.NC/NcHandler.cs index 36320333..ea0c9c2d 100644 --- a/Step.NC/NcHandler.cs +++ b/Step.NC/NcHandler.cs @@ -145,7 +145,8 @@ namespace Step.NC { Id = ncAlarm.Id, Message = ncAlarm.Message, - DateTime = DateTime.Now + DateTime = DateTime.Now, + RestorationIsEnabled = false }); } @@ -168,7 +169,8 @@ namespace Step.NC Id = processAlarm.Id, Message = processAlarm.Message, Process = processAlarm.Process, - DateTime = DateTime.Now + DateTime = DateTime.Now, + RestorationIsEnabled = false }); } } @@ -176,8 +178,15 @@ namespace Step.NC List plcAlarms = new List(); // Read PLC Active Messages cmsError = numericalControl.PLC_RActiveMessages(ref plcAlarms); + bool restorationIsEnabled = false; foreach (PlcAlarmModel plcAlarm in plcAlarms) { + var configuredAlarm = InitialAlarmsConfig.Where(x => x.PlcId == plcAlarm.Id).FirstOrDefault(); + if (configuredAlarm == null) + restorationIsEnabled = false; + else + restorationIsEnabled = configuredAlarm.RestoreIsActive; + // Create response list from plc data alarms.PlcAlarms.Add(new DTOPlcAlarmModel() { @@ -185,7 +194,8 @@ namespace Step.NC IsWarning = plcAlarm.IsWarning, Process = plcAlarm.Process, RestorationIsActive = plcAlarm.RestorationIsActive, - dateTime = DateTime.Now + DateTime = DateTime.Now, + RestorationIsEnabled = restorationIsEnabled }); } if (cmsError.errorCode != 0) diff --git a/Step/wwwroot/src/@types/signalr.alarms.d.ts b/Step/wwwroot/src/@types/signalr.alarms.d.ts index 49626d50..dccfc71a 100644 --- a/Step/wwwroot/src/@types/signalr.alarms.d.ts +++ b/Step/wwwroot/src/@types/signalr.alarms.d.ts @@ -11,7 +11,8 @@ declare module signalr_alarms { Message?: string, dateTime: Date, DateTime: Date, - isWarning: boolean + isWarning: boolean, + restorationIsEnabled: boolean } interface processAlarm extends genericAlarm { diff --git a/Step/wwwroot/src/modules/alarms-list.vue b/Step/wwwroot/src/modules/alarms-list.vue index bd55ff59..791e74f6 100644 --- a/Step/wwwroot/src/modules/alarms-list.vue +++ b/Step/wwwroot/src/modules/alarms-list.vue @@ -11,6 +11,7 @@ :processid="alarm.process" :alarmid="alarm.id" :restorationIsActive="alarm.restorationIsActive" + :restorationIsEnabled="alarm.restorationIsEnabled" @on-show-detail="selectAlarm(alarm)" v-for="alarm in alarms" :key="alarm.id">
diff --git a/Step/wwwroot/src/modules/alarms/alarm-detail.vue b/Step/wwwroot/src/modules/alarms/alarm-detail.vue index 30d2cc53..83ea3d1b 100644 --- a/Step/wwwroot/src/modules/alarms/alarm-detail.vue +++ b/Step/wwwroot/src/modules/alarms/alarm-detail.vue @@ -18,7 +18,7 @@

-
+
{{'alarm_manual_lbl_title' | localize('Procedura guidata')}} @@ -79,14 +79,6 @@ export default { }, recovery() { Hub.Current.RecoveryProcedure(this.alarm.id); - }, - isRecoveryVisible(){ - for(var a in this.$store.state.machineInfo.alarmsReset) - { - var r = this.$store.state.machineInfo.alarmsReset[a]; - if(r.id == this.alarm.id) return r.restoreIsEnabled; - } - return false; } } }; diff --git a/Step/wwwroot/src/store/alarms.store.ts b/Step/wwwroot/src/store/alarms.store.ts index 4d254ac8..79ebd12f 100644 --- a/Step/wwwroot/src/store/alarms.store.ts +++ b/Step/wwwroot/src/store/alarms.store.ts @@ -69,6 +69,7 @@ export const alarmsStore = { title: alarm.message, process: (alarm as any).process, restorationIsActive, + restorationIsEnabled: alarm.restorationIsEnabled, status: "active", type: "alarm" } as AlarmModel); @@ -94,6 +95,8 @@ export const alarmsStore = { description: null, title: alarm.message, process: (alarm as any).process, + restorationIsActive, + restorationIsEnabled: alarm.restorationIsEnabled, status: "active", type: "warning" } as AlarmModel);