云
2026-09-29 06f814c1275892783291d4b26b3271d5c2b33ffb
src/views/research/application/index.vue
@@ -12,6 +12,7 @@
import { ACTION_ICON, TableAction, useVbenVxeGrid } from '#/adapter/vxe-table';
import {
  archiveApplication,
  deleteApplication,
  getApplicationApproveProcessList,
  getApplicationPage,
@@ -142,6 +143,18 @@
    name: 'BpmProcessInstanceDetail',
    query: { id: row.processInstanceId },
  });
}
/** 归档到档案管理(仅已立项可归档) */
async function handleArchive(row: ResearchApplicationApi.Application) {
  const hideLoading = message.loading({ content: '归档中...', duration: 0 });
  try {
    const archiveNo = await archiveApplication(row.id!);
    message.success(`归档成功,已生成档案 ${archiveNo}`);
    handleRefresh();
  } finally {
    hideLoading();
  }
}
const checkedIds = ref<number[]>([]);
@@ -284,6 +297,19 @@
              onClick: handlePublishNotice.bind(null, row),
            },
            {
              label: '归档',
              type: 'link',
              icon: ACTION_ICON.UPLOAD,
              auth: ['research:application:archive'],
              ifShow: () =>
                row.status === ApplicationStatus.APPROVED &&
                !row.archiveDocumentId,
              popConfirm: {
                title: `确认归档课题 ${row.researchNo || row.no} 吗?归档后将在档案管理生成对应档案`,
                confirm: handleArchive.bind(null, row),
              },
            },
            {
              label: '查看审批',
              type: 'link',
              icon: ACTION_ICON.VIEW,