Add curvature calculator DTOs
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using StructureHelperCommon.Models;
|
||||
using StructureHelperCommon.Infrastructures.Interfaces;
|
||||
using StructureHelperCommon.Models;
|
||||
using StructureHelperCommon.Models.Calculators;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@@ -8,7 +9,13 @@ namespace StructureHelperLogics.NdmCalculations.Analyses.Curvatures
|
||||
{
|
||||
public class CurvatureCalculator : ICurvatureCalculator
|
||||
{
|
||||
private ICurvatureCalculatorResult result;
|
||||
private CurvatureCalculatorResult result;
|
||||
private ICheckEntityLogic<ICurvatureCalculatorInputData> inputDataCheckLogic;
|
||||
private ICurvatureCalcualtorLogic calculatorLogic;
|
||||
private ICurvatureCalcualtorLogic CalculatorLogic => calculatorLogic ??= new CurvatureCalculatorLogic() { InputData = InputData, TraceLogger = TraceLogger};
|
||||
|
||||
private ICheckEntityLogic<ICurvatureCalculatorInputData> InputDataCheckLogic => inputDataCheckLogic ??= new CurvatureCalculatorInputDataCheckLogic(TraceLogger) { Entity = InputData};
|
||||
|
||||
public Guid Id { get; }
|
||||
public string Name { get; set; } = string.Empty;
|
||||
public ICurvatureCalculatorInputData InputData { get; set; } = new CurvatureCalculatorInputData(Guid.NewGuid());
|
||||
@@ -34,7 +41,43 @@ namespace StructureHelperLogics.NdmCalculations.Analyses.Curvatures
|
||||
|
||||
public void Run()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
PrepareNewResult();
|
||||
if (CheckInputData() == false) {return;}
|
||||
GetResultByLogic();
|
||||
}
|
||||
|
||||
private void GetResultByLogic()
|
||||
{
|
||||
try
|
||||
{
|
||||
CalculatorLogic.Run();
|
||||
result = CalculatorLogic.Result as CurvatureCalculatorResult;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
result.IsValid = false;
|
||||
result.Description += ex.Message;
|
||||
}
|
||||
}
|
||||
|
||||
private void PrepareNewResult()
|
||||
{
|
||||
result = new()
|
||||
{
|
||||
IsValid = true,
|
||||
InputData = InputData,
|
||||
};
|
||||
}
|
||||
|
||||
private bool CheckInputData()
|
||||
{
|
||||
if (InputDataCheckLogic.Check() == false)
|
||||
{
|
||||
result.IsValid = false;
|
||||
result.Description += inputDataCheckLogic.CheckResult;
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user