feat(1.4.0-beta1): 优化组列表

This commit is contained in:
opensnail 2025-02-27 23:23:28 +08:00
parent 5c5da4e943
commit c18ec3298c
2 changed files with 15 additions and 44 deletions

View File

@ -6,7 +6,7 @@ import { fetchDeleteGroup, fetchGetGroupConfigList, fetchUpdateGroupStatus } fro
import { $t } from '@/locales';
import { useAppStore } from '@/store/modules/app';
import { useTable, useTableOperate } from '@/hooks/common/table';
import { groupConfigIdModeRecord, yesOrNoRecord } from '@/constants/business';
import { yesOrNoRecord } from '@/constants/business';
import { tagColor } from '@/utils/common';
import StatusSwitch from '@/components/common/status-switch.vue';
import { useAuth } from '@/hooks/business/auth';
@ -40,8 +40,8 @@ const { columns, columnChecks, data, getData, loading, mobilePagination, searchP
{
key: 'groupName',
title: $t('page.groupConfig.groupName'),
align: 'left',
minWidth: 260,
align: 'center',
minWidth: 100,
render: row => {
function showDetailDrawer() {
detailData.value = row || null;
@ -59,7 +59,7 @@ const { columns, columnChecks, data, getData, loading, mobilePagination, searchP
key: 'groupStatus',
title: $t('page.groupConfig.groupStatus'),
align: 'center',
width: 80,
width: 120,
render: row => {
const fetchFn = async (groupStatus: Api.Common.EnableStatusNumber, callback: (flag: boolean) => void) => {
const status = row.groupStatus === 1 ? 0 : 1;
@ -75,32 +75,11 @@ const { columns, columnChecks, data, getData, loading, mobilePagination, searchP
);
}
},
{
key: 'idGeneratorMode',
title: $t('page.groupConfig.idGeneratorMode'),
align: 'center',
width: 120,
render: row => {
if (row.idGeneratorMode === null) {
return null;
}
const label = $t(groupConfigIdModeRecord[row.idGeneratorMode!]);
return <NTag type="primary">{label}</NTag>;
}
},
{
key: 'groupPartition',
title: $t('page.groupConfig.groupPartition'),
align: 'center',
minWidth: 60
},
{
key: 'initScene',
title: $t('page.groupConfig.initScene'),
align: 'center',
minWidth: 80,
minWidth: 120,
render: row => {
if (row.groupStatus === null) {
return null;
@ -114,20 +93,20 @@ const { columns, columnChecks, data, getData, loading, mobilePagination, searchP
{
key: 'updateDt',
title: $t('page.groupConfig.updateDt'),
align: 'left',
width: 130
align: 'center',
width: 120
},
{
key: 'description',
title: $t('page.groupConfig.description'),
align: 'left',
width: 130
align: 'center',
width: 250
},
{
key: 'operate',
title: $t('common.operate'),
align: 'center',
width: 130,
width: 120,
render: row => {
if (hasAuth('R_USER')) {
return <></>;

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { groupConfigIdModeRecord, groupConfigStatusRecord, yesOrNoRecord } from '@/constants/business';
import { groupConfigStatusRecord, yesOrNoRecord } from '@/constants/business';
import { $t } from '@/locales';
import { tagColor } from '@/utils/common';
@ -21,27 +21,19 @@ const visible = defineModel<boolean>('visible', {
<template>
<OperateDrawer v-model="visible" :title="$t('page.groupConfig.detail')">
<NDescriptions label-placement="top" bordered :column="2">
<NDescriptionsItem :label="$t('page.groupConfig.groupName')" :span="2">
<NDescriptions label-placement="top" bordered :column="1">
<NDescriptionsItem :label="$t('page.groupConfig.groupName')" :span="1">
{{ rowData?.groupName }}
</NDescriptionsItem>
<NDescriptionsItem :label="$t('page.groupConfig.token')" :span="2">{{ rowData?.token }}</NDescriptionsItem>
<NDescriptionsItem :label="$t('page.groupConfig.token')" :span="1">{{ rowData?.token }}</NDescriptionsItem>
<NDescriptionsItem :label="$t('page.groupConfig.groupStatus')" :span="1">
<NTag :type="tagColor(rowData?.groupStatus!)">{{ $t(groupConfigStatusRecord[rowData?.groupStatus!]) }}</NTag>
</NDescriptionsItem>
<NDescriptionsItem :label="$t('page.groupConfig.idGeneratorMode')" :span="1">
<NTag :type="tagColor(rowData?.idGeneratorMode!)">
{{ $t(groupConfigIdModeRecord[rowData?.idGeneratorMode!]) }}
</NTag>
</NDescriptionsItem>
<NDescriptionsItem :label="$t('page.groupConfig.groupPartition')" :span="1">
{{ rowData?.groupPartition }}
</NDescriptionsItem>
<NDescriptionsItem :label="$t('page.groupConfig.initScene')" :span="1">
<NTag :type="tagColor(rowData?.initScene!)">{{ $t(yesOrNoRecord[rowData?.initScene!]) }}</NTag>
</NDescriptionsItem>
<NDescriptionsItem :label="$t('page.groupConfig.description')" :span="2">
<NDescriptionsItem :label="$t('page.groupConfig.description')" :span="1">
{{ rowData?.description }}
</NDescriptionsItem>
</NDescriptions>