diff --git a/Fengling.RiskControl.Domain/Aggregates/RiskRules/RiskRule.cs b/Fengling.RiskControl.Domain/Aggregates/RiskRules/RiskRule.cs index 7394e7f..c2f1330 100644 --- a/Fengling.RiskControl.Domain/Aggregates/RiskRules/RiskRule.cs +++ b/Fengling.RiskControl.Domain/Aggregates/RiskRules/RiskRule.cs @@ -53,8 +53,8 @@ public class RiskRule : Entity, IAggregateRoot UpdatedAt = DateTime.UtcNow; } - public T GetConfig() where T : class + public T? GetConfig() where T : class { - return System.Text.Json.JsonSerializer.Deserialize(ConfigJson)!; + return System.Text.Json.JsonSerializer.Deserialize(ConfigJson); } } diff --git a/Fengling.RiskControl.Domain/Aggregates/RiskScores/RiskScore.cs b/Fengling.RiskControl.Domain/Aggregates/RiskScores/RiskScore.cs index 2fcba61..7266882 100644 --- a/Fengling.RiskControl.Domain/Aggregates/RiskScores/RiskScore.cs +++ b/Fengling.RiskControl.Domain/Aggregates/RiskScores/RiskScore.cs @@ -43,11 +43,14 @@ public class RiskScore : Entity, IAggregateRoot RiskLevel = RiskLevel.Low; } + private static readonly int HIGH_THRESHOLD = 70; + private static readonly int MEDIUM_THRESHOLD = 30; + private void RecalculateScore() { TotalScore = _factors.Sum(f => f.Points); - RiskLevel = TotalScore >= 70 ? RiskLevel.High : - TotalScore >= 30 ? RiskLevel.Medium : + RiskLevel = TotalScore >= HIGH_THRESHOLD ? RiskLevel.High : + TotalScore >= MEDIUM_THRESHOLD ? RiskLevel.Medium : RiskLevel.Low; }