From d4afc7562a9e2eab52e552834dd7c4c653da6c01 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期二, 11 二月 2025 18:04:32 +0800
Subject: [PATCH] feat: 任务详情

---
 apps/cMiniApp/src/pages/home/index.vue |   48 ++++++++++++++++++++++++++++++------------------
 1 files changed, 30 insertions(+), 18 deletions(-)

diff --git a/apps/cMiniApp/src/pages/home/index.vue b/apps/cMiniApp/src/pages/home/index.vue
index 62093b5..d6483eb 100644
--- a/apps/cMiniApp/src/pages/home/index.vue
+++ b/apps/cMiniApp/src/pages/home/index.vue
@@ -8,7 +8,12 @@
     <div class="home-header">
       <div class="home-searchbar-wrapper">
         <div class="searchbar-container">
-          <BlSearchbar v-model.trim="searchValue" placeholder="鎼滅储浠诲姟"></BlSearchbar>
+          <BlSearchbar
+            v-model.trim="searchValue"
+            placeholder="鎼滅储浠诲姟"
+            @search="handleSearch"
+            @change="handleSearch"
+          ></BlSearchbar>
         </div>
         <div class="city-btn" @click="goCitySelect">
           <Location2 :size="16" />
@@ -27,24 +32,22 @@
       v-model="queryState.orderType"
       name="home-tab"
       :showPaneContent="false"
+      :showSmile="false"
       class="home-tabs"
       isTransparent
-      title-gutter="12"
+      title-gutter="8"
       title-scroll
     >
       <ProTabPane :title="`鎺ㄨ崘`" :pane-key="HomeOrderType.Recommend"></ProTabPane>
       <ProTabPane :title="`鏈�鏂癭" :pane-key="HomeOrderType.LastShelfTime"></ProTabPane>
       <template #right>
         <Menu>
-          <MenuItem
-            v-model="queryState.orderByProperty"
-            title="绛涢��"
-            ref="selectItem"
-            :options="[
-              { text: '鎺掑簭', value: 'userId' },
-              { text: '鎸夊叧娉ㄦ椂闂�', value: 'creationTime' },
-            ]"
-          />
+          <MenuItem title="绛涢��" ref="selectItem">
+            <HomeQueryMenuView
+              v-model:gender="queryState.gender"
+              @close="handleMenuSelectClose"
+            ></HomeQueryMenuView>
+          </MenuItem>
         </Menu>
       </template>
     </ProTabs>
@@ -54,7 +57,7 @@
       :key="queryState.orderType"
     >
       <template #renderItem="{ item }">
-        <TaskCard />
+        <TaskCard @click="goTaskDetail(item)" />
       </template>
     </InfiniteLoading>
   </PageLayoutWithBg>
@@ -69,23 +72,20 @@
 import _ from 'lodash';
 import IconLogo from '@/assets/home/icon-logo.png';
 import { useInfiniteLoading } from '@12333/hooks';
-import { OrderInputType } from '@12333/constants';
+import { OrderInputType, Gender } from '@12333/constants';
 import * as orderServices from '@12333/services/api/Order';
 import { TaskCard, ProTabs, ProTabPane } from '@12333/components';
 import { HomeOrderType } from './constants';
+import HomeQueryMenuView from './HomeQueryMenuView.vue';
 
 const { locationCity } = useUser();
-
-Taro.usePageScroll(() => {
-  console.log('11', 11);
-});
 
 const searchValue = ref('');
 
 const queryState = reactive({
   searchValueTrim: '',
   orderType: HomeOrderType.Recommend,
-  orderByProperty: 'userId',
+  gender: '' as any as Gender,
 });
 
 const handleSearch = _.debounce(function () {
@@ -129,6 +129,18 @@
     queryKey: ['orderServices/getFrontOrderList', queryState],
   }
 );
+
+const selectItem = ref();
+
+function handleMenuSelectClose() {
+  selectItem.value?.toggle?.();
+}
+
+function goTaskDetail(item: API.FrontOrderList) {
+  Taro.navigateTo({
+    url: `${RouterPath.taskDetail}?id=${item.id}`,
+  });
+}
 </script>
 
 <style lang="scss">

--
Gitblit v1.9.1