From 9aa64b5f4cde38292d5ede5d120117425ecb55d9 Mon Sep 17 00:00:00 2001 From: Chris Chen Date: Thu, 25 Jun 2026 16:53:15 -0700 Subject: [PATCH] feat(1099): add report and recipient DTOs Co-Authored-By: Claude Opus 4.8 --- .../DTOs/Finance/Form1099ReportDtos.cs | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 API/ROLAC.API/DTOs/Finance/Form1099ReportDtos.cs diff --git a/API/ROLAC.API/DTOs/Finance/Form1099ReportDtos.cs b/API/ROLAC.API/DTOs/Finance/Form1099ReportDtos.cs new file mode 100644 index 0000000..52fca56 --- /dev/null +++ b/API/ROLAC.API/DTOs/Finance/Form1099ReportDtos.cs @@ -0,0 +1,52 @@ +namespace ROLAC.API.DTOs.Finance; + +public class Form1099BoxDto +{ + public int Id { get; set; } + public string BoxCode { get; set; } = ""; + public string Name_en { get; set; } = ""; + public string? Name_zh { get; set; } + public string FormType { get; set; } = ""; + public int SortOrder { get; set; } +} + +public class Form1099RecipientRowDto +{ + public int PayeeId { get; set; } + public string LegalName { get; set; } = ""; + public string? TinLast4 { get; set; } + public string W9Status { get; set; } = ""; + public decimal NecTotal { get; set; } + public decimal RentsTotal { get; set; } + public decimal GrandTotal { get; set; } + public bool MeetsThreshold { get; set; } + public bool W9Missing { get; set; } +} + +public class Form1099SummaryDto +{ + public int TaxYear { get; set; } + public List Rows { get; set; } = []; + public decimal TotalReportable { get; set; } + public int RecipientsAtThreshold { get; set; } + public int RecipientsMissingW9 { get; set; } +} + +public class Form1099PaymentDto +{ + public string PaidDate { get; set; } = ""; + public string Description { get; set; } = ""; + public string CategoryName { get; set; } = ""; + public string BoxCode { get; set; } = ""; + public decimal Amount { get; set; } +} + +public class Form1099RecipientDetailDto +{ + public int PayeeId { get; set; } + public string LegalName { get; set; } = ""; + public string? TinLast4 { get; set; } + public string W9Status { get; set; } = ""; + public int TaxYear { get; set; } + public List Payments { get; set; } = []; +}