diff --git a/VECTO3GUI2020/Ninject/MultiStageViewModelFactory.cs b/VECTO3GUI2020/Ninject/MultiStageViewModelFactory.cs index e62c06a5ebf839b3b8b31c2cbd98f09f9e2c1887..5f2bc79206ae6517b0fede51ce06d44229bf42c1 100644 --- a/VECTO3GUI2020/Ninject/MultiStageViewModelFactory.cs +++ b/VECTO3GUI2020/Ninject/MultiStageViewModelFactory.cs @@ -37,7 +37,7 @@ namespace VECTO3GUI2020.Ninject return _multiStageVmFactoryDefaultInstanceProvider.GetNewMultistageJobViewModel(); } - public IMultiStageJobViewModel GetMultiStageJobViewModel(IMultistageBusInputDataProvider inputData) + public IMultiStageJobViewModel GetMultiStageJobViewModel(IMultistepBusInputDataProvider inputData) { return _multiStageVmFactoryDefaultInstanceProvider.GetMultiStageJobViewModel(inputData); } diff --git a/VECTO3GUI2020/ViewModel/Implementation/JobListViewModel.cs b/VECTO3GUI2020/ViewModel/Implementation/JobListViewModel.cs index 64af8453d7fa9575b0a459a00968c71a33635648..dc2588672303f90648884390115496406cbac799 100644 --- a/VECTO3GUI2020/ViewModel/Implementation/JobListViewModel.cs +++ b/VECTO3GUI2020/ViewModel/Implementation/JobListViewModel.cs @@ -284,7 +284,7 @@ namespace VECTO3GUI2020.ViewModel.Implementation var documentType = XMLHelper.GetDocumentType(xElement?.DocumentElement?.LocalName); if (documentType == XmlDocumentType.MultistepOutputData) { - var inputDataProvider = _inputDataReader.Create(fileName) as IMultistageBusInputDataProvider; + var inputDataProvider = _inputDataReader.Create(fileName) as IMultistepBusInputDataProvider; return Task.FromResult(_multiStageViewModelFactory.GetMultiStageJobViewModel(inputDataProvider) as IDocumentViewModel); } else if (documentType == XmlDocumentType.DeclarationJobData) @@ -495,7 +495,7 @@ namespace VECTO3GUI2020.ViewModel.Implementation } else if (XMLNames.VectoOutputMultistep.Equals(rootNode, StringComparison.InvariantCultureIgnoreCase)) { using (var reader = XmlReader.Create(fullFileName)) { - input = new XMLDeclarationVIFInputData(xmlReader.Create(fullFileName) as IMultistageBusInputDataProvider, null); + input = new XMLDeclarationVIFInputData(xmlReader.Create(fullFileName) as IMultistepBusInputDataProvider, null); FileWriter = new FileOutputVIFWriter(fullFileName, (jobEntry as MultiStageJobViewModel_v0_1).ManufacturingStages?.Count ?? 0); } diff --git a/VECTO3GUI2020/ViewModel/MultiStage/Implementation/MultistageJobViewModel_v0_1.cs b/VECTO3GUI2020/ViewModel/MultiStage/Implementation/MultistageJobViewModel_v0_1.cs index 0e4fa28a6e30b84d0ac70e629f8d739340545ad8..250aff162fa57b7b9c5786b0ea6c1b47a7306bb2 100644 --- a/VECTO3GUI2020/ViewModel/MultiStage/Implementation/MultistageJobViewModel_v0_1.cs +++ b/VECTO3GUI2020/ViewModel/MultiStage/Implementation/MultistageJobViewModel_v0_1.cs @@ -31,7 +31,7 @@ using XmlDocumentType = TUGraz.VectoCore.Utils.XmlDocumentType; namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation { - public interface IMultiStageJobViewModel : IDeclarationMultistageJobInputData, IMultistageVIFInputData, IMultistageBusInputDataProvider, IJobViewModel, IEditViewModel + public interface IMultiStageJobViewModel : IDeclarationMultistageJobInputData, IMultistageVIFInputData, IMultistepBusInputDataProvider, IJobViewModel, IEditViewModel { IManufacturingStageViewModel ManufacturingStageViewModel { get; } bool Exempted { get; } @@ -66,7 +66,7 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation set => SetProperty(ref _manufacturingStageViewModel, value); } - public MultiStageJobViewModel_v0_1(IMultistageBusInputDataProvider inputData, + public MultiStageJobViewModel_v0_1(IMultistepBusInputDataProvider inputData, IMultiStageViewModelFactory vmFactory, IMultistageDependencies multistageDependencies, IXMLInputDataReader inputDataReader, @@ -311,7 +311,7 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation private readonly Lazy<IDialogHelper> _dialogHelper; private readonly IMultistageDependencies _multistageDependencies; private readonly DataSource _dataSource; - private readonly IMultistageBusInputDataProvider _inputData; + private readonly IMultistepBusInputDataProvider _inputData; private bool _selected; private readonly bool _exempted; private readonly IJobListViewModel _jobListViewModel; @@ -363,7 +363,7 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation public IVehicleDeclarationInputData VehicleInputData => _manufacturingStageViewModel.Vehicle; - public IMultistageBusInputDataProvider MultistageJobInputData => this; + public IMultistepBusInputDataProvider MultistageJobInputData => this; #endregion diff --git a/VECTO3GUI2020/ViewModel/MultiStage/Implementation/NewMultiStageJobViewModel.cs b/VECTO3GUI2020/ViewModel/MultiStage/Implementation/NewMultiStageJobViewModel.cs index b3bfb612b3134a43abc35ce54a3040a5330b73e0..6f7ae23bba1e830f892026f95f273a9a4117621c 100644 --- a/VECTO3GUI2020/ViewModel/MultiStage/Implementation/NewMultiStageJobViewModel.cs +++ b/VECTO3GUI2020/ViewModel/MultiStage/Implementation/NewMultiStageJobViewModel.cs @@ -80,10 +80,10 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Implementation { return; } - IMultistageBusInputDataProvider inputDataProvider = null; + IMultistepBusInputDataProvider inputDataProvider = null; try { - inputDataProvider = _inputDataReader.Create(fileName) as IMultistageBusInputDataProvider; + inputDataProvider = _inputDataReader.Create(fileName) as IMultistepBusInputDataProvider; } catch (Exception e) { diff --git a/VECTO3GUI2020/ViewModel/MultiStage/Interfaces/IMultiStageViewModelFactory.cs b/VECTO3GUI2020/ViewModel/MultiStage/Interfaces/IMultiStageViewModelFactory.cs index 33cad2ad89c2b53d96dc056a0e7dad2cd348717b..cc48e57667c98b9967de9e5c78e3e4843781fc5b 100644 --- a/VECTO3GUI2020/ViewModel/MultiStage/Interfaces/IMultiStageViewModelFactory.cs +++ b/VECTO3GUI2020/ViewModel/MultiStage/Interfaces/IMultiStageViewModelFactory.cs @@ -43,7 +43,7 @@ namespace VECTO3GUI2020.ViewModel.MultiStage.Interfaces IDocumentViewModel GetStageInputViewModel(bool exemptedVehicle); IViewModelBase GetNewMultistageJobViewModel(); - IMultiStageJobViewModel GetMultiStageJobViewModel(IMultistageBusInputDataProvider inputData); + IMultiStageJobViewModel GetMultiStageJobViewModel(IMultistepBusInputDataProvider inputData); IVehicleViewModel GetInterimStageVehicleViewModel(); diff --git a/Vecto3GUI2020Test/ViewModelTests/ExemptedTests.cs b/Vecto3GUI2020Test/ViewModelTests/ExemptedTests.cs index 9cf11d8a5ce7b1c78f7bb2b29ce035c9733b078c..6eb5103bdf51a8728ac17f4c40f1ed8250a8cce6 100644 --- a/Vecto3GUI2020Test/ViewModelTests/ExemptedTests.cs +++ b/Vecto3GUI2020Test/ViewModelTests/ExemptedTests.cs @@ -146,7 +146,7 @@ namespace Vecto3GUI2020Test.ViewModelTests Assert.AreEqual(2, jobListVm.Jobs.Count); Assert.AreEqual(result, jobListVm.Jobs[1].DataSource.SourceFile); - var inputDataProvider = _testHelper.GetInputDataProvider(result) as IMultistageBusInputDataProvider; + var inputDataProvider = _testHelper.GetInputDataProvider(result) as IMultistepBusInputDataProvider; Assert.NotNull(inputDataProvider); //Check added Manufacturing Stage diff --git a/VectoCommon/VectoCommon/Hashing/VectoComponents.cs b/VectoCommon/VectoCommon/Hashing/VectoComponents.cs index b97727778b32ecf03505bd77a671827ecd9b4e65..abc1aff1bff0d2c00922031823c6e5201b15d235 100644 --- a/VectoCommon/VectoCommon/Hashing/VectoComponents.cs +++ b/VectoCommon/VectoCommon/Hashing/VectoComponents.cs @@ -45,9 +45,10 @@ namespace TUGraz.VectoCommon.Hashing Airdrag, Tyre, Vehicle, - VectoOutput, + VectoManufacturerReport, VectoCustomerInformation, VectoPrimaryVehicleInformation, + VectoInterimVehicleInformation, VectoManufacturingStep, BatterySystem, CapacitorSystem, @@ -81,7 +82,7 @@ namespace TUGraz.VectoCommon.Hashing return XMLNames.AxleWheels_Axles_Axle_Tyre; case VectoComponents.Vehicle: return XMLNames.Component_Vehicle; - case VectoComponents.VectoOutput: + case VectoComponents.VectoManufacturerReport: return "VectoOutput"; case VectoComponents.VectoCustomerInformation: return "VectoCustomerInformation"; @@ -127,12 +128,14 @@ namespace TUGraz.VectoCommon.Hashing return "AD-"; case VectoComponents.Tyre: return "TYRE-"; - case VectoComponents.VectoOutput: - return "RESULT-"; + case VectoComponents.VectoManufacturerReport: + return "MRF-"; case VectoComponents.VectoCustomerInformation: - return "COC-"; + return "CIF-"; case VectoComponents.VectoPrimaryVehicleInformation: - return "PIF-"; + return "VIF_P-"; + case VectoComponents.VectoInterimVehicleInformation: + return "VIF_I-"; case VectoComponents.Vehicle: return "VEH-"; case VectoComponents.VectoManufacturingStep: @@ -160,7 +163,7 @@ namespace TUGraz.VectoCommon.Hashing { switch (component) { case VectoComponents.VectoCustomerInformation: - case VectoComponents.VectoOutput: + case VectoComponents.VectoManufacturerReport: case VectoComponents.VectoPrimaryVehicleInformation: case VectoComponents.VectoManufacturingStep: return true; diff --git a/VectoCommon/VectoCommon/InputData/IInputDataProvider.cs b/VectoCommon/VectoCommon/InputData/IInputDataProvider.cs index e22dcc4707a8abb1b4b75140946d9b213d832b25..96a6089f3b762cabfed412fcba165038f3cc98cc 100644 --- a/VectoCommon/VectoCommon/InputData/IInputDataProvider.cs +++ b/VectoCommon/VectoCommon/InputData/IInputDataProvider.cs @@ -89,7 +89,7 @@ namespace TUGraz.VectoCommon.InputData - public interface IMultistageBusInputDataProvider : IDeclarationInputDataProvider + public interface IMultistepBusInputDataProvider : IDeclarationInputDataProvider { new IDeclarationMultistageJobInputData JobInputData { get; } } @@ -124,7 +124,7 @@ namespace TUGraz.VectoCommon.InputData public interface IMultistageVIFInputData : IInputDataProvider { IVehicleDeclarationInputData VehicleInputData { get; } - IMultistageBusInputDataProvider MultistageJobInputData { get; } + IMultistepBusInputDataProvider MultistageJobInputData { get; } } } diff --git a/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs b/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs index 288709fde879e0f541b469a3a14257c52c7520b0..5bd99a03692d08fe4b511aec8593a07feeb8bce3 100644 --- a/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs +++ b/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs @@ -3957,6 +3957,15 @@ namespace TUGraz.VectoCommon.Resources { } } + /// <summary> + /// Looks up a localized string similar to ManufacturerRecordSignature. + /// </summary> + public static string Report_ManufacturerRecord_Signature { + get { + return ResourceManager.GetString("Report_ManufacturerRecord_Signature", resourceCulture); + } + } + /// <summary> /// Looks up a localized string similar to EnergyConsumption. /// </summary> diff --git a/VectoCommon/VectoCommon/Resources/XMLNames.resx b/VectoCommon/VectoCommon/Resources/XMLNames.resx index 31ae3f17620dbb7e60ff0fb2c586210e6a528e81..ff407bcb2eded8fd0f5b522dbd028acbb08f1435 100644 --- a/VectoCommon/VectoCommon/Resources/XMLNames.resx +++ b/VectoCommon/VectoCommon/Resources/XMLNames.resx @@ -1020,6 +1020,9 @@ <data name="Report_ResultData_Signature" xml:space="preserve"> <value>ResultDataSignature</value> </data> + <data name="Report_ManufacturerRecord_Signature" xml:space="preserve"> + <value>ManufacturerRecordSignature</value> + </data> <data name="Report_Result_Payload" xml:space="preserve"> <value>Payload</value> </data> diff --git a/VectoCommon/VectoHashing/VectoHash.cs b/VectoCommon/VectoHashing/VectoHash.cs index 9b0c9c6b1dc05bf9e4b6365afefb1d9c1c30c3a0..e389713ead82e7ce606c8408d317dce0eadf9f68 100644 --- a/VectoCommon/VectoHashing/VectoHash.cs +++ b/VectoCommon/VectoHashing/VectoHash.cs @@ -288,7 +288,7 @@ namespace TUGraz.VectoHashing return components.First(); } if (Document.DocumentElement.LocalName.Equals("VectoOutput")) { - return VectoComponents.VectoOutput; + return VectoComponents.VectoManufacturerReport; } if (Document.DocumentElement.LocalName.Equals("VectoCustomerInformation")) { return VectoComponents.VectoCustomerInformation; diff --git a/VectoCommon/VectoHashingTest/VectoHashTest.cs b/VectoCommon/VectoHashingTest/VectoHashTest.cs index af3457ba5635fa09e1b1dc0874efb977a037c7ed..066dd767fe7b54c637f338699e8c86fe7efb892c 100644 --- a/VectoCommon/VectoHashingTest/VectoHashTest.cs +++ b/VectoCommon/VectoHashingTest/VectoHashTest.cs @@ -640,7 +640,7 @@ namespace VectoHashingTest var reader = XmlReader.Create(file); - var vif = xmlInputReader.CreateDeclaration(reader) as IMultistageBusInputDataProvider; + var vif = xmlInputReader.CreateDeclaration(reader) as IMultistepBusInputDataProvider; var inputDataProvider = new XMLDeclarationVIFInputData(vif, null); diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs index d8c01262e7187315dd58a4573755b94eaa6e931a..cb1d9668c0c121abf7171690cccda88dea71c927 100644 --- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs +++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs @@ -1030,7 +1030,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON //PrimaryVehicle = CreateReader(primaryInputData); Vehicle = _xmlInputReader.CreateDeclaration(CompletedInputDataFile).JobInputData.Vehicle; - PrimaryVehicleData = (_xmlInputReader.Create(PrimaryInputDataFile) as IMultistageBusInputDataProvider); + PrimaryVehicleData = (_xmlInputReader.Create(PrimaryInputDataFile) as IMultistepBusInputDataProvider); //JobName = Vehicle.VIN; } @@ -1053,7 +1053,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON //#region Implementation of IDeclarationInputDataProvider //public IDeclarationJobInputData JobInputData => this; - public IMultistageBusInputDataProvider PrimaryVehicleData { get; } + public IMultistepBusInputDataProvider PrimaryVehicleData { get; } //public XElement XMLHash { get; } //#endregion @@ -1070,7 +1070,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON #region Implementation of IMultistageVIFInputData public IVehicleDeclarationInputData VehicleInputData => Vehicle; - public IMultistageBusInputDataProvider MultistageJobInputData => PrimaryVehicleData; + public IMultistepBusInputDataProvider MultistageJobInputData => PrimaryVehicleData; #endregion } diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationMultistageInputData.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationMultistageInputData.cs index be1422f965f3820779070d645da017d8783f2c31..8d45c71e4fbc6da601b81b3d401d7d8685dcdc80 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationMultistageInputData.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationMultistageInputData.cs @@ -218,10 +218,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider public class XMLDeclarationVIFInputData : IMultistageVIFInputData { - private readonly IMultistageBusInputDataProvider _multistageJobInputData; + private readonly IMultistepBusInputDataProvider _multistageJobInputData; private readonly IVehicleDeclarationInputData _vehicleInput; - public XMLDeclarationVIFInputData(IMultistageBusInputDataProvider multistageJobInputData, + public XMLDeclarationVIFInputData(IMultistepBusInputDataProvider multistageJobInputData, IVehicleDeclarationInputData vehicleInput) { _multistageJobInputData = multistageJobInputData; @@ -230,7 +230,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider public IVehicleDeclarationInputData VehicleInputData => _vehicleInput; - public IMultistageBusInputDataProvider MultistageJobInputData => _multistageJobInputData; + public IMultistepBusInputDataProvider MultistageJobInputData => _multistageJobInputData; public DataSource DataSource { get; } } diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Interfaces/IXMLDeclarationInputData.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Interfaces/IXMLDeclarationInputData.cs index 37de4917517342fc4abe7c4f7159064a273332af..eb247dd05d26dabb1f4bbd620e299af4527bddd0 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Interfaces/IXMLDeclarationInputData.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Interfaces/IXMLDeclarationInputData.cs @@ -48,7 +48,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Interfaces XmlNode ApplicationInformationNode { get; } } - public interface IXMLMultistageInputDataProvider : IMultistageBusInputDataProvider, IXMLResource + public interface IXMLMultistageInputDataProvider : IMultistepBusInputDataProvider, IXMLResource { IXMLDeclarationMultistageVehicleInputDataReader Reader { set; } } diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/XMLInputDataFactory.cs b/VectoCore/VectoCore/InputData/FileIO/XML/XMLInputDataFactory.cs index 31163f17f984a89a0828caa419b6856163e548b9..0a144792ccb442b556c992178fb3ad4566311877 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/XMLInputDataFactory.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/XMLInputDataFactory.cs @@ -155,7 +155,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML } } - protected virtual IMultistageBusInputDataProvider ReadMultistageDeclarationJob(XmlDocument xmlDoc, string source) + protected virtual IMultistepBusInputDataProvider ReadMultistageDeclarationJob(XmlDocument xmlDoc, string source) { var versionNumber = XMLHelper.GetXsdType(xmlDoc.DocumentElement?.SchemaInfo.SchemaType); try { diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeCompletedMultistageBusVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeCompletedMultistageBusVectoRunDataFactory.cs index a0ed7404c4a83a526265e5bdbf157884cd5fe310..7d9a3523e5079a18b21af8309ed0bfc1b1f022fd 100644 --- a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeCompletedMultistageBusVectoRunDataFactory.cs +++ b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeCompletedMultistageBusVectoRunDataFactory.cs @@ -18,7 +18,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl { public class DeclarationModeCompletedMultistageBusVectoRunDataFactory : LoggingObject, IVectoRunDataFactory { - protected readonly IMultistageBusInputDataProvider InputDataProvider; + protected readonly IMultistepBusInputDataProvider InputDataProvider; protected IDeclarationReport Report; protected Segment _segmentCompletedBus; @@ -34,7 +34,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl protected DeclarationDataAdapterCompletedBusGeneric DataAdapterGeneric = new DeclarationDataAdapterCompletedBusGeneric(); public DeclarationModeCompletedMultistageBusVectoRunDataFactory( - IMultistageBusInputDataProvider dataProvider, IDeclarationReport report) + IMultistepBusInputDataProvider dataProvider, IDeclarationReport report) { InputDataProvider = dataProvider; diff --git a/VectoCore/VectoCore/Models/Declaration/DeclarationData.cs b/VectoCore/VectoCore/Models/Declaration/DeclarationData.cs index c0a75a48f35b8c5aadd113d9fef1e2e80316c14d..2b593d99bf07c3f629dfedea82157584a1933ad1 100644 --- a/VectoCore/VectoCore/Models/Declaration/DeclarationData.cs +++ b/VectoCore/VectoCore/Models/Declaration/DeclarationData.cs @@ -183,7 +183,7 @@ namespace TUGraz.VectoCore.Models.Declaration //throw new VectoException("No CO2 Group found for vehicle"); } - public static WeightingGroup GetVehicleGroupCO2StandardsGroup(IMultistageBusInputDataProvider multiStageInputDataProvider) + public static WeightingGroup GetVehicleGroupCO2StandardsGroup(IMultistepBusInputDataProvider multiStageInputDataProvider) { return Declaration.WeightingGroup.Unknown; } diff --git a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/IFollowUpSimulatorFactoryCreator.cs b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/IFollowUpSimulatorFactoryCreator.cs index e72870475d13162a59c22722514fd23592ea3db1..0187e3d88f5cba46819d752fa86be834d94581d1 100644 --- a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/IFollowUpSimulatorFactoryCreator.cs +++ b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/IFollowUpSimulatorFactoryCreator.cs @@ -82,7 +82,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory { //Prepare inputdata for next simulation step var primaryInputData = _inputDataReader.CreateDeclaration(_currentStageOutputDataWriter - .GetDocument(ReportType.DeclarationReportPrimaryVehicleXML).CreateReader()) as IMultistageBusInputDataProvider; + .GetDocument(ReportType.DeclarationReportPrimaryVehicleXML).CreateReader()) as IMultistepBusInputDataProvider; Debug.Assert(primaryInputData != null); var stageInputData = _originalStageInputData.StageInputData; @@ -133,7 +133,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory public override ISimulatorFactory GetNextFactory() { var output = _xmlInputDataReader.CreateDeclaration( - XmlReader.Create(CurrentStageOutputDataWriter.MultistageXmlReport.ToString().ToStream())) as IMultistageBusInputDataProvider; + XmlReader.Create(CurrentStageOutputDataWriter.MultistageXmlReport.ToString().ToStream())) as IMultistepBusInputDataProvider; var nextStageInput = new XMLDeclarationVIFInputData(output, null); return _simulatorFactoryFactory.Factory(ExecutionMode.Declaration, nextStageInput, CurrentStageOutputDataWriter, null, null, diff --git a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactoryDeclaration.cs b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactoryDeclaration.cs index 922fc0ed2f46563c7d1c865519ea2b67c5b3f4ac..5f0400aa30f90e7cf7c2c4dd1495a53dd4d718ad 100644 --- a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactoryDeclaration.cs +++ b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactoryDeclaration.cs @@ -185,7 +185,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory .GetDocument(ReportType.DeclarationReportPrimaryVehicleXML).CreateReader()); var vifInputData = new XMLDeclarationVIFInputData( - primaryInputData as IMultistageBusInputDataProvider, + primaryInputData as IMultistepBusInputDataProvider, multiStagePrimaryAndStageInputData.StageInputData); var manStagesCount = diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/AbstractCustomerReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/AbstractCustomerReport.cs index a75fa638f245ea254ad6eb79820ad497dc4555d9..968edce4bf5a2a09853757644463b83c614f0958 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/AbstractCustomerReport.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/AbstractCustomerReport.cs @@ -36,7 +36,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation public abstract string OutputDataType { get; } - private bool _ovc = false; + protected bool _ovc = false; protected AbstractCustomerReport(ICustomerInformationFileFactory cifFactory) { _cifFactory = cifFactory; @@ -52,7 +52,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation #region Implementation of IXMLCustomerReport - public void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes) + public virtual void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes) { InitializeVehicleData(modelData.InputData); _ovc = modelData.VehicleData.Ocv; @@ -73,19 +73,17 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation public void GenerateReport(XElement resultSignature) { var retVal = new XDocument(new XElement(Cif + "VectoCustomerInformation", - new XAttribute(XNamespace.Xmlns + "xsi", xsi), - new XAttribute(XNamespace.Xmlns + "cif", Cif.NamespaceName), - new XAttribute(XNamespace.Xmlns + "cif0.9", Cif_0_9.NamespaceName), - new XAttribute("xmlns", Cif_0_9), - new XAttribute(XNamespace.Get("http://www.w3.org/2001/XMLSchema-instance") + "schemaLocation", $"{Cif.NamespaceName} " + @"V:\VectoCore\VectoCore\Resources\XSD/VectoOutputCustomer.xsd"), - - new XElement(Cif + XMLNames.Report_DataWrap, - new XAttribute(xsi + XMLNames.XSIType, $"{OutputDataType}"), - Vehicle, - InputDataIntegrity, - new XElement(Cif_0_9 + XMLNames.Report_ResultData_Signature, resultSignature), - Results, - XMLHelper.GetApplicationInfo(Cif_0_9)) + new XAttribute(XNamespace.Xmlns + "xsi", xsi), + new XAttribute(XNamespace.Xmlns + "cif", Cif.NamespaceName), + new XAttribute(XNamespace.Xmlns + "cif0.9", Cif_0_9.NamespaceName), + new XAttribute("xmlns", Cif_0_9), + new XAttribute(XNamespace.Get("http://www.w3.org/2001/XMLSchema-instance") + "schemaLocation", + $"{Cif.NamespaceName} " + @"V:\VectoCore\VectoCore\Resources\XSD/VectoOutputCustomer.xsd"), + + new XElement(Cif + XMLNames.Report_DataWrap, + new XAttribute(xsi + XMLNames.XSIType, $"{OutputDataType}"), + GetReportContents(resultSignature) + ) ) ); @@ -98,6 +96,17 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation Report = h.AddHash(); } + protected virtual IList<XElement> GetReportContents(XElement resultSignature) + { + return new[] { + Vehicle, + InputDataIntegrity, + new XElement(Cif_0_9 + XMLNames.Report_ManufacturerRecord_Signature, resultSignature), + Results, + XMLHelper.GetApplicationInfo(Cif_0_9) + }; + } + #endregion diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/AbstractCIFGroupWriter.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/AbstractCIFGroupWriter.cs index ee0118943bbd388fc946029622b9a643bb266d53..5f5ce5e906a320ad773578b46e929541cc7d6d15 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/AbstractCIFGroupWriter.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/AbstractCIFGroupWriter.cs @@ -30,7 +30,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. protected virtual IVehicleDeclarationInputData GetVehicle(IDeclarationInputDataProvider inputData) { - if (inputData is IMultistageBusInputDataProvider multistep) { + if (inputData is IMultistepBusInputDataProvider multistep) { return multistep.JobInputData.PrimaryVehicle.Vehicle; } else { return inputData.JobInputData.Vehicle; diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/ComponentGroupWriters.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/ComponentGroupWriters.cs index 881144a618a513e933a25e4fe8d43c3f16f39f6f..83688fbcc3146cb7c0712eeee5165678252dd3a3 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/ComponentGroupWriters.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/ComponentGroupWriters.cs @@ -265,7 +265,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation public override IList<XElement> GetElements(IDeclarationInputDataProvider inputData) { - var multistage = inputData as IMultistageBusInputDataProvider; + var multistage = inputData as IMultistepBusInputDataProvider; if (multistage == null) { throw new VectoException("BusAuxGroupWriter requires MultistepInputData"); } @@ -364,7 +364,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation public override IList<XElement> GetElements(IDeclarationInputDataProvider inputData) { - var multistage = inputData as IMultistageBusInputDataProvider; + var multistage = inputData as IMultistepBusInputDataProvider; if (multistage == null) { throw new VectoException("BusAuxGroupWriter requires MultistepInputData"); } diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/VehicleGroups.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/VehicleGroups.cs index faecbb6aba375bd69f762a9c22abef88ce57490a..1ef41b05e93d8d4873cd60c5f61b4dac220f9e89 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/VehicleGroups.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/VehicleGroups.cs @@ -49,7 +49,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation #region Implementation of IReportCompletedBusOutputGroup - public IList<XElement> GetElements(IMultistageBusInputDataProvider multiStageInputDataProvider) + public IList<XElement> GetElements(IMultistepBusInputDataProvider multiStageInputDataProvider) { var consolidatedVehicleData = multiStageInputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle; var primary = multiStageInputDataProvider.JobInputData.PrimaryVehicle.Vehicle; @@ -126,7 +126,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation public override IList<XElement> GetElements(IDeclarationInputDataProvider inputData) { - var multistep = inputData as IMultistageBusInputDataProvider; + var multistep = inputData as IMultistepBusInputDataProvider; if (multistep == null) { throw new VectoException("Completed Bus CIF requires bus input data"); } @@ -238,7 +238,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation public override IList<XElement> GetElements(IDeclarationInputDataProvider inputData) { - var multistep = inputData as IMultistageBusInputDataProvider; + var multistep = inputData as IMultistepBusInputDataProvider; if (multistep == null) { throw new VectoException("Completed Bus CIF requires bus input data"); } @@ -267,7 +267,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation public override IList<XElement> GetElements(IDeclarationInputDataProvider inputData) { - var multistep = inputData as IMultistageBusInputDataProvider; + var multistep = inputData as IMultistepBusInputDataProvider; if (multistep == null) { throw new VectoException("Completed Bus CIF requires bus input data"); } @@ -301,10 +301,10 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation public override IList<XElement> GetElements(IDeclarationInputDataProvider inputData) { - var completedBusData = inputData as IMultistageBusInputDataProvider; + var completedBusData = inputData as IMultistepBusInputDataProvider; if (completedBusData == null) { throw new ArgumentException( - $"{nameof(inputData)} must implement {nameof(IMultistageBusInputDataProvider)}"); + $"{nameof(inputData)} must implement {nameof(IMultistepBusInputDataProvider)}"); } var result = new List<XElement>(); result.AddRange( @@ -332,7 +332,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation return result; } - protected XElement GetManufacturers(IMultistageBusInputDataProvider completedBusData) + protected XElement GetManufacturers(IMultistepBusInputDataProvider completedBusData) { var manufacturers = new XElement(_cif + "Manufacturers", GetManufacturerAndAddress(completedBusData.JobInputData.PrimaryVehicle.Vehicle.Manufacturer, @@ -363,10 +363,10 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation public override IList<XElement> GetElements(IDeclarationInputDataProvider inputData) { - var completedBusData = inputData as IMultistageBusInputDataProvider; + var completedBusData = inputData as IMultistepBusInputDataProvider; if (completedBusData == null) { throw new ArgumentException( - $"{nameof(inputData)} must implement {nameof(IMultistageBusInputDataProvider)}"); + $"{nameof(inputData)} must implement {nameof(IMultistepBusInputDataProvider)}"); } var result = new List<XElement>(); result.AddRange( @@ -392,7 +392,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation return result; } - private XElement GetManufacturers(IMultistageBusInputDataProvider completedBusData) + private XElement GetManufacturers(IMultistepBusInputDataProvider completedBusData) { var manufacturers = new XElement(_cif + "Manufacturers", GetManufacturerAndAddress(completedBusData.JobInputData.PrimaryVehicle.Vehicle.Manufacturer, @@ -415,10 +415,10 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation public override IList<XElement> GetElements(IDeclarationInputDataProvider inputData) { - var completedBusData = inputData as IMultistageBusInputDataProvider; + var completedBusData = inputData as IMultistepBusInputDataProvider; if (completedBusData == null) { throw new ArgumentException( - $"{nameof(inputData)} must implement {nameof(IMultistageBusInputDataProvider)}"); + $"{nameof(inputData)} must implement {nameof(IMultistepBusInputDataProvider)}"); } var result = new List<XElement>(); result.AddRange( diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/VehicleWriter.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/VehicleWriter.cs index a297b770912fa284bae82c0a14fc71bcbc7e0e67..d7dcb8a851b872310612d211dcfba85420275982 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/VehicleWriter.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CIFWriter/VehicleWriter.cs @@ -39,7 +39,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation protected XElement GetRetarder(IDeclarationInputDataProvider inputData) { IRetarderInputData retarder; - if (inputData is IMultistageBusInputDataProvider multistage) { + if (inputData is IMultistepBusInputDataProvider multistage) { retarder = multistage.JobInputData.PrimaryVehicle.Vehicle.Components.RetarderInputData; } else { retarder = inputData.JobInputData.Vehicle.Components.RetarderInputData; @@ -51,7 +51,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation protected XElement GetAxleRatio(IDeclarationInputDataProvider inputData, bool optional = false) { IAxleGearInputData axlegear; - if (inputData is IMultistageBusInputDataProvider multistage) { + if (inputData is IMultistepBusInputDataProvider multistage) { axlegear = multistage.JobInputData.PrimaryVehicle.Vehicle.Components.AxleGearInputData; } else { axlegear = inputData.JobInputData.Vehicle.Components.AxleGearInputData; @@ -360,7 +360,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation return new XElement(_cif + XMLNames.Component_Vehicle, new XAttribute(_xsi + XMLNames.XSIType, "Conventional_CompletedBusVehicleType"), _cifFactory.GetCompletedBusVehicleTypeGroup().GetElements(inputData), - _cifFactory.GetConventionalADASType().GetXmlType(((IMultistageBusInputDataProvider)inputData) + _cifFactory.GetConventionalADASType().GetXmlType(((IMultistepBusInputDataProvider)inputData) .JobInputData .ConsolidateManufacturingStage.Vehicle.ADAS).WithXName(_cif + "ADAS"), _cifFactory.GetEngineGroup().GetElements(inputData), @@ -388,7 +388,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation new XAttribute(_xsi + XMLNames.XSIType, "HEV_Px_IHPC_CompletedBusVehicleType"), _cifFactory.GetCompletedBusVehicleTypeGroup().GetElements(inputData), _cifFactory.GetHEV_CompletedBusVehicleSequenceGroupWriter().GetElements(inputData), - _cifFactory.GetHEVADASType().GetXmlType(((IMultistageBusInputDataProvider)inputData) + _cifFactory.GetHEVADASType().GetXmlType(((IMultistepBusInputDataProvider)inputData) .JobInputData .ConsolidateManufacturingStage.Vehicle.ADAS).WithXName(_cif + "ADAS"), _cifFactory.GetEngineGroup().GetElements(inputData), @@ -423,7 +423,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation new XAttribute(_xsi + XMLNames.XSIType, "HEV_S2_CompletedBusVehicleType"), _cifFactory.GetCompletedBusVehicleTypeGroup().GetElements(inputData), _cifFactory.GetHEV_CompletedBusVehicleSequenceGroupWriter().GetElements(inputData), - _cifFactory.GetHEVADASType().GetXmlType(((IMultistageBusInputDataProvider)inputData) + _cifFactory.GetHEVADASType().GetXmlType(((IMultistepBusInputDataProvider)inputData) .JobInputData .ConsolidateManufacturingStage.Vehicle.ADAS).WithXName(_cif + "ADAS"), _cifFactory.GetEngineGroup().GetElements(inputData), @@ -453,7 +453,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation new XAttribute(_xsi + XMLNames.XSIType, "HEV_S3_CompletedBusVehicleType"), _cifFactory.GetCompletedBusVehicleTypeGroup().GetElements(inputData), _cifFactory.GetHEV_CompletedBusVehicleSequenceGroupWriter().GetElements(inputData), - _cifFactory.GetHEVADASType().GetXmlType(((IMultistageBusInputDataProvider)inputData) + _cifFactory.GetHEVADASType().GetXmlType(((IMultistepBusInputDataProvider)inputData) .JobInputData .ConsolidateManufacturingStage.Vehicle.ADAS).WithXName(_cif + "ADAS"), _cifFactory.GetEngineGroup().GetElements(inputData), @@ -483,7 +483,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation new XAttribute(_xsi + XMLNames.XSIType, "HEV_S4_CompletedBusVehicleType"), _cifFactory.GetCompletedBusVehicleTypeGroup().GetElements(inputData), _cifFactory.GetHEV_CompletedBusVehicleSequenceGroupWriter().GetElements(inputData), - _cifFactory.GetHEVADASType().GetXmlType(((IMultistageBusInputDataProvider)inputData) + _cifFactory.GetHEVADASType().GetXmlType(((IMultistepBusInputDataProvider)inputData) .JobInputData .ConsolidateManufacturingStage.Vehicle.ADAS).WithXName(_cif + "ADAS"), _cifFactory.GetEngineGroup().GetElements(inputData), @@ -511,7 +511,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation new XAttribute(_xsi + XMLNames.XSIType, "HEV_S4_CompletedBusVehicleType"), _cifFactory.GetCompletedBusVehicleTypeGroup().GetElements(inputData), _cifFactory.GetHEV_CompletedBusVehicleSequenceGroupWriter().GetElements(inputData), - _cifFactory.GetHEVADASType().GetXmlType(((IMultistageBusInputDataProvider)inputData) + _cifFactory.GetHEVADASType().GetXmlType(((IMultistepBusInputDataProvider)inputData) .JobInputData .ConsolidateManufacturingStage.Vehicle.ADAS).WithXName(_cif + "ADAS"), _cifFactory.GetEngineGroup().GetElements(inputData), @@ -539,7 +539,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation new XAttribute(_xsi + XMLNames.XSIType, "PEV_E2_CompletedBusVehicleType"), _cifFactory.GetPEVCompletedBusVehicleTypeGroup().GetElements(inputData), _cifFactory.GetPEV_CompletedBusVehicleSequenceGroupWriter().GetElements(inputData), - _cifFactory.GetPEVADASType().GetXmlType(((IMultistageBusInputDataProvider)inputData) + _cifFactory.GetPEVADASType().GetXmlType(((IMultistepBusInputDataProvider)inputData) .JobInputData .ConsolidateManufacturingStage.Vehicle.ADAS).WithXName(_cif + "ADAS"), _cifFactory.GetElectricMachineGroup().GetElements(inputData), @@ -568,7 +568,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation new XAttribute(_xsi + XMLNames.XSIType, "PEV_E3_CompletedBusVehicleType"), _cifFactory.GetPEVCompletedBusVehicleTypeGroup().GetElements(inputData), _cifFactory.GetPEV_CompletedBusVehicleSequenceGroupWriter().GetElements(inputData), - _cifFactory.GetPEVADASType().GetXmlType(((IMultistageBusInputDataProvider)inputData) + _cifFactory.GetPEVADASType().GetXmlType(((IMultistepBusInputDataProvider)inputData) .JobInputData .ConsolidateManufacturingStage.Vehicle.ADAS).WithXName(_cif + "ADAS"), _cifFactory.GetElectricMachineGroup().GetElements(inputData), @@ -597,7 +597,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation new XAttribute(_xsi + XMLNames.XSIType, "PEV_E4_CompletedBusVehicleType"), _cifFactory.GetPEVCompletedBusVehicleTypeGroup().GetElements(inputData), _cifFactory.GetPEV_CompletedBusVehicleSequenceGroupWriter().GetElements(inputData), - _cifFactory.GetPEVADASType().GetXmlType(((IMultistageBusInputDataProvider)inputData) + _cifFactory.GetPEVADASType().GetXmlType(((IMultistepBusInputDataProvider)inputData) .JobInputData .ConsolidateManufacturingStage.Vehicle.ADAS).WithXName(_cif + "ADAS"), _cifFactory.GetElectricMachineGroup().GetElements(inputData), @@ -626,7 +626,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation new XAttribute(_xsi + XMLNames.XSIType, "PEV_IEPC_CompletedBusVehicleType"), _cifFactory.GetPEVCompletedBusVehicleTypeGroup().GetElements(inputData), _cifFactory.GetPEV_CompletedBusVehicleSequenceGroupWriter().GetElements(inputData), - _cifFactory.GetPEVADASType().GetXmlType(((IMultistageBusInputDataProvider)inputData) + _cifFactory.GetPEVADASType().GetXmlType(((IMultistepBusInputDataProvider)inputData) .JobInputData .ConsolidateManufacturingStage.Vehicle.ADAS).WithXName(_cif + "ADAS"), //_cifFactory.GetEngineGroup().GetElements(inputData), diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CustomerInformationFile/CustomerInformationFile.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CustomerInformationFile/CustomerInformationFile.cs index 60b33d5ebe8fa00fff4c70a550f8e1ddbf4ae134..e01d3d70a410e1defd8902b7f3ab6245fe5c09d4 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CustomerInformationFile/CustomerInformationFile.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/CustomerInformationFile/CustomerInformationFile_0_9/CustomerInformationFile/CustomerInformationFile.cs @@ -4,12 +4,14 @@ using System.Linq; using System.Text; using System.Threading.Tasks; using System.Xml.Linq; +using TUGraz.VectoCommon.Exceptions; using TUGraz.VectoCommon.InputData; using TUGraz.VectoCommon.Resources; using TUGraz.VectoCore.Models.Declaration; using TUGraz.VectoCore.Models.Simulation.Data; using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReport; using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; +using TUGraz.VectoCore.Utils; namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9.CustomerInformationFile { @@ -194,7 +196,52 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation #region CompletedBus - public class Conventional_CompletedBusCIF : CustomerInformationFile + + public abstract class CustomerInformationFileCompletedBus : CustomerInformationFile + { + protected XElement InputDataIntegrityPrimaryVehicle { get; set; } + + protected XElement ManufacturerReportIntegrityPrimaryVehicle { get; set; } + + protected CustomerInformationFileCompletedBus(ICustomerInformationFileFactory cifFactory) : + base(cifFactory) { } + + public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes) + { + InitializeVehicleData(modelData.InputData); + _ovc = modelData.VehicleData.Ocv; + + var inputData = modelData.InputData as IMultistepBusInputDataProvider; + if (inputData == null) { + throw new VectoException("CompletedBus CustomerInformationFile requires MultistepBusInputData"); + } + Results = new XElement(Cif_0_9 + "Results"); + InputDataIntegrity = new XElement(Cif_0_9 + XMLNames.Report_InputDataSignature, + inputData.JobInputData.ConsolidateManufacturingStage.Signature == null + ? XMLHelper.CreateDummySig(_di) + : inputData.JobInputData.ConsolidateManufacturingStage.Signature.ToXML(_di)); + //new XElement()); + InputDataIntegrityPrimaryVehicle = new XElement(Cif_0_9 + "InputDataSignaturePrimaryVehicle", + inputData.JobInputData.PrimaryVehicle.PrimaryVehicleInputDataHash.ToXML(_di)); + ManufacturerReportIntegrityPrimaryVehicle = + new XElement(Cif_0_9 + "ManufacturerRecordSignaturePrimaryVehicle", inputData.JobInputData.PrimaryVehicle.ManufacturerRecordHash.ToXML(_di)); + } + + protected override IList<XElement> GetReportContents(XElement resultSignature) + { + return new[] { + Vehicle, + InputDataIntegrityPrimaryVehicle, + ManufacturerReportIntegrityPrimaryVehicle, + InputDataIntegrity, + new XElement(Cif_0_9 + XMLNames.Report_ManufacturerRecord_Signature, resultSignature), + Results, + XMLHelper.GetApplicationInfo(Cif_0_9) + }; + } + } + + public class Conventional_CompletedBusCIF : CustomerInformationFileCompletedBus { public override string OutputDataType => "Conventional_CompletedBusOutputType"; @@ -208,7 +255,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation } } - public class HEV_Px_CompletedBusCIF : CustomerInformationFile + public class HEV_Px_CompletedBusCIF : CustomerInformationFileCompletedBus { public override string OutputDataType => "HEV_CompletedBusOutputType"; @@ -222,8 +269,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation } } - public class HEV_IHPC_CompletedBusCIF : CustomerInformationFile - { + public class HEV_IHPC_CompletedBusCIF : CustomerInformationFileCompletedBus + { public override string OutputDataType => "HEV_CompletedBusOutputType"; public HEV_IHPC_CompletedBusCIF(ICustomerInformationFileFactory cifFactory) : base(cifFactory) @@ -236,7 +283,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation } } - public class HEV_S2_CompletedBusCIF : CustomerInformationFile + public class HEV_S2_CompletedBusCIF : CustomerInformationFileCompletedBus { public override string OutputDataType => "HEV_CompletedBusOutputType"; @@ -250,7 +297,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation } } - public class HEV_S3_CompletedBusCIF : CustomerInformationFile + public class HEV_S3_CompletedBusCIF : CustomerInformationFileCompletedBus { public override string OutputDataType => "HEV_CompletedBusOutputType"; @@ -264,7 +311,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation } } - public class HEV_S4_CompletedBusCIF : CustomerInformationFile + public class HEV_S4_CompletedBusCIF : CustomerInformationFileCompletedBus { public override string OutputDataType => "HEV_CompletedBusOutputType"; @@ -278,7 +325,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation } } - public class HEV_IEPC_S_CompletedBusCIF : CustomerInformationFile + public class HEV_IEPC_S_CompletedBusCIF : CustomerInformationFileCompletedBus { public override string OutputDataType => "HEV_CompletedBusOutputType"; @@ -292,7 +339,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation } } - public class PEV_E2_CompletedBusCIF : CustomerInformationFile + public class PEV_E2_CompletedBusCIF : CustomerInformationFileCompletedBus { public override string OutputDataType => "PEV_CompletedBusOutputType"; @@ -306,7 +353,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation } } - public class PEV_E3_CompletedBusCIF : CustomerInformationFile + public class PEV_E3_CompletedBusCIF : CustomerInformationFileCompletedBus { public override string OutputDataType => "PEV_CompletedBusOutputType"; @@ -320,7 +367,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation } } - public class PEV_E4_CompletedBusCIF : CustomerInformationFile + public class PEV_E4_CompletedBusCIF : CustomerInformationFileCompletedBus { public override string OutputDataType => "PEV_CompletedBusOutputType"; @@ -334,7 +381,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation } } - public class PEV_IEPC_CompletedBusCIF : CustomerInformationFile + public class PEV_IEPC_CompletedBusCIF : CustomerInformationFileCompletedBus { public override string OutputDataType => "PEV_CompletedBusOutputType"; @@ -349,7 +396,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformation } - public class Exempted_CompletedBusCIF : CustomerInformationFile + public class Exempted_CompletedBusCIF : CustomerInformationFileCompletedBus { public Exempted_CompletedBusCIF(ICustomerInformationFileFactory cifFactory) : base(cifFactory) { } diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/AbstractManufacturerReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/AbstractManufacturerReport.cs index 7fd5921e25303dbaf606447687ee24226f08a559..d23eac2738f725808b09f54d7b3d2222ed2964db 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/AbstractManufacturerReport.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/AbstractManufacturerReport.cs @@ -29,7 +29,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. protected readonly IManufacturerReportFactory _mRFReportFactory; - private bool _ovc = false; + protected bool _ovc = false; protected XElement Results { get; set; } protected XElement Vehicle { get; set; } @@ -38,7 +38,6 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. protected XElement Signature { get; set; } - private VectoRunData _modelData; public abstract string OutputDataType { get; } //also used as name for the mockup result element protected AbstractManufacturerReport(IManufacturerReportFactory MRFReportFactory) @@ -55,11 +54,11 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. public abstract void InitializeVehicleData(IDeclarationInputDataProvider inputData); - public void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes) + public virtual void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes) { InitializeVehicleData(modelData.InputData); _ovc = modelData.VehicleData.Ocv; - _modelData = modelData; + Results = new XElement(Mrf_0_9 + XMLNames.Report_Results); InputDataIntegrity = new XElement(Mrf_0_9 + XMLNames.Report_InputDataSignature, modelData.InputData.XMLHash == null ? XMLHelper.CreateDummySig(_di) : new XElement(modelData.InputData.XMLHash)); @@ -83,15 +82,14 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. new XAttribute(XNamespace.Xmlns + "mrf", Mrf), new XAttribute(XNamespace.Xmlns + "mrf0.9", Mrf_0_9), new XAttribute("xmlns", Mrf_0_9), - new XAttribute(XNamespace.Get("http://www.w3.org/2001/XMLSchema-instance") + "schemaLocation", $"{Mrf.NamespaceName} " + @"V:\VectoCore\VectoCore\Resources\XSD/VectoOutputManufacturer.xsd"), + new XAttribute(XNamespace.Get("http://www.w3.org/2001/XMLSchema-instance") + "schemaLocation", + $"{Mrf.NamespaceName} " + @"V:\VectoCore\VectoCore\Resources\XSD/VectoOutputManufacturer.xsd"), new XElement(Mrf + XMLNames.Report_DataWrap, new XAttribute(xsi + XMLNames.XSIType, $"{OutputDataType}"), - Vehicle, - InputDataIntegrity, - Results, - XMLHelper.GetApplicationInfo(Mrf_0_9)) + GetContents() ) + ) ); var stream = new MemoryStream(); @@ -103,6 +101,15 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. Report = h.AddHash(); } + protected virtual IList<XElement> GetContents() + { + return new[] { + Vehicle, + InputDataIntegrity, + Results, + XMLHelper.GetApplicationInfo(Mrf_0_9) + }; + } #endregion diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/CompletedBusManufacturerReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/CompletedBusManufacturerReport.cs index 34e73aec05bfc2fb667be3e220cd015b28db720e..c447e1d1f899576d9f9114edbd753af2c4119df8 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/CompletedBusManufacturerReport.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReport/CompletedBusManufacturerReport.cs @@ -4,9 +4,13 @@ using System.Linq; using System.Text; using System.Threading.Tasks; using System.Xml.Linq; +using TUGraz.VectoCommon.Exceptions; using TUGraz.VectoCommon.InputData; using TUGraz.VectoCommon.Resources; +using TUGraz.VectoCore.Models.Declaration; +using TUGraz.VectoCore.Models.Simulation.Data; using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; +using TUGraz.VectoCore.Utils; namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReport { @@ -15,15 +19,21 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. protected XNamespace _mrf = XNamespace.Get("urn:tugraz:ivt:VectoAPI:DeclarationOutput:v0.9"); public CompletedBusManufacturerReportBase(IManufacturerReportFactory MRFReportFactory) : base(MRFReportFactory) { } - protected void GenerateReport(string outputDataType) + public override void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes) { - Report = new XDocument(new XElement(_mrf + "VectoOutput", - new XAttribute("xmlns", _mrf), - new XAttribute(XNamespace.Xmlns + "xsi", xsi), - new XAttribute(xsi + XMLNames.XSIType, $"{outputDataType}"), - Vehicle, - new XElement(_mrf + "Results"))); + InitializeVehicleData(modelData.InputData); + _ovc = modelData.VehicleData.Ocv; + var inputData = modelData.InputData as IMultistepBusInputDataProvider; + if (inputData == null) { + throw new VectoException("CompletedBus ManrufacturersRecordFile requires MultistepBusInputData"); + } + Results = new XElement(Mrf_0_9 + XMLNames.Report_Results); + InputDataIntegrity = new XElement(Mrf_0_9 + XMLNames.Report_InputDataSignature, + inputData.JobInputData.ConsolidateManufacturingStage.Signature == null + ? XMLHelper.CreateDummySig(_di) + : inputData.JobInputData.ConsolidateManufacturingStage.Signature.ToXML(_di)); } + } internal class Conventional_CompletedBusManufacturerReport : CompletedBusManufacturerReportBase @@ -34,6 +44,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. public override string OutputDataType => "ConventionalCompletedBusManufacturerOutputDataType"; + + public override void InitializeVehicleData(IDeclarationInputDataProvider inputData) { Vehicle = _mRFReportFactory.GetConventional_CompletedBusVehicleType().GetElement(inputData); diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportGroupWriter/CompletedBus/CompletedBus.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportGroupWriter/CompletedBus/CompletedBus.cs index c354b23e426a2ab65ed0d66aea62307a44e8af3d..671edb5a150228cf2d70ac6100415ac1852522a0 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportGroupWriter/CompletedBus/CompletedBus.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportGroupWriter/CompletedBus/CompletedBus.cs @@ -20,9 +20,9 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. public override IList<XElement> GetElements(IDeclarationInputDataProvider inputData) { - var multiStageInputData = inputData as IMultistageBusInputDataProvider; + var multiStageInputData = inputData as IMultistepBusInputDataProvider; if (multiStageInputData == null) { - throw new ArgumentException($"inputdata must implement {nameof(IMultistageBusInputDataProvider)}"); + throw new ArgumentException($"inputdata must implement {nameof(IMultistepBusInputDataProvider)}"); } var consolidatedVehicleData = multiStageInputData.JobInputData.ConsolidateManufacturingStage.Vehicle; var result = new List<XElement>(); @@ -35,13 +35,13 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. return result; } - protected virtual XElement GetNGTankSystem(IMultistageBusInputDataProvider multiStageInputData) + protected virtual XElement GetNGTankSystem(IMultistepBusInputDataProvider multiStageInputData) { var consolidatedVehicleData = multiStageInputData.JobInputData.ConsolidateManufacturingStage.Vehicle; return new XElement(_mrf + XMLNames.Vehicle_NgTankSystem, consolidatedVehicleData.TankSystem); } - protected virtual XElement GetManufacturers(IMultistageBusInputDataProvider multiStageInputData) + protected virtual XElement GetManufacturers(IMultistepBusInputDataProvider multiStageInputData) { var primaryVehicleData = multiStageInputData.JobInputData.PrimaryVehicle.Vehicle; var manufacturers = new XElement(_mrf + "Manufacturers"); @@ -86,7 +86,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. #region Overrides of ConventionalCompletedBusGeneralVehicleOutputGroup - protected override XElement GetNGTankSystem(IMultistageBusInputDataProvider multiStageInputData) + protected override XElement GetNGTankSystem(IMultistepBusInputDataProvider multiStageInputData) { return null; } diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportGroupWriter/IMRFGroupWriter.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportGroupWriter/IMRFGroupWriter.cs index e1da3ed0add39336367edfe0ef0e979500f6c785..ab0746d1b440ae342742feb37a4bfc1862727883 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportGroupWriter/IMRFGroupWriter.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportGroupWriter/IMRFGroupWriter.cs @@ -20,6 +20,6 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. public interface IReportCompletedBusOutputGroup { - IList<XElement> GetElements(IMultistageBusInputDataProvider multiStageInputDataProvider); + IList<XElement> GetElements(IMultistepBusInputDataProvider multiStageInputDataProvider); } } diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/Components/MRFComponentsType.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/Components/MRFComponentsType.cs index 4482bfa612bdf9ea91931565820e0b944da0e6ae..b2fdd96d16416a9c7a9c2535ece6ef7988452cec 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/Components/MRFComponentsType.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/Components/MRFComponentsType.cs @@ -530,9 +530,9 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. public XElement GetElement(IDeclarationInputDataProvider inputData) { - var multistageInputData = inputData as IMultistageBusInputDataProvider; + var multistageInputData = inputData as IMultistepBusInputDataProvider; if (multistageInputData == null) { - throw new ArgumentException($"inputData must implement {nameof(IMultistageBusInputDataProvider)}"); + throw new ArgumentException($"inputData must implement {nameof(IMultistepBusInputDataProvider)}"); } return new XElement(_mrf + XMLNames.Vehicle_Components, multistageInputData.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.AirdragInputData != null @@ -552,9 +552,9 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. public XElement GetElement(IDeclarationInputDataProvider inputData) { - var multistageInputData = inputData as IMultistageBusInputDataProvider; + var multistageInputData = inputData as IMultistepBusInputDataProvider; if (multistageInputData == null) { - throw new ArgumentException($"inputData must implement {nameof(IMultistageBusInputDataProvider)}"); + throw new ArgumentException($"inputData must implement {nameof(IMultistepBusInputDataProvider)}"); } return new XElement(_mrf + XMLNames.Vehicle_Components, multistageInputData.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.AirdragInputData != null @@ -574,9 +574,9 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. public XElement GetElement(IDeclarationInputDataProvider inputData) { - var multistageInputData = inputData as IMultistageBusInputDataProvider; + var multistageInputData = inputData as IMultistepBusInputDataProvider; if (multistageInputData == null) { - throw new ArgumentException($"inputData must implement {nameof(IMultistageBusInputDataProvider)}"); + throw new ArgumentException($"inputData must implement {nameof(IMultistepBusInputDataProvider)}"); } return new XElement(_mrf + XMLNames.Vehicle_Components, multistageInputData.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.AirdragInputData != null diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/Components/MRFIEPCType.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/Components/MRFIEPCType.cs index 9acaae31c7a71b35810b720a86dd5962dc5c7b51..82747fa1aad6737994fcb197a2e1d4e091472b29 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/Components/MRFIEPCType.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/Components/MRFIEPCType.cs @@ -25,7 +25,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. new XElement(_mrf + XMLNames.Component_Model, iepcData.Model), new XElement(_mrf + XMLNames.Component_CertificationNumber, iepcData.CertificationNumber), new XElement(_mrf + XMLNames.DI_Signature_Reference_DigestValue, iepcData.DigestValue?.DigestValue ?? ""), - new XElement(_mrf + XMLNames.Engine_RatedPower, iepcData.R85RatedPower.ToXMLFormat())); + new XElement(_mrf + XMLNames.Engine_RatedPower, iepcData.R85RatedPower.ConvertToKiloWatt().ToXMLFormat(0))); //new XElement(_mrf + "MaxContinuousPower",(iepcData.ContinuousTorque*iepcData.ContinuousTorqueSpeed).ToXMLFormat()), var voltageLevels = new XElement(_mrf + "VoltageLevels"); @@ -47,6 +47,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. new XElement(_mrf + "LowestTotalTransmissionRatio", (iepcData.Gears.OrderByDescending(g => g.GearNumber).First().Ratio * inputData.JobInputData.Vehicle.Components.AxleGearInputData.Ratio).ToXMLFormat(3)), new XElement(_mrf + XMLNames.IEPC_DifferentialIncluded, iepcData.DifferentialIncluded), + new XElement(_mrf + XMLNames.IEPC_DesignTypeWheelMotor, iepcData.DesignTypeWheelMotor), new XElement(_mrf + XMLNames.Component_CertificationMethod, iepcData.CertificationMethod) ); diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/MRFVehicleWriter.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/MRFVehicleWriter.cs index 0652d0f6e4d3bab3ba26d7179cb55d7316be738f..7836bc5d9fba5dafc66022092e2b4e012d64d023 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/MRFVehicleWriter.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/ManufacturerReport/ManufacturerReport_0_9/ManufacturerReportXMLTypeWriter/MRFVehicleWriter.cs @@ -411,9 +411,9 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. public override XElement GetElement(IDeclarationInputDataProvider inputData) { - var multistageInputdata = inputData as IMultistageBusInputDataProvider; + var multistageInputdata = inputData as IMultistepBusInputDataProvider; if (multistageInputdata == null) { - throw new ArgumentException($"inputdata must implement {nameof(IMultistageBusInputDataProvider)}"); + throw new ArgumentException($"inputdata must implement {nameof(IMultistepBusInputDataProvider)}"); } return new XElement(_mrf + XMLNames.Component_Vehicle, _mrfFactory.GetConventionalCompletedBusGeneralVehicleOutputGroup().GetElements(inputData), @@ -434,9 +434,9 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. public override XElement GetElement(IDeclarationInputDataProvider inputData) { - var multistageInputdata = inputData as IMultistageBusInputDataProvider; + var multistageInputdata = inputData as IMultistepBusInputDataProvider; if (multistageInputdata == null) { - throw new ArgumentException($"inputdata must implement {nameof(IMultistageBusInputDataProvider)}"); + throw new ArgumentException($"inputdata must implement {nameof(IMultistepBusInputDataProvider)}"); } return new XElement(_mrf + XMLNames.Component_Vehicle, _mrfFactory.GetHEVCompletedBusGeneralVehicleOutputGroup().GetElements(inputData), @@ -456,9 +456,9 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. public override XElement GetElement(IDeclarationInputDataProvider inputData) { - var multistageInputdata = inputData as IMultistageBusInputDataProvider; + var multistageInputdata = inputData as IMultistepBusInputDataProvider; if (multistageInputdata == null) { - throw new ArgumentException($"inputdata must implement {nameof(IMultistageBusInputDataProvider)}"); + throw new ArgumentException($"inputdata must implement {nameof(IMultistepBusInputDataProvider)}"); } return new XElement(_mrf + XMLNames.Component_Vehicle, _mrfFactory.GetPEVCompletedBusGeneralVehicleOutputGroup().GetElements(inputData), @@ -478,10 +478,10 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport. public override XElement GetElement(IDeclarationInputDataProvider inputData) { - var multistageInputdata = inputData as IMultistageBusInputDataProvider; + var multistageInputdata = inputData as IMultistepBusInputDataProvider; if (multistageInputdata == null) { - throw new ArgumentException($"inputdata must implement {nameof(IMultistageBusInputDataProvider)}"); + throw new ArgumentException($"inputdata must implement {nameof(IMultistepBusInputDataProvider)}"); } var primaryVehicleData = multistageInputdata.JobInputData.PrimaryVehicle.Vehicle; var consolidatedVehicleData = multistageInputdata.JobInputData.ConsolidateManufacturingStage.Vehicle; diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/AbstractVehicleInformationFile.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/AbstractVehicleInformationFile.cs index 1cf9e7085ed6caeb229af1664f69efb5d67c3c5e..b5bbe10ee0b220c73e09967aa6425c226331ba8b 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/AbstractVehicleInformationFile.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/AbstractVehicleInformationFile.cs @@ -98,7 +98,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF var results = new XElement(Results); results.AddFirst(new XElement(VIF + XMLNames.Report_Result_Status, allSuccess ? "success" : "error")); - var vehicleId = $"{VectoComponents.Vehicle.HashIdPrefix()}{XMLHelper.GetGUID()}"; + var vehicleId = $"{VectoComponents.VectoPrimaryVehicleInformation.HashIdPrefix()}{XMLHelper.GetGUID()}"; var primaryVehicle = new XElement(VIF + XMLNames.Bus_PrimaryVehicle, new XElement(VIF + XMLNames.Report_DataWrap, diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLMultistageBusReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLMultistageBusReport.cs index e4c4bbc0d83f1904150422ba6c21fa9f96acf6b9..8014f54f467732810739382b03926e1f6967addc 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLMultistageBusReport.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLMultistageBusReport.cs @@ -218,7 +218,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF private XElement GenerateInputManufacturingStage() { var multistageId = $"{VectoComponents.VectoManufacturingStep.HashIdPrefix()}{GetGUID()}"; - var vehicleId = $"{VectoComponents.Vehicle.HashIdPrefix()}{GetGUID()}"; + var vehicleId = $"{VectoComponents.VectoInterimVehicleInformation.HashIdPrefix()}{GetGUID()}"; var stage = new XElement(tns + XMLNames.ManufacturingStep, new XAttribute(XMLNames.ManufacturingStep_StepCount, GetStageNumber()), diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLPrimaryBusVehicleReport.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLPrimaryBusVehicleReport.cs index 95703822929cfe417ef0149477a62b4cf555992a..4f07df1870f816006c89b9af2d5d1bd18b8683fe 100644 --- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLPrimaryBusVehicleReport.cs +++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/XMLPrimaryBusVehicleReport.cs @@ -81,7 +81,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF { var results = new XElement(Results); results.AddFirst(new XElement(tns + XMLNames.Report_Result_Status, _allSuccess ? "success" : "error")); - var vehicleId = $"{VectoComponents.Vehicle.HashIdPrefix()}{GetGUID()}"; + var vehicleId = $"{VectoComponents.VectoPrimaryVehicleInformation.HashIdPrefix()}{GetGUID()}"; var primaryVehicle = new XElement(tns + XMLNames.Bus_PrimaryVehicle, new XElement(tns + XMLNames.Report_DataWrap, diff --git a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportFactory.cs b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportFactory.cs index caae902c87bca83dbdb98ea14a8e354d6f342aad..5a8a22ed9f09560c9752f5d7e6326216b9535b57 100644 --- a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportFactory.cs +++ b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationReportFactory.cs @@ -28,7 +28,7 @@ namespace TUGraz.VectoCore.OutputData.XML public IDeclarationReport CreateReport(IInputDataProvider input, IOutputDataWriter outputWriter) { switch (input) { - case IMultistageBusInputDataProvider multistageBusInputDataProvider: + case IMultistepBusInputDataProvider multistageBusInputDataProvider: break; case ISingleBusInputDataProvider singleBusInputDataProvider: return new XMLDeclarationReport(outputWriter); diff --git a/VectoCore/VectoCore/Resources/XSD/VectoOutputCustomer.0.9.xsd b/VectoCore/VectoCore/Resources/XSD/VectoOutputCustomer.0.9.xsd index 6d65cd994afd7f5d546e82de4762ac76925e9bde..6ed442ddd8568e9d2bfa9743123d3ce1b51da9e5 100644 --- a/VectoCore/VectoCore/Resources/XSD/VectoOutputCustomer.0.9.xsd +++ b/VectoCore/VectoCore/Resources/XSD/VectoOutputCustomer.0.9.xsd @@ -14,7 +14,7 @@ <xs:sequence> <xs:element name="Vehicle" type="Conventional_LorryVehicleType"/> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -47,7 +47,7 @@ <xs:sequence> <xs:element name="Vehicle" type="HEV_Px_IHPC_LorryVehicleType"/> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -80,7 +80,7 @@ <xs:sequence> <xs:element name="Vehicle" type="HEV_S2_LorryVehicleType"/> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -113,7 +113,7 @@ <xs:sequence> <xs:element name="Vehicle" type="HEV_S3_LorryVehicleType"/> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -146,7 +146,7 @@ <xs:sequence> <xs:element name="Vehicle" type="HEV_S4_LorryVehicleType"/> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -179,7 +179,7 @@ <xs:sequence> <xs:element name="Vehicle" type="HEV_IEPC_S_LorryVehicleType"/> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -212,7 +212,7 @@ <xs:sequence> <xs:element name="Vehicle" type="PEV_E2_LorryVehicleType"/> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -245,7 +245,7 @@ <xs:sequence> <xs:element name="Vehicle" type="PEV_E3_LorryVehicleType"/> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -278,7 +278,7 @@ <xs:sequence> <xs:element name="Vehicle" type="PEV_E4_LorryVehicleType"/> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -311,7 +311,7 @@ <xs:sequence> <xs:element name="Vehicle" type="PEV_IEPC_LorryVehicleType"/> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -343,8 +343,14 @@ <xs:extension base="out:AbstractVectoOutputCustomerDataType"> <xs:sequence> <xs:element name="Vehicle" type="Abstract_Conventional_CompltededBusVehicleType"/> + <xs:element name="InputDataSignaturePrimaryVehicle" type="v1.0:SignatureType"/> + <xs:element name="ManufacturerRecordSignaturePrimaryVehicle" type="v1.0:SignatureType"> + <xs:annotation> + <xs:documentation>II.3</xs:documentation> + </xs:annotation> + </xs:element> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -376,8 +382,14 @@ <xs:extension base="out:AbstractVectoOutputCustomerDataType"> <xs:sequence> <xs:element name="Vehicle" type="Abstract_HEV_CompletedBusVehicleType"/> + <xs:element name="InputDataSignaturePrimaryVehicle" type="v1.0:SignatureType"/> + <xs:element name="ManufacturerRecordSignaturePrimaryVehicle" type="v1.0:SignatureType"> + <xs:annotation> + <xs:documentation>II.3</xs:documentation> + </xs:annotation> + </xs:element> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -409,8 +421,14 @@ <xs:extension base="out:AbstractVectoOutputCustomerDataType"> <xs:sequence> <xs:element name="Vehicle" type="Abstract_PEV_CompletedBusVehicleType"/> + <xs:element name="InputDataSignaturePrimaryVehicle" type="v1.0:SignatureType"/> + <xs:element name="ManufacturerRecordSignaturePrimaryVehicle" type="v1.0:SignatureType"> + <xs:annotation> + <xs:documentation>II.3</xs:documentation> + </xs:annotation> + </xs:element> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -443,7 +461,7 @@ <xs:sequence> <xs:element name="Vehicle" type="Exempted_LorryVehicleType"/> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> @@ -475,8 +493,14 @@ <xs:extension base="out:AbstractVectoOutputCustomerDataType"> <xs:sequence> <xs:element name="Vehicle" type="Exempted_CompletedBusVehicleType"/> + <xs:element name="InputDataSignaturePrimaryVehicle" type="v1.0:SignatureType"/> + <xs:element name="ManufacturerRecordSignaturePrimaryVehicle" type="v1.0:SignatureType"> + <xs:annotation> + <xs:documentation>II.3</xs:documentation> + </xs:annotation> + </xs:element> <xs:element name="InputDataSignature" type="v1.0:SignatureType"/> - <xs:element name="ResultDataSignature" type="v1.0:SignatureType"> + <xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"> <xs:annotation> <xs:documentation>II.3</xs:documentation> </xs:annotation> diff --git a/VectoCore/VectoCoreTest/Integration/CompletedBus/CompletedBusFactorMethodTest.cs b/VectoCore/VectoCoreTest/Integration/CompletedBus/CompletedBusFactorMethodTest.cs index aaa6487642b1882edb703303361ac612823c33e2..89d4ec1ba88ee917619b4da93016e88f5f48ba8b 100644 --- a/VectoCore/VectoCoreTest/Integration/CompletedBus/CompletedBusFactorMethodTest.cs +++ b/VectoCore/VectoCoreTest/Integration/CompletedBus/CompletedBusFactorMethodTest.cs @@ -1195,7 +1195,7 @@ namespace TUGraz.VectoCore.Tests.Integration.CompletedBus //var inputData = new MockCompletedBusInputData(XmlReader.Create(PifFile_33_34), modified); //var inputData = new MockCompletedBusInputData(modified); - var factory = SimulatorFactory.CreateSimulatorFactory(ExecutionMode.Declaration, new XMLDeclarationVIFInputData(completedVif as IMultistageBusInputDataProvider, null), writer, validate: false); + var factory = SimulatorFactory.CreateSimulatorFactory(ExecutionMode.Declaration, new XMLDeclarationVIFInputData(completedVif as IMultistepBusInputDataProvider, null), writer, validate: false); factory.WriteModalResults = true; //var factory = new SimulatorFactory(ExecutionMode.Declaration, new XMLDeclarationVIFInputData(completedVif as IMultistageBusInputDataProvider, null), writer) { // WriteModalResults = true, diff --git a/VectoCore/VectoCoreTest/Integration/CompletedBus/CompletedBusSanityCheckTests.cs b/VectoCore/VectoCoreTest/Integration/CompletedBus/CompletedBusSanityCheckTests.cs index 94680546595ba7afb050b49556765f26cdff55e3..23ae50dff9a49887968ceecd4551e61bd024ebf4 100644 --- a/VectoCore/VectoCoreTest/Integration/CompletedBus/CompletedBusSanityCheckTests.cs +++ b/VectoCore/VectoCoreTest/Integration/CompletedBus/CompletedBusSanityCheckTests.cs @@ -123,7 +123,7 @@ namespace TUGraz.VectoCore.Tests.Integration.CompletedBus //}, messageContains: "Input parameter 'separate air distribution ducts' has to be set to 'true' for vehicle group "); } - private IMultistageBusInputDataProvider GetModifiedXML(string vifPrimary, string completedJob, BusHVACSystemConfiguration? hvacConfig, bool separateDucts) + private IMultistepBusInputDataProvider GetModifiedXML(string vifPrimary, string completedJob, BusHVACSystemConfiguration? hvacConfig, bool separateDucts) { var vifDataProvider = _xmlInputReader.Create(XmlReader.Create(vifPrimary)); //var completeDataProvider = _xmlInputReader.CreateDeclaration(comple); @@ -140,7 +140,7 @@ namespace TUGraz.VectoCore.Tests.Integration.CompletedBus var completeDataProvider = _xmlInputReader.CreateDeclaration(modified); - var inputData = new XMLDeclarationVIFInputData(vifDataProvider as IMultistageBusInputDataProvider, completeDataProvider.JobInputData.Vehicle); + var inputData = new XMLDeclarationVIFInputData(vifDataProvider as IMultistepBusInputDataProvider, completeDataProvider.JobInputData.Vehicle); var filename = Guid.NewGuid().ToString().Substring(0, 20); var writer = new FileOutputVIFWriter(filename, 0); @@ -157,13 +157,13 @@ namespace TUGraz.VectoCore.Tests.Integration.CompletedBus var completedVif = _xmlInputReader.CreateDeclaration(XmlReader.Create(new StringReader(completedVifXML.OuterXml))); File.Delete(writer.XMLMultistageReportFileName); - return completedVif as IMultistageBusInputDataProvider; + return completedVif as IMultistepBusInputDataProvider; } } - public class MockCompletedBusInputData : IInputDataProvider, IMultistageBusInputDataProvider + public class MockCompletedBusInputData : IInputDataProvider, IMultistepBusInputDataProvider { - private IMultistageBusInputDataProvider input; + private IMultistepBusInputDataProvider input; public MockCompletedBusInputData(XmlReader vif) { @@ -171,7 +171,7 @@ namespace TUGraz.VectoCore.Tests.Integration.CompletedBus var _xmlInputReader = kernel.Get<IXMLInputDataReader>(); - input = _xmlInputReader.CreateDeclaration(vif) as IMultistageBusInputDataProvider; + input = _xmlInputReader.CreateDeclaration(vif) as IMultistepBusInputDataProvider; //JobName = Vehicle.VIN; } diff --git a/VectoCore/VectoCoreTest/Integration/Multistage/MultistageVehicleTest.cs b/VectoCore/VectoCoreTest/Integration/Multistage/MultistageVehicleTest.cs index 806d4b908d934c02978aba9d324669b007963a4e..b838571b733cce9626a5221b24c602d32b8c7833 100644 --- a/VectoCore/VectoCoreTest/Integration/Multistage/MultistageVehicleTest.cs +++ b/VectoCore/VectoCoreTest/Integration/Multistage/MultistageVehicleTest.cs @@ -82,7 +82,7 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage var vehicle = inputDataProvider.JobInputData.Vehicle; var vifReader = XmlReader.Create(vifFilename); - var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistageBusInputDataProvider; + var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistepBusInputDataProvider; var numberOfManufacturingStages = vifDataProvider?.JobInputData.ManufacturingStages?.Count ?? 0; var writer = new FileOutputVIFWriter(vifResult, numberOfManufacturingStages); @@ -122,7 +122,7 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage var vehicle = inputDataProvider.JobInputData.Vehicle; var vifReader = XmlReader.Create(vifFilename); - var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistageBusInputDataProvider; + var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistepBusInputDataProvider; var numberOfManufacturingStages = vifDataProvider?.JobInputData.ManufacturingStages?.Count ?? 0; var writer = new FileOutputVIFWriter(vifResult, numberOfManufacturingStages); @@ -158,7 +158,7 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage private void TestNewVifData(string filePath) { var vifReader = XmlReader.Create(filePath); - var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistageBusInputDataProvider; + var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistepBusInputDataProvider; Assert.AreEqual(3, vifDataProvider.JobInputData.ManufacturingStages.Count()); TestVifStage2Data(vifDataProvider.JobInputData.ManufacturingStages[0]); @@ -326,7 +326,7 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage TestSimulationMultistageVehicle(VIFInputFileGroup41, InputFilePathGroup41, 1); var vifReader = XmlReader.Create(_generatedVIFFilepath); - var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistageBusInputDataProvider; + var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistepBusInputDataProvider; var inputData = new XMLDeclarationVIFInputData(vifDataProvider, null); var writer = new MockDeclarationWriter("vif_vehicle-sample_test.xml"); @@ -352,7 +352,7 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage TestSimulationMultistageVehicle(VIFExemptedPrimaryBus, ExepmtedCompletedBusInput, 1); var vifReader = XmlReader.Create(_generatedVIFFilepath); - var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistageBusInputDataProvider; + var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistepBusInputDataProvider; var inputData = new XMLDeclarationVIFInputData(vifDataProvider, null); var writer = new FileOutputWriter("vif_vehicle-sample_test.xml"); @@ -451,7 +451,7 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage private void ValidateVIFData(string vifFilePath) { var vifReader = XmlReader.Create(vifFilePath); - var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistageBusInputDataProvider; + var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistepBusInputDataProvider; var res = vifDataProvider.JobInputData.PrimaryVehicle; TestVehicleData(res.Vehicle); diff --git a/VectoCore/VectoCoreTest/Utils/CompletedVIF.cs b/VectoCore/VectoCoreTest/Utils/CompletedVIF.cs index cad4740bce7fa4013c6d113f12092b17a5cd1271..091e324a1e09109e93265558ebe4281de85a5613 100644 --- a/VectoCore/VectoCoreTest/Utils/CompletedVIF.cs +++ b/VectoCore/VectoCoreTest/Utils/CompletedVIF.cs @@ -22,7 +22,7 @@ namespace TUGraz.VectoCore.Tests.Utils var vifDataProvider = xmlInputReader.Create(completedJson.PrimaryInputDataFile); var completeDataProvider = xmlInputReader.CreateDeclaration(completedJson.CompletedInputDataFile); var inputDataAsm = new XMLDeclarationVIFInputData( - vifDataProvider as IMultistageBusInputDataProvider, completeDataProvider.JobInputData.Vehicle); + vifDataProvider as IMultistepBusInputDataProvider, completeDataProvider.JobInputData.Vehicle); var filename = Guid.NewGuid().ToString().Substring(0, 20); var writerAsm = new FileOutputVIFWriter(filename, 0); @@ -46,7 +46,7 @@ namespace TUGraz.VectoCore.Tests.Utils var completedVif = xmlInputReader.CreateDeclaration(XmlReader.Create(new StringReader(CreateCompletedVifXML(completedJson, xmlInputReader)))); - return new XMLDeclarationVIFInputData(completedVif as IMultistageBusInputDataProvider, null); + return new XMLDeclarationVIFInputData(completedVif as IMultistepBusInputDataProvider, null); } } } \ No newline at end of file diff --git a/VectoCore/VectoCoreTest/XML/Reports/CustomerInformationFileWriterTest.cs b/VectoCore/VectoCoreTest/XML/Reports/CustomerInformationFileWriterTest.cs index 838196ad0902ac01d8d2c60002c8bef43f23ec3c..b0f4fb20ad0b2c6b832339cb4ee7d739b8eb719e 100644 --- a/VectoCore/VectoCoreTest/XML/Reports/CustomerInformationFileWriterTest.cs +++ b/VectoCore/VectoCoreTest/XML/Reports/CustomerInformationFileWriterTest.cs @@ -42,11 +42,11 @@ namespace TUGraz.VectoCore.Tests.XML.Reports } private IXMLCustomerReport GetCompletedBusCustomerReport(string fileName, - out IMultistageBusInputDataProvider dataProvider) + out IMultistepBusInputDataProvider dataProvider) { Assert.IsFalse(string.IsNullOrEmpty(fileName)); var tmp = _xmlReader.CreateDeclaration(fileName); - dataProvider = tmp as IMultistageBusInputDataProvider; + dataProvider = tmp as IMultistepBusInputDataProvider; var arch = dataProvider.JobInputData.PrimaryVehicle.Vehicle.ArchitectureID; diff --git a/VectoCore/VectoCoreTest/XML/Reports/ManufacturerReportWriterTest.cs b/VectoCore/VectoCoreTest/XML/Reports/ManufacturerReportWriterTest.cs index 210a6e203d97ff7af5d621cd86a18fc0201c53a6..ffa9c7cd011b51c1342a6854f21d8d224f829061 100644 --- a/VectoCore/VectoCoreTest/XML/Reports/ManufacturerReportWriterTest.cs +++ b/VectoCore/VectoCoreTest/XML/Reports/ManufacturerReportWriterTest.cs @@ -212,10 +212,10 @@ namespace TUGraz.VectoCore.Tests.XML.Reports } private IXMLManufacturerReport GetCompletedBusReport(string fileName, - out IMultistageBusInputDataProvider dataProvider) + out IMultistepBusInputDataProvider dataProvider) { Assert.IsFalse(string.IsNullOrEmpty(fileName)); - dataProvider = _xmlReader.CreateDeclaration(fileName) as IMultistageBusInputDataProvider; + dataProvider = _xmlReader.CreateDeclaration(fileName) as IMultistepBusInputDataProvider; Assert.NotNull(dataProvider); var arch = dataProvider.JobInputData.PrimaryVehicle.Vehicle.ArchitectureID; diff --git a/VectoCore/VectoCoreTest/XML/XMLMultistageBusConsolidatedInputDataTest.cs b/VectoCore/VectoCoreTest/XML/XMLMultistageBusConsolidatedInputDataTest.cs index e0c0068ab735dfe618f1eb956f8fb43a9f20696d..65d45abfca0c2c90dfdd174cdf5aa0dc8e15cba9 100644 --- a/VectoCore/VectoCoreTest/XML/XMLMultistageBusConsolidatedInputDataTest.cs +++ b/VectoCore/VectoCoreTest/XML/XMLMultistageBusConsolidatedInputDataTest.cs @@ -43,7 +43,7 @@ namespace TUGraz.VectoCore.Tests.XML public void TestConsolidateMultistageVehicle() { var reader = XmlReader.Create(_consolidatedInputData); - var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider; + var inputDataProvider = _xmlInputReader.Create(reader) as IMultistepBusInputDataProvider; Assert.AreEqual(true, inputDataProvider.JobInputData.InputComplete); TestConsolidateManufacturingStage(inputDataProvider.JobInputData.ConsolidateManufacturingStage); } @@ -110,7 +110,7 @@ namespace TUGraz.VectoCore.Tests.XML public void TestPrimaryOnlyConsolidateMultistageVehicle() { var reader = XmlReader.Create(_primaryOnlyInputData); - var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider; + var inputDataProvider = _xmlInputReader.Create(reader) as IMultistepBusInputDataProvider; Assert.AreEqual(null, inputDataProvider.JobInputData.ManufacturingStages); //The consolidated ManufacturingStage is now always created, and can hold some values from the primary vehicle (i.e. TPMLM) @@ -122,7 +122,7 @@ namespace TUGraz.VectoCore.Tests.XML public void TestOneStageConsolidateMultistageVehicle() { var reader = XmlReader.Create(_oneStageInputData); - var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider; + var inputDataProvider = _xmlInputReader.Create(reader) as IMultistepBusInputDataProvider; Assert.AreEqual(false, inputDataProvider.JobInputData.InputComplete); @@ -161,7 +161,7 @@ namespace TUGraz.VectoCore.Tests.XML public void TestTwoStagesConsolidateMultistageVehicle() { var reader = XmlReader.Create(_twoStagesInputData); - var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider; + var inputDataProvider = _xmlInputReader.Create(reader) as IMultistepBusInputDataProvider; Assert.AreEqual(false, inputDataProvider.JobInputData.InputComplete); var vehicle = inputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle; @@ -202,7 +202,7 @@ namespace TUGraz.VectoCore.Tests.XML public void TestConsolidateMultistageAirdrag() { var reader = XmlReader.Create(_consolidatedInputDataAirdrag); - var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider; + var inputDataProvider = _xmlInputReader.Create(reader) as IMultistepBusInputDataProvider; var hvaux = inputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.BusAuxiliaries.HVACAux; Assert.NotNull(hvaux); @@ -221,7 +221,7 @@ namespace TUGraz.VectoCore.Tests.XML public void TestConsolidateMultistageHeatPump() { var reader = XmlReader.Create(_consolidatedInputDataHeatPump); - var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider; + var inputDataProvider = _xmlInputReader.Create(reader) as IMultistepBusInputDataProvider; var hvaux = inputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.BusAuxiliaries.HVACAux; Assert.NotNull(hvaux); @@ -238,7 +238,7 @@ namespace TUGraz.VectoCore.Tests.XML public void TestConsolidateMultistageHeatHev() { var reader = XmlReader.Create(_consolidatedInputDataHeatHev); - var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider; + var inputDataProvider = _xmlInputReader.Create(reader) as IMultistepBusInputDataProvider; var hvaux = inputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.BusAuxiliaries.HVACAux; Assert.NotNull(hvaux); @@ -255,7 +255,7 @@ namespace TUGraz.VectoCore.Tests.XML public void TestConsolidateMultistageHeatNgTankSystem() { var reader = XmlReader.Create(_consolidatedInputDataHeatNgTank); - var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider; + var inputDataProvider = _xmlInputReader.Create(reader) as IMultistepBusInputDataProvider; var hvaux = inputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.BusAuxiliaries.HVACAux; Assert.NotNull(hvaux); diff --git a/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs b/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs index 87c735b7e18c2f5059938ac97c3b15ebf84ec25a..1207efe1f950bf47a86536db865420232bdd454d 100644 --- a/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs +++ b/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs @@ -42,7 +42,7 @@ namespace TUGraz.VectoCore.Tests.XML public void TestVehicleMultistageBusInput01() { var reader = XmlReader.Create(VIF01); - var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider; + var inputDataProvider = _xmlInputReader.Create(reader) as IMultistepBusInputDataProvider; TestPrimaryVehicleDataType(inputDataProvider.JobInputData.PrimaryVehicle); TestManufacturingStages(inputDataProvider.JobInputData.ManufacturingStages); } @@ -670,7 +670,7 @@ namespace TUGraz.VectoCore.Tests.XML public void TestVehicleMultistageBusInput02() { var reader = XmlReader.Create(VIF02); - var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider; + var inputDataProvider = _xmlInputReader.Create(reader) as IMultistepBusInputDataProvider; TestPrimaryVehicleDataType(inputDataProvider.JobInputData.PrimaryVehicle); TestManufacturingStageVIF02(inputDataProvider.JobInputData.ManufacturingStages); } diff --git a/VectoMockup/VectoMockup/MockupXMLInputDataFactory.cs b/VectoMockup/VectoMockup/MockupXMLInputDataFactory.cs index 4bdf5e347b7d4173574d17e4df07d54a74275460..4313770419fe3e795f334b74d8a3fc2a2181d004 100644 --- a/VectoMockup/VectoMockup/MockupXMLInputDataFactory.cs +++ b/VectoMockup/VectoMockup/MockupXMLInputDataFactory.cs @@ -23,7 +23,7 @@ namespace TUGraz.VectoMockup #region Overrides of XMLInputDataFactory - protected override IMultistageBusInputDataProvider ReadMultistageDeclarationJob(XmlDocument xmlDoc, string source) + protected override IMultistepBusInputDataProvider ReadMultistageDeclarationJob(XmlDocument xmlDoc, string source) { var ret = base.ReadMultistageDeclarationJob(xmlDoc, source); diff --git a/VectoMockup/VectoMockup/Reports/MockupReportFactory.cs b/VectoMockup/VectoMockup/Reports/MockupReportFactory.cs index bf5cbda31393b6e40afec20d5e4a538095952f78..7d35d9451f2a52e0e790076380920d5526e2f7fd 100644 --- a/VectoMockup/VectoMockup/Reports/MockupReportFactory.cs +++ b/VectoMockup/VectoMockup/Reports/MockupReportFactory.cs @@ -38,7 +38,7 @@ namespace TUGraz.VectoMockup.Reports { switch (input) { - case IMultistageBusInputDataProvider multistageBusInputDataProvider: + case IMultistepBusInputDataProvider multistageBusInputDataProvider: break; case ISingleBusInputDataProvider singleBusInputDataProvider: return new XMLDeclarationReport(outputWriter); diff --git a/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReportCompletedVehicle.cs b/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReportCompletedVehicle.cs index 3a6a27877dbe0a4684449c23f5e549e636f523a9..1e7169b8ad82b4cc41fa7dee3ea1431088c1a1f0 100644 --- a/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReportCompletedVehicle.cs +++ b/VectoMockup/VectoMockup/Reports/XMLDeclarationMockupReportCompletedVehicle.cs @@ -113,7 +113,7 @@ namespace TUGraz.VectoMockup.Reports protected override void WriteResult(ResultEntry result) { - if (_modelData.InputData is IMultistageBusInputDataProvider multistageInput) { + if (_modelData.InputData is IMultistepBusInputDataProvider multistageInput) { var primaryResult = multistageInput.JobInputData.PrimaryVehicle.ResultsInputData.Results.FirstOrDefault(); var tankSystem = multistageInput.JobInputData.ConsolidateManufacturingStage.Vehicle.TankSystem; result.FuelData = primaryResult.EnergyConsumption.Keys diff --git a/VectoMockup/VectoMockup/Simulation/RundataFactories/CompletedBusRunDataFactory.cs b/VectoMockup/VectoMockup/Simulation/RundataFactories/CompletedBusRunDataFactory.cs index 970e75fc97cf1c088f932ac832afd7ef83763365..7161fc9579b3d10c2cb120312dec81554615c79d 100644 --- a/VectoMockup/VectoMockup/Simulation/RundataFactories/CompletedBusRunDataFactory.cs +++ b/VectoMockup/VectoMockup/Simulation/RundataFactories/CompletedBusRunDataFactory.cs @@ -17,7 +17,7 @@ namespace TUGraz.VectoMockup.Simulation.RundataFactories { internal class MockupMultistageCompletedBusRunDataFactory : DeclarationModeCompletedMultistageBusVectoRunDataFactory { - public MockupMultistageCompletedBusRunDataFactory(IMultistageBusInputDataProvider dataProvider, + public MockupMultistageCompletedBusRunDataFactory(IMultistepBusInputDataProvider dataProvider, IDeclarationReport report) : base(dataProvider, report) { diff --git a/VectoMockup/VectoMockupTest/MockUpVectoTest.cs b/VectoMockup/VectoMockupTest/MockUpVectoTest.cs index b002f9702c0282498243c68eb494f572089801d2..cd417f67f78f1c95728e1cfe8b4dba978c25bd04 100644 --- a/VectoMockup/VectoMockupTest/MockUpVectoTest.cs +++ b/VectoMockup/VectoMockupTest/MockUpVectoTest.cs @@ -347,7 +347,7 @@ namespace VectoMockupTest { CopyInputFile(vifInput); //SimulatorFactory.MockUpRun = mockup; - var multistageBusInput = _inputDataReader.Create(vifInput) as IMultistageBusInputDataProvider; + var multistageBusInput = _inputDataReader.Create(vifInput) as IMultistepBusInputDataProvider; Assert.NotNull(multistageBusInput); var stageInput = _inputDataReader.CreateDeclaration(stageInputFile); @@ -378,7 +378,7 @@ namespace VectoMockupTest var fileWriter = GetOutputFileWriter(TestContext.CurrentContext.Test.Name, fileName); using (var reader = XmlReader.Create(fileName)) { - input = new XMLDeclarationVIFInputData(_inputDataReader.Create(fileName) as IMultistageBusInputDataProvider, null); + input = new XMLDeclarationVIFInputData(_inputDataReader.Create(fileName) as IMultistepBusInputDataProvider, null); fileWriter = new FileOutputVIFWriter(fileName, input.MultistageJobInputData.JobInputData.ManufacturingStages.Count); } var sumWriter = new SummaryDataContainer(null); @@ -605,6 +605,7 @@ namespace VectoMockupTest public void CompletedTest(string primaryBusInput, string completeBusInput, params string[] expectedType) { CopyInputFile(completeBusInput); + CopyInputFile(primaryBusInput); // completed: VIF + complete input (full) => VIF , MRF Completed, CIF Completed // (approach: first simulate primary on its own to have an up-to-date VIF // (no need to maintain this in the testfiles) @@ -625,7 +626,7 @@ namespace VectoMockupTest jobContainer.WaitFinished(); CheckFileExists(fileWriter, checkCif: false, checkPrimaryReport: true, checkMrf: true); - File.Delete(fileWriter.XMLFullReportName); + //File.Delete(fileWriter.XMLFullReportName); CopyInputFile(fileWriter.XMLPrimaryVehicleReportName); // done preparing testcase... @@ -646,7 +647,7 @@ namespace VectoMockupTest completedJobContainer.WaitFinished(); // assertions - File.Delete(fileWriter.XMLPrimaryVehicleReportName); + //File.Delete(fileWriter.XMLPrimaryVehicleReportName); CheckFileExists(completedFileWriter, checkCif: true, checkMrf: true, checkVif:true);