zhengyiming
18 小时以前 5cf7fd6bf3ca6e174b603c3591a3fbf699ddf976
src/views/Home/InsurancePolicyStampFiles.vue
@@ -22,10 +22,11 @@
  ProTableV2Props,
  defineOperationBtns,
} from '@bole-core/components';
import { useAccess, useInsurancePolicyPay } from '@/hooks';
import { useAccess, useDownloadPolicyFileId, useInsurancePolicyPay } from '@/hooks';
import { paginateList, downloadFileByUrl, setOSSLink, downloadFile } from '@/utils';
import { InsurancePolicyStampFilesColumns } from './constants';
import * as insuranceOrderServices from '@/services/api/InsuranceOrder';
import { InsurancePolicyPayStatusEnum } from '@/constants';
defineOptions({
  name: 'InsurancePolicyStampFiles',
@@ -39,7 +40,8 @@
    },
    emits: { onClick: (role) => handleDownload(role) },
    extraProps: {
      hide: (row: API.InsurancePolicyPayDto) => !row.policyOssUrl,
      hide: (row: API.InsurancePolicyPayDto) =>
        row.status !== InsurancePolicyPayStatusEnum.CompletePay,
    },
  },
]);
@@ -53,16 +55,5 @@
  sumSignPremium: { type: 'money' },
};
async function handleDownload(row: API.InsurancePolicyPayDto) {
  try {
    if (row.policyOssUrl) {
      downloadFileByUrl(setOSSLink(row.policyOssUrl), `保单_${row.channelOrderNo}`);
    } else {
      let res = await insuranceOrderServices.downloadPolicyFileId({ id: row.id });
      if (res) {
        window.open(res, '_blank');
      }
    }
  } catch (error) {}
}
const { handleDownload } = useDownloadPolicyFileId();
</script>