Change value diagram calculator

This commit is contained in:
Evgeny Redikultsev
2025-11-16 21:03:57 +05:00
parent f7e60e0bb3
commit 215f631bb0
170 changed files with 2108 additions and 387 deletions

View File

@@ -1,13 +1,17 @@
using StructureHelperCommon.Infrastructures.Interfaces;
using StructureHelperCommon.Models;
using StructureHelperCommon.Models.Calculators;
using StructureHelperLogics.NdmCalculations.Analyses.ByForces;
using StructureHelperLogics.NdmCalculations.Analyses.ValueDiagrams.Logics;
namespace StructureHelperLogics.NdmCalculations.Analyses.ValueDiagrams
{
public class ValueDiagramCalculator : IValueDiagramCalculator
{
private readonly IValueDiagramCalculatorLogic valueDiagramCalculatorLogic = new ValueDiagramCalculatorLogic();
private readonly ICheckInputDataLogic<IValueDiagramCalculatorInputData> checkInputDataLogic;
private readonly ICheckEntityLogic<IValueDiagramCalculatorInputData> checkInputDataLogic;
private IValueDiagramCalculatorResult result;
public Guid Id { get; }
@@ -20,9 +24,15 @@ namespace StructureHelperLogics.NdmCalculations.Analyses.ValueDiagrams
public IValueDiagramCalculatorInputData InputData { get; set; } = new ValueDiagramCalculatorInputData(Guid.NewGuid());
public ValueDiagramCalculator(ICheckEntityLogic<IValueDiagramCalculatorInputData> checkInputDataLogic)
{
this.checkInputDataLogic = checkInputDataLogic;
}
public ValueDiagramCalculator(Guid id)
{
Id = id;
checkInputDataLogic = new ValueDiagramInputDataCheckLogic();
}
public object Clone()
@@ -35,6 +45,16 @@ namespace StructureHelperLogics.NdmCalculations.Analyses.ValueDiagrams
public void Run()
{
checkInputDataLogic.Entity = InputData;
if (checkInputDataLogic.Check() != true)
{
result = new ValueDiagramCalculatorResult()
{
IsValid = false,
Description = checkInputDataLogic.CheckResult
};
return;
}
valueDiagramCalculatorLogic.InputData = InputData;
result = valueDiagramCalculatorLogic.GetResult();
}