refactor columns

This commit is contained in:
Chika 2020-10-23 14:10:57 +03:00
parent 25f9b80429
commit 24ec3c7ef7
46 changed files with 408 additions and 524 deletions

View File

@ -46,7 +46,9 @@
<e p="AcceptSumColumn.cs" t="Include" /> <e p="AcceptSumColumn.cs" t="Include" />
<e p="AgentComissionExpensesColumn.cs" t="Include" /> <e p="AgentComissionExpensesColumn.cs" t="Include" />
<e p="BaseColumn.cs" t="Include" /> <e p="BaseColumn.cs" t="Include" />
<e p="BaseColumnWithSum.cs" t="Include" />
<e p="BaseColumnWithXIRR.cs" t="Include" /> <e p="BaseColumnWithXIRR.cs" t="Include" />
<e p="BaseColumnWithXNPV.cs" t="Include" />
<e p="CashflowColumn.cs" t="Include" /> <e p="CashflowColumn.cs" t="Include" />
<e p="ComissionBonusExpensesColumn.cs" t="Include" /> <e p="ComissionBonusExpensesColumn.cs" t="Include" />
<e p="DateColumn.cs" t="Include" /> <e p="DateColumn.cs" t="Include" />

View File

@ -14,33 +14,52 @@
</component> </component>
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="2c3b0650-5589-43d4-b4b7-2979612bb30f" name="Default Changelist" comment=""> <list default="true" id="2c3b0650-5589-43d4-b4b7-2979612bb30f" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/CashflowColumn.cs" afterDir="false" /> <change afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/BaseColumnWithSum.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NSIBBruttoGrColumn.cs" afterDir="false" /> <change afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/BaseColumnWithXNPV.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NegativeCashflowColumn.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TaxColumn.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/EvoCalculator.Core.Models/Calculation/Models/Request/RequestCalculation.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/CashflowTests.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NSIBBruttoGrTests.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NegativeCashflowTests.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/TaxColumnTests.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Controller/CalculationControllerV1Tests.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/EvoCalculator.Core/Controllers/v1/CalculationController.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.EvoCalculator.Core/.idea/contentModel.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.EvoCalculator.Core/.idea/contentModel.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/.idea.EvoCalculator.Core/.idea/contentModel.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.EvoCalculator.Core/.idea/contentModel.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.EvoCalculator.Core/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.EvoCalculator.Core/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/.idea.EvoCalculator.Core/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.EvoCalculator.Core/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AcceptInsuranceColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AcceptInsuranceColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AcceptKaskoColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AcceptKaskoColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AcceptOsagoColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AcceptOsagoColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AcceptSumColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AcceptSumColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AgentComissionExpensesColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AgentComissionExpensesColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/BaseColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/BaseColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/BaseColumnWithXIRR.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/BaseColumnWithXIRR.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/BaseColumnWithXIRR.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/BaseColumnWithXIRR.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/CashflowColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/CashflowColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/ComissionBonusExpensesColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/ComissionBonusExpensesColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/DateColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/DateColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/DateTempColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/DateTempColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/DeprecationColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/DeprecationColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/DeprecationLDColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/DeprecationLDColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/DeprecationLPColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/DeprecationLPColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/ExpensesColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/ExpensesColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/GPSExpensesColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/GPSExpensesColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/GPS_GrColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/GPS_GrColumn.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/GPS_GrColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/GPS_GrColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/InsuranceBonusExpensesColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/InsuranceBonusExpensesColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/KaskoBonusGrSumColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/KaskoBonusGrSumColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/KaskoNmperGrColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/KaskoNmperGrColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NPVBonusExpensesColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NPVBonusExpensesColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NSIBBruttoGrColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NSIBBruttoGrColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NegativeCashflowColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NegativeCashflowColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NsibExpensesColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NSIBExpensesColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/PercentPaymentColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/PercentPaymentColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/RatExpensesColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/RatExpensesColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/RegistrExpensesColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/RegistrExpensesColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/SumColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/SumColumn.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/SumColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/SumColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/EvoCalculator.Core.Calculation.csproj" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/EvoCalculator.Core.Calculation.csproj" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/SumWithVATColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/SumWithVATColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Constants/EvoCalculator.Core.Constants.csproj" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Constants/EvoCalculator.Core.Constants.csproj" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TLMExpensesColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TLMExpensesColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.FinanceFormulas/EvoCalculator.Core.FinanceFormulas.csproj" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.FinanceFormulas/EvoCalculator.Core.FinanceFormulas.csproj" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TLM_GrColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TLM_GrColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Models/EvoCalculator.Core.Models.csproj" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Models/EvoCalculator.Core.Models.csproj" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TaxColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TaxColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/DeprecationTests.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/DeprecationTests.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TransExprensesColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TransExprensesColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/InsuranceBonusExpensesTests.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/InsuranceBonusExpensesTests.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/VATColumn.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/VATColumn.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NPVBonusExpensesTests.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NPVBonusExpensesTests.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/ExpensesTests.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/ExpensesTests.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/SumColumnTest.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/SumTest.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/GPS_GrTests.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/GPS_GrTests.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/FinanceFormulas/FinanceFormulasTests.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/FinanceFormulas/FinanceFormulasTests.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/KaskoBonusGrSumTests.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/KaskoBonusGrSumTests.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Tests/EvoCalculator.Core.Tests.csproj" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/EvoCalculator.Core.Tests.csproj" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/KaskoNmperGrTests.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/KaskoNmperGrTests.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core/EvoCalculator.Core.csproj" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core/EvoCalculator.Core.csproj" afterDir="false" /> <change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NegativeCashflowTests.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NegativeCashflowTests.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NsibExpensesTests.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NSIBExpensesTests.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/TLM_GrTests.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/TLM_GrTests.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/EvoCalculator.Core/Controllers/v1/CalculationController.cs" beforeDir="false" afterPath="$PROJECT_DIR$/EvoCalculator.Core/Controllers/v1/CalculationController.cs" afterDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" /> <option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -51,80 +70,89 @@
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" /> <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
</component> </component>
<component name="HighlightingSettingsPerFile"> <component name="HighlightingSettingsPerFile">
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/AD61CA47-F8B7-4CC6-93A0-BA44CC73B5C7/72/Double.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="mock://C:/Users/Chika/Projects/EvoCalculator.Core/EvoCalculator.Core/Controllers/v1/CalculationController.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="mock://C:/Users/Chika/Projects/EvoCalculator.Core/EvoCalculator.Core.Calculation/Columns/KaskoNmperGrColumn.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="mock://C:/Users/Chika/Projects/EvoCalculator.Core/EvoCalculator.Core.Calculation/Columns/GPS_GrColumn.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/E2E1F770-6781-48FC-97C9-82BA075D5898/89/f5bc57e5/Trident.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="mock://C:/Users/Chika/Projects/EvoCalculator.Core/EvoCalculator.Core.Calculation/Columns/CashflowColumn.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/EvoCalculator.Core.FinanceFormulas/XIRR.cs" root0="FORCE_HIGHLIGHTING" /> <setting file="file://$PROJECT_DIR$/EvoCalculator.Core.FinanceFormulas/XIRR.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/E2E1F770-6781-48FC-97C9-82BA075D5898/af/6846d1ce/GoalSeek.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/E2E1F770-6781-48FC-97C9-82BA075D5898/af/6846d1ce/GoalSeek.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="mock://C:/Users/Chika/Projects/EvoCalculator.Core/EvoCalculator.Core.Tests/Calculation/Columns/NsibExpensesTests.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/EvoCalculator.Core.Constants/Calculation.cs" root0="FORCE_HIGHLIGHTING" /> <setting file="file://$PROJECT_DIR$/EvoCalculator.Core.Constants/Calculation.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/9152434B-0FAC-463B-87F2-DD9AF798817F/2e/201d3c41/Assert.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/9152434B-0FAC-463B-87F2-DD9AF798817F/2e/201d3c41/Assert.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/E2E1F770-6781-48FC-97C9-82BA075D5898/8a/efc30f2b/IGoalSeekAlgorithm.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/E2E1F770-6781-48FC-97C9-82BA075D5898/8a/efc30f2b/IGoalSeekAlgorithm.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/F680C866-D120-4163-9634-EBD842255BE9/1BB/ControllerAttribute.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/F680C866-D120-4163-9634-EBD842255BE9/1BB/ControllerAttribute.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/AD61CA47-F8B7-4CC6-93A0-BA44CC73B5C7/72/Double.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="mock://C:/Users/Chika/Projects/EvoCalculator.Core/EvoCalculator.Core.Calculation/Columns/BaseColumnWithXIRR.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/AD61CA47-F8B7-4CC6-93A0-BA44CC73B5C7/49/DateTime.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/AD61CA47-F8B7-4CC6-93A0-BA44CC73B5C7/49/DateTime.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/F680C866-D120-4163-9634-EBD842255BE9/19F/ApiControllerAttribute.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/F680C866-D120-4163-9634-EBD842255BE9/19F/ApiControllerAttribute.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/18D5A60D-361A-4AFD-A431-F772FA87FCC3/d9/b0109e6d/TestInvoker`1.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/18D5A60D-361A-4AFD-A431-F772FA87FCC3/d9/b0109e6d/TestInvoker`1.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/E2E1F770-6781-48FC-97C9-82BA075D5898/92/f4ccca9d/GoalSeekResult.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/E2E1F770-6781-48FC-97C9-82BA075D5898/92/f4ccca9d/GoalSeekResult.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="mock:///Dummy.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="mock://C:/Users/Chika/Projects/EvoCalculator.Core/EvoCalculator.Core.Tests/Calculation/Columns/ExpensesTests.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/F680C866-D120-4163-9634-EBD842255BE9/3D/HttpPostAttribute.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/F680C866-D120-4163-9634-EBD842255BE9/3D/HttpPostAttribute.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/F680C866-D120-4163-9634-EBD842255BE9/24/ControllerBase.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/F680C866-D120-4163-9634-EBD842255BE9/24/ControllerBase.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="mock://C:/Users/Chika/Projects/EvoCalculator.Core/EvoCalculator.Core.Calculation/Columns/TLM_GrColumn.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="mock://C:/Users/Chika/Projects/EvoCalculator.Core/EvoCalculator.Core.Calculation/Columns/NsibExpensesColumn.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/9D995D4A-0EBE-4A93-85A6-BE06CB7C70EE/f6/ada9c10c/FactAttribute.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/9D995D4A-0EBE-4A93-85A6-BE06CB7C70EE/f6/ada9c10c/FactAttribute.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/558EFF1A-6D86-468A-B5D3-8B990CD1FB1A/C/Controller.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/558EFF1A-6D86-468A-B5D3-8B990CD1FB1A/C/Controller.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="mock://C:/Users/Chika/Projects/EvoCalculator.Core/EvoCalculator.Core.Calculation/Columns/SumColumn.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/E2E1F770-6781-48FC-97C9-82BA075D5898/d6/c014ca2d/GoalSeekOptions.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/E2E1F770-6781-48FC-97C9-82BA075D5898/d6/c014ca2d/GoalSeekOptions.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/E2E1F770-6781-48FC-97C9-82BA075D5898/89/f5bc57e5/Trident.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/31F94AF4-0455-4C4C-BD4F-AB58A9F2D1BF/2C/Sum.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/SourcesCache/31F94AF4-0455-4C4C-BD4F-AB58A9F2D1BF/2C/Sum.cs" root0="SKIP_HIGHLIGHTING" />
</component> </component>
<component name="IdeDocumentHistory"> <component name="IdeDocumentHistory">
<option name="CHANGED_PATHS"> <option name="CHANGED_PATHS">
<list> <list>
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/AgentComissionExpensesTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AgentComissionExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/RatExpensesTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/RatExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core/Controllers/v2/CalculationController.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/TransExprensesTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TransExprensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NsibExpensesTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/KaskoNmperGrTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/KaskoNmperGrColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NsibExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Models/Calculation/Models/Prepared/PreparedParams.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/TlmExpensesTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TlmExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TLMExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/TLMExpensesTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/GPSExpensesTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/GPSExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/RegistrExpensesTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/RegistrExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/InsuranceBonusExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/ComissionBonusExpensesTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/ComissionBonusExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/ExpencesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/ExpensesTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/ExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Models/Calculation/Models/Request/RequestCalculation.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/ControllerTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/CalculationControllerTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/FinanceFormulas/FinanceFormulasTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/DeprecationTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NPVBonusExpensesTests.cs" /> <option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NPVBonusExpensesTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/InsuranceBonusExpensesTests.cs" /> <option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/InsuranceBonusExpensesTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core/Controllers/v1/CalculationController.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/SumColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/bin/Debug/netcoreapp3.1/Logs/CalculationControllerV1.log" /> <option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/bin/Debug/netcoreapp3.1/Logs/CalculationControllerV1.log" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/GPS_GrColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Controller/CalculationControllerV1Tests.cs" /> <option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Controller/CalculationControllerV1Tests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NegativeCashflowTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NegativeCashflowColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NSIBBruttoGrColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NSIBBruttoGrTests.cs" /> <option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NSIBBruttoGrTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/IncomeTaxColumnTests.cs" /> <option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/IncomeTaxColumnTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/IncomeTaxColumn.cs" /> <option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/IncomeTaxColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TaxColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/TaxColumnTests.cs" /> <option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/TaxColumnTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/SumColumnTest.cs" /> <option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/SumColumnTest.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/SumTest.cs" /> <option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/SumTest.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/BaseColumnWithXIRR.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/CashflowColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/CashflowTests.cs" /> <option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/CashflowTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NSIBExpensesTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/CashflowColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/SumColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/BaseColumnWithXNPV.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/BaseColumnWithXIRR.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/GPS_GrColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/KaskoNmperGrColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TLM_GrColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/KaskoBonusGrSumTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/KaskoNmperGrTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NegativeCashflowTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/TLM_GrTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core/Controllers/v1/CalculationController.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/GPS_GrTests.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/BaseColumnWithSum.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/BaseColumnWithSum.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NegativeCashflowColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AcceptKaskoColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AcceptOsagoColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AcceptSumColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AgentComissionExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/ComissionBonusExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/DeprecationColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/DeprecationLDColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/DeprecationLPColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/ExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/GPSExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/InsuranceBonusExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/KaskoBonusGrSumColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NPVBonusExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NSIBExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/RatExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/RegistrExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/SumWithVATColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TLMExpensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TaxColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/TransExprensesColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/VATColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/NSIBBruttoGrColumn.cs" />
<option value="$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/AcceptInsuranceColumn.cs" />
</list> </list>
</option> </option>
</component> </component>
@ -197,7 +225,8 @@
<workItem from="1603193984674" duration="8364000" /> <workItem from="1603193984674" duration="8364000" />
<workItem from="1603277394554" duration="12806000" /> <workItem from="1603277394554" duration="12806000" />
<workItem from="1603354920953" duration="45000" /> <workItem from="1603354920953" duration="45000" />
<workItem from="1603359602644" duration="12967000" /> <workItem from="1603359602644" duration="13087000" />
<workItem from="1603447491537" duration="3845000" />
</task> </task>
<task id="LOCAL-00001" summary="rename: flow"> <task id="LOCAL-00001" summary="rename: flow">
<created>1602593830686</created> <created>1602593830686</created>
@ -253,90 +282,94 @@
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state x="1108" y="416" key="#com.intellij.ide.ui.customization.CustomizableActionsPanel.FindAvailableActionsDialog/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603119675236" /> <state x="1108" y="416" key="#com.intellij.ide.ui.customization.CustomizableActionsPanel.FindAvailableActionsDialog/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603119675236" />
<state x="1027" y="545" key="ANALYSIS_DLG_com.jetbrains.rider.actions.impl.cleanup.RiderCodeCleanupAction$actionPerformed$dlg$1" timestamp="1603451239512">
<screen x="0" y="0" width="2560" height="1400" />
</state>
<state x="1027" y="545" key="ANALYSIS_DLG_com.jetbrains.rider.actions.impl.cleanup.RiderCodeCleanupAction$actionPerformed$dlg$1/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603451239512" />
<state width="503" height="464" key="DebuggerActiveHint" timestamp="1603378893516"> <state width="503" height="464" key="DebuggerActiveHint" timestamp="1603378893516">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="503" height="464" key="DebuggerActiveHint/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603378893516" /> <state width="503" height="464" key="DebuggerActiveHint/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603378893516" />
<state width="2517" height="396" key="GridCell.Tab.0.bottom" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.0.bottom" timestamp="1603379155705">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.0.bottom/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.0.bottom/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155705" />
<state width="2517" height="396" key="GridCell.Tab.0.center" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.0.center" timestamp="1603379155705">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.0.center/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.0.center/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155705" />
<state width="2517" height="396" key="GridCell.Tab.0.left" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.0.left" timestamp="1603379155705">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.0.left/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.0.left/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155705" />
<state width="2517" height="396" key="GridCell.Tab.0.right" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.0.right" timestamp="1603379155705">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.0.right/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.0.right/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155705" />
<state width="2517" height="396" key="GridCell.Tab.1.bottom" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.1.bottom" timestamp="1603379155706">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.1.bottom/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.1.bottom/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155706" />
<state width="2517" height="396" key="GridCell.Tab.1.center" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.1.center" timestamp="1603379155705">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.1.center/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.1.center/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155705" />
<state width="2517" height="396" key="GridCell.Tab.1.left" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.1.left" timestamp="1603379155705">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.1.left/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.1.left/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155705" />
<state width="2517" height="396" key="GridCell.Tab.1.right" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.1.right" timestamp="1603379155705">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.1.right/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.1.right/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155705" />
<state width="2517" height="396" key="GridCell.Tab.2.bottom" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.2.bottom" timestamp="1603379155706">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.2.bottom/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.2.bottom/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155706" />
<state width="2517" height="396" key="GridCell.Tab.2.center" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.2.center" timestamp="1603379155706">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.2.center/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.2.center/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155706" />
<state width="2517" height="396" key="GridCell.Tab.2.left" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.2.left" timestamp="1603379155706">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.2.left/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.2.left/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155706" />
<state width="2517" height="396" key="GridCell.Tab.2.right" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.2.right" timestamp="1603379155706">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.2.right/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.2.right/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155706" />
<state width="2517" height="396" key="GridCell.Tab.3.bottom" timestamp="1603379001094"> <state width="2517" height="396" key="GridCell.Tab.3.bottom" timestamp="1603379155706">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.3.bottom/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001094" /> <state width="2517" height="396" key="GridCell.Tab.3.bottom/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155706" />
<state width="2517" height="396" key="GridCell.Tab.3.center" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.3.center" timestamp="1603379155706">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.3.center/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.3.center/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155706" />
<state width="2517" height="396" key="GridCell.Tab.3.left" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.3.left" timestamp="1603379155706">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.3.left/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.3.left/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155706" />
<state width="2517" height="396" key="GridCell.Tab.3.right" timestamp="1603379001093"> <state width="2517" height="396" key="GridCell.Tab.3.right" timestamp="1603379155706">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.3.right/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001093" /> <state width="2517" height="396" key="GridCell.Tab.3.right/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155706" />
<state width="2517" height="396" key="GridCell.Tab.4.bottom" timestamp="1603379001094"> <state width="2517" height="396" key="GridCell.Tab.4.bottom" timestamp="1603379155706">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.4.bottom/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001094" /> <state width="2517" height="396" key="GridCell.Tab.4.bottom/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155706" />
<state width="2517" height="396" key="GridCell.Tab.4.center" timestamp="1603379001094"> <state width="2517" height="396" key="GridCell.Tab.4.center" timestamp="1603379155706">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.4.center/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001094" /> <state width="2517" height="396" key="GridCell.Tab.4.center/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155706" />
<state width="2517" height="396" key="GridCell.Tab.4.left" timestamp="1603379001094"> <state width="2517" height="396" key="GridCell.Tab.4.left" timestamp="1603379155706">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.4.left/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001094" /> <state width="2517" height="396" key="GridCell.Tab.4.left/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155706" />
<state width="2517" height="396" key="GridCell.Tab.4.right" timestamp="1603379001094"> <state width="2517" height="396" key="GridCell.Tab.4.right" timestamp="1603379155706">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="2517" height="396" key="GridCell.Tab.4.right/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379001094" /> <state width="2517" height="396" key="GridCell.Tab.4.right/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603379155706" />
<state x="872" y="432" key="Rider.ProjectTemplateDialog.Size" timestamp="1602854431119"> <state x="872" y="432" key="Rider.ProjectTemplateDialog.Size" timestamp="1602854431119">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
@ -357,10 +390,10 @@
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state width="498" height="446" key="SwitcherDM/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1602684835910" /> <state width="498" height="446" key="SwitcherDM/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1602684835910" />
<state x="92" y="92" width="2376" height="1216" key="VCS.FileHistoryDialog" timestamp="1603378800499"> <state x="92" y="92" width="2376" height="1216" key="VCS.FileHistoryDialog" timestamp="1603450401767">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state x="92" y="92" width="2376" height="1216" key="VCS.FileHistoryDialog/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603378800499" /> <state x="92" y="92" width="2376" height="1216" key="VCS.FileHistoryDialog/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603450401767" />
<state x="872" y="433" key="Vcs.Push.Dialog.v2" timestamp="1603291355983"> <state x="872" y="433" key="Vcs.Push.Dialog.v2" timestamp="1603291355983">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
@ -369,10 +402,10 @@
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state x="898" y="0" width="1161" height="1387" key="dock-window-1/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603198596935" /> <state x="898" y="0" width="1161" height="1387" key="dock-window-1/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603198596935" />
<state x="930" y="299" width="730" height="801" key="find.popup" timestamp="1603378523248"> <state x="760" y="244" width="1137" height="959" key="find.popup" timestamp="1603451304161">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
<state x="930" y="299" width="730" height="801" key="find.popup/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603378523248" /> <state x="760" y="244" width="1137" height="959" key="find.popup/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603451304161" />
<state x="936" y="330" key="run.anything.popup" timestamp="1603290743275"> <state x="936" y="330" key="run.anything.popup" timestamp="1603290743275">
<screen x="0" y="0" width="2560" height="1400" /> <screen x="0" y="0" width="2560" height="1400" />
</state> </state>
@ -383,75 +416,6 @@
<state x="943" y="315" width="672" height="678" key="search.everywhere.popup/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603290838524" /> <state x="943" y="315" width="672" height="678" key="search.everywhere.popup/0.0.2560.1400/2560.0.1920.1040@0.0.2560.1400" timestamp="1603290838524" />
</component> </component>
<component name="XDebuggerManager"> <component name="XDebuggerManager">
<breakpoint-manager>
<breakpoints>
<line-breakpoint enabled="true" type="DotNet Breakpoints">
<url>file://$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/NsibExpensesTests.cs</url>
<line>92</line>
<properties documentPath="C:\Users\Chika\Projects\EvoCalculator.Core\EvoCalculator.Core.Tests\Calculation\Columns\NsibExpensesTests.cs" initialLine="92">
<startOffsets>
<option value="2395" />
</startOffsets>
<endOffsets>
<option value="2472" />
</endOffsets>
</properties>
<option name="timeStamp" value="3" />
</line-breakpoint>
<line-breakpoint enabled="true" type="DotNet Breakpoints">
<url>file://$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/InsuranceBonusExpensesTests.cs</url>
<line>143</line>
<properties documentPath="C:\Users\Chika\Projects\EvoCalculator.Core\EvoCalculator.Core.Tests\Calculation\Columns\InsuranceBonusExpensesTests.cs" initialLine="143">
<startOffsets>
<option value="3875" />
</startOffsets>
<endOffsets>
<option value="3911" />
</endOffsets>
</properties>
<option name="timeStamp" value="9" />
</line-breakpoint>
<line-breakpoint enabled="true" type="DotNet Breakpoints">
<url>file://$PROJECT_DIR$/EvoCalculator.Core.Tests/Calculation/Columns/InsuranceBonusExpensesTests.cs</url>
<line>183</line>
<properties documentPath="C:\Users\Chika\Projects\EvoCalculator.Core\EvoCalculator.Core.Tests\Calculation\Columns\InsuranceBonusExpensesTests.cs" initialLine="183">
<startOffsets>
<option value="4871" />
</startOffsets>
<endOffsets>
<option value="4942" />
</endOffsets>
</properties>
<option name="timeStamp" value="10" />
</line-breakpoint>
<line-breakpoint enabled="true" type="DotNet Breakpoints">
<url>file://$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/SumColumn.cs</url>
<line>35</line>
<properties documentPath="C:\Users\Chika\Projects\EvoCalculator.Core\EvoCalculator.Core.Calculation\Columns\SumColumn.cs" initialLine="35">
<startOffsets>
<option value="1205" />
</startOffsets>
<endOffsets>
<option value="1206" />
</endOffsets>
</properties>
<option name="timeStamp" value="18" />
</line-breakpoint>
<line-breakpoint enabled="true" type="DotNet Breakpoints">
<url>file://$PROJECT_DIR$/EvoCalculator.Core.Calculation/Columns/SumColumn.cs</url>
<line>17</line>
<properties documentPath="C:\Users\Chika\Projects\EvoCalculator.Core\EvoCalculator.Core.Calculation\Columns\SumColumn.cs" initialLine="17">
<startOffsets>
<option value="631" />
</startOffsets>
<endOffsets>
<option value="669" />
</endOffsets>
</properties>
<option name="timeStamp" value="19" />
</line-breakpoint>
</breakpoints>
</breakpoint-manager>
<pin-to-top-manager> <pin-to-top-manager>
<pinned-members> <pinned-members>
<PinnedItemInfo parentTag="Frame#EvoCalculator.Core.Tests.Calculation.Suite.Columns.TLM_GrTests.TLM_GrTest1" memberName="expected" /> <PinnedItemInfo parentTag="Frame#EvoCalculator.Core.Tests.Calculation.Suite.Columns.TLM_GrTests.TLM_GrTest1" memberName="expected" />

View File

@ -1,8 +1,6 @@
using System.Linq; namespace EvoCalculator.Core.Calculation.Columns
namespace EvoCalculator.Core.Calculation.Columns
{ {
public class AcceptInsuranceColumn : BaseColumn<double> public class AcceptInsuranceColumn : BaseColumnWithSum
{ {
public AcceptInsuranceColumn(int count) : base(count) public AcceptInsuranceColumn(int count) : base(count)
{ {
@ -11,11 +9,9 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(AcceptKaskoColumn acceptKaskoColumn, AcceptOsagoColumn acceptOsagoColumn) public void ComputeValues(AcceptKaskoColumn acceptKaskoColumn, AcceptOsagoColumn acceptOsagoColumn)
{ {
for (var i = 1; i < Values.Length; i++) for (var i = 1; i < Values.Length; i++)
{
Values[i] = acceptKaskoColumn.Values[i] + acceptOsagoColumn.Values[i]; Values[i] = acceptKaskoColumn.Values[i] + acceptOsagoColumn.Values[i];
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class AcceptKaskoColumn : BaseColumn<double> public class AcceptKaskoColumn : BaseColumnWithSum
{ {
public AcceptKaskoColumn(int count) : base(count) public AcceptKaskoColumn(int count) : base(count)
{ {
@ -13,10 +12,9 @@ namespace EvoCalculator.Core.Calculation.Columns
{ {
Values[1] = 0; Values[1] = 0;
for (var i = 2; i < Values.Length; i++) for (var i = 2; i < Values.Length; i++)
{
Values[i] = preparedValues.InsuranceKaskoNmper / (preparedValues.Nmper - 1); Values[i] = preparedValues.InsuranceKaskoNmper / (preparedValues.Nmper - 1);
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class AcceptOsagoColumn : BaseColumn<double> public class AcceptOsagoColumn : BaseColumnWithSum
{ {
public AcceptOsagoColumn(int count) : base(count) public AcceptOsagoColumn(int count) : base(count)
{ {
@ -12,11 +11,9 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(PreparedValues preparedValues) public void ComputeValues(PreparedValues preparedValues)
{ {
for (var i = 0; i < Values.Length; i++) for (var i = 0; i < Values.Length; i++)
{
Values[i] = i > 1 && i <= 12 ? preparedValues.InsuranceOsago / 11 : 0; Values[i] = i > 1 && i <= 12 ? preparedValues.InsuranceOsago / 11 : 0;
}
Values[0] = Values.Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class AcceptSumColumn : BaseColumn<double> public class AcceptSumColumn : BaseColumnWithSum
{ {
public AcceptSumColumn(int count) : base(count) public AcceptSumColumn(int count) : base(count)
{ {
@ -16,12 +15,10 @@ namespace EvoCalculator.Core.Calculation.Columns
, SumWithVATColumn sumWithVatColumn) , SumWithVATColumn sumWithVatColumn)
{ {
for (var i = 1; i < Values.Length; i++) for (var i = 1; i < Values.Length; i++)
{
Values[i] = preparedValues.AcceptSum * sumColumn.Values[i] / Values[i] = preparedValues.AcceptSum * sumColumn.Values[i] /
(sumWithVatColumn.Values[0] - vatColumn.Values[0]); (sumWithVatColumn.Values[0] - vatColumn.Values[0]);
}
Values[0] = Values.Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class AgentComissionExpensesColumn : BaseColumn<double> public class AgentComissionExpensesColumn : BaseColumnWithSum
{ {
public AgentComissionExpensesColumn(int count) : base(count) public AgentComissionExpensesColumn(int count) : base(count)
{ {
@ -11,10 +10,7 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(PreparedValues preparedValues) public void ComputeValues(PreparedValues preparedValues)
{ {
for (var i = 0; i < Values.Length; i++) for (var i = 0; i < Values.Length; i++) Values[i] = 0;
{
Values[i] = 0;
}
var agentComission = preparedValues.AgentsSum + preparedValues.DoubleAgentsSum + var agentComission = preparedValues.AgentsSum + preparedValues.DoubleAgentsSum +
preparedValues.DeliverySum + preparedValues.DeliverySum +
@ -23,7 +19,7 @@ namespace EvoCalculator.Core.Calculation.Columns
Values[2] = -agentComission; Values[2] = -agentComission;
Values[0] = Values.Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -2,11 +2,11 @@
{ {
public abstract class BaseColumn<T> public abstract class BaseColumn<T>
{ {
public T[] Values { get; set; }
protected BaseColumn(int count) protected BaseColumn(int count)
{ {
Values = new T[count]; Values = new T[count];
} }
public T[] Values { get; set; }
} }
} }

View File

@ -0,0 +1,16 @@
using System.Linq;
namespace EvoCalculator.Core.Calculation.Columns
{
public class BaseColumnWithSum : BaseColumn<double>
{
public BaseColumnWithSum(int count) : base(count)
{
}
protected double Sum
{
get { return Values.Skip(1).Sum(x => x); }
}
}
}

View File

@ -4,34 +4,38 @@ using EvoCalculator.Core.Models.Calculation.Models;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
//TODO: GET IRR HERE
public class BaseColumnWithXIRR : BaseColumn<double> public class BaseColumnWithXIRR : BaseColumn<double>
{ {
public double IRR { get; set; } protected BaseColumnWithXIRR(int count, DateTempColumn dateTempColumn) : base(count)
protected DateTime[] Dates { get; set; }
public BaseColumnWithXIRR(int count, DateTempColumn dateTempColumn) : base(count)
{ {
Dates = dateTempColumn.Values; Dates = dateTempColumn.Values;
} }
protected Flow[] Flows private DateTime[] Dates { get; }
private Flow[] Flows
{ {
get get
{ {
Flow[] flows = new Flow[Values.Length]; var flows = new Flow[Values.Length];
for (var i = 0; i < Values.Length; i++) for (var i = 0; i < Values.Length; i++)
{ flows[i] = new Flow
flows[i] = new Flow()
{ {
Date = Dates[i], Date = Dates[i],
Value = Values[i] Value = Values[i]
}; };
}
return flows; return flows;
} }
} }
public double IRR
{
get
{
var XIRR = new XIRR(Flows);
return XIRR.GetResult();
}
}
} }
} }

View File

@ -0,0 +1,44 @@
using System;
using EvoCalculator.Core.FinanceFormulas;
using EvoCalculator.Core.Models.Calculation.Models;
namespace EvoCalculator.Core.Calculation.Columns
{
public class BaseColumnWithXNPV : BaseColumn<double>
{
private readonly double rate;
public BaseColumnWithXNPV(int count, DateTempColumn dateTempColumn, double rate) : base(count)
{
Dates = dateTempColumn.Values;
this.rate = rate;
}
private DateTime[] Dates { get; }
private Flow[] Flows
{
get
{
var flows = new Flow[Values.Length];
for (var i = 0; i < Values.Length; i++)
flows[i] = new Flow
{
Date = Dates[i],
Value = Values[i]
};
return flows;
}
}
public double XNPV
{
get
{
var XNPV = new XNPV(Flows, rate);
return XNPV.GetResult();
}
}
}
}

View File

@ -1,5 +1,4 @@
using EvoCalculator.Core.FinanceFormulas; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
@ -14,13 +13,7 @@ namespace EvoCalculator.Core.Calculation.Columns
{ {
Values[0] = -preparedValues.AcquisitionExpenses; Values[0] = -preparedValues.AcquisitionExpenses;
Values[1] = sumColumn.Values[1]; Values[1] = sumColumn.Values[1];
for (var i = 2; i < Values.Length; i++) for (var i = 2; i < Values.Length; i++) Values[i] = sumColumn.Values[i] + negativeCashflowColumn.Values[i];
{
Values[i] = sumColumn.Values[i] + negativeCashflowColumn.Values[i];
}
var XIRR = new XIRR(Flows);
IRR = XIRR.GetResult();
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class ComissionBonusExpensesColumn : BaseColumn<double> public class ComissionBonusExpensesColumn : BaseColumnWithSum
{ {
public ComissionBonusExpensesColumn(int count) : base(count) public ComissionBonusExpensesColumn(int count) : base(count)
{ {
@ -11,13 +10,10 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(PreparedValues preparedValues) public void ComputeValues(PreparedValues preparedValues)
{ {
for (var i = 0; i < Values.Length; i++) for (var i = 0; i < Values.Length; i++) Values[i] = 0;
{
Values[i] = 0;
}
Values[1] = preparedValues.ComissionRub; Values[1] = preparedValues.ComissionRub;
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -26,7 +26,6 @@ namespace EvoCalculator.Core.Calculation.Columns
}; };
for (var i = 3; i < preparedValues.Nmper + 1; i++) for (var i = 3; i < preparedValues.Nmper + 1; i++)
{
Values[i] = preparedValues.DeliveryTime switch Values[i] = preparedValues.DeliveryTime switch
{ {
100000000 => preparedValues.PaymentDateNew == null 100000000 => preparedValues.PaymentDateNew == null
@ -35,7 +34,6 @@ namespace EvoCalculator.Core.Calculation.Columns
100000001 => Values[2].AddMonths(i - 2), 100000001 => Values[2].AddMonths(i - 2),
_ => Values[2] _ => Values[2]
}; };
}
} }
} }
} }

View File

@ -16,11 +16,9 @@ namespace EvoCalculator.Core.Calculation.Columns
Values[2] = preparedValues.PaymentDateNew ?? Values[1].AddMonths(1); Values[2] = preparedValues.PaymentDateNew ?? Values[1].AddMonths(1);
for (var i = 3; i < Values.Length; i++) for (var i = 3; i < Values.Length; i++)
{
Values[i] = preparedValues.PaymentDateNew == null Values[i] = preparedValues.PaymentDateNew == null
? Values[1].AddMonths(i - 1) ? Values[1].AddMonths(i - 1)
: Values[2].AddMonths(i - 2); : Values[2].AddMonths(i - 2);
}
} }
} }
} }

View File

@ -1,8 +1,6 @@
using System.Linq; namespace EvoCalculator.Core.Calculation.Columns
namespace EvoCalculator.Core.Calculation.Columns
{ {
public class DeprecationColumn : BaseColumn<double> public class DeprecationColumn : BaseColumnWithSum
{ {
public DeprecationColumn(int count) : base(count) public DeprecationColumn(int count) : base(count)
{ {
@ -11,13 +9,11 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(DeprecationLPColumn deprecationLpColumn, DeprecationLDColumn deprecationLdColumn) public void ComputeValues(DeprecationLPColumn deprecationLpColumn, DeprecationLDColumn deprecationLdColumn)
{ {
for (var i = 1; i < Values.Length; i++) for (var i = 1; i < Values.Length; i++)
{
Values[i] = i < deprecationLpColumn.Values.Length Values[i] = i < deprecationLpColumn.Values.Length
? deprecationLpColumn.Values[i] + deprecationLdColumn.Values[i] ? deprecationLpColumn.Values[i] + deprecationLdColumn.Values[i]
: 0 + deprecationLdColumn.Values[i]; : 0 + deprecationLdColumn.Values[i];
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -3,7 +3,7 @@ using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class DeprecationLDColumn : BaseColumn<double> public class DeprecationLDColumn : BaseColumnWithSum
{ {
public DeprecationLDColumn(int count) : base(count) public DeprecationLDColumn(int count) : base(count)
{ {
@ -13,12 +13,10 @@ namespace EvoCalculator.Core.Calculation.Columns
{ {
Values[1] = 0; Values[1] = 0;
for (var i = 2; i < Values.Length - 1; i++) for (var i = 2; i < Values.Length - 1; i++)
{
Values[i] = preparedValues.BalanceHolder == 100000001 Values[i] = preparedValues.BalanceHolder == 100000001
? preparedValues.DeprecationTime * ? preparedValues.DeprecationTime *
(preparedValues.AcceptSum - Values.Skip(2).Take(i - 1).Sum(x => x)) / 100 (preparedValues.AcceptSum - Values.Skip(2).Take(i - 1).Sum(x => x)) / 100
: 0; : 0;
}
Values[^1] = preparedValues.BalanceHolder == 100000001 Values[^1] = preparedValues.BalanceHolder == 100000001
? preparedValues.AcceptSum - Values.Skip(2) ? preparedValues.AcceptSum - Values.Skip(2)
@ -26,7 +24,7 @@ namespace EvoCalculator.Core.Calculation.Columns
.Sum(x => x) .Sum(x => x)
: 0; : 0;
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class DeprecationLPColumn : BaseColumn<double> public class DeprecationLPColumn : BaseColumnWithSum
{ {
public DeprecationLPColumn(int count) : base(count) public DeprecationLPColumn(int count) : base(count)
{ {
@ -12,11 +11,9 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(PreparedValues preparedValues, AcceptSumColumn acceptSumColumn) public void ComputeValues(PreparedValues preparedValues, AcceptSumColumn acceptSumColumn)
{ {
for (var i = 1; i < Values.Length; i++) for (var i = 1; i < Values.Length; i++)
{
Values[i] = preparedValues.BalanceHolder == 100000000 ? acceptSumColumn.Values[i] : 0; Values[i] = preparedValues.BalanceHolder == 100000000 ? acceptSumColumn.Values[i] : 0;
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,9 +1,6 @@
using System.Linq; namespace EvoCalculator.Core.Calculation.Columns
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns
{ {
public class ExpensesColumn : BaseColumn<double> public class ExpensesColumn : BaseColumnWithSum
{ {
public ExpensesColumn(int count) : base(count) public ExpensesColumn(int count) : base(count)
{ {
@ -11,13 +8,12 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(AgentComissionExpensesColumn agentComissionExpensesColumn, public void ComputeValues(AgentComissionExpensesColumn agentComissionExpensesColumn,
RatExpensesColumn ratExpensesColumn, TransExprensesColumn transExprensesColumn, RatExpensesColumn ratExpensesColumn, TransExprensesColumn transExprensesColumn,
NsibExpensesColumn nsibExpensesColumn, TLMExpensesColumn tlmExpensesColumn, NSIBExpensesColumn nsibExpensesColumn, TLMExpensesColumn tlmExpensesColumn,
GPSExpensesColumn gpsExpensesColumn, RegistrExpensesColumn registrExpensesColumn, GPSExpensesColumn gpsExpensesColumn, RegistrExpensesColumn registrExpensesColumn,
InsuranceBonusExpensesColumn insuranceBonusExpensesColumn, InsuranceBonusExpensesColumn insuranceBonusExpensesColumn,
ComissionBonusExpensesColumn comissionBonusExpensesColumn, NPVBonusExpensesColumn npvBonusExpensesColumn) ComissionBonusExpensesColumn comissionBonusExpensesColumn, NPVBonusExpensesColumn npvBonusExpensesColumn)
{ {
for (var i = 1; i < Values.Length; i++) for (var i = 1; i < Values.Length; i++)
{
Values[i] = Values[i] =
agentComissionExpensesColumn.Values[i] agentComissionExpensesColumn.Values[i]
+ ratExpensesColumn.Values[i] + ratExpensesColumn.Values[i]
@ -29,9 +25,8 @@ namespace EvoCalculator.Core.Calculation.Columns
+ insuranceBonusExpensesColumn.Values[i] + insuranceBonusExpensesColumn.Values[i]
+ comissionBonusExpensesColumn.Values[i] + comissionBonusExpensesColumn.Values[i]
+ npvBonusExpensesColumn.Values[i]; + npvBonusExpensesColumn.Values[i];
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class GPSExpensesColumn : BaseColumn<double> public class GPSExpensesColumn : BaseColumnWithSum
{ {
public GPSExpensesColumn(int count) : base(count) public GPSExpensesColumn(int count) : base(count)
{ {
@ -12,12 +11,9 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(PreparedValues preparedValues, PreparedPayments preparedPayments) public void ComputeValues(PreparedValues preparedValues, PreparedPayments preparedPayments)
{ {
Values[1] = -(preparedValues.TrackerCost + preparedPayments.Rows[0].GpsBasePayment); Values[1] = -(preparedValues.TrackerCost + preparedPayments.Rows[0].GpsBasePayment);
for (var i = 2; i < Values.Length; i++) for (var i = 2; i < Values.Length; i++) Values[i] = -preparedPayments.Rows[i - 1].GpsBasePayment;
{
Values[i] = -preparedPayments.Rows[i - 1].GpsBasePayment;
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,24 +1,18 @@
using EvoCalculator.Core.FinanceFormulas; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class GPS_GrColumn : BaseColumnWithXIRR public class GPS_GrColumn : BaseColumnWithXNPV
{ {
public GPS_GrColumn(int count, DateTempColumn dateTempColumn) : base(count, dateTempColumn) public GPS_GrColumn(int count, DateTempColumn dateTempColumn, double rate) : base(count, dateTempColumn, rate)
{ {
} }
public void ComputeValues(PreparedPayments preparedPayments, PreparedValues preparedValues) public void ComputeValues(PreparedPayments preparedPayments, PreparedValues preparedValues)
{ {
for (var i = 1; i < Values.Length; i++) for (var i = 1; i < Values.Length; i++) Values[i] = preparedPayments.Rows[i - 1].GpsCostPayment;
{
Values[i] = preparedPayments.Rows[i - 1].GpsCostPayment;
}
Values[0] = -XNPV;
var XNPV = new XNPV(base.Flows, preparedValues.IrrExpected);
Values[0] = -XNPV.GetResult();
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class InsuranceBonusExpensesColumn : BaseColumn<double> public class InsuranceBonusExpensesColumn : BaseColumnWithSum
{ {
public InsuranceBonusExpensesColumn(int count) : base(count) public InsuranceBonusExpensesColumn(int count) : base(count)
{ {
@ -11,35 +10,26 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(PreparedValues preparedValues) public void ComputeValues(PreparedValues preparedValues)
{ {
for (var i = 0; i < Values.Length; i++) for (var i = 0; i < Values.Length; i++) Values[i] = 0;
{
Values[i] = 0;
}
for (var i = 2; i < Values.Length; i += i == 2 ? 11 : 12) for (var i = 2; i < Values.Length; i += i == 2 ? 11 : 12)
{
if (i <= preparedValues.NmperInsurance) if (i <= preparedValues.NmperInsurance)
{ {
if (preparedValues.NmperInsurance - i >= 3) if (preparedValues.NmperInsurance - i >= 3)
{ {
if (preparedValues.NmperInsurance - i < 16 - 1) if (preparedValues.NmperInsurance - i < 16 - 1)
{
Values[i] = preparedValues.InsuranceBonus / preparedValues.NmperInsurance * Values[i] = preparedValues.InsuranceBonus / preparedValues.NmperInsurance *
(preparedValues.NmperInsurance - i + 1); (preparedValues.NmperInsurance - i + 1);
}
else else
{
Values[i] = preparedValues.InsuranceBonus / preparedValues.NmperInsurance * 12; Values[i] = preparedValues.InsuranceBonus / preparedValues.NmperInsurance * 12;
}
} }
else else
{ {
Values[i] = 0; Values[i] = 0;
} }
} }
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class KaskoBonusGrSumColumn : BaseColumn<double> public class KaskoBonusGrSumColumn : BaseColumnWithSum
{ {
public KaskoBonusGrSumColumn(int count) : base(count) public KaskoBonusGrSumColumn(int count) : base(count)
{ {
@ -12,22 +11,14 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(PreparedValues preparedValues, KaskoNmperGrColumn kaskoNmperGrColumn) public void ComputeValues(PreparedValues preparedValues, KaskoNmperGrColumn kaskoNmperGrColumn)
{ {
for (var i = 1; i < Values.Length; i++) for (var i = 1; i < Values.Length; i++)
{
if (i < 13) if (i < 13)
{
Values[i] = kaskoNmperGrColumn.Values[i] * 1; Values[i] = kaskoNmperGrColumn.Values[i] * 1;
}
else if (i <= 24) else if (i <= 24)
{
Values[i] = kaskoNmperGrColumn.Values[i] * 0.7; Values[i] = kaskoNmperGrColumn.Values[i] * 0.7;
}
else else
{
Values[i] = kaskoNmperGrColumn.Values[i] * 0.5; Values[i] = kaskoNmperGrColumn.Values[i] * 0.5;
}
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,47 +1,36 @@
using EvoCalculator.Core.FinanceFormulas; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using TridentGoalSeek;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class KaskoNmperGrColumn : BaseColumnWithXIRR public class KaskoNmperGrColumn : BaseColumnWithXNPV
{ {
public KaskoNmperGrColumn(int count, DateTempColumn dateTempColumn) : base(count, dateTempColumn) public KaskoNmperGrColumn(int count, DateTempColumn dateTempColumn, double rate) : base(count, dateTempColumn,
rate)
{ {
} }
public void ComputeValues(PreparedValues preparedValues) public void ComputeValues(PreparedValues preparedValues)
{ {
for (var i = 0; i < Values.Length; i++) for (var i = 0; i < Values.Length; i++) Values[i] = 0;
{
Values[i] = 0;
}
for (var i = 1; i < Values.Length; i += 12) for (var i = 1; i < Values.Length; i += 12)
{
if (i <= preparedValues.NmperInsurance) if (i <= preparedValues.NmperInsurance)
{ {
if (preparedValues.Nmper - i >= 3) if (preparedValues.Nmper - i >= 3)
{ {
if (preparedValues.NmperInsurance - i < 16 - 1) if (preparedValues.NmperInsurance - i < 16 - 1)
{
Values[i] = preparedValues.InsuranceKasko / 12 * (preparedValues.NmperInsurance - i + 1); Values[i] = preparedValues.InsuranceKasko / 12 * (preparedValues.NmperInsurance - i + 1);
}
else else
{
Values[i] = preparedValues.InsuranceKasko; Values[i] = preparedValues.InsuranceKasko;
}
} }
else else
{ {
Values[i] = 0; Values[i] = 0;
} }
} }
}
var XNPV = new XNPV(Flows, preparedValues.IrrExpected); Values[0] = -XNPV;
Values[0] = -XNPV.GetResult();
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class NPVBonusExpensesColumn : BaseColumn<double> public class NPVBonusExpensesColumn : BaseColumnWithSum
{ {
public NPVBonusExpensesColumn(int count) : base(count) public NPVBonusExpensesColumn(int count) : base(count)
{ {
@ -21,12 +20,9 @@ namespace EvoCalculator.Core.Calculation.Columns
(1 + preparedValues.MarketRate + preparedValues.DistrictRate); (1 + preparedValues.MarketRate + preparedValues.DistrictRate);
for (var i = 3; i < Values.Length; i++) for (var i = 3; i < Values.Length; i++) Values[i] = 0;
{
Values[i] = 0;
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class NSIBBruttoGrColumn : BaseColumn<double> public class NSIBBruttoGrColumn : BaseColumnWithSum
{ {
public NSIBBruttoGrColumn(int count) : base(count) public NSIBBruttoGrColumn(int count) : base(count)
{ {
@ -12,12 +11,9 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(PreparedValues preparedValues) public void ComputeValues(PreparedValues preparedValues)
{ {
Values[1] = 0; Values[1] = 0;
for (var i = 2; i < Values.Length; i++) for (var i = 2; i < Values.Length; i++) Values[i] = preparedValues.NsibBrutto / (preparedValues.Nmper - 1);
{
Values[i] = preparedValues.NsibBrutto / (preparedValues.Nmper - 1);
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,45 +1,35 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class NsibExpensesColumn : BaseColumn<double> public class NSIBExpensesColumn : BaseColumnWithSum
{ {
public NsibExpensesColumn(int count) : base(count) public NSIBExpensesColumn(int count) : base(count)
{ {
} }
public void ComputeValues(PreparedValues preparedValues) public void ComputeValues(PreparedValues preparedValues)
{ {
for (var i = 0; i < Values.Length; i++) for (var i = 0; i < Values.Length; i++) Values[i] = 0;
{
Values[i] = 0;
}
for (var i = 1; i < Values.Length; i += 12) for (var i = 1; i < Values.Length; i += 12)
{
if (i <= preparedValues.Nmper) if (i <= preparedValues.Nmper)
{ {
if (preparedValues.Nmper - i >= 3) if (preparedValues.Nmper - i >= 3)
{ {
if (preparedValues.Nmper - i < 16 - 1) if (preparedValues.Nmper - i < 16 - 1)
{
Values[i] = -preparedValues.NsibNetto / preparedValues.Nmper * Values[i] = -preparedValues.NsibNetto / preparedValues.Nmper *
(preparedValues.Nmper - i + 1); (preparedValues.Nmper - i + 1);
}
else else
{
Values[i] = -preparedValues.NsibNetto / preparedValues.Nmper * 12; Values[i] = -preparedValues.NsibNetto / preparedValues.Nmper * 12;
}
} }
else else
{ {
Values[i] = 0; Values[i] = 0;
} }
} }
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,8 +1,6 @@
using System.Linq; namespace EvoCalculator.Core.Calculation.Columns
namespace EvoCalculator.Core.Calculation.Columns
{ {
public class NegativeCashflowColumn : BaseColumn<double> public class NegativeCashflowColumn : BaseColumnWithSum
{ {
public NegativeCashflowColumn(int count) : base(count) public NegativeCashflowColumn(int count) : base(count)
{ {
@ -10,12 +8,9 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(KaskoNmperGrColumn kaskoNmperGrColumn) public void ComputeValues(KaskoNmperGrColumn kaskoNmperGrColumn)
{ {
for (var i = 1; i < Values.Length; i++) for (var i = 1; i < Values.Length; i++) Values[i] = -kaskoNmperGrColumn.Values[i];
{
Values[i] = -kaskoNmperGrColumn.Values[i];
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -12,10 +12,7 @@ namespace EvoCalculator.Core.Calculation.Columns
{ {
Values[0] = 0; Values[0] = 0;
Values[1] = 0; Values[1] = 0;
for (var i = 2; i < Values.Length - 1; i++) for (var i = 2; i < Values.Length - 1; i++) Values[i] = preparedPayments.Rows[i - 1].PercentPayment;
{
Values[i] = preparedPayments.Rows[i - 1].PercentPayment;
}
Values[^1] = 0; Values[^1] = 0;
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class RatExpensesColumn : BaseColumn<double> public class RatExpensesColumn : BaseColumnWithSum
{ {
public RatExpensesColumn(int count) : base(count) public RatExpensesColumn(int count) : base(count)
{ {
@ -11,15 +10,12 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(PreparedValues preparedValues) public void ComputeValues(PreparedValues preparedValues)
{ {
for (var i = 0; i < Values.Length; i++) for (var i = 0; i < Values.Length; i++) Values[i] = 0;
{
Values[i] = 0;
}
Values[1] = -preparedValues.BaseRatCost; Values[1] = -preparedValues.BaseRatCost;
Values[4] = preparedValues.RetroBonus; Values[4] = preparedValues.RetroBonus;
Values[0] = Values.Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class RegistrExpensesColumn : BaseColumn<double> public class RegistrExpensesColumn : BaseColumnWithSum
{ {
public RegistrExpensesColumn(int count) : base(count) public RegistrExpensesColumn(int count) : base(count)
{ {
@ -11,14 +10,11 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(PreparedValues preparedValues) public void ComputeValues(PreparedValues preparedValues)
{ {
for (var i = 0; i < Values.Length; i++) for (var i = 0; i < Values.Length; i++) Values[i] = 0;
{
Values[i] = 0;
}
Values[1] = -preparedValues.BaseRegistration; Values[1] = -preparedValues.BaseRegistration;
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,6 +1,4 @@
using System; using System;
using System.Linq;
using EvoCalculator.Core.FinanceFormulas;
using EvoCalculator.Core.Models.Calculation.Models.Prepared; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using TridentGoalSeek; using TridentGoalSeek;
@ -8,48 +6,42 @@ namespace EvoCalculator.Core.Calculation.Columns
{ {
public class SumColumn : BaseColumnWithXIRR, IGoalSeekAlgorithm public class SumColumn : BaseColumnWithXIRR, IGoalSeekAlgorithm
{ {
private readonly PreparedValues _preparedValues;
private readonly PercentPaymentColumn _percentPaymentColumn; private readonly PercentPaymentColumn _percentPaymentColumn;
private readonly PreparedValues _preparedValues;
public SumColumn(int count, DateTempColumn dateTempColumn public SumColumn(int count, DateTempColumn dateTempColumn
, PreparedValues preparedValues , PreparedValues preparedValues
, PercentPaymentColumn percentPaymentColumn) : base(count, dateTempColumn) , PercentPaymentColumn percentPaymentColumn) : base(count, dateTempColumn)
{ {
this._preparedValues = preparedValues; _preparedValues = preparedValues;
this._percentPaymentColumn = percentPaymentColumn; _percentPaymentColumn = percentPaymentColumn;
}
public void ComputeValues(double x)
{
Values[0] = -this._preparedValues.BaseCost;
Values[1] = this._preparedValues.FirstPaymentSum;
for (var i = 2; i < Values.Length - 1; i++)
{
Values[i] = x * _percentPaymentColumn.Values[i] / 100;
}
Values[^1] = _preparedValues.LastPaymentSum;
} }
public decimal Calculate(decimal inputVariable) public decimal Calculate(decimal inputVariable)
{ {
var x = Convert.ToDouble(inputVariable); var x = Convert.ToDouble(inputVariable);
this.ComputeValues(x); ComputeValues(x);
var XIRR = new XIRR(Flows);
IRR = XIRR.GetResult();
return Convert.ToDecimal(IRR); return Convert.ToDecimal(IRR);
} }
public void ComputeValues(double x)
{
Values[0] = -_preparedValues.BaseCost;
Values[1] = _preparedValues.FirstPaymentSum;
for (var i = 2; i < Values.Length - 1; i++) Values[i] = x * _percentPaymentColumn.Values[i] / 100;
Values[^1] = _preparedValues.LastPaymentSum;
}
public void ComputeValues(decimal requiredIRR) public void ComputeValues(decimal requiredIRR)
{ {
var goalSeek = new GoalSeek(this); var goalSeek = new GoalSeek(this);
goalSeek.SeekResult(requiredIRR, goalSeek.SeekResult(requiredIRR,
new GoalSeekOptions( new GoalSeekOptions(
startingStabPoint: Convert.ToDecimal( startingStabPoint: Convert.ToDecimal(
(this._preparedValues.BaseCost - this._preparedValues.FirstPaymentSum) / (_preparedValues.BaseCost - _preparedValues.FirstPaymentSum) /
this._preparedValues.Nmper) _preparedValues.Nmper)
, tineExplorePercentage: 10 , tineExplorePercentage: 10
// , maximumAttempts: 10000 // , maximumAttempts: 10000
// , initialTineSpacing: 1 // , initialTineSpacing: 1

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class SumWithVATColumn : BaseColumn<double> public class SumWithVATColumn : BaseColumnWithSum
{ {
public SumWithVATColumn(int count) : base(count) public SumWithVATColumn(int count) : base(count)
{ {
@ -15,12 +14,9 @@ namespace EvoCalculator.Core.Calculation.Columns
Values[1] = preparedValues.FirstPaymentWithNdsAbs > 0 Values[1] = preparedValues.FirstPaymentWithNdsAbs > 0
? preparedValues.FirstPaymentWithNdsAbs ? preparedValues.FirstPaymentWithNdsAbs
: (1 + constants.VatValue) * sumColumn.Values[1]; : (1 + constants.VatValue) * sumColumn.Values[1];
for (var i = 2; i < Values.Length; i++) for (var i = 2; i < Values.Length; i++) Values[i] = (1 + constants.VatValue) * sumColumn.Values[i];
{
Values[i] = (1 + constants.VatValue) * sumColumn.Values[i];
}
Values[0] = Values.Sum(); Values[0] = Sum;
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class TLMExpensesColumn : BaseColumn<double> public class TLMExpensesColumn : BaseColumnWithSum
{ {
public TLMExpensesColumn(int count) : base(count) public TLMExpensesColumn(int count) : base(count)
{ {
@ -12,12 +11,9 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(PreparedValues preparedValues, PreparedPayments preparedPayments) public void ComputeValues(PreparedValues preparedValues, PreparedPayments preparedPayments)
{ {
Values[1] = -(preparedValues.TLMCost + preparedPayments.Rows[0].TlmBasePayment); Values[1] = -(preparedValues.TLMCost + preparedPayments.Rows[0].TlmBasePayment);
for (var i = 2; i < Values.Length; i++) for (var i = 2; i < Values.Length; i++) Values[i] = -preparedPayments.Rows[i - 1].TlmBasePayment;
{
Values[i] = -preparedPayments.Rows[i - 1].TlmBasePayment;
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,29 +1,21 @@
using EvoCalculator.Core.FinanceFormulas; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class TLM_GrColumn : BaseColumnWithXIRR public class TLM_GrColumn : BaseColumnWithXNPV
{ {
public TLM_GrColumn(int count, DateTempColumn dateTempColumn) : base(count, dateTempColumn) public TLM_GrColumn(int count, DateTempColumn dateTempColumn, double rate) : base(count, dateTempColumn, rate)
{ {
} }
public void ComputeValues(PreparedPayments preparedPayments, PreparedValues preparedValues) public void ComputeValues(PreparedPayments preparedPayments, PreparedValues preparedValues)
{ {
for (var i = 0; i < Values.Length; i++) for (var i = 0; i < Values.Length; i++) Values[i] = 0;
{
Values[i] = 0;
}
for (var i = 1; i < Values.Length; i++) for (var i = 1; i < Values.Length; i++) Values[i] = preparedPayments.Rows[i - 1].TlmCostPayment;
{
Values[i] = preparedPayments.Rows[i - 1].TlmCostPayment;
}
var XNPV = new XNPV(base.Flows, preparedValues.IrrExpected); Values[0] = -XNPV;
Values[0] = -XNPV.GetResult();
} }
} }
} }

View File

@ -1,8 +1,6 @@
using System.Linq; namespace EvoCalculator.Core.Calculation.Columns
namespace EvoCalculator.Core.Calculation.Columns
{ {
public class TaxColumn : BaseColumn<double> public class TaxColumn : BaseColumnWithSum
{ {
public TaxColumn(int count) : base(count) public TaxColumn(int count) : base(count)
{ {
@ -17,7 +15,6 @@ namespace EvoCalculator.Core.Calculation.Columns
GPSExpensesColumn gpsExpensesColumn) GPSExpensesColumn gpsExpensesColumn)
{ {
for (var i = 1; i < Values.Length; i++) for (var i = 1; i < Values.Length; i++)
{
Values[i] = constants.IncomeTaxValue * (sumColumn.Values[i] Values[i] = constants.IncomeTaxValue * (sumColumn.Values[i]
- acceptInsuranceColumn.Values[i] - acceptInsuranceColumn.Values[i]
- deprecationColumn.Values[i] - deprecationColumn.Values[i]
@ -31,10 +28,9 @@ namespace EvoCalculator.Core.Calculation.Columns
+ tlmExpensesColumn.Values[i] + tlmExpensesColumn.Values[i]
+ gpsExpensesColumn.Values[i] + gpsExpensesColumn.Values[i]
); );
}
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -3,7 +3,7 @@ using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class TransExprensesColumn : BaseColumn<double> public class TransExprensesColumn : BaseColumnWithSum
{ {
public TransExprensesColumn(int count) : base(count) public TransExprensesColumn(int count) : base(count)
{ {
@ -11,21 +11,14 @@ namespace EvoCalculator.Core.Calculation.Columns
public void ComputeValues(PreparedValues preparedValues) public void ComputeValues(PreparedValues preparedValues)
{ {
for (var i = 0; i < Values.Length; i++) for (var i = 0; i < Values.Length; i++) Values[i] = 0;
{
Values[i] = 0;
}
for (var i = 0; i < Values.Length; i += 12) for (var i = 0; i < Values.Length; i += 12)
{
if (i > 0) if (i > 0)
{
Values[i] = -preparedValues.TransportTaxGrYear; Values[i] = -preparedValues.TransportTaxGrYear;
}
}
Values[^1] = -(preparedValues.TransportTaxGr + Values.Skip(1).Take(Values.Length - 1).Sum(x => x)); Values[^1] = -(preparedValues.TransportTaxGr + Values.Skip(1).Take(Values.Length - 1).Sum(x => x));
Values[0] = Values.Skip(1).Sum(x => x); Values[0] = Sum;
} }
} }
} }

View File

@ -1,9 +1,8 @@
using System.Linq; using EvoCalculator.Core.Models.Calculation.Models.Prepared;
using EvoCalculator.Core.Models.Calculation.Models.Prepared;
namespace EvoCalculator.Core.Calculation.Columns namespace EvoCalculator.Core.Calculation.Columns
{ {
public class VATColumn : BaseColumn<double> public class VATColumn : BaseColumnWithSum
{ {
public VATColumn(int count) : base(count) public VATColumn(int count) : base(count)
{ {
@ -15,12 +14,9 @@ namespace EvoCalculator.Core.Calculation.Columns
Values[1] = preparedValues.FirstPaymentNdsAbs > 0 Values[1] = preparedValues.FirstPaymentNdsAbs > 0
? preparedValues.FirstPaymentNdsAbs ? preparedValues.FirstPaymentNdsAbs
: constants.VatValue * sumColumn.Values[1]; : constants.VatValue * sumColumn.Values[1];
for (var i = 2; i < Values.Length; i++) for (var i = 2; i < Values.Length; i++) Values[i] = constants.VatValue * sumColumn.Values[i];
{
Values[i] = constants.VatValue * sumColumn.Values[i];
}
Values[0] = Values.Sum(); Values[0] = Sum;
} }
} }
} }

View File

@ -110,7 +110,7 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
} }
}; };
var NsibExpensesColumn = new NsibExpensesColumn(preparedValues.Nmper + 1) var NsibExpensesColumn = new NSIBExpensesColumn(preparedValues.Nmper + 1)
{ {
Values = new[] Values = new[]
{ {

View File

@ -96,129 +96,130 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
{ {
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
new PaymentRow new PaymentRow
{ {
TlmCostPayment = 800.00, GpsCostPayment = 800.00,
}, },
} }
}; };
var gpsGrColumn = new GPS_GrColumn(preparedPayments.Rows.Length + 1, dateTempColumn); var gpsGrColumn = new GPS_GrColumn(preparedPayments.Rows.Length + 1, dateTempColumn,
preparedValues.IrrExpected);
gpsGrColumn.ComputeValues(preparedPayments, preparedValues); gpsGrColumn.ComputeValues(preparedPayments, preparedValues);
var expected = new[] var expected = new[]

View File

@ -15,7 +15,8 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
}; };
var kaskoNmperGrColumn = var kaskoNmperGrColumn =
new KaskoNmperGrColumn(preparedValues.Nmper + 1, new DateTempColumn(preparedValues.Nmper)) new KaskoNmperGrColumn(preparedValues.Nmper + 1, new DateTempColumn(preparedValues.Nmper),
preparedValues.IrrExpected)
{ {
Values = new[] Values = new[]
{ {

View File

@ -95,7 +95,8 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
}; };
var kaskoNmperGrColumn = new KaskoNmperGrColumn(preparedValues.Nmper + 1, dateTempColumn); var kaskoNmperGrColumn =
new KaskoNmperGrColumn(preparedValues.Nmper + 1, dateTempColumn, preparedValues.IrrExpected);
kaskoNmperGrColumn.ComputeValues(preparedValues); kaskoNmperGrColumn.ComputeValues(preparedValues);
@ -226,7 +227,8 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
}; };
var kaskoNmperGrColumn = new KaskoNmperGrColumn(preparedValues.Nmper + 1, dateTempColumn); var kaskoNmperGrColumn =
new KaskoNmperGrColumn(preparedValues.Nmper + 1, dateTempColumn, preparedValues.IrrExpected);
kaskoNmperGrColumn.ComputeValues(preparedValues); kaskoNmperGrColumn.ComputeValues(preparedValues);
@ -343,7 +345,8 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
}; };
var kaskoNmperGrColumn = new KaskoNmperGrColumn(preparedValues.Nmper + 1, dateTempColumn); var kaskoNmperGrColumn =
new KaskoNmperGrColumn(preparedValues.Nmper + 1, dateTempColumn, preparedValues.IrrExpected);
kaskoNmperGrColumn.ComputeValues(preparedValues); kaskoNmperGrColumn.ComputeValues(preparedValues);
@ -474,7 +477,8 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
}; };
var kaskoNmperGrColumn = new KaskoNmperGrColumn(preparedValues.Nmper + 1, dateTempColumn); var kaskoNmperGrColumn =
new KaskoNmperGrColumn(preparedValues.Nmper + 1, dateTempColumn, preparedValues.IrrExpected);
kaskoNmperGrColumn.ComputeValues(preparedValues); kaskoNmperGrColumn.ComputeValues(preparedValues);
@ -592,7 +596,8 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
}; };
var kaskoNmperGrColumn = new KaskoNmperGrColumn(preparedValues.Nmper + 1, dateTempColumn); var kaskoNmperGrColumn =
new KaskoNmperGrColumn(preparedValues.Nmper + 1, dateTempColumn, preparedValues.IrrExpected);
kaskoNmperGrColumn.ComputeValues(preparedValues); kaskoNmperGrColumn.ComputeValues(preparedValues);

View File

@ -4,10 +4,10 @@ using Xunit;
namespace EvoCalculator.Core.Tests.Calculation.Columns namespace EvoCalculator.Core.Tests.Calculation.Columns
{ {
public class NsibExpensesTests public class NSIBExpensesTests
{ {
[Fact] [Fact]
public void NsibExpensesTest1() public void NSIBExpensesTest1()
{ {
var preparedValues = new PreparedValues() var preparedValues = new PreparedValues()
{ {
@ -15,7 +15,7 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
Nmper = 30 Nmper = 30
}; };
var nsibExpensesColumn = new NsibExpensesColumn(preparedValues.Nmper + 1); var nsibExpensesColumn = new NSIBExpensesColumn(preparedValues.Nmper + 1);
nsibExpensesColumn.ComputeValues(preparedValues); nsibExpensesColumn.ComputeValues(preparedValues);
var expected = new[] var expected = new[]
@ -58,7 +58,7 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
} }
[Fact] [Fact]
public void NsibExpensesTest2() public void NSIBExpensesTest2()
{ {
var preparedValues = new PreparedValues() var preparedValues = new PreparedValues()
{ {
@ -66,7 +66,7 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
Nmper = 15 Nmper = 15
}; };
var nsibExpensesColumn = new NsibExpensesColumn(preparedValues.Nmper + 1); var nsibExpensesColumn = new NSIBExpensesColumn(preparedValues.Nmper + 1);
nsibExpensesColumn.ComputeValues(preparedValues); nsibExpensesColumn.ComputeValues(preparedValues);
var expected = new[] var expected = new[]
@ -94,7 +94,7 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
} }
[Fact] [Fact]
public void NsibExpensesTest3() public void NSIBExpensesTest3()
{ {
var preparedValues = new PreparedValues() var preparedValues = new PreparedValues()
{ {
@ -102,7 +102,7 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
Nmper = 17 Nmper = 17
}; };
var nsibExpensesColumn = new NsibExpensesColumn(preparedValues.Nmper + 1); var nsibExpensesColumn = new NSIBExpensesColumn(preparedValues.Nmper + 1);
nsibExpensesColumn.ComputeValues(preparedValues); nsibExpensesColumn.ComputeValues(preparedValues);
var expected = new[] var expected = new[]

View File

@ -15,7 +15,8 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
}; };
var kaskoNmperGrColumn = var kaskoNmperGrColumn =
new KaskoNmperGrColumn(preparedValues.Nmper + 1, new DateTempColumn(preparedValues.Nmper)) new KaskoNmperGrColumn(preparedValues.Nmper + 1, new DateTempColumn(preparedValues.Nmper),
preparedValues.IrrExpected)
{ {
Values = new[] Values = new[]
{ {

View File

@ -218,7 +218,8 @@ namespace EvoCalculator.Core.Tests.Calculation.Columns
}; };
var tlmGrColumn = new TLM_GrColumn(preparedPayments.Rows.Length + 1, dateTempColumn); var tlmGrColumn = new TLM_GrColumn(preparedPayments.Rows.Length + 1, dateTempColumn,
preparedValues.IrrExpected);
tlmGrColumn.ComputeValues(preparedPayments, preparedValues); tlmGrColumn.ComputeValues(preparedPayments, preparedValues);
var expected = new[] var expected = new[]

View File

@ -27,15 +27,18 @@ namespace EvoCalculator.Core.Controllers.V1
percentPaymentColumn.ComputeValues(preparedPayments); percentPaymentColumn.ComputeValues(preparedPayments);
var kaskoNmperGrColumn = new KaskoNmperGrColumn(preparedValues.Nmper + 1, dateTempColumn); var kaskoNmperGrColumn =
new KaskoNmperGrColumn(preparedValues.Nmper + 1, dateTempColumn, preparedValues.IrrExpected);
kaskoNmperGrColumn.ComputeValues(preparedValues); kaskoNmperGrColumn.ComputeValues(preparedValues);
var tlmGrColumn = new TLM_GrColumn(preparedPayments.Rows.Length + 1, dateTempColumn); var tlmGrColumn = new TLM_GrColumn(preparedPayments.Rows.Length + 1, dateTempColumn,
preparedValues.IrrExpected);
tlmGrColumn.ComputeValues(preparedPayments, preparedValues); tlmGrColumn.ComputeValues(preparedPayments, preparedValues);
var gpsGrColumn = new GPS_GrColumn(preparedPayments.Rows.Length + 1, dateTempColumn); var gpsGrColumn = new GPS_GrColumn(preparedPayments.Rows.Length + 1, dateTempColumn,
preparedValues.IrrExpected);
gpsGrColumn.ComputeValues(preparedPayments, preparedValues); gpsGrColumn.ComputeValues(preparedPayments, preparedValues);
var sumColumn = new SumColumn( var sumColumn = new SumColumn(
@ -102,7 +105,7 @@ namespace EvoCalculator.Core.Controllers.V1
transExprensesColumn.ComputeValues(preparedValues); transExprensesColumn.ComputeValues(preparedValues);
var nsibExpensesColumn = new NsibExpensesColumn(preparedValues.Nmper + 1); var nsibExpensesColumn = new NSIBExpensesColumn(preparedValues.Nmper + 1);
nsibExpensesColumn.ComputeValues(preparedValues); nsibExpensesColumn.ComputeValues(preparedValues);