mirror of
https://github.com/Sea-Haven-Industries/shoc-backend.git
synced 2026-09-30 10:43:13 +00:00
38 lines
1.4 KiB
C#
38 lines
1.4 KiB
C#
using System.ComponentModel.DataAnnotations;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
|
|
namespace Data.SeaHavenIndustries
|
|
{
|
|
public class VendorCompletionDocument : FullAuditEntity
|
|
{
|
|
public int VendorId { get; set; }
|
|
[ForeignKey(nameof(VendorId))]
|
|
public Vendor? Vendor { get; set; }
|
|
|
|
public int DispatchId { get; set; }
|
|
[ForeignKey(nameof(DispatchId))]
|
|
public Dispatch? Dispatch { get; set; }
|
|
|
|
public int WorkOrderId { get; set; }
|
|
[ForeignKey(nameof(WorkOrderId))]
|
|
public WorkOrder? WorkOrder { get; set; }
|
|
|
|
public string OriginalFileName { get; set; } = "";
|
|
public string StoredFileName { get; set; } = "";
|
|
public string ContentType { get; set; } = "";
|
|
public long SizeBytes { get; set; }
|
|
public string ScanStatus { get; set; } = "Pending";
|
|
public string ReviewStatus { get; set; } = "Processing";
|
|
public string? RejectionReason { get; set; }
|
|
public int Version { get; set; } = 1;
|
|
public int? ReplacesDocumentId { get; set; }
|
|
public DateTime? ScannedAt { get; set; }
|
|
public DateTime? ReviewedAt { get; set; }
|
|
|
|
// SH-101: document purpose. Default "Completion" preserves legacy behavior;
|
|
// "UpliftEvidence" is immutable supporting evidence for an uplift request.
|
|
[Required]
|
|
[MaxLength(30)]
|
|
public string Purpose { get; set; } = "Completion";
|
|
}
|
|
}
|