56 lines
1.4 KiB
C#
56 lines
1.4 KiB
C#
using CsvHelper.Configuration.Attributes;
|
|
|
|
namespace PowderCoating.Application.DTOs.Import;
|
|
|
|
/// <summary>
|
|
/// DTO for importing quotes from CSV files.
|
|
/// </summary>
|
|
public class QuoteImportDto
|
|
{
|
|
[Name("QuoteNumber")]
|
|
public string? QuoteNumber { get; set; }
|
|
|
|
[Name("CustomerEmail")]
|
|
public string? CustomerEmail { get; set; }
|
|
|
|
// Fallback when CustomerEmail is absent; matched against CompanyName then ContactName
|
|
[Name("CustomerName")]
|
|
public string? CustomerName { get; set; }
|
|
|
|
[Name("ProspectCompany")]
|
|
public string? ProspectCompany { get; set; }
|
|
|
|
[Name("ProspectContact")]
|
|
public string? ProspectContact { get; set; }
|
|
|
|
[Name("ProspectEmail")]
|
|
public string? ProspectEmail { get; set; }
|
|
|
|
[Name("ProspectPhone")]
|
|
public string? ProspectPhone { get; set; }
|
|
|
|
[Name("Status")]
|
|
public string Status { get; set; } = "Draft";
|
|
|
|
[Name("QuoteDate")]
|
|
public DateTime QuoteDate { get; set; }
|
|
|
|
[Name("ExpirationDate")]
|
|
public DateTime? ExpirationDate { get; set; }
|
|
|
|
[Name("Subtotal")]
|
|
public decimal Subtotal { get; set; }
|
|
|
|
[Name("TaxAmount")]
|
|
public decimal TaxAmount { get; set; }
|
|
|
|
[Name("Total")]
|
|
public decimal Total { get; set; }
|
|
|
|
[Name("Notes")]
|
|
public string? Notes { get; set; }
|
|
|
|
[Name("TermsAndConditions")]
|
|
public string? TermsAndConditions { get; set; }
|
|
}
|