From 2b7fccce78fe4d57d73f4cf350cbe16b75a72fd4 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期五, 08 八月 2025 14:34:36 +0800
Subject: [PATCH] fix: 任务详情

---
 apps/cMiniApp/src/hooks/task.ts |   50 ++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 36 insertions(+), 14 deletions(-)

diff --git a/apps/cMiniApp/src/hooks/task.ts b/apps/cMiniApp/src/hooks/task.ts
index 38b1733..bdb6b3a 100644
--- a/apps/cMiniApp/src/hooks/task.ts
+++ b/apps/cMiniApp/src/hooks/task.ts
@@ -1,26 +1,41 @@
 import { useInfiniteLoading } from '@12333/hooks';
-import { OrderInputType, Gender } from '@12333/constants';
-import * as orderServices from '@12333/services/api/Order';
+import {
+  EnumPagedListOrder,
+  EnumSettlementCycle,
+  EnumTaskRecommendStatus,
+  EnumTaskReleaseStatus,
+  EnumTaskStatus,
+  EnumUserGender,
+} from '@12333/constants';
 import _ from 'lodash';
 import { trim } from '@12333/utils';
+import { MaybeRef } from 'vue';
+import * as taskServices from '@12333/services/apiV2/task';
 
 export enum HomeOrderType {
   Recommend = 'Recommend',
   LastShelfTime = 'LastShelfTime',
 }
 
-export function useTaskList() {
+type UseTaskListOptions = {
+  cityName?: MaybeRef<string>;
+};
+
+export function useTaskList(options: UseTaskListOptions = {}) {
+  const { cityName = '' } = options;
+
   const searchValue = ref('');
 
-  const DefaultQueryState = {
-    gender: '' as any as Gender,
-  };
+  const queryMenuState = reactive({
+    genderLimit: '' as any as EnumUserGender,
+    settlementCycle: '' as any as EnumSettlementCycle,
+    benefitCodes: '',
+    status: '' as any as EnumTaskStatus,
+  });
 
   const queryState = reactive({
     searchValueTrim: '',
     orderType: HomeOrderType.Recommend,
-    companyId: '',
-    ...DefaultQueryState,
   });
 
   const handleSearch = _.debounce(function () {
@@ -29,31 +44,38 @@
 
   const { infiniteLoadingProps } = useInfiniteLoading(
     ({ pageParam }) => {
-      let params: API.FrontOrderListInput = {
+      let params: API.GetTaskInfosQuery = {
         pageModel: {
           rows: 20,
           page: pageParam,
           orderInput: [
             queryState.orderType === HomeOrderType.Recommend
-              ? { property: 'isRecommend', order: OrderInputType.Desc }
-              : { property: 'lastShelfTime', order: OrderInputType.Desc },
+              ? { property: 'recommendStatus', order: EnumPagedListOrder.Desc }
+              : { property: 'createdTime', order: EnumPagedListOrder.Desc },
           ],
         },
+        keywords: queryState.searchValueTrim,
+        // cityCode: 'string',
+        settlementCycle: queryMenuState.settlementCycle,
+        benefitCodes: [queryMenuState.benefitCodes].filter(Boolean),
+        genderLimit: queryMenuState.genderLimit,
+        status: queryMenuState.status,
+        releaseStatus: EnumTaskReleaseStatus.InProcess,
       };
 
-      return orderServices.getFrontOrderList(params, {
+      return taskServices.getTaskInfos(params, {
         showLoading: false,
       });
     },
     {
-      queryKey: ['orderServices/getFrontOrderList', queryState],
+      queryKey: ['taskServices/getTaskInfos', queryState, queryMenuState, cityName],
     }
   );
 
   return {
     searchValue,
     queryState,
-    DefaultQueryState,
+    queryMenuState,
     handleSearch,
     infiniteLoadingProps,
   };

--
Gitblit v1.9.1