From f508399846d1e2cdf63a8ccb2f267da0a336b9b3 Mon Sep 17 00:00:00 2001 From: Evgeny Redikultsev Date: Sat, 18 Jan 2025 22:13:11 +0500 Subject: [PATCH] Add logic for import of combination from xls files --- .../UI/Resources/ButtonStyles.xaml | 32 ++++- .../UI/Resources/ForceTemplates.xaml | 21 ++-- StructureHelper/StructureHelper.csproj.user | 6 + .../Windows/Forces/ColumnPropertyVM.cs | 76 +++++++++++ .../Windows/Forces/ForceCombinationView.xaml | 2 +- .../Forces/ForceCombinationViewerVM.cs | 22 ++++ .../Forces/ForceCombinationViewerView.xaml | 12 ++ .../Forces/ForceCombinationViewerView.xaml.cs | 35 ++++++ .../Windows/Forces/ForceFilePropertyVM.cs | 13 +- .../Windows/Forces/ForceFilePropertyView.xaml | 37 ++++-- .../Forces/ForceFilePropertyView.xaml.cs | 14 ++- .../Windows/Forces/ListOfFilesVM.cs | 53 +++++++- .../Windows/MainWindow/CrossSectionView.xaml | 4 + .../UserControls/ListOfFileControl.xaml | 34 ++++- .../ViewModels/Forces/ActionsViewModel.cs | 33 ++++- .../ViewModels/OkCancelViewModelBase.cs | 11 ++ .../Models/Forces/ColumnProperty.cs | 22 +++- .../Models/Forces/ColumnedFileProperty.cs | 45 +++++++ .../Models/Forces/FilePropertyFactory.cs | 40 ++++++ .../Models/Forces/ForceCombinationFromFile.cs | 6 +- .../Models/Forces/ForceFileProperty.cs | 30 ----- .../Models/Forces/IColumnProperty.cs | 12 +- ...leProperty.cs => IColumnedFileProperty.cs} | 19 ++- .../Models/Forces/IFileProperty.cs | 3 +- .../Forces/IForceCombinationFromFile.cs | 2 +- .../Logics/CheckColumnedFilePropertyLogic.cs | 48 +++++++ .../Logics/ColumnPropertyCloningStrategy.cs | 37 ++++++ ...egy.cs => ColumnPropertyUpdateStrategy.cs} | 9 +- .../ColumnedFilePropertyUpdateStrategy.cs | 39 ++++++ .../Logics/FillTupleArrayByColumnNameLogic.cs | 36 ++++++ .../ForceCombinationFromFileUpdateStrategy.cs | 22 ++-- .../Logics/ForceFilePropertyUpdateStrategy.cs | 39 ------ .../Logics/GetTupleByExcelReaderLogic.cs | 52 ++++++++ .../Forces/Logics/GetTupleFromFileLogic.cs | 79 ------------ .../Forces/Logics/GetTuplesFromFileLogic.cs | 105 ++++++++++++++++ .../IFillTupleArrayByColumnNameLogic.cs | 9 ++ .../Logics/IGetTupleByExcelReaderLogic.cs | 16 +++ .../Forces/Logics/IGetTupleFromFileLogic.cs | 12 -- .../Forces/Logics/IGetTuplesFromFileLogic.cs | 12 ++ StructureHelperCommon/Services/CheckObject.cs | 6 + .../CheckColumnedFilePropertyLogicTests.cs | 84 +++++++++++++ .../GetTupleByExcelReaderLogicTests.cs | 59 +++++++++ .../GetTuplesFromFileLogicTests.cs | 119 ++++++++++++++++++ 43 files changed, 1140 insertions(+), 227 deletions(-) create mode 100644 StructureHelper/Windows/Forces/ColumnPropertyVM.cs create mode 100644 StructureHelper/Windows/Forces/ForceCombinationViewerVM.cs create mode 100644 StructureHelper/Windows/Forces/ForceCombinationViewerView.xaml create mode 100644 StructureHelper/Windows/Forces/ForceCombinationViewerView.xaml.cs create mode 100644 StructureHelperCommon/Models/Forces/ColumnedFileProperty.cs create mode 100644 StructureHelperCommon/Models/Forces/FilePropertyFactory.cs delete mode 100644 StructureHelperCommon/Models/Forces/ForceFileProperty.cs rename StructureHelperCommon/Models/Forces/{IForceFileProperty.cs => IColumnedFileProperty.cs} (51%) create mode 100644 StructureHelperCommon/Models/Forces/Logics/CheckColumnedFilePropertyLogic.cs create mode 100644 StructureHelperCommon/Models/Forces/Logics/ColumnPropertyCloningStrategy.cs rename StructureHelperCommon/Models/Forces/Logics/{ForceColumnPropertyUpdateStrategy.cs => ColumnPropertyUpdateStrategy.cs} (63%) create mode 100644 StructureHelperCommon/Models/Forces/Logics/ColumnedFilePropertyUpdateStrategy.cs create mode 100644 StructureHelperCommon/Models/Forces/Logics/FillTupleArrayByColumnNameLogic.cs delete mode 100644 StructureHelperCommon/Models/Forces/Logics/ForceFilePropertyUpdateStrategy.cs create mode 100644 StructureHelperCommon/Models/Forces/Logics/GetTupleByExcelReaderLogic.cs delete mode 100644 StructureHelperCommon/Models/Forces/Logics/GetTupleFromFileLogic.cs create mode 100644 StructureHelperCommon/Models/Forces/Logics/GetTuplesFromFileLogic.cs create mode 100644 StructureHelperCommon/Models/Forces/Logics/IFillTupleArrayByColumnNameLogic.cs create mode 100644 StructureHelperCommon/Models/Forces/Logics/IGetTupleByExcelReaderLogic.cs delete mode 100644 StructureHelperCommon/Models/Forces/Logics/IGetTupleFromFileLogic.cs create mode 100644 StructureHelperCommon/Models/Forces/Logics/IGetTuplesFromFileLogic.cs create mode 100644 StructureHelperTests/UnitTests/ForcesTests/CheckColumnedFilePropertyLogicTests.cs create mode 100644 StructureHelperTests/UnitTests/ForcesTests/GetTupleByExcelReaderLogicTests.cs create mode 100644 StructureHelperTests/UnitTests/ForcesTests/GetTuplesFromFileLogicTests.cs diff --git a/StructureHelper/Infrastructure/UI/Resources/ButtonStyles.xaml b/StructureHelper/Infrastructure/UI/Resources/ButtonStyles.xaml index 9247372..5b195b4 100644 --- a/StructureHelper/Infrastructure/UI/Resources/ButtonStyles.xaml +++ b/StructureHelper/Infrastructure/UI/Resources/ButtonStyles.xaml @@ -85,12 +85,10 @@ - - - - -