Files
pfm/PostFundManagement.Application/Services/Governance/Records.cs
T
2026-10-20 12:47:06 +02:00

58 lines
2.5 KiB
C#

using PostFundManagement.Domain;
namespace PostFundManagement.Application.Services.Governance;
public sealed record UpdateInstrumentRequest([Required] long InstructionId,
[Required][MaxLength(LabelLength)] string Name,
[Required][MaxLength(LabelLength)] string Code,
[Required][MaxLength(TextLength)] string Description,
[Required] ActivityStatus Status);
public sealed record CreateInstrumentRequest([Required] long ProgrammeId,
[Required][MaxLength(LabelLength)] string Name,
[Required][MaxLength(LabelLength)] string Code,
[Required][MaxLength(TextLength)] string Description);
public sealed record CreateTenantRequest([Required][MaxLength(LabelLength)] string Name);
public sealed record UpdateTenantUserRequest([Required] Guid UserId, [Required] ActivityStatus Status);
public sealed record CreateTenantUserRequest([Required] long TenantId, [Required] Guid UserId);
public sealed record UpdateTenantRequest([Required] long TenantId,
[Required][MaxLength(LabelLength)] string Name,
[Required] ActivityStatus Status);
public sealed record UpdatePortfolioRequest([Required] long PortfolioId,
[Required][MaxLength(LabelLength)] string Name,
[Required][MaxLength(TextLength)] string Description,
[Required] Guid OwnerId);
public sealed record CreatePortfolioRequest([Required][MaxLength(LabelLength)] string Name,
[Required][MaxLength(TextLength)] string Description,
[Required] long OrganisationId,
[Required] Guid OwnerId);
public sealed record UpdateOrganisationRequest([Required] long OrganisationId,
[Required][MaxLength(LabelLength)] string Name,
[Required][MaxLength(LabelLength)] string RegistrationNo,
[Required][EmailAddress][MaxLength(LabelLength)] string Email,
[MaxLength(LabelLength)] string? IdNumber,
[Required] Guid OrganisationUser,
[Required] OrganisationType Type,
[Required] ActivityStatus Status);
public sealed record CreateOrganisationRequest([Required][MaxLength(LabelLength)] string Name,
[Required][MaxLength(LabelLength)] string RegistrationNo,
[Required][EmailAddress][MaxLength(LabelLength)] string Email,
[MaxLength(LabelLength)] string? IdNumber,
[Required] Guid OrganisationUser,
[Required] OrganisationType Type = OrganisationType.PrivateLimitedCompany);
public sealed record Dashboard([Required] decimal PortfolioValue,
[Required] int ActiveAwards,
[Required] decimal Disbursed,
[Required] double OnTrackPercentage,
[Required] int AtRiskCount,
[Required] int BeneficiariesReached);