feat: 补充(系统&组织&项目)任务中心新增字段

This commit is contained in:
xinxin.wu 2024-05-08 15:16:20 +08:00 committed by Craftsman
parent 92a1ca5aa7
commit a44efef7a3
6 changed files with 79 additions and 22 deletions

View File

@ -66,9 +66,12 @@ export enum TableKeyEnum {
TASK_API_CASE_SYSTEM = 'taskCenterApiCaseSystem', TASK_API_CASE_SYSTEM = 'taskCenterApiCaseSystem',
TASK_API_CASE_ORGANIZATION = 'taskCenterApiCaseOrganization', TASK_API_CASE_ORGANIZATION = 'taskCenterApiCaseOrganization',
TASK_API_CASE_PROJECT = 'taskCenterApiCaseProject', TASK_API_CASE_PROJECT = 'taskCenterApiCaseProject',
TASK_SCHEDULE_TASK_SYSTEM = 'taskCenterScheduleSystem', TASK_SCHEDULE_TASK_API_IMPORT_SYSTEM = 'taskCenterScheduleApiImportSystem',
TASK_SCHEDULE_TASK_ORGANIZATION = 'taskCenterScheduleOrganization', TASK_SCHEDULE_TASK_API_SCENARIO_SYSTEM = 'taskCenterScheduleApiScenarioSystem',
TASK_SCHEDULE_TASK_PROJECT = 'taskCenterScheduleProject', TASK_SCHEDULE_TASK_API_IMPORT_ORGANIZATION = 'taskCenterScheduleApiImportOrganization',
TASK_SCHEDULE_TASK_API_SCENARIO_ORGANIZATION = 'taskCenterScheduleApiScenarioOrganization',
TASK_SCHEDULE_TASK_API_IMPORT_PROJECT = 'taskCenterScheduleApiImportProject',
TASK_SCHEDULE_TASK_API_SCENARIO_PROJECT = 'taskCenterScheduleApiScenarioProject',
} }
// 具有特殊功能的列 // 具有特殊功能的列

View File

@ -313,8 +313,7 @@
</a-form> </a-form>
</MsDrawer> </MsDrawer>
<MsDrawer v-model:visible="taskDrawerVisible" :width="960" :title="t('apiTestManagement.timeTask')" :footer="false"> <MsDrawer v-model:visible="taskDrawerVisible" :width="960" :title="t('apiTestManagement.timeTask')" :footer="false">
<div class="mb-[16px] flex items-center justify-between"> <div class="mb-[16px] flex items-center justify-end">
{{ t('apiTestManagement.timeTaskList') }}
<a-input-search <a-input-search
v-model:model-value="keyword" v-model:model-value="keyword"
:placeholder="t('apiTestManagement.searchTaskPlaceholder')" :placeholder="t('apiTestManagement.searchTaskPlaceholder')"

View File

@ -111,11 +111,7 @@
mode="remote" mode="remote"
value-key="id" value-key="id"
label-key="name" label-key="name"
:type=" :type="UserRequestTypeEnum.SYSTEM_ORGANIZATION_PROJECT"
groupColumnsMap[props.group].key === TableKeyEnum.TASK_SCHEDULE_TASK_SYSTEM
? UserRequestTypeEnum.SYSTEM_PROJECT_LIST
: UserRequestTypeEnum.SYSTEM_ORGANIZATION_PROJECT
"
:placeholder-text="t('project.taskCenter.filterOrgPlaceholderText')" :placeholder-text="t('project.taskCenter.filterOrgPlaceholderText')"
@search="initData()" @search="initData()"
> >

View File

@ -83,7 +83,8 @@
<template <template
v-if=" v-if="
hasAnyPermission( hasAnyPermission(
groupColumnsMap[props.group].key === TableKeyEnum.TASK_SCHEDULE_TASK_SYSTEM groupColumnsMap[props.group].key === TableKeyEnum.TASK_SCHEDULE_TASK_API_IMPORT_SYSTEM ||
groupColumnsMap[props.group].key === TableKeyEnum.TASK_SCHEDULE_TASK_API_SCENARIO_SYSTEM
? ['SYSTEM_ORGANIZATION_PROJECT:READ'] ? ['SYSTEM_ORGANIZATION_PROJECT:READ']
: ['ORGANIZATION_PROJECT:READ'] : ['ORGANIZATION_PROJECT:READ']
) )
@ -98,7 +99,8 @@
:load-option-params="{ organizationId: appStore.currentOrgId }" :load-option-params="{ organizationId: appStore.currentOrgId }"
:placeholder-text="t('project.taskCenter.filterProPlaceholderText')" :placeholder-text="t('project.taskCenter.filterProPlaceholderText')"
:type=" :type="
groupColumnsMap[props.group].key === TableKeyEnum.TASK_SCHEDULE_TASK_SYSTEM groupColumnsMap[props.group].key === TableKeyEnum.TASK_SCHEDULE_TASK_API_IMPORT_SYSTEM ||
groupColumnsMap[props.group].key === TableKeyEnum.TASK_SCHEDULE_TASK_API_SCENARIO_SYSTEM
? UserRequestTypeEnum.SYSTEM_PROJECT_LIST ? UserRequestTypeEnum.SYSTEM_PROJECT_LIST
: UserRequestTypeEnum.SYSTEM_ORGANIZATION_PROJECT : UserRequestTypeEnum.SYSTEM_ORGANIZATION_PROJECT
" "
@ -273,7 +275,6 @@
showDrag: false, showDrag: false,
sortIndex: 1, sortIndex: 1,
columnSelectorDisabled: true, columnSelectorDisabled: true,
fixed: 'left',
}, },
{ {
title: 'project.taskCenter.resourceName', title: 'project.taskCenter.resourceName',
@ -334,19 +335,60 @@
}, },
]; ];
const groupColumnsMap = { const swaggerUrlColumn: MsTableColumn = [
{
title: 'project.taskCenter.swaggerUrl',
slotName: 'swaggerUrl',
dataIndex: 'swaggerUrl',
width: 300,
showDrag: false,
showTooltip: true,
columnSelectorDisabled: true,
showInTable: true,
},
];
const groupColumnsMap: Record<string, any> = {
system: { system: {
key: TableKeyEnum.TASK_SCHEDULE_TASK_SYSTEM, API_IMPORT: {
key: TableKeyEnum.TASK_SCHEDULE_TASK_API_IMPORT_SYSTEM,
columns: [
...ordAndProjectColumn,
...columns.slice(0, 2),
...swaggerUrlColumn,
...columns.slice(2, columns.length),
],
},
API_SCENARIO: {
key: TableKeyEnum.TASK_SCHEDULE_TASK_API_SCENARIO_SYSTEM,
columns: [...ordAndProjectColumn, ...columns], columns: [...ordAndProjectColumn, ...columns],
}, },
},
organization: { organization: {
key: TableKeyEnum.TASK_SCHEDULE_TASK_ORGANIZATION, API_IMPORT: {
key: TableKeyEnum.TASK_SCHEDULE_TASK_API_IMPORT_ORGANIZATION,
columns: [
...ordAndProjectColumn.slice(-1),
...columns.slice(0, 2),
...swaggerUrlColumn,
...columns.slice(2, columns.length),
],
},
API_SCENARIO: {
key: TableKeyEnum.TASK_SCHEDULE_TASK_API_SCENARIO_ORGANIZATION,
columns: [...ordAndProjectColumn.slice(-1), ...columns], columns: [...ordAndProjectColumn.slice(-1), ...columns],
}, },
},
project: { project: {
key: TableKeyEnum.TASK_SCHEDULE_TASK_PROJECT, API_IMPORT: {
key: TableKeyEnum.TASK_SCHEDULE_TASK_API_IMPORT_PROJECT,
columns: [...columns.slice(0, 2), ...swaggerUrlColumn, ...columns.slice(2, columns.length)],
},
API_SCENARIO: {
key: TableKeyEnum.TASK_SCHEDULE_TASK_API_SCENARIO_PROJECT,
columns, columns,
}, },
},
}; };
const orgFilterVisible = ref<boolean>(false); const orgFilterVisible = ref<boolean>(false);
const projectFilterVisible = ref<boolean>(false); const projectFilterVisible = ref<boolean>(false);
@ -373,7 +415,7 @@
const { propsRes, propsEvent, loadList, setLoadListParams, resetSelector } = useTable( const { propsRes, propsEvent, loadList, setLoadListParams, resetSelector } = useTable(
loadRealMap.value[props.group].list, loadRealMap.value[props.group].list,
{ {
tableKey: groupColumnsMap[props.group].key, tableKey: groupColumnsMap[props.group][props.moduleType].key,
scroll: { scroll: {
x: 1200, x: 1200,
}, },
@ -602,7 +644,22 @@
} }
); );
await tableStore.initColumn(groupColumnsMap[props.group].key, groupColumnsMap[props.group].columns, 'drawer', true); await tableStore.initColumn(
groupColumnsMap[props.group][props.moduleType].key,
groupColumnsMap[props.group][props.moduleType].columns,
'drawer',
true
);
const tableRef = ref();
watch(
() => props.moduleType,
(val) => {
if (val) {
tableRef.value.initColumn(groupColumnsMap[props.group][props.moduleType].columns);
}
}
);
</script> </script>
<style scoped lang="less"> <style scoped lang="less">

View File

@ -55,6 +55,7 @@ export default {
'project.taskCenter.batchDisableTask': 'Are you sure to disable {num} tasks?', 'project.taskCenter.batchDisableTask': 'Are you sure to disable {num} tasks?',
'project.taskCenter.batchEnableTaskContent': 'Enabling will execute the task', 'project.taskCenter.batchEnableTaskContent': 'Enabling will execute the task',
'project.taskCenter.batchDisableTaskContent': 'Closing will affect the execution of the task', 'project.taskCenter.batchDisableTaskContent': 'Closing will affect the execution of the task',
'project.taskCenter.swaggerUrl': 'Swagger Url',
'project.taskCenter.confirmEnable': 'Confirm enable', 'project.taskCenter.confirmEnable': 'Confirm enable',
'project.taskCenter.confirmDisable': 'Confirm disable', 'project.taskCenter.confirmDisable': 'Confirm disable',
'project.taskCenter.enableSuccess': 'Enable successfully', 'project.taskCenter.enableSuccess': 'Enable successfully',

View File

@ -53,6 +53,7 @@ export default {
'project.taskCenter.batchDisableTask': '确定关闭 {num} 个任务吗?', 'project.taskCenter.batchDisableTask': '确定关闭 {num} 个任务吗?',
'project.taskCenter.batchEnableTaskContent': '开启会执行任务', 'project.taskCenter.batchEnableTaskContent': '开启会执行任务',
'project.taskCenter.batchDisableTaskContent': '关闭后会影响任务的执行', 'project.taskCenter.batchDisableTaskContent': '关闭后会影响任务的执行',
'project.taskCenter.swaggerUrl': 'Swagger Url',
'project.taskCenter.confirmEnable': '确认开启', 'project.taskCenter.confirmEnable': '确认开启',
'project.taskCenter.confirmDisable': '确认关闭', 'project.taskCenter.confirmDisable': '确认关闭',
'project.taskCenter.enableSuccess': '开启成功', 'project.taskCenter.enableSuccess': '开启成功',