From bf2a0dc5dade6614ce6d403bc90a833408047797 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期三, 22 十月 2025 22:07:03 +0800
Subject: [PATCH] fix: bug

---
 packages/hooks/task.ts |   55 +++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 49 insertions(+), 6 deletions(-)

diff --git a/packages/hooks/task.ts b/packages/hooks/task.ts
index 474681a..4f9edb4 100644
--- a/packages/hooks/task.ts
+++ b/packages/hooks/task.ts
@@ -1,5 +1,7 @@
 import { useInfiniteLoading } from '@12333/hooks';
+import { useQuery, useQueryClient } from '@tanstack/vue-query';
 import {
+  EnumEnterpriseWalletAccessTextForSettle,
   EnumPagedListOrder,
   EnumSettlementCycle,
   EnumTaskCheckReceiveStatus,
@@ -7,11 +9,13 @@
   EnumTaskReleaseStatus,
   EnumTaskStatus,
   EnumUserGender,
+  EnumTaskUserApplyStatus,
 } from '@12333/constants';
 import _ from 'lodash';
 import { trim } from '@12333/utils';
-import { MaybeRef, reactive, ref, unref } from 'vue';
+import { computed, MaybeRef, reactive, ref, unref } from 'vue';
 import * as taskServices from '@12333/services/apiV2/task';
+import * as enterpriseWalletServices from '@12333/services/apiV2/enterpriseWallet';
 import dayjs from 'dayjs';
 import * as taskCheckReceiveServices from '@12333/services/apiV2/taskCheckReceive';
 
@@ -34,13 +38,15 @@
     enterpriseId?: string;
     time?: Date;
   };
+
+  beforeRequest?: (params: API.GetTaskInfosQuery) => API.GetTaskInfosQuery;
 };
 
 /**
  * @description 浠匔绔娇鐢�
  */
 export function useTaskList(options: UseTaskListOptions = {}) {
-  const { cityCode = '', enabled = true, defaultQueryMenuState = {} } = options;
+  const { cityCode = '', enabled = true, defaultQueryMenuState = {}, beforeRequest } = options;
 
   const searchValue = ref('');
 
@@ -53,6 +59,7 @@
     checkReceiveStatus: '' as any as EnumTaskCheckReceiveStatus,
     enterpriseId: '',
     time: '' as any as Date,
+    applyStatus: '' as any as EnumTaskUserApplyStatus,
     ...defaultQueryMenuState,
   });
 
@@ -72,10 +79,13 @@
           rows: 20,
           page: pageParam,
           orderInput: [
-            queryState.orderType === HomeOrderType.Recommend
-              ? { property: 'recommendStatus', order: EnumPagedListOrder.Desc }
-              : { property: 'createdTime', order: EnumPagedListOrder.Desc },
-          ],
+            { property: 'releaseStatus', order: EnumPagedListOrder.Asc },
+            queryState.orderType === HomeOrderType.Recommend && {
+              property: 'recommendTime',
+              order: EnumPagedListOrder.Desc,
+            },
+            { property: 'createdTime', order: EnumPagedListOrder.Desc },
+          ].filter(Boolean),
         },
         keywords: queryState.searchValueTrim,
         cityCode: unref(cityCode),
@@ -92,7 +102,12 @@
         endTime: queryMenuState.time
           ? dayjs(queryMenuState.time).format('YYYY-MM-DD 23:59:59')
           : '',
+        applyStatus: queryMenuState.applyStatus,
       };
+
+      if (beforeRequest) {
+        params = beforeRequest(params);
+      }
 
       return taskServices.getOpenTaskInfos(params, {
         showLoading: false,
@@ -177,3 +192,31 @@
     infiniteLoadingProps,
   };
 }
+
+export function useEnterpriseWalletAccessSelect() {
+  const { data } = useQuery({
+    queryKey: ['enterpriseWalletServices/getEnterpriseWalletAccessSelect'],
+    queryFn: () => {
+      return enterpriseWalletServices.getEnterpriseWalletAccessSelect(
+        {},
+        {
+          showLoading: false,
+        }
+      );
+    },
+    placeholderData: () => [] as API.SelectOptionGuidGetEnterpriseWalletAccessSelectQueryOption[],
+  });
+
+  const enterpriseWalletAccessSelect = computed(() => data.value?.map((x) => x.data));
+
+  const settlementAccessList = computed(() => {
+    return enterpriseWalletAccessSelect.value?.length > 0
+      ? enterpriseWalletAccessSelect.value.map((x) => ({
+          label: EnumEnterpriseWalletAccessTextForSettle[x.access],
+          value: x.access,
+        }))
+      : [];
+  });
+
+  return { settlementAccessList };
+}

--
Gitblit v1.9.1