diff --git a/Thermo.Active.Model/DTOModels/ThIO/DTOChannelsIO.cs b/Thermo.Active.Model/DTOModels/ThIO/DTOChannelsIO.cs index 5f7efb57..35791054 100644 --- a/Thermo.Active.Model/DTOModels/ThIO/DTOChannelsIO.cs +++ b/Thermo.Active.Model/DTOModels/ThIO/DTOChannelsIO.cs @@ -21,11 +21,26 @@ namespace Thermo.Active.Model.DTOModels.ThIO { if (!(obj is DigitalIN item)) return false; - + if (Id != item.Id) + return false; + if (Bank != item.Bank) + return false; + if (Position != item.Position) + return false; + if (Page != item.Page) + return false; + if (Wire != Wire) + return false; + if (Profinet != item.Profinet) + return false; + if (Label != item.Label) + return false; + if (Visible != item.Visible) + return false; if (Value != item.Value) return false; - return base.Equals((IoItemConf)obj); + return true; } /// /// Hash gen @@ -45,10 +60,26 @@ namespace Thermo.Active.Model.DTOModels.ThIO if (!(obj is AnalogIN item)) return false; + if (Id != item.Id) + return false; + if (Bank != item.Bank) + return false; + if (Position != item.Position) + return false; + if (Page != item.Page) + return false; + if (Wire != Wire) + return false; + if (Profinet != item.Profinet) + return false; + if (Label != item.Label) + return false; + if (Visible != item.Visible) + return false; if (Value != item.Value) return false; - return base.Equals((IoItemConf)obj); + return true; } /// /// Hash gen @@ -71,6 +102,24 @@ namespace Thermo.Active.Model.DTOModels.ThIO if (!(obj is DigitalOUT item)) return false; + if (Id != item.Id) + return false; + if (Bank != item.Bank) + return false; + if (Position != item.Position) + return false; + if (Page != item.Page) + return false; + if (Wire != Wire) + return false; + if (Profinet != item.Profinet) + return false; + if (Label != item.Label) + return false; + if (Visible != item.Visible) + return false; + if (Value != item.Value) + return false; if (ForceEnabled != item.ForceEnabled) return false; if (ForceZero != item.ForceZero) @@ -80,7 +129,7 @@ namespace Thermo.Active.Model.DTOModels.ThIO if (IsForced != item.IsForced) return false; - return base.Equals((DigitalIN)obj); + return true; } /// /// Hash gen @@ -102,6 +151,24 @@ namespace Thermo.Active.Model.DTOModels.ThIO if (!(obj is AnalogOUT item)) return false; + if (Id != item.Id) + return false; + if (Bank != item.Bank) + return false; + if (Position != item.Position) + return false; + if (Page != item.Page) + return false; + if (Wire != Wire) + return false; + if (Profinet != item.Profinet) + return false; + if (Label != item.Label) + return false; + if (Visible != item.Visible) + return false; + if (Value != item.Value) + return false; if (ForceEnabled != item.ForceEnabled) return false; if (ForcedValue != item.ForcedValue) @@ -109,7 +176,7 @@ namespace Thermo.Active.Model.DTOModels.ThIO if (IsForced != item.IsForced) return false; - return base.Equals((AnalogIN)obj); + return true; } /// /// Hash gen diff --git a/Thermo.Active.Model/DTOModels/ThIO/DTOChannelsIOVal.cs b/Thermo.Active.Model/DTOModels/ThIO/DTOChannelsIOVal.cs index d327aefe..e4bd5b4d 100644 --- a/Thermo.Active.Model/DTOModels/ThIO/DTOChannelsIOVal.cs +++ b/Thermo.Active.Model/DTOModels/ThIO/DTOChannelsIOVal.cs @@ -19,13 +19,15 @@ namespace Thermo.Active.Model.DTOModels.ThIO public override bool Equals(object obj) { - if (!(obj is DigitalIN item)) + if (!(obj is DigInVal item)) return false; + if (Id != item.Id) + return false; if (Value != item.Value) return false; - return base.Equals((IoItemConf)obj); + return true; } /// /// Hash gen @@ -42,13 +44,15 @@ namespace Thermo.Active.Model.DTOModels.ThIO public override bool Equals(object obj) { - if (!(obj is AnalogIN item)) + if (!(obj is AnalInVal item)) return false; + if (Id != item.Id) + return false; if (Value != item.Value) return false; - return base.Equals((IoItemConf)obj); + return true; } /// /// Hash gen @@ -68,9 +72,11 @@ namespace Thermo.Active.Model.DTOModels.ThIO public override bool Equals(object obj) { - if (!(obj is DigitalOUT item)) + if (!(obj is DigOutVal item)) return false; + if (Id != item.Id) + return false; if (ForceEnabled != item.ForceEnabled) return false; if (ForceZero != item.ForceZero) @@ -79,8 +85,10 @@ namespace Thermo.Active.Model.DTOModels.ThIO return false; if (IsForced != item.IsForced) return false; + if (Value != item.Value) + return false; - return base.Equals((DigitalIN)obj); + return true; } /// /// Hash gen @@ -99,17 +107,21 @@ namespace Thermo.Active.Model.DTOModels.ThIO public override bool Equals(object obj) { - if (!(obj is AnalogOUT item)) + if (!(obj is AnalOutVal item)) return false; + if (Id != item.Id) + return false; if (ForceEnabled != item.ForceEnabled) return false; if (ForcedValue != item.ForcedValue) return false; if (IsForced != item.IsForced) return false; + if (Value != item.Value) + return false; - return base.Equals((AnalogIN)obj); + return true; } /// /// Hash gen diff --git a/Thermo.Active/Listeners/SignalR/SignalRListener.cs b/Thermo.Active/Listeners/SignalR/SignalRListener.cs index ee78b783..4fd0c6ad 100644 --- a/Thermo.Active/Listeners/SignalR/SignalRListener.cs +++ b/Thermo.Active/Listeners/SignalR/SignalRListener.cs @@ -562,7 +562,7 @@ namespace Thermo.Active.Listeners.SignalR { // recupero var element = LastChannelsIoData.DI.Find(x => x.Id == item.Id); - if ((element == null) || (!item.Value.Equals(element))) + if ((element == null) || (!item.Equals(element))) { diffChannelsData.DI.Add(item); } @@ -572,7 +572,7 @@ namespace Thermo.Active.Listeners.SignalR { // recupero var element = LastChannelsIoData.DO.Find(x => x.Id == item.Id); - if ((element == null) || (!item.Value.Equals(element))) + if ((element == null) || (!item.Equals(element))) { diffChannelsData.DO.Add(item); } @@ -582,7 +582,7 @@ namespace Thermo.Active.Listeners.SignalR { // recupero var element = LastChannelsIoData.AI.Find(x => x.Id == item.Id); - if ((element == null) || (!item.Value.Equals(element))) + if ((element == null) || (!item.Value.Equals(element.Value))) { diffChannelsData.AI.Add(item); } @@ -592,7 +592,7 @@ namespace Thermo.Active.Listeners.SignalR { // recupero var element = LastChannelsIoData.AO.Find(x => x.Id == item.Id); - if ((element == null) || (!item.Value.Equals(element))) + if ((element == null) || (!item.Value.Equals(element.Value))) { diffChannelsData.AO.Add(item); } @@ -602,10 +602,10 @@ namespace Thermo.Active.Listeners.SignalR if (diffChannelsData.DI.Count + diffChannelsData.DO.Count + diffChannelsData.AI.Count + diffChannelsData.AO.Count > 0) { // salvo update CLONANDO - LastChannelsIoData.DI = currChannelsIoData.DI.Clone(); - LastChannelsIoData.DO = currChannelsIoData.DO.Clone(); - LastChannelsIoData.AI = currChannelsIoData.AI.Clone(); - LastChannelsIoData.AO = currChannelsIoData.AO.Clone(); + LastChannelsIoData.DI = currChannelsIoData.DI; + LastChannelsIoData.DO = currChannelsIoData.DO; + LastChannelsIoData.AI = currChannelsIoData.AI; + LastChannelsIoData.AO = currChannelsIoData.AO; var context = GlobalHost.ConnectionManager.GetHubContext(); context.Clients.Group("ncData").channelsIoVal(diffChannelsData); } @@ -662,6 +662,8 @@ namespace Thermo.Active.Listeners.SignalR group.headsData(LastHeadsData); // Send Axis Info data group.axisInfo(LastAxisInfoData); + // Send Axis Info data + group.SendThermoChannelsIoData(LastChannelsIoData); // Send active program data group.activeProgramData(LastProgramData); // Send magazine is active data diff --git a/Thermo.Active/Properties/AssemblyInfo.cs b/Thermo.Active/Properties/AssemblyInfo.cs index 052aea09..48d6809d 100644 --- a/Thermo.Active/Properties/AssemblyInfo.cs +++ b/Thermo.Active/Properties/AssemblyInfo.cs @@ -30,4 +30,4 @@ using System.Runtime.InteropServices; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.1.156")] +[assembly: AssemblyVersion("1.1.158")] diff --git a/Thermo.Active/wwwroot/src/app_modules_thermo/components/numeric.ts b/Thermo.Active/wwwroot/src/app_modules_thermo/components/numeric.ts index 5f5bde4a..a823197f 100644 --- a/Thermo.Active/wwwroot/src/app_modules_thermo/components/numeric.ts +++ b/Thermo.Active/wwwroot/src/app_modules_thermo/components/numeric.ts @@ -1,3 +1,4 @@ +import { TimeLineChartHeader } from "@/components/timeline-chart"; import { debounce } from "@/_base/debounce"; import Vue from "vue"; import Component from "vue-class-component"; @@ -103,6 +104,8 @@ export default class Numeric extends Vue { this.focused = false; this.value.setpointHMI = this.setPoint.setpointHMI; }) + + this.$emit("update", this.setPoint.setpointHMI); } } \ No newline at end of file diff --git a/Thermo.Active/wwwroot/src/app_modules_thermo/sotto-cofano/Assi/components/assi/assi.vue b/Thermo.Active/wwwroot/src/app_modules_thermo/sotto-cofano/Assi/components/assi/assi.vue index e79b65b8..a5d8604d 100644 --- a/Thermo.Active/wwwroot/src/app_modules_thermo/sotto-cofano/Assi/components/assi/assi.vue +++ b/Thermo.Active/wwwroot/src/app_modules_thermo/sotto-cofano/Assi/components/assi/assi.vue @@ -1,9 +1,7 @@