feat: 问卷分析
Some checks are pending
Gitea Actions Demo / Explore-Gitea-Actions (push) Waiting to run

This commit is contained in:
fyy 2025-08-15 17:23:04 +08:00
parent 2b7b455f40
commit 65b13aced2
2 changed files with 74 additions and 6 deletions

View File

@ -0,0 +1,32 @@
import type { FormSchemaGetter } from "#/adapter/form";
import type { VxeGridProps } from "@vben/plugins/vxe-table";
export const querySchema:FormSchemaGetter=()=>[
{
component:'Input',
fieldName:'',
label:'回复者'
}
];
export const columns:VxeGridProps['columns'] = [
{
title:'序号',
field:'',
width:'auto',
},
{
title:'回复者',
field:'',
},
{
title:'提交时间',
field:''
},
{
title:'操作',
field:'action',
slots:{default:'action'},
}
]

View File

@ -1,8 +1,7 @@
<script lang="ts" setup> <script lang="ts" setup>
import { useVbenModal, type VbenFormProps } from '@vben/common-ui'; import { useVbenModal, type VbenFormProps } from '@vben/common-ui';
import { defaultFormValueGetter, useBeforeCloseDiff } from '#/utils/popup'; import { useVbenVxeGrid, type VxeGridProps } from '#/adapter/vxe-table';
import { useVbenVxeGrid, type VxeGridProps } from '@vben/plugins/vxe-table'; import { querySchema,columns } from './data';
const [BasicModal,modalApi] = useVbenModal({ const [BasicModal,modalApi] = useVbenModal({
fullscreenButton:false, fullscreenButton:false,
@ -24,10 +23,32 @@ const formOptions:VbenFormProps={
allowClear:true, allowClear:true,
} }
}, },
schema:querySchema(),
wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4',
} }
const gridOptions:VxeGridProps={ const gridOptions: VxeGridProps = {
checkboxConfig: {
} //
highlight: true,
//
reserve: true,
//
// trigger: 'row',
},
// 使i18ngetter
// columns: columns(),
columns,
height: 'auto',
keepSource: true,
pagerConfig: {},
rowConfig: {
keyField: 'id',
},
//
id: 'questionnaire-table-modal'
};
const [BasicTable,tableApi] = useVbenVxeGrid({ const [BasicTable,tableApi] = useVbenVxeGrid({
formOptions, formOptions,
gridOptions, gridOptions,
@ -37,9 +58,24 @@ async function handleClose() {
} }
async function handleComfirm() { async function handleComfirm() {
}
async function handleEdit() {
} }
</script> </script>
<template> <template>
<BasicModal> <BasicModal>
<BasicTable table-title="回复列表">
<template #action="{ row }">
<Space>
<ghost-button
v-access:code="['property:attendanceArea:edit']"
@click.stop="handleEdit()"
>
查看
</ghost-button>
</Space>
</template>
</BasicTable>
</BasicModal> </BasicModal>
</template> </template>