更新环境配置,修正服务地址;新增 RWA 产品管理相关组件及功能;优化表格数据展示及状态渲染逻辑

This commit is contained in:
2025-12-22 00:17:52 +07:00
parent 7423d210f4
commit 4c9cf042f0
10 changed files with 250 additions and 27 deletions

View File

@@ -1,8 +1,11 @@
<script lang="ts" setup>
import { useTemplateRef } from 'vue';
import { h, useTemplateRef } from 'vue';
import { useDateFormat } from '@vueuse/core';
import { NDatePicker, useDialog, useMessage } from 'naive-ui';
import { client, safeClient } from '@/service/api';
import type { TableBaseColumns, TableFetchData, TableFilterColumns, TableInst } from '@/components/table';
import { RwaStatusEnum } from '@/enum';
import Add from './components/add.vue';
const dialog = useDialog();
const message = useMessage();
@@ -21,8 +24,10 @@ const fetchData: TableFetchData = ({ pagination, filter }) => {
const columns: TableBaseColumns = [
{
title: 'ID',
key: 'id'
key: 'selection',
title: '序号',
type: 'selection',
width: 60
},
{
title: '产品代码',
@@ -48,12 +53,15 @@ const columns: TableBaseColumns = [
title: '创建时间',
key: 'createdAt',
render: (row: any) => {
return new Date(row.createdAt).toLocaleDateString();
return useDateFormat(row.createdAt, 'YYYY-MM-DD HH:mm').value;
}
},
{
title: '状态',
key: 'status'
key: 'status',
render: row => {
return RwaStatusEnum[row.status as keyof typeof RwaStatusEnum];
}
},
{
title: '描述',
@@ -119,6 +127,25 @@ const filterColumns: TableFilterColumns = [
component: NDatePicker
}
];
function handleAdd() {
const dialogInstance = dialog.create({
title: '添加产品',
content: () =>
h(Add, {
onClose: () => {
dialogInstance.destroy();
tableInst.value?.reload();
}
}),
style: { width: '600px' },
showIcon: false,
onPositiveClick: () => {
message.success('添加成功');
tableInst.value?.reload();
}
});
}
</script>
<template>
@@ -128,6 +155,7 @@ const filterColumns: TableFilterColumns = [
:columns="columns"
:filter-columns="filterColumns"
:fetch-data="fetchData"
@add="handleAdd"
/>
</template>