Files
cmroubao/backend-api/internal/domain/procurement.go
T

76 lines
2.3 KiB
Go

package domain
import "time"
type ProcurementRequestStatus string
type ProcurementReferenceOrigin 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"
)
const (
ProcurementReferenceERP ProcurementReferenceOrigin = "ERP_FREIGHT_IMAGE"
ProcurementReferenceManual ProcurementReferenceOrigin = "MANUAL_UPLOAD"
)
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
ReferenceOrigin *ProcurementReferenceOrigin
ReferenceProductThumbRef *string
ReferenceSourceImageSHA256 *string
ReferenceBoundAt *time.Time
PurchaseTaskID *string
SourceChanged bool
CreatedAt time.Time
UpdatedAt time.Time
}
type ProcurementReferenceSource struct {
Origin ProcurementReferenceOrigin
ProductThumbRef *string
SourceImageSHA256 *string
BoundAt time.Time
}
type PurchaseTaskSource struct {
TaskID string
ProcurementRequestID string
FreightOrderItemID string
SourceRevision int
SourceSHA256 string
CreatedAt time.Time
}