|  |  |  | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template #code="{ row }"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | v-if="row.status === EnumContractTemplateStatus.Completed" | 
|---|
|  |  |  | v-if="row.status === EnumContractTemplateStatus.Completed && !!row.wxmpQrCode" | 
|---|
|  |  |  | link | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | @click="handlePreviewQrcode(row)" | 
|---|
|  |  |  | 
|---|
|  |  |  | </ProTableV2> | 
|---|
|  |  |  | </AppContainer> | 
|---|
|  |  |  | <TemplateAddDialog v-bind="dialogProps"></TemplateAddDialog> | 
|---|
|  |  |  | <QrcodeDialog v-bind="dialogQrcodeProps"></QrcodeDialog> | 
|---|
|  |  |  | <QrcodeDialog v-bind="dialogQrcodeProps" :useQrcode="false"></QrcodeDialog> | 
|---|
|  |  |  | </LoadingLayout> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | } from '@bole-core/components'; | 
|---|
|  |  |  | import { AgreementbManageColumns } from './constants'; | 
|---|
|  |  |  | import { EnumContractTemplateStatus, EnumContractTemplateStatusText } from '@/constants'; | 
|---|
|  |  |  | import { downloadFileByUrl, format, setOSSLink } from '@/utils'; | 
|---|
|  |  |  | import { convertPdfToImage, downloadFileByUrl, format, setOSSLink } from '@/utils'; | 
|---|
|  |  |  | import { ModelValueType } from 'element-plus'; | 
|---|
|  |  |  | import * as electronSignServices from '@/services/api/electronSign'; | 
|---|
|  |  |  | import TemplateAddDialog from './components/TemplateAddDialog.vue'; | 
|---|
|  |  |  | 
|---|
|  |  |  | createdTime: { type: 'date' }, | 
|---|
|  |  |  | completedTime: { type: 'date' }, | 
|---|
|  |  |  | status: { type: 'enum', valueEnum: EnumContractTemplateStatusText }, | 
|---|
|  |  |  | isAutoSign: { | 
|---|
|  |  |  | formatter: (row: API.GetEnterpriseContractTemplatesQueryResultItem) => | 
|---|
|  |  |  | row.isAutoSign ? '是' : '否', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | async function handleAddOrEdit() { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | let pdfToImage = await convertPdfToImage(editForm.url?.[0].url); | 
|---|
|  |  |  | let params: API.SaveContractTemplateCommand = { | 
|---|
|  |  |  | name: editForm.name, | 
|---|
|  |  |  | file: editForm.url[0]?.path ?? '', | 
|---|
|  |  |  | templateEditData: JSON.stringify( | 
|---|
|  |  |  | pdfToImage.map( | 
|---|
|  |  |  | (x) => | 
|---|
|  |  |  | ({ | 
|---|
|  |  |  | path: x.path, | 
|---|
|  |  |  | width: x.width, | 
|---|
|  |  |  | height: x.height, | 
|---|
|  |  |  | } as TemplateEditDataItem) | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | ), | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | let res = await electronSignServices.saveContractTemplate(params); | 
|---|
|  |  |  | if (res) { | 
|---|
|  |  |  | 
|---|
|  |  |  | function handlePreviewQrcode(row: API.GetEnterpriseContractTemplatesQueryResultItem) { | 
|---|
|  |  |  | handleEdit({ | 
|---|
|  |  |  | // qrcodeUrl: setOSSLink(row.file), | 
|---|
|  |  |  | qrcodeUrl: 'https://www.baidu.com', | 
|---|
|  |  |  | qrcodeUrl: setOSSLink(row.wxmpQrCode), | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </script> | 
|---|