namespace Fengling.RiskControl.Application.Services; public record OrderDiscountValidationRequest { public long MemberId { get; init; } public string OrderId { get; init; } = string.Empty; public int DiscountAmount { get; init; } public int OriginalAmount { get; init; } public string DiscountType { get; init; } = string.Empty; } public record OrderDiscountValidationResult { public bool IsAllowed { get; init; } public string Reason { get; init; } = string.Empty; public int MaxDiscountAllowed { get; init; } public RiskEvaluationResult? RiskDetails { get; init; } } public interface IOrderRiskValidationService { Task ValidateDiscountAsync(OrderDiscountValidationRequest request); }