package usecase import ( "context" "time" "cmroubao/backend-api/internal/domain" ) type ProcurementRepository interface { GetProcurementSourceItem( context.Context, string, string, ) (domain.ProcurementSourceItem, error) CreateProcurementRequest( context.Context, domain.ProcurementRequest, ) (domain.ProcurementRequest, bool, error) ListProcurementRequestsForOrder( context.Context, string, string, ) ([]domain.ProcurementRequest, error) GetProcurementRequest( context.Context, string, string, ) (domain.ProcurementRequest, error) BindProcurementReference( context.Context, string, string, string, time.Time, ) (domain.ProcurementRequest, error) CreateProcurementTask( context.Context, domain.ProcurementRequest, domain.PurchaseTask, domain.TaskEvent, domain.PurchaseTaskSource, string, string, ) (domain.PurchaseTask, bool, error) }