From f6d29d197b5e942514d2dd826c121db685c41763 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期三, 22 十月 2025 17:02:21 +0800
Subject: [PATCH] fix: bug

---
 apps/cMiniApp/src/pages/mine/index.vue |   85 ++++++++++++++++++++++++++++++------------
 1 files changed, 60 insertions(+), 25 deletions(-)

diff --git a/apps/cMiniApp/src/pages/mine/index.vue b/apps/cMiniApp/src/pages/mine/index.vue
index ec2ea79..bfa6d83 100644
--- a/apps/cMiniApp/src/pages/mine/index.vue
+++ b/apps/cMiniApp/src/pages/mine/index.vue
@@ -22,20 +22,20 @@
                   <div class="user-info-unCertified">
                     <div
                       class="user-info-unCertified-text"
-                      v-if="userDetail.realStatus === EnumPersonalUserRealStatus.UnReal"
+                      v-if="userDetail?.realStatus === EnumPersonalUserRealStatus.UnReal"
                     >
                       鏈璇�
                     </div>
                     <div class="user-info-unCertified-text" v-else>
                       {{ EnumUserRealMethodText[userDetail?.realMethod]
-                      }}{{ EnumPersonalUserRealStatusText[userDetail.realStatus] }}
+                      }}{{ EnumPersonalUserRealStatusText[userDetail?.realStatus] }}
                     </div>
                     <div
                       class="user-info-unCertified-btn"
                       @click.stop="goAuthentication"
                       v-if="
-                        userDetail.realStatus === EnumPersonalUserRealStatus.UnReal ||
-                        userDetail.realStatus === EnumPersonalUserRealStatus.Fail
+                        userDetail?.realStatus === EnumPersonalUserRealStatus.UnReal ||
+                        userDetail?.realStatus === EnumPersonalUserRealStatus.Fail
                       "
                     >
                       绔嬪嵆璁よ瘉
@@ -44,7 +44,7 @@
                   <!-- <div class="user-info-unCertified" v-else>
                     <img :src="IconAuth" class="user-info-unCertified-icon" />
                     <div class="user-info-unCertified-text">
-                      {{ EnumUserRealMethodText[userDetail?.realMethod] }}{{ EnumPersonalUserRealStatusText[userDetail.realStatus] }}
+                      {{ EnumUserRealMethodText[userDetail?.realMethod] }}{{ EnumPersonalUserRealStatusText[userDetail?.realStatus] }}
                     </div>
                   </div> -->
                 </div>
@@ -57,8 +57,26 @@
     </ContentView>
     <ContentScrollView v-if="isLogin" class="mine-content-scroll-view">
       <List class="mine-list-wrapper mine-balance">
-        <div class="mine-balance-title">鎴戠殑浣欓</div>
-        <div class="mine-balance-money">锟{ toThousand(userDetail?.balance) }}</div>
+        <div class="mine-balance-content">
+          <div class="mine-balance-content-item">
+            <div class="mine-balance-content-item-title">鎴戠殑鏀剁泭</div>
+            <div class="mine-balance-content-item-money income">
+              锟{ toThousand(userDetail?.incomeCount ?? 0) }}
+            </div>
+          </div>
+          <div class="mine-balance-content-item">
+            <div class="mine-balance-content-item-title">寰呯粨绠�</div>
+            <div class="mine-balance-content-item-money settlement">
+              锟{ toThousand(userDetail?.waitSettlement ?? 0) }}
+            </div>
+          </div>
+          <div class="mine-balance-content-item">
+            <div class="mine-balance-content-item-title">宸插彂鏀�</div>
+            <div class="mine-balance-content-item-money withdraw">
+              锟{ toThousand(userDetail?.releaseedCount ?? 0) }}
+            </div>
+          </div>
+        </div>
         <div class="mine-balance-btn" @click="goMineWallet">
           杩涘叆鎴戠殑閽卞寘
           <img :src="IconArrow" class="mine-balance-btn-icon" />
@@ -77,9 +95,27 @@
             @click="goMineSign"
           >
             <img :src="IconOrderSign" class="mine-order-list-icon" />
-            <div class="mine-order-list-text">鎴戠殑鎶ュ悕</div>
+            <div class="mine-order-list-text">宸叉姤鍚�</div>
           </nut-badge>
           <nut-badge
+            class="mine-order-list-item"
+            top="8"
+            :value="userDetail?.arrangeCompleteTaskCount ?? 0"
+            @click="goMineHire"
+          >
+            <img :src="IconOrderHire" class="mine-order-list-icon" />
+            <div class="mine-order-list-text">宸插畨鎺�</div>
+          </nut-badge>
+          <nut-badge
+            class="mine-order-list-item"
+            top="8"
+            :value="userDetail?.hirePassTaskCount ?? 0"
+            @click="goMineHired"
+          >
+            <img :src="IconOrderHire" class="mine-order-list-icon" />
+            <div class="mine-order-list-text">宸插綍鐢�</div>
+          </nut-badge>
+          <!-- <nut-badge
             class="mine-order-list-item"
             top="8"
             :value="userDetail?.hirePassTaskCount ?? 0"
@@ -96,7 +132,7 @@
           >
             <img :src="IconOrderCancel" class="mine-order-list-icon" />
             <div class="mine-order-list-text">宸插彇娑�</div>
-          </nut-badge>
+          </nut-badge> -->
         </div>
       </List>
       <List class="mine-list-wrapper mine-setting-list">
@@ -133,6 +169,7 @@
 import PageLayoutWithBg from '@/components/Layout/PageLayoutWithBg.vue';
 import { toThousand } from '@12333/utils';
 import { useIntervalFn } from 'senin-mini/hooks';
+import { useQuery } from '@tanstack/vue-query';
 
 const { userDetail, isCertified, updateUserInfo } = useUser();
 const isLogin = useIsLogin();
@@ -140,24 +177,19 @@
 const { goLoginFn } = useGoLogin();
 const bgHeight = computed(() => 133 + systemStore.navHeight);
 
-const { stop, start } = useIntervalFn(updateUserInfo, 5000, {
-  immediate: false,
-});
-Taro.useDidShow(({ scene }) => {
-  if (isLogin.value) {
-    updateUserInfo();
-    if (userDetail.value?.realStatus === EnumPersonalUserRealStatus.Checking) {
-      start();
-    } else {
-      stop();
-    }
-  } else {
-    stop();
-  }
+useQuery({
+  queryKey: ['updateUserInfo'],
+  queryFn: () => {},
+  enabled: computed(
+    () => isLogin.value && userDetail.value?.realStatus === EnumPersonalUserRealStatus.Checking
+  ),
+  refetchInterval: 5000,
 });
 
-Taro.useDidHide(() => {
-  stop();
+Taro.useDidShow(() => {
+  if (isLogin.value) {
+    updateUserInfo();
+  }
 });
 
 function goLogin() {
@@ -200,6 +232,9 @@
 function goMineCancel() {
   goPage(RouterPath.mineCancel);
 }
+function goMineHired() {
+  goPage(RouterPath.mineHired);
+}
 function goMineCollectTask() {
   goPage(RouterPath.mineCollectTask);
 }

--
Gitblit v1.9.1