feat(1099): add recipient DTOs
Add Payee1099ListItemDto, Payee1099Dto, and SavePayee1099Request in DTOs/Payee for the 1099 recipient CRUD surface. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
namespace ROLAC.API.DTOs.Payee;
|
||||
|
||||
public class Payee1099ListItemDto
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string LegalName { get; set; } = "";
|
||||
public string? DisplayName { get; set; }
|
||||
public int? MemberId { get; set; }
|
||||
public string? MemberName { get; set; }
|
||||
public string TaxClassification { get; set; } = "";
|
||||
public bool Is1099Tracked { get; set; }
|
||||
public string? TinType { get; set; }
|
||||
public string? TinLast4 { get; set; }
|
||||
public string W9Status { get; set; } = "";
|
||||
public bool IsActive { get; set; }
|
||||
}
|
||||
|
||||
public class Payee1099Dto : Payee1099ListItemDto
|
||||
{
|
||||
public string? AddressLine1 { get; set; }
|
||||
public string? AddressLine2 { get; set; }
|
||||
public string? City { get; set; }
|
||||
public string? State { get; set; }
|
||||
public string? Zip { get; set; }
|
||||
public string? Email { get; set; }
|
||||
public string? Phone { get; set; }
|
||||
public string? W9ReceivedDate { get; set; }
|
||||
public bool HasW9Document { get; set; }
|
||||
public string? Notes { get; set; }
|
||||
}
|
||||
|
||||
public class SavePayee1099Request
|
||||
{
|
||||
[Required, MaxLength(200)] public string LegalName { get; set; } = "";
|
||||
[MaxLength(200)] public string? DisplayName { get; set; }
|
||||
public int? MemberId { get; set; }
|
||||
[Required, MaxLength(40)] public string TaxClassification { get; set; } = "Individual";
|
||||
public bool Is1099Tracked { get; set; } = true;
|
||||
[MaxLength(10)] public string? TinType { get; set; }
|
||||
/// <summary>Plain TIN; null = leave unchanged on update. Encrypted server-side.</summary>
|
||||
public string? Tin { get; set; }
|
||||
[MaxLength(100)] public string? AddressLine1 { get; set; }
|
||||
[MaxLength(100)] public string? AddressLine2 { get; set; }
|
||||
[MaxLength(60)] public string? City { get; set; }
|
||||
[MaxLength(2)] public string? State { get; set; }
|
||||
[MaxLength(10)] public string? Zip { get; set; }
|
||||
[MaxLength(120)] public string? Email { get; set; }
|
||||
[MaxLength(40)] public string? Phone { get; set; }
|
||||
[MaxLength(20)] public string W9Status { get; set; } = "Missing";
|
||||
public DateOnly? W9ReceivedDate { get; set; }
|
||||
public bool IsActive { get; set; } = true;
|
||||
public string? Notes { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user