diff --git a/backend/app/http/v1/dto/creator.go b/backend/app/http/v1/dto/creator.go index 4a34058..d53b9c1 100644 --- a/backend/app/http/v1/dto/creator.go +++ b/backend/app/http/v1/dto/creator.go @@ -72,6 +72,7 @@ type CreatorContentItem struct { VideoCount int `json:"video_count"` AudioCount int `json:"audio_count"` Status string `json:"status"` + Visibility string `json:"visibility"` CreatedAt string `json:"created_at"` IsPinned bool `json:"is_pinned"` IsPurchased bool `json:"is_purchased"` @@ -89,8 +90,9 @@ type AssetDTO struct { type CreatorContentListFilter struct { requests.Pagination - Status *string `query:"status"` - Genre *string `query:"genre"` + Status *string `query:"status"` + Visibility *string `query:"visibility"` + Genre *string `query:"genre"` Key *string `query:"key"` Keyword *string `query:"keyword"` } diff --git a/backend/app/services/creator.go b/backend/app/services/creator.go index f32c412..7cd1719 100644 --- a/backend/app/services/creator.go +++ b/backend/app/services/creator.go @@ -121,6 +121,12 @@ func (s *creator) ListContents( if filter.Status != nil && *filter.Status != "" { q = q.Where(tbl.Status.Eq(consts.ContentStatus(*filter.Status))) } + if filter.Visibility != nil && *filter.Visibility != "" { + q = q.Where(tbl.Visibility.Eq(consts.ContentVisibility(*filter.Visibility))) + } + if filter.Visibility != nil && *filter.Visibility != "" { + q = q.Where(tbl.Visibility.Eq(consts.ContentVisibility(*filter.Visibility))) + } if filter.Genre != nil && *filter.Genre != "" { val := *filter.Genre if cn, ok := genreMap[val]; ok { @@ -208,6 +214,7 @@ func (s *creator) ListContents( VideoCount: videoCount, AudioCount: audioCount, Status: string(item.Status), + Visibility: string(item.Visibility), CreatedAt: item.CreatedAt.Format("2006-01-02 15:04"), IsPinned: item.IsPinned, IsPurchased: false, diff --git a/frontend/portal/src/views/creator/ContentsView.vue b/frontend/portal/src/views/creator/ContentsView.vue index fc8f764..e2e1318 100644 --- a/frontend/portal/src/views/creator/ContentsView.vue +++ b/frontend/portal/src/views/creator/ContentsView.vue @@ -18,6 +18,14 @@ +