From d54c9c48c0b4f7c609e0aa65671a6c3fd26f94b4 Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期五, 04 七月 2025 13:19:29 +0800 Subject: [PATCH] fix: 江佑保系统健壮性修复 --- src/hooks/dic.ts | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 53 insertions(+), 0 deletions(-) diff --git a/src/hooks/dic.ts b/src/hooks/dic.ts index ce60fd7..7c5ab3e 100644 --- a/src/hooks/dic.ts +++ b/src/hooks/dic.ts @@ -27,8 +27,61 @@ placeholderData: () => [] as API.InsureProductSettingDto[], }); + function getInsureProductByIdNumber(productIdNumber: string) { + return allUserInsureProductSettingList.value.find((x) => x.productIdNumber === productIdNumber); + } + + function getInsureProductIdByIdNumber(productIdNumber: string) { + const insureProduct = getInsureProductByIdNumber(productIdNumber); + return insureProduct?.id ?? ''; + } + + const queryClient = useQueryClient(); + + function ensureUserInsureProductSetting() { + return queryClient.ensureQueryData<API.InsureProductSettingDto[]>({ + queryKey: ['dictionaryServices/getUserInsureProductSetting'], + }); + } + + /**鏄惁鏄敓鐓庝繚璐﹀彿 */ + const isSjbAccount = computed(() => allUserInsureProductSettingList.value.length > 0); + return { allUserInsureProductSettingList, + getInsureProductByIdNumber, + getInsureProductIdByIdNumber, + refetch, + ensureUserInsureProductSetting, + isSjbAccount, + }; +} + +type UseInsureProductSchemeAllListOptions = { + insureProductId?: MaybeRef<string>; +}; + +export function useInsureProductSchemeAllList(options: UseInsureProductSchemeAllListOptions = {}) { + const { insureProductId } = options; + + const { data: allInsureProductSchemeList, refetch } = useQuery({ + queryKey: ['dictionaryServices/getInsureProductSchemeAllList', insureProductId], + queryFn: async () => { + let res = await dictionaryServices.getInsureProductSchemeAllList( + { + insureProductId: unref(insureProductId), + }, + { showLoading: false } + ); + return res; + }, + placeholderData: () => [] as API.InsureProductSchemeDto[], + enabled: computed(() => !!unref(insureProductId)), + staleTime: Infinity, + }); + + return { + allInsureProductSchemeList, refetch, }; } -- Gitblit v1.9.1