Patch export/import for missing fields; add CustomerContacts export

- DataExportController + AccountDataExportController: add ProjectName to
  Jobs, Quotes, Invoices (XLSX + CSV); add LeadSource + ShipTo fields to
  Customers (XLSX + CSV); add CustomerContacts sheet/CSV (new)
- Both export views: add Customer Contacts checkbox (checked by default)
- CustomerImportDto: add LeadSource + ShipTo* fields
- JobImportDto: add ProjectName
- QuoteImportDto: add ProjectName
- InvoiceImportDto: add Project Name (dual-name alias for round-trip)
- CsvImportService: wire all new import fields to entity creation;
  also patch invoice update path for ProjectName
- Add scripts/purge_imported_data.sql (dry-run T-SQL for data cleanup)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-10 15:14:27 -04:00
parent 427c52a499
commit 82fb48f7a5
10 changed files with 637 additions and 76 deletions
@@ -38,6 +38,9 @@ public class QuoteImportDto
[Name("ExpirationDate")]
public DateTime? ExpirationDate { get; set; }
[Name("ProjectName")]
public string? ProjectName { get; set; }
[Name("Subtotal")]
public decimal Subtotal { get; set; }