package domain import "time" type ProcurementRequestStatus string const ( ProcurementBlocked ProcurementRequestStatus = "BLOCKED" ProcurementNeedsImage ProcurementRequestStatus = "NEEDS_IMAGE" ProcurementReady ProcurementRequestStatus = "READY" ProcurementTaskCreated ProcurementRequestStatus = "TASK_CREATED" ProcurementSourceChanged ProcurementRequestStatus = "SOURCE_CHANGED" ) const ( ProcurementBlockSourceCanceled = "SOURCE_CANCELED" ProcurementBlockTitleRequired = "TITLE_REQUIRED" ProcurementBlockSKURequired = "SKU_REQUIRED" ProcurementBlockQuantityRequired = "QUANTITY_REQUIRED" ProcurementBlockSourceChanged = "SOURCE_CHANGED" ) type ProcurementSourceItem struct { Item FreightOrderItem IsCanceled *bool } type ProcurementRequest struct { ID string CreatorSubject string FreightOrderItemID string SourceRevision int SourceSHA256 string Title string ProductSpec string SKU string Quantity *int SourcePurchaseStatus *string SourceIsCanceled *bool ProcurementConfirmedByUserID string ProcurementConfirmedAt time.Time Status ProcurementRequestStatus BlockingCode *string ReferenceAssetID *string PurchaseTaskID *string SourceChanged bool CreatedAt time.Time UpdatedAt time.Time } type PurchaseTaskSource struct { TaskID string ProcurementRequestID string FreightOrderItemID string SourceRevision int SourceSHA256 string CreatedAt time.Time }