架构化审批表单控制权限,添加xispeak审批节点的控制权限说明,修改反馈表单查看格式,修改树形表单实现正确的折叠效果,实现反馈表单的必填字段校验
This commit is contained in:
@@ -0,0 +1,100 @@
|
||||
<template>
|
||||
<j-modal
|
||||
:title="title"
|
||||
:width="900"
|
||||
:visible="visible"
|
||||
:okButtonProps="{ class: { 'jee-hidden': true } }"
|
||||
@cancel="handleCancel"
|
||||
cancelText="关闭"
|
||||
>
|
||||
<BasicTable
|
||||
size="small"
|
||||
rowKey="id"
|
||||
:canResize="false"
|
||||
:showIndexColumn="false"
|
||||
:showActionColumn="false"
|
||||
:showTableSetting="false"
|
||||
:clickToRowSelect="false"
|
||||
:columns="columns"
|
||||
:dataSource="feedbackTableData"
|
||||
:loading="loading"
|
||||
:pagination="false"
|
||||
:bordered="false"
|
||||
/>
|
||||
</j-modal>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { ref, computed, defineExpose } from 'vue';
|
||||
import { BasicTable } from '/@/components/Table';
|
||||
import type { BasicColumn } from '/@/components/Table';
|
||||
import JModal from '/@/components/Modal/src/JModal/JModal.vue';
|
||||
import { bgXiSpeakFeedbackList } from '../BgXiSpeak.api';
|
||||
|
||||
const visible = ref(false);
|
||||
const loading = ref(false);
|
||||
const feedbackTableData = ref<Recordable[]>([]);
|
||||
const currentRecord = ref<Recordable>({});
|
||||
|
||||
const columns: BasicColumn[] = [
|
||||
{
|
||||
title: '反馈人',
|
||||
dataIndex: 'responPersonname',
|
||||
align: 'center',
|
||||
width: 100,
|
||||
},
|
||||
{
|
||||
title: '反馈部门',
|
||||
dataIndex: 'responDeptname',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
},
|
||||
{
|
||||
title: '反馈措施',
|
||||
dataIndex: 'method',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
},
|
||||
{
|
||||
title: '完成状态',
|
||||
dataIndex: 'completionStatus_dictText',
|
||||
align: 'center',
|
||||
width: 100,
|
||||
},
|
||||
{
|
||||
title: '成果形式',
|
||||
dataIndex: 'outcomeForm',
|
||||
align: 'center',
|
||||
width: 120,
|
||||
},
|
||||
];
|
||||
|
||||
const title = computed(() => {
|
||||
const count = loading.value ? '加载中' : `${feedbackTableData.value.length} 条`;
|
||||
return `反馈信息(${count})`;
|
||||
});
|
||||
|
||||
async function open(record: Recordable) {
|
||||
currentRecord.value = record;
|
||||
visible.value = true;
|
||||
loading.value = true;
|
||||
try {
|
||||
const res = await bgXiSpeakFeedbackList({
|
||||
mainId: record.id,
|
||||
pageNo: 1,
|
||||
pageSize: 9999,
|
||||
column: 'createTime',
|
||||
order: 'desc',
|
||||
});
|
||||
feedbackTableData.value = Array.isArray(res) ? res : res?.records || [];
|
||||
} finally {
|
||||
loading.value = false;
|
||||
}
|
||||
}
|
||||
|
||||
function handleCancel() {
|
||||
visible.value = false;
|
||||
}
|
||||
|
||||
defineExpose({ open });
|
||||
</script>
|
||||
Reference in New Issue
Block a user