From a441299ebbfca9567ced69f669f68569b6f7ca0c Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期五, 12 十二月 2025 09:31:42 +0800
Subject: [PATCH] fix: 修改数据看板

---
 src/views/DataBoard/hooks/index.ts |  139 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 137 insertions(+), 2 deletions(-)

diff --git a/src/views/DataBoard/hooks/index.ts b/src/views/DataBoard/hooks/index.ts
index e4853ae..cd7cb22 100644
--- a/src/views/DataBoard/hooks/index.ts
+++ b/src/views/DataBoard/hooks/index.ts
@@ -1,6 +1,7 @@
 import { useQuery } from '@tanstack/vue-query';
 import { useIntervalFn } from '@vueuse/core';
 import * as dataBoardServices from '@/services/api/DataBoard';
+import { StringUtils } from '@/utils';
 
 export function useIntervalValue<T>(initValue: T) {
   const value = ref(initValue);
@@ -11,7 +12,7 @@
     setTimeout(() => {
       value.value = preValue.value;
     }, 500);
-  }, 10000);
+  }, 30000);
 
   function changeValue(_value: T) {
     value.value = _value;
@@ -157,7 +158,7 @@
 
   const bountyUseAmountRankList = computed(() =>
     detail.value.items?.map((x) => ({
-      name: x.enterpriseName,
+      name: StringUtils.maskString({ str: x.enterpriseName }),
       value: x.amount,
     }))
   );
@@ -195,3 +196,137 @@
     insurePeopleCountRankList,
   };
 }
+
+type UseDataBoardOverviewByParkV2 = {
+  industrialParkId: MaybeRef<string>;
+  onSuccess?: (data: API.GetDataBoardOverviewByParkV2Output) => void;
+};
+
+export function useGetDataBoardOverviewByParkV2(options: UseDataBoardOverviewByParkV2) {
+  const { industrialParkId, onSuccess } = options;
+  const {
+    data: detail,
+    isLoading,
+    refetch,
+  } = useQuery({
+    queryKey: ['dataBoardServices/getDataBoardOverviewByParkV2', industrialParkId],
+    queryFn: async () => {
+      let params: API.APIgetDataBoardOverviewByParkV2Params = {};
+      if (!!unref(industrialParkId)) {
+        params.industrialParkId = unref(industrialParkId);
+      }
+      return await dataBoardServices.getDataBoardOverviewByParkV2(params, {
+        showLoading: false,
+      });
+    },
+    placeholderData: () => ({} as API.GetDataBoardOverviewByParkV2Output),
+    onSuccess: (data) => {
+      onSuccess?.(data);
+    },
+  });
+
+  return {
+    detail,
+    refetch,
+  };
+}
+
+type UseWanUnitOptions = {
+  wanUnit: boolean;
+};
+
+export function useGetDataBoardLastQuarterOutputValueCount(options: UseWanUnitOptions) {
+  const { wanUnit } = options;
+
+  const { data: detail, isLoading } = useQuery({
+    queryKey: ['dataBoardServices/getDataBoardLastQuarterOutputValueCount', wanUnit],
+    queryFn: async () => {
+      return await dataBoardServices.getDataBoardLastQuarterOutputValueCount(
+        { wanUnit: wanUnit },
+        {
+          showLoading: false,
+        }
+      );
+    },
+    placeholderData: () => ({} as API.GetDataBoardLastQuarterOutputValueCountOutput),
+  });
+
+  return {
+    detail,
+  };
+}
+
+export function useGetDataBoardLastQuarterEnterpriseClientUserCount() {
+  const { data: detail, isLoading } = useQuery({
+    queryKey: ['dataBoardServices/getDataBoardLastQuarterEnterpriseClientUserCount'],
+    queryFn: async () => {
+      return await dataBoardServices.getDataBoardLastQuarterEnterpriseClientUserCount(
+        {},
+        {
+          showLoading: false,
+        }
+      );
+    },
+    placeholderData: () => ({} as API.GetDataBoardLastQuarterEnterpriseClientUserCountOutput),
+  });
+
+  return {
+    detail,
+  };
+}
+
+export function useGetDataBoardOutputValueRank(options: UseGetDataBoardBountyUseAmountRankOptions) {
+  const { take } = options;
+  const { data: detail, isLoading } = useQuery({
+    queryKey: ['dataBoardServices/getDataBoardOutputValueRank', take],
+    queryFn: async () => {
+      return await dataBoardServices.getDataBoardOutputValueRank(
+        { take: take },
+        {
+          showLoading: false,
+        }
+      );
+    },
+    placeholderData: () => ({} as API.GetDataBoardOutputValueRankOutput),
+  });
+
+  const dataBoardOutputValueRankList = computed(() =>
+    detail.value.items?.map((x) => ({
+      name: StringUtils.maskString({ str: x.enterpriseName }),
+      value: x.outputValue,
+    }))
+  );
+
+  return {
+    dataBoardOutputValueRankList,
+  };
+}
+
+export function useGetDataBoardEnterpriseClientUserRank(
+  options: UseGetDataBoardBountyUseAmountRankOptions
+) {
+  const { take } = options;
+  const { data: detail, isLoading } = useQuery({
+    queryKey: ['dataBoardServices/getDataBoardEnterpriseClientUserRank', take],
+    queryFn: async () => {
+      return await dataBoardServices.getDataBoardEnterpriseClientUserRank(
+        { take: take },
+        {
+          showLoading: false,
+        }
+      );
+    },
+    placeholderData: () => ({} as API.GetDataBoardEnterpriseClientUserRankOutput),
+  });
+
+  const enterpriseClientUserRankList = computed(() =>
+    detail.value.items?.map((x) => ({
+      name: StringUtils.maskString({ str: x.enterpriseName }),
+      value: x.count,
+    }))
+  );
+
+  return {
+    enterpriseClientUserRankList,
+  };
+}

--
Gitblit v1.9.1