Add Safety FactorConverter
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using StructureHelperCommon.Infrastructures.Interfaces;
|
||||
using StructureHelperCommon.Services;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
@@ -7,10 +8,12 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace StructureHelperCommon.Models.Materials.Libraries
|
||||
{
|
||||
internal class MaterialPartialFactorUpdateStrategy : IUpdateStrategy<IMaterialPartialFactor>
|
||||
public class MaterialPartialFactorUpdateStrategy : IUpdateStrategy<IMaterialPartialFactor>
|
||||
{
|
||||
public void Update(IMaterialPartialFactor targetObject, IMaterialPartialFactor sourceObject)
|
||||
{
|
||||
CheckObject.IsNull(sourceObject);
|
||||
CheckObject.IsNull(targetObject);
|
||||
if (ReferenceEquals(targetObject, sourceObject)) { return; }
|
||||
targetObject.LimitState = sourceObject.LimitState;
|
||||
targetObject.StressState = sourceObject.StressState;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using StructureHelperCommon.Infrastructures.Interfaces;
|
||||
using StructureHelperCommon.Services;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
@@ -7,10 +8,12 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace StructureHelperCommon.Models.Materials.Libraries
|
||||
{
|
||||
internal class MaterialSafetyFactorUpdateStrategy : IUpdateStrategy<IMaterialSafetyFactor>
|
||||
public class MaterialSafetyFactorUpdateStrategy : IUpdateStrategy<IMaterialSafetyFactor>
|
||||
{
|
||||
public void Update(IMaterialSafetyFactor targetObject, IMaterialSafetyFactor sourceObject)
|
||||
{
|
||||
CheckObject.IsNull(sourceObject);
|
||||
CheckObject.IsNull(targetObject);
|
||||
if (ReferenceEquals(targetObject, sourceObject)) { return; }
|
||||
targetObject.Name = sourceObject.Name;
|
||||
targetObject.Take = sourceObject.Take;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using StructureHelperCommon.Infrastructures.Enums;
|
||||
using StructureHelperCommon.Infrastructures.Exceptions;
|
||||
using StructureHelperCommon.Infrastructures.Interfaces;
|
||||
using System;
|
||||
|
||||
namespace StructureHelperCommon.Models.Materials.Libraries
|
||||
@@ -7,16 +8,18 @@ namespace StructureHelperCommon.Models.Materials.Libraries
|
||||
public class MaterialPartialFactor : IMaterialPartialFactor
|
||||
{
|
||||
private double factorValue;
|
||||
private IUpdateStrategy<IMaterialPartialFactor> updateStrategy = new MaterialPartialFactorUpdateStrategy();
|
||||
|
||||
public Guid Id { get; }
|
||||
public StressStates StressState { get; set; }
|
||||
public CalcTerms CalcTerm { get; set; }
|
||||
public LimitStates LimitState { get; set; }
|
||||
public StressStates StressState { get; set; } = StressStates.Compression;
|
||||
public CalcTerms CalcTerm { get; set; } = CalcTerms.LongTerm;
|
||||
public LimitStates LimitState { get; set; } = LimitStates.ULS;
|
||||
public double FactorValue
|
||||
{
|
||||
get => factorValue;
|
||||
set
|
||||
{
|
||||
if (value < 0 )
|
||||
if (value < 0)
|
||||
{
|
||||
throw new StructureHelperException(ErrorStrings.FactorMustBeGraterThanZero);
|
||||
}
|
||||
@@ -28,9 +31,6 @@ namespace StructureHelperCommon.Models.Materials.Libraries
|
||||
public MaterialPartialFactor(Guid id)
|
||||
{
|
||||
Id = id;
|
||||
StressState = StressStates.Compression;
|
||||
LimitState = LimitStates.ULS;
|
||||
CalcTerm = CalcTerms.LongTerm;
|
||||
FactorValue = 1d;
|
||||
}
|
||||
|
||||
@@ -40,7 +40,6 @@ namespace StructureHelperCommon.Models.Materials.Libraries
|
||||
public object Clone()
|
||||
{
|
||||
var newItem = new MaterialPartialFactor();
|
||||
var updateStrategy = new MaterialPartialFactorUpdateStrategy();
|
||||
updateStrategy.Update(newItem, this);
|
||||
return newItem;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user