< Summary

Information
Class: Services.PartnerServices.PartnerRuleDto
Assembly: Services
File(s): /home/runner/work/Studio2Prod/Studio2Prod/AppRepository/PartnerServices/PartnerDtos.cs
Line coverage
100%
Covered lines: 5
Uncovered lines: 0
Coverable lines: 5
Total lines: 71
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.ctor(...)100%11100%
get_Id()100%11100%
get_Name()100%11100%
get_IsActive()100%11100%
get_Conditions()100%11100%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/AppRepository/PartnerServices/PartnerDtos.cs

#LineLine coverage
 1using OzonDomains.Models.Partners;
 2
 3namespace Services.PartnerServices;
 4
 5public sealed record PartnerListItemDto(
 6    long Id,
 7    string Name,
 8    string Login,
 9    string? Email,
 10    string? GoogleEmail,
 11    bool IsActive,
 12    DateTime? LastLoginAtUtc,
 13    int RulesCount,
 14    IReadOnlyList<PartnerPermissionCode> Permissions);
 15
 16public sealed record PartnerDetailsDto(
 17    long Id,
 18    string Name,
 19    string Login,
 20    string? Email,
 21    string? GoogleEmail,
 22    bool IsActive,
 23    DateTime CreatedAtUtc,
 24    DateTime? LastLoginAtUtc,
 25    PartnerNotificationChannels NotificationChannels,
 26    string? NotificationEmail,
 27    string? TelegramChatId,
 28    IReadOnlyList<PartnerPermissionCode> Permissions,
 29    IReadOnlyList<PartnerRuleDto> Rules);
 30
 2931public sealed record PartnerRuleDto(
 732    long? Id,
 4633    string Name,
 1734    bool IsActive,
 9535    IReadOnlyList<PartnerRuleConditionDto> Conditions);
 36
 37public sealed record PartnerRuleConditionDto(
 38    PartnerRuleField Field,
 39    IReadOnlyList<string> Values);
 40
 41public sealed record CreatePartnerRequest(
 42    string Name,
 43    string Email,
 44    string? GoogleEmail);
 45
 46public sealed record UpdatePartnerRequest(
 47    string Name,
 48    string? Email,
 49    string? GoogleEmail,
 50    bool IsActive,
 51    PartnerNotificationChannels NotificationChannels,
 52    string? NotificationEmail,
 53    string? TelegramChatId);
 54
 55/// <summary>Результат операции управления: либо значение, либо понятная ошибка для владельца.</summary>
 56public sealed record PartnerOpResult<T>(T? Value, string? Error)
 57{
 58    public bool Ok => Error is null;
 59
 60    public static PartnerOpResult<T> Success(T value) => new(value, null);
 61
 62    public static PartnerOpResult<T> Fail(string error) => new(default, error);
 63}
 64
 65public sealed record PartnerAuditQuery(
 66    long? PartnerId,
 67    string? Action,
 68    DateTime? FromUtc,
 69    DateTime? ToUtc,
 70    int Skip,
 71    int Take);