feat(工作台): 待办/我的创建/我的关注页面无项目展示
This commit is contained in:
parent
ad272627cb
commit
40b9fbdc6a
|
@ -30,8 +30,6 @@
|
|||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { ref } from 'vue';
|
||||
|
||||
import MsButton from '@/components/pure/ms-button/index.vue';
|
||||
import MsCard from '@/components/pure/ms-card/index.vue';
|
||||
|
|
@ -86,7 +86,7 @@
|
|||
import { VueDraggable } from 'vue-draggable-plus';
|
||||
|
||||
import MsDrawer from '@/components/pure/ms-drawer/index.vue';
|
||||
import NotData from './notData.vue';
|
||||
import NotData from '../../components/notData.vue';
|
||||
import CardSettingList from '@/views/workbench/homePage/components/cardSettingList.vue';
|
||||
|
||||
import { useI18n } from '@/hooks/useI18n';
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
import { ref } from 'vue';
|
||||
import { debounce } from 'lodash-es';
|
||||
|
||||
import NoData from './notData.vue';
|
||||
import NoData from '../../components/notData.vue';
|
||||
|
||||
import { addCommasToNumber } from '@/utils';
|
||||
|
||||
|
|
|
@ -72,6 +72,7 @@
|
|||
import { ref } from 'vue';
|
||||
|
||||
import MsBackButton from '@/components/pure/ms-back-button/index.vue';
|
||||
import NoData from '../components/notData.vue';
|
||||
import ApiAndScenarioCase from './components/apiAndScenarioCase.vue';
|
||||
import ApiChangeList from './components/apiChangeList.vue';
|
||||
import ApiCount from './components/apiCount.vue';
|
||||
|
@ -79,7 +80,6 @@
|
|||
import CaseCount from './components/caseCount.vue';
|
||||
import CaseReviewedCount from './components/caseReviewedCount.vue';
|
||||
import DefectCount from './components/defectCount.vue';
|
||||
import NoData from './components/notData.vue';
|
||||
import Overview from './components/overview.vue';
|
||||
import RelatedCaseCount from './components/relatedCaseCount.vue';
|
||||
import TestPlanCount from './components/testPlanCount.vue';
|
||||
|
|
|
@ -1,68 +1,71 @@
|
|||
<template>
|
||||
<div class="flex flex-col gap-[16px]">
|
||||
<div class="flex items-center justify-end gap-[12px]">
|
||||
<MsProjectSelect
|
||||
v-model:project="currentProject"
|
||||
class="w-[240px]"
|
||||
use-default-arrow-icon
|
||||
@change="handleRefresh"
|
||||
>
|
||||
<template #prefix>
|
||||
{{ t('menu.projectManagementShort') }}
|
||||
</template>
|
||||
</MsProjectSelect>
|
||||
<MsSelect
|
||||
v-model:model-value="features"
|
||||
:options="featureOptions"
|
||||
:allow-search="false"
|
||||
allow-clear
|
||||
class="!w-[240px]"
|
||||
:prefix="t('project.messageManagement.function')"
|
||||
:multiple="true"
|
||||
:has-all-select="true"
|
||||
:default-all-select="true"
|
||||
/>
|
||||
<a-button type="outline" class="arco-btn-outline--secondary p-[10px]" @click="handleRefresh">
|
||||
<MsIcon type="icon-icon_reset_outlined" size="14" />
|
||||
</a-button>
|
||||
</div>
|
||||
<template v-if="appStore.projectList.length > 0">
|
||||
<div class="flex items-center justify-end gap-[12px]">
|
||||
<MsProjectSelect
|
||||
v-model:project="currentProject"
|
||||
class="w-[240px]"
|
||||
use-default-arrow-icon
|
||||
@change="handleRefresh"
|
||||
>
|
||||
<template #prefix>
|
||||
{{ t('menu.projectManagementShort') }}
|
||||
</template>
|
||||
</MsProjectSelect>
|
||||
<MsSelect
|
||||
v-model:model-value="features"
|
||||
:options="featureOptions"
|
||||
:allow-search="false"
|
||||
allow-clear
|
||||
class="!w-[240px]"
|
||||
:prefix="t('project.messageManagement.function')"
|
||||
:multiple="true"
|
||||
:has-all-select="true"
|
||||
:default-all-select="true"
|
||||
/>
|
||||
<a-button type="outline" class="arco-btn-outline--secondary p-[10px]" @click="handleRefresh">
|
||||
<MsIcon type="icon-icon_reset_outlined" size="14" />
|
||||
</a-button>
|
||||
</div>
|
||||
|
||||
<testPlanTable
|
||||
v-if="features.includes(FeatureEnum.TEST_PLAN)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_create"
|
||||
/>
|
||||
<testCaseTable
|
||||
v-if="features.includes(FeatureEnum.TEST_CASE)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_create"
|
||||
/>
|
||||
<caseReviewTable
|
||||
v-if="features.includes(FeatureEnum.CASE_REVIEW)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_create"
|
||||
/>
|
||||
<apiCaseTable
|
||||
v-if="features.includes(FeatureEnum.API_CASE)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_create"
|
||||
/>
|
||||
<scenarioCaseTable
|
||||
v-if="features.includes(FeatureEnum.API_SCENARIO)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_create"
|
||||
/>
|
||||
<bugTable
|
||||
v-if="features.includes(FeatureEnum.BUG)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_create"
|
||||
/>
|
||||
<testPlanTable
|
||||
v-if="features.includes(FeatureEnum.TEST_PLAN)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_create"
|
||||
/>
|
||||
<testCaseTable
|
||||
v-if="features.includes(FeatureEnum.TEST_CASE)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_create"
|
||||
/>
|
||||
<caseReviewTable
|
||||
v-if="features.includes(FeatureEnum.CASE_REVIEW)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_create"
|
||||
/>
|
||||
<apiCaseTable
|
||||
v-if="features.includes(FeatureEnum.API_CASE)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_create"
|
||||
/>
|
||||
<scenarioCaseTable
|
||||
v-if="features.includes(FeatureEnum.API_SCENARIO)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_create"
|
||||
/>
|
||||
<bugTable
|
||||
v-if="features.includes(FeatureEnum.BUG)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_create"
|
||||
/>
|
||||
</template>
|
||||
<NoData v-else all-screen />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
@ -73,6 +76,7 @@
|
|||
import apiCaseTable from '../components/apiCaseTable.vue';
|
||||
import bugTable from '../components/bugTable.vue';
|
||||
import caseReviewTable from '../components/caseReviewTable.vue';
|
||||
import NoData from '../components/notData.vue';
|
||||
import scenarioCaseTable from '../components/scenarioCaseTable.vue';
|
||||
import testCaseTable from '../components/testCaseTable.vue';
|
||||
import testPlanTable from '../components/testPlanTable.vue';
|
||||
|
|
|
@ -1,67 +1,70 @@
|
|||
<template>
|
||||
<div class="flex flex-col gap-[16px]">
|
||||
<div class="flex items-center justify-end gap-[12px]">
|
||||
<MsProjectSelect
|
||||
v-model:project="currentProject"
|
||||
class="w-[240px]"
|
||||
use-default-arrow-icon
|
||||
@change="handleRefresh"
|
||||
>
|
||||
<template #prefix>
|
||||
{{ t('menu.projectManagementShort') }}
|
||||
</template>
|
||||
</MsProjectSelect>
|
||||
<MsSelect
|
||||
v-model:model-value="features"
|
||||
:options="featureOptions"
|
||||
:allow-search="false"
|
||||
allow-clear
|
||||
class="!w-[240px]"
|
||||
:prefix="t('project.messageManagement.function')"
|
||||
:multiple="true"
|
||||
:has-all-select="true"
|
||||
:default-all-select="true"
|
||||
<template v-if="appStore.projectList.length > 0">
|
||||
<div class="flex items-center justify-end gap-[12px]">
|
||||
<MsProjectSelect
|
||||
v-model:project="currentProject"
|
||||
class="w-[240px]"
|
||||
use-default-arrow-icon
|
||||
@change="handleRefresh"
|
||||
>
|
||||
<template #prefix>
|
||||
{{ t('menu.projectManagementShort') }}
|
||||
</template>
|
||||
</MsProjectSelect>
|
||||
<MsSelect
|
||||
v-model:model-value="features"
|
||||
:options="featureOptions"
|
||||
:allow-search="false"
|
||||
allow-clear
|
||||
class="!w-[240px]"
|
||||
:prefix="t('project.messageManagement.function')"
|
||||
:multiple="true"
|
||||
:has-all-select="true"
|
||||
:default-all-select="true"
|
||||
/>
|
||||
<a-button type="outline" class="arco-btn-outline--secondary p-[10px]" @click="handleRefresh">
|
||||
<MsIcon type="icon-icon_reset_outlined" size="14" />
|
||||
</a-button>
|
||||
</div>
|
||||
<testPlanTable
|
||||
v-if="features.includes(FeatureEnum.TEST_PLAN)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<a-button type="outline" class="arco-btn-outline--secondary p-[10px]" @click="handleRefresh">
|
||||
<MsIcon type="icon-icon_reset_outlined" size="14" />
|
||||
</a-button>
|
||||
</div>
|
||||
<testPlanTable
|
||||
v-if="features.includes(FeatureEnum.TEST_PLAN)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<testCaseTable
|
||||
v-if="features.includes(FeatureEnum.TEST_CASE)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<caseReviewTable
|
||||
v-if="features.includes(FeatureEnum.CASE_REVIEW)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<apiCaseTable
|
||||
v-if="features.includes(FeatureEnum.API_CASE)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<scenarioCaseTable
|
||||
v-if="features.includes(FeatureEnum.API_SCENARIO)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<bugTable
|
||||
v-if="features.includes(FeatureEnum.BUG)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<testCaseTable
|
||||
v-if="features.includes(FeatureEnum.TEST_CASE)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<caseReviewTable
|
||||
v-if="features.includes(FeatureEnum.CASE_REVIEW)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<apiCaseTable
|
||||
v-if="features.includes(FeatureEnum.API_CASE)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<scenarioCaseTable
|
||||
v-if="features.includes(FeatureEnum.API_SCENARIO)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<bugTable
|
||||
v-if="features.includes(FeatureEnum.BUG)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
</template>
|
||||
<NoData v-else all-screen />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
@ -72,6 +75,7 @@
|
|||
import apiCaseTable from '../components/apiCaseTable.vue';
|
||||
import bugTable from '../components/bugTable.vue';
|
||||
import caseReviewTable from '../components/caseReviewTable.vue';
|
||||
import NoData from '../components/notData.vue';
|
||||
import scenarioCaseTable from '../components/scenarioCaseTable.vue';
|
||||
import testCaseTable from '../components/testCaseTable.vue';
|
||||
import testPlanTable from '../components/testPlanTable.vue';
|
||||
|
|
|
@ -1,45 +1,48 @@
|
|||
<template>
|
||||
<div class="flex flex-col gap-[16px]">
|
||||
<div class="flex items-center justify-end gap-[12px]">
|
||||
<MsProjectSelect v-model:project="currentProject" class="w-[240px]" use-default-arrow-icon>
|
||||
<template #prefix>
|
||||
{{ t('menu.projectManagementShort') }}
|
||||
</template>
|
||||
</MsProjectSelect>
|
||||
<MsSelect
|
||||
v-model:model-value="features"
|
||||
:options="featureOptions"
|
||||
:allow-search="false"
|
||||
allow-clear
|
||||
class="!w-[240px]"
|
||||
:prefix="t('project.messageManagement.function')"
|
||||
:multiple="true"
|
||||
:has-all-select="true"
|
||||
:default-all-select="true"
|
||||
<template v-if="appStore.projectList.length > 0">
|
||||
<div class="flex items-center justify-end gap-[12px]">
|
||||
<MsProjectSelect v-model:project="currentProject" class="w-[240px]" use-default-arrow-icon>
|
||||
<template #prefix>
|
||||
{{ t('menu.projectManagementShort') }}
|
||||
</template>
|
||||
</MsProjectSelect>
|
||||
<MsSelect
|
||||
v-model:model-value="features"
|
||||
:options="featureOptions"
|
||||
:allow-search="false"
|
||||
allow-clear
|
||||
class="!w-[240px]"
|
||||
:prefix="t('project.messageManagement.function')"
|
||||
:multiple="true"
|
||||
:has-all-select="true"
|
||||
:default-all-select="true"
|
||||
/>
|
||||
<a-button type="outline" class="arco-btn-outline--secondary p-[10px]" @click="handleRefresh">
|
||||
<MsIcon type="icon-icon_reset_outlined" size="14" />
|
||||
</a-button>
|
||||
</div>
|
||||
<testPlanTable
|
||||
v-if="features.includes(FeatureEnum.TEST_PLAN)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
hide-show-type
|
||||
/>
|
||||
<a-button type="outline" class="arco-btn-outline--secondary p-[10px]" @click="handleRefresh">
|
||||
<MsIcon type="icon-icon_reset_outlined" size="14" />
|
||||
</a-button>
|
||||
</div>
|
||||
<testPlanTable
|
||||
v-if="features.includes(FeatureEnum.TEST_PLAN)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
hide-show-type
|
||||
/>
|
||||
<caseReviewTable
|
||||
v-if="features.includes(FeatureEnum.CASE_REVIEW)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<bugTable
|
||||
v-if="features.includes(FeatureEnum.BUG)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<caseReviewTable
|
||||
v-if="features.includes(FeatureEnum.CASE_REVIEW)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
<bugTable
|
||||
v-if="features.includes(FeatureEnum.BUG)"
|
||||
:project="currentProject"
|
||||
:refresh-id="refreshId"
|
||||
type="my_follow"
|
||||
/>
|
||||
</template>
|
||||
<NoData v-else all-screen />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
@ -49,6 +52,7 @@
|
|||
import MsSelect from '@/components/business/ms-select';
|
||||
import bugTable from '../components/bugTable.vue';
|
||||
import caseReviewTable from '../components/caseReviewTable.vue';
|
||||
import NoData from '../components/notData.vue';
|
||||
import testPlanTable from '../components/testPlanTable.vue';
|
||||
|
||||
import { useI18n } from '@/hooks/useI18n';
|
||||
|
|
Loading…
Reference in New Issue