fix(接口测试): 所有CASE去掉联调中状态&调整更新用例tooltip细节

--bug=1038573 --user=吕梦园 https://www.tapd.cn/55049933/bugtrace/bugs/view/1155049933001038573
This commit is contained in:
teukkk 2024-04-09 11:17:39 +08:00 committed by 刘瑞斌
parent 45202af5c8
commit 0501d1b9df
5 changed files with 16 additions and 30 deletions

View File

@ -28,7 +28,7 @@
<div v-else>-</div> <div v-else>-</div>
</div> </div>
<slot v-else :name="item.key" :value="item.value"> <slot v-else :name="item.key" :value="item.value">
<a-tooltip :content="item.value" :disabled="isEmpty(item.value)"> <a-tooltip :content="item.value" :disabled="isEmpty(item.value)" :position="item.tooltipPosition">
<div <div
class="text-ov overflow-hidden overflow-ellipsis whitespace-nowrap pr-[24px] text-[var(--color-text-1)]" class="text-ov overflow-hidden overflow-ellipsis whitespace-nowrap pr-[24px] text-[var(--color-text-1)]"
>{{ item.value || '-' }}</div >{{ item.value || '-' }}</div
@ -68,6 +68,7 @@
locale: string; locale: string;
value: string | string[]; value: string | string[];
width?: string; width?: string;
tooltipPosition?: 'top' | 'tl' | 'tr' | 'bottom' | 'bl' | 'br' | 'left' | 'lt' | 'lb' | 'right' | 'rt' | 'rb';
} }
const props = defineProps<{ const props = defineProps<{

View File

@ -7,10 +7,10 @@
import { useI18n } from '@/hooks/useI18n'; import { useI18n } from '@/hooks/useI18n';
import { ApiScenarioStatus, RequestDefinitionStatus } from '@/enums/apiEnum'; import { ApiScenarioStatus, RequestCaseStatus, RequestDefinitionStatus } from '@/enums/apiEnum';
const props = defineProps<{ const props = defineProps<{
status: RequestDefinitionStatus | ApiScenarioStatus; status: RequestDefinitionStatus | ApiScenarioStatus | RequestCaseStatus;
size?: Size; size?: Size;
}>(); }>();

View File

@ -107,7 +107,7 @@
<template #label> <template #label>
<apiStatus :status="record.status" size="small" /> <apiStatus :status="record.status" size="small" />
</template> </template>
<a-option v-for="item of requestCaseStatus" :key="item" :value="item"> <a-option v-for="item of Object.values(RequestCaseStatus)" :key="item" :value="item">
<apiStatus :status="item" size="small" /> <apiStatus :status="item" size="small" />
</a-option> </a-option>
</a-select> </a-select>
@ -127,7 +127,7 @@
<div class="arco-table-filters-content"> <div class="arco-table-filters-content">
<div class="ml-[6px] flex items-center justify-start px-[6px] py-[2px]"> <div class="ml-[6px] flex items-center justify-start px-[6px] py-[2px]">
<a-checkbox-group v-model:model-value="statusFilters" direction="vertical" size="small"> <a-checkbox-group v-model:model-value="statusFilters" direction="vertical" size="small">
<a-checkbox v-for="val of requestCaseStatus" :key="val" :value="val"> <a-checkbox v-for="val of Object.values(RequestCaseStatus)" :key="val" :value="val">
<apiStatus :status="val" /> <apiStatus :status="val" />
</a-checkbox> </a-checkbox>
</a-checkbox-group> </a-checkbox-group>
@ -409,11 +409,11 @@
import { ApiCaseDetail } from '@/models/apiTest/management'; import { ApiCaseDetail } from '@/models/apiTest/management';
import { DragSortParams } from '@/models/common'; import { DragSortParams } from '@/models/common';
import { RequestDefinitionStatus } from '@/enums/apiEnum'; import { RequestCaseStatus } from '@/enums/apiEnum';
import { ReportEnum, ReportStatus } from '@/enums/reportEnum'; import { ReportEnum, ReportStatus } from '@/enums/reportEnum';
import { TableKeyEnum } from '@/enums/tableEnum'; import { TableKeyEnum } from '@/enums/tableEnum';
import { casePriorityOptions } from '@/views/api-test/components/config'; import { casePriorityOptions, caseStatusOptions } from '@/views/api-test/components/config';
import type { RequestParam } from '@/views/api-test/components/requestComposition/index.vue'; import type { RequestParam } from '@/views/api-test/components/requestComposition/index.vue';
import { parseRequestBodyFiles } from '@/views/api-test/components/utils'; import { parseRequestBodyFiles } from '@/views/api-test/components/utils';
@ -437,9 +437,6 @@
const keyword = ref(''); const keyword = ref('');
const requestCaseStatus = computed(() =>
Object.values(RequestDefinitionStatus).filter((item) => item !== RequestDefinitionStatus.DEBUGGING)
);
const hasOperationPermission = computed(() => const hasOperationPermission = computed(() =>
hasAnyPermission([ hasAnyPermission([
'PROJECT_API_DEFINITION_CASE:READ+DELETE', 'PROJECT_API_DEFINITION_CASE:READ+DELETE',
@ -872,20 +869,7 @@
case 'priority': case 'priority':
return casePriorityOptions; return casePriorityOptions;
case 'status': case 'status':
return [ return caseStatusOptions;
{
label: 'apiTestManagement.processing',
value: RequestDefinitionStatus.PROCESSING,
},
{
label: 'apiTestManagement.done',
value: RequestDefinitionStatus.DONE,
},
{
label: 'apiTestManagement.deprecate',
value: RequestDefinitionStatus.DEPRECATED,
},
];
default: default:
return []; return [];
} }

View File

@ -60,7 +60,7 @@
<template #label> <template #label>
<apiStatus :status="detailForm.status" size="small" /> <apiStatus :status="detailForm.status" size="small" />
</template> </template>
<a-option v-for="item of Object.values(RequestDefinitionStatus)" :key="item" :value="item"> <a-option v-for="item of Object.values(RequestCaseStatus)" :key="item" :value="item">
<apiStatus :status="item" size="small" /> <apiStatus :status="item" size="small" />
</a-option> </a-option>
</a-select> </a-select>
@ -95,7 +95,7 @@
import { FormInstance, Message } from '@arco-design/web-vue'; import { FormInstance, Message } from '@arco-design/web-vue';
import { cloneDeep } from 'lodash-es'; import { cloneDeep } from 'lodash-es';
import MsDetailCard from '@/components/pure/ms-detail-card/index.vue'; import MsDetailCard, { type Description } from '@/components/pure/ms-detail-card/index.vue';
import MsDrawer from '@/components/pure/ms-drawer/index.vue'; import MsDrawer from '@/components/pure/ms-drawer/index.vue';
import MsTagsInput from '@/components/pure/ms-tags-input/index.vue'; import MsTagsInput from '@/components/pure/ms-tags-input/index.vue';
import caseLevel from '@/components/business/ms-case-associate/caseLevel.vue'; import caseLevel from '@/components/business/ms-case-associate/caseLevel.vue';
@ -124,7 +124,7 @@
import { AddApiCaseParams, ApiCaseDetail, ApiDefinitionDetail } from '@/models/apiTest/management'; import { AddApiCaseParams, ApiCaseDetail, ApiDefinitionDetail } from '@/models/apiTest/management';
import { EnvConfig } from '@/models/projectManagement/environmental'; import { EnvConfig } from '@/models/projectManagement/environmental';
import { RequestDefinitionStatus, RequestMethods } from '@/enums/apiEnum'; import { RequestCaseStatus, RequestMethods } from '@/enums/apiEnum';
import { casePriorityOptions, defaultResponse } from '@/views/api-test/components/config'; import { casePriorityOptions, defaultResponse } from '@/views/api-test/components/config';
@ -152,7 +152,7 @@
} }
} }
const description = computed(() => [ const description = computed<Description[]>(() => [
{ {
key: 'type', key: 'type',
locale: 'apiTestManagement.apiType', locale: 'apiTestManagement.apiType',
@ -162,6 +162,7 @@
key: 'path', key: 'path',
locale: 'apiTestManagement.path', locale: 'apiTestManagement.path',
value: apiDetailInfo.value.url || apiDetailInfo.value.path, value: apiDetailInfo.value.url || apiDetailInfo.value.path,
tooltipPosition: 'tr',
}, },
]); ]);

View File

@ -77,7 +77,7 @@
<div class="arco-table-filters-content"> <div class="arco-table-filters-content">
<div class="ml-[6px] flex items-center justify-start px-[6px] py-[2px]"> <div class="ml-[6px] flex items-center justify-start px-[6px] py-[2px]">
<a-checkbox-group v-model:model-value="statusFilters" direction="vertical" size="small"> <a-checkbox-group v-model:model-value="statusFilters" direction="vertical" size="small">
<a-checkbox v-for="val of Object.values(RequestDefinitionStatus)" :key="val" :value="val"> <a-checkbox v-for="val of Object.values(RequestCaseStatus)" :key="val" :value="val">
<apiStatus :status="val" /> <apiStatus :status="val" />
</a-checkbox> </a-checkbox>
</a-checkbox-group> </a-checkbox-group>
@ -236,7 +236,7 @@
import useAppStore from '@/store/modules/app'; import useAppStore from '@/store/modules/app';
import { ApiCaseBatchParams, ApiCaseDetail } from '@/models/apiTest/management'; import { ApiCaseBatchParams, ApiCaseDetail } from '@/models/apiTest/management';
import { RequestDefinitionStatus } from '@/enums/apiEnum'; import { RequestCaseStatus } from '@/enums/apiEnum';
import { ReportEnum, ReportStatus } from '@/enums/reportEnum'; import { ReportEnum, ReportStatus } from '@/enums/reportEnum';
import { TableKeyEnum } from '@/enums/tableEnum'; import { TableKeyEnum } from '@/enums/tableEnum';