From 65fdfc6dd82f0bcf6c6826fe1ab645b309f6045c Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期四, 23 十月 2025 19:37:06 +0800
Subject: [PATCH] fix: bug
---
src/hooks/insuranceClaim.ts | 72 ++++++++++++++++++++++++++++++++++++
1 files changed, 72 insertions(+), 0 deletions(-)
diff --git a/src/hooks/insuranceClaim.ts b/src/hooks/insuranceClaim.ts
index 1f0aaef..47f22ba 100644
--- a/src/hooks/insuranceClaim.ts
+++ b/src/hooks/insuranceClaim.ts
@@ -1,5 +1,6 @@
import * as insuranceClaimServices from '@/services/api/InsuranceClaim';
import * as insuranceOrderServices from '@/services/api/InsuranceOrder';
+import { downloadFileByUrl, setOSSLink } from '@/utils';
import { useQuery, useQueryClient } from '@tanstack/vue-query';
type UseInsuranceOrderMaterialListOptions = {
@@ -29,3 +30,74 @@
refetch,
};
}
+
+type UseInsurancePolicyPayOptions = {
+ id: MaybeRef<string>;
+};
+
+export function useInsurancePolicyPay({ id }: UseInsurancePolicyPayOptions) {
+ const { data: insurancePolicyPayList, isLoading } = useQuery({
+ queryKey: ['insuranceOrderServices/getInsurancePolicyPay', id],
+ queryFn: async () => {
+ return await insuranceOrderServices.getInsurancePolicyPay({
+ id: unref(id),
+ });
+ },
+ placeholderData: () => [] as API.InsurancePolicyPayDto[],
+ });
+
+ return {
+ insurancePolicyPayList,
+ isLoading,
+ };
+}
+
+export function useInsureActions() {
+ const router = useRouter();
+ async function handleGoDownloadInvoice(id: string) {
+ try {
+ await insuranceOrderServices.getInvoiceId({ id: id });
+ router.push({
+ name: 'InsureDownloadInvoice',
+ params: {
+ id: id,
+ },
+ });
+ } catch (error) {}
+ }
+
+ async function handleGoStampFiles(id: string) {
+ try {
+ router.push({
+ name: 'InsurancePolicyStampFiles',
+ params: {
+ id: id,
+ },
+ });
+ } catch (error) {}
+ }
+
+ return {
+ handleGoDownloadInvoice,
+ handleGoStampFiles,
+ };
+}
+
+export function useDownloadPolicyFileId() {
+ 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) {}
+ }
+
+ return {
+ handleDownload,
+ };
+}
--
Gitblit v1.9.1