| | |
| | | |
| | | import { Page, useVbenModal } from '@vben/common-ui'; |
| | | import { MesQcStatusEnum, MesQcTypeEnum } from '@vben/constants'; |
| | | import { downloadFileFromBlobPart } from '@vben/utils'; |
| | | |
| | | import { Button, message } from 'ant-design-vue'; |
| | | |
| | | import { ACTION_ICON, TableAction, useVbenVxeGrid } from '#/adapter/vxe-table'; |
| | | import { exportProductWord } from '#/api/mes/qc/indicatorresult'; |
| | | import { deleteRqc, exportRqc, getRqcPage } from '#/api/mes/qc/rqc'; |
| | | import { $t } from '#/locales'; |
| | | import QcExportRangeModal from '#/views/mes/qc/components/export-range-modal.vue'; |
| | |
| | | /** 打印检验报告 */ |
| | | async function handlePrint(row: MesQcRqcApi.Rqc) { |
| | | await printRef.value?.print(row.id!, MesQcTypeEnum.RQC); |
| | | } |
| | | |
| | | /** 导出产品检验单 Word(纸质检验单版式,判定结论带出检验结果) */ |
| | | async function handleExportProductWord(row: MesQcRqcApi.Rqc) { |
| | | const blob = await exportProductWord(row.id!, MesQcTypeEnum.RQC); |
| | | downloadFileFromBlobPart({ |
| | | fileName: `产品检验单-${row.code ?? row.id}.docx`, |
| | | source: blob, |
| | | }); |
| | | } |
| | | |
| | | /** 创建退货检验单 */ |
| | |
| | | onClick: handlePrint.bind(null, row), |
| | | }, |
| | | { |
| | | label: '导出产品检验单', |
| | | type: 'link', |
| | | icon: 'ant-design:file-word-outlined', |
| | | auth: ['mes:qc-rqc:query'], |
| | | onClick: handleExportProductWord.bind(null, row), |
| | | }, |
| | | { |
| | | label: $t('common.detail'), |
| | | type: 'link', |
| | | icon: ACTION_ICON.VIEW, |