From ca9551a08060b81fcb244e5f2ef068d6d7aace7f Mon Sep 17 00:00:00 2001 From: "VKMTHD\\franzjosefkober" <franz.josef.kober@ivt.tugraz.at> Date: Mon, 4 May 2020 09:24:03 +0200 Subject: [PATCH] enable to save airdrag data optional --- .../TempDataObject/AirdragComponentData.cs | 3 ++ VECTO3GUI/Util/XML/XMLCompletedBus.cs | 3 ++ VECTO3GUI/ViewModel/Impl/AirdragViewModel.cs | 29 ++++++++++++++----- VECTO3GUI/ViewModel/Interfaces/IAirdrag.cs | 1 + .../ViewModel/Interfaces/IAirdragViewModel.cs | 1 - 5 files changed, 28 insertions(+), 9 deletions(-) diff --git a/VECTO3GUI/Model/TempDataObject/AirdragComponentData.cs b/VECTO3GUI/Model/TempDataObject/AirdragComponentData.cs index ef0153e65d..b92fd10401 100644 --- a/VECTO3GUI/Model/TempDataObject/AirdragComponentData.cs +++ b/VECTO3GUI/Model/TempDataObject/AirdragComponentData.cs @@ -17,6 +17,7 @@ namespace VECTO3GUI.Model.TempDataObject public string Model { get; set; } public string CertificationNumber { get; set; } public DateTime? Date { get; set; } + public bool NoAirdragData { get; set; } public bool UseMeasuredValues { get; set; } public SquareMeter CdxA_0 { get; set; } public SquareMeter TransferredCdxA { get; set; } @@ -47,6 +48,7 @@ namespace VECTO3GUI.Model.TempDataObject public void ResetToComponentValues(IAirdragViewModel viewModel) { + viewModel.NoAirdragData = NoAirdragData; viewModel.Model = Model; viewModel.Manufacturer = Manufacturer; viewModel.CertificationNumber = CertificationNumber; @@ -73,6 +75,7 @@ namespace VECTO3GUI.Model.TempDataObject private void SetValues(IAirdragViewModel viewModel) { + NoAirdragData = viewModel.NoAirdragData; Model = viewModel.Model; Manufacturer = viewModel.Manufacturer; CertificationNumber = viewModel.CertificationNumber; diff --git a/VECTO3GUI/Util/XML/XMLCompletedBus.cs b/VECTO3GUI/Util/XML/XMLCompletedBus.cs index 7ab379e144..6654662a1d 100644 --- a/VECTO3GUI/Util/XML/XMLCompletedBus.cs +++ b/VECTO3GUI/Util/XML/XMLCompletedBus.cs @@ -127,6 +127,9 @@ namespace VECTO3GUI.Util.XML private XElement GetAirdrag(IAirdrag airdrag) { + if (airdrag.NoAirdragData) + return null; + return new XElement(_v26 + XMLNames.Component_AirDrag, new XAttribute("xmlns", _v20), diff --git a/VECTO3GUI/ViewModel/Impl/AirdragViewModel.cs b/VECTO3GUI/ViewModel/Impl/AirdragViewModel.cs index 70ae9f5f19..df389d3dbe 100644 --- a/VECTO3GUI/ViewModel/Impl/AirdragViewModel.cs +++ b/VECTO3GUI/ViewModel/Impl/AirdragViewModel.cs @@ -155,6 +155,18 @@ namespace VECTO3GUI.ViewModel.Impl public DigestData DigestValue { get; set; } + + public bool NoAirdragData + { + get { return _noAirdragData; } + set + { + SetProperty(ref _noAirdragData, value); + IsDataChanged(_noAirdragData, _componentData); + UseMeasurementData = !_noAirdragData; + } + } + #endregion public bool IsEditable @@ -169,13 +181,7 @@ namespace VECTO3GUI.ViewModel.Impl set { SetProperty(ref _useMeasurementData, value); } } - public bool NoAirdragData - { - get { return _noAirdragData; } - set { SetProperty(ref _noAirdragData, value); } - } - - + protected override void InputDataChanged() { var inputData = JobViewModel.InputDataProvider as IDeclarationInputDataProvider; @@ -221,7 +227,14 @@ namespace VECTO3GUI.ViewModel.Impl private void DoAirdragConfig(AirdragConfig config) { - + switch (config) { + case AirdragConfig.WithoutAirdrag: + NoAirdragData = true; + break; + case AirdragConfig.UseMeasurementData: + NoAirdragData = false; + break; + } } diff --git a/VECTO3GUI/ViewModel/Interfaces/IAirdrag.cs b/VECTO3GUI/ViewModel/Interfaces/IAirdrag.cs index 9d28b8a68a..aa59c689ee 100644 --- a/VECTO3GUI/ViewModel/Interfaces/IAirdrag.cs +++ b/VECTO3GUI/ViewModel/Interfaces/IAirdrag.cs @@ -10,6 +10,7 @@ namespace VECTO3GUI.ViewModel.Interfaces { public interface IAirdrag : ICommonComponentParameters { + bool NoAirdragData { get; set; } bool UseMeasuredValues { get; set; } SquareMeter CdxA_0 { get; set; } SquareMeter TransferredCdxA { get; set; } diff --git a/VECTO3GUI/ViewModel/Interfaces/IAirdragViewModel.cs b/VECTO3GUI/ViewModel/Interfaces/IAirdragViewModel.cs index f85fd276dd..3bfe460225 100644 --- a/VECTO3GUI/ViewModel/Interfaces/IAirdragViewModel.cs +++ b/VECTO3GUI/ViewModel/Interfaces/IAirdragViewModel.cs @@ -9,7 +9,6 @@ namespace VECTO3GUI.ViewModel.Interfaces IAirdragDeclarationInputData ModelData { get; } bool IsEditable { get; } - bool NoAirdragData { get; } bool UseMeasurementData { get; } ICommand LoadFileCommand { get; } -- GitLab