diff --git a/apps/admin-web/src/components/kol/KolPackageCard.vue b/apps/admin-web/src/components/kol/KolPackageCard.vue new file mode 100644 index 0000000..4d50d9e --- /dev/null +++ b/apps/admin-web/src/components/kol/KolPackageCard.vue @@ -0,0 +1,156 @@ + + + + + diff --git a/apps/admin-web/src/lib/api.ts b/apps/admin-web/src/lib/api.ts index 96dac48..3990c7d 100644 --- a/apps/admin-web/src/lib/api.ts +++ b/apps/admin-web/src/lib/api.ts @@ -32,6 +32,9 @@ import type { KolAssistSubmitResponse, KolAssistTask, KolPackageSummary, + KolPackageDetail, + KolSubscription, + KolSubscriptionPromptCard, KolProfile, KolPromptDetail, KolPromptRevision, @@ -333,6 +336,29 @@ export const kolManageApi = { }, }; +export const kolMarketplaceApi = { + list(params: { industry?: string; keyword?: string; limit?: number; offset?: number }) { + return apiClient.get("/api/tenant/kol/marketplace", { params }); + }, + detail(id: number) { + return apiClient.get(`/api/tenant/kol/marketplace/packages/${id}`); + }, + subscribe(id: number) { + return apiClient.post>( + `/api/tenant/kol/marketplace/packages/${id}/subscribe`, + {}, + ); + }, + mySubscriptions() { + return apiClient.get("/api/tenant/kol/marketplace/my-subscriptions"); + }, + mySubscriptionPrompts() { + return apiClient.get( + "/api/tenant/kol/marketplace/my-subscription-prompts", + ); + }, +}; + export const articlesApi = { list(params: ArticleListParams) { return apiClient.get("/api/tenant/articles", { params }); diff --git a/apps/admin-web/src/router/future-kol-views.d.ts b/apps/admin-web/src/router/future-kol-views.d.ts index 8cbe11f..9aad9c1 100644 --- a/apps/admin-web/src/router/future-kol-views.d.ts +++ b/apps/admin-web/src/router/future-kol-views.d.ts @@ -5,20 +5,6 @@ declare module "@/views/KolDashboardView.vue" { export default component; } -declare module "@/views/KolMarketplaceView.vue" { - import type { DefineComponent } from "vue"; - - const component: DefineComponent, Record, any>; - export default component; -} - -declare module "@/views/KolPackageDetailView.vue" { - import type { DefineComponent } from "vue"; - - const component: DefineComponent, Record, any>; - export default component; -} - declare module "@/views/KolGenerateView.vue" { import type { DefineComponent } from "vue"; diff --git a/apps/admin-web/src/views/KolMarketplaceView.vue b/apps/admin-web/src/views/KolMarketplaceView.vue new file mode 100644 index 0000000..41620e0 --- /dev/null +++ b/apps/admin-web/src/views/KolMarketplaceView.vue @@ -0,0 +1,187 @@ + + + + + diff --git a/apps/admin-web/src/views/KolPackageDetailView.vue b/apps/admin-web/src/views/KolPackageDetailView.vue new file mode 100644 index 0000000..75176d7 --- /dev/null +++ b/apps/admin-web/src/views/KolPackageDetailView.vue @@ -0,0 +1,450 @@ + + + + +