feat: scope articles by brand

This commit is contained in:
2026-05-20 15:37:25 +08:00
parent 5fb9d0b0dd
commit dd082e2ed1
72 changed files with 3213 additions and 432 deletions
@@ -22,6 +22,7 @@ import {
getSourceTypeLabel,
hasActiveGenerationStatus,
} from '@/lib/display'
import { useCompanyStore } from '@/stores/company'
const props = defineProps<{
open: boolean
@@ -34,6 +35,7 @@ const emit = defineEmits<{
const queryClient = useQueryClient()
const { t } = useI18n()
const companyStore = useCompanyStore()
const activeTab = ref('content')
const enabled = computed(() => props.open && Boolean(props.articleId))
const streamTitle = ref('')
@@ -42,20 +44,25 @@ const streamStatus = ref<string | null>(null)
const streamFeatureEnabled = isGenerationStreamEnabled()
const detailQuery = useQuery({
queryKey: computed(() => ['articles', 'detail', props.articleId]),
enabled,
queryKey: computed(() => ['articles', 'detail', companyStore.currentBrandId, props.articleId]),
enabled: computed(() => enabled.value && Boolean(companyStore.currentBrandId)),
queryFn: () => articlesApi.detail(props.articleId as number),
})
const versionsQuery = useQuery({
queryKey: computed(() => ['articles', 'versions', props.articleId]),
enabled,
queryKey: computed(() => ['articles', 'versions', companyStore.currentBrandId, props.articleId]),
enabled: computed(() => enabled.value && Boolean(companyStore.currentBrandId)),
queryFn: () => articlesApi.versions(props.articleId as number),
})
const publishRecordsQuery = useQuery({
queryKey: computed(() => ['articles', 'publish-records', props.articleId]),
enabled,
queryKey: computed(() => [
'articles',
'publish-records',
companyStore.currentBrandId,
props.articleId,
]),
enabled: computed(() => enabled.value && Boolean(companyStore.currentBrandId)),
queryFn: () => articlesApi.publishRecords(props.articleId as number),
})