From dea5820ad3ba037b674a750753755588bc25b56c Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期三, 13 八月 2025 14:46:03 +0800 Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/flexJobMiniApp --- apps/bMiniApp/src/pages/mine/index.vue | 110 +++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 82 insertions(+), 28 deletions(-) diff --git a/apps/bMiniApp/src/pages/mine/index.vue b/apps/bMiniApp/src/pages/mine/index.vue index ab21c15..66b072b 100644 --- a/apps/bMiniApp/src/pages/mine/index.vue +++ b/apps/bMiniApp/src/pages/mine/index.vue @@ -26,65 +26,95 @@ </div> <div class="user-info-item"> <template v-if="isCertified"> - <div class="user-info-unCertified-text">鏈璇�</div> - <div class="user-info-unCertified-btn" @click.stop="goAuthentication"> - 绔嬪嵆璁よ瘉 - </div> - </template> - <template v-else> <div class="user-info-certified-text"> {{ userDetail?.customerName ?? '123' }} </div> <div class="user-info-certified-btn">宸茶璇�</div> + </template> + <template v-else> + <div class="user-info-unCertified-text">鏈璇�</div> + <div class="user-info-unCertified-btn" @click.stop="goAuthentication"> + 绔嬪嵆璁よ瘉 + </div> </template> </div> </div> <div class="mine-go-login" v-else>鍘荤櫥褰�</div> </div> </template> - <!-- <div class="mine-business-card"> - <div class="mine-business-card-item"> + <div class="mine-business-card" v-if="isLogin"> + <div class="mine-business-card-item" @click="goBusinessCard"> <img class="mine-business-card-item-icon" :src="IconBusinessCard" alt="" /> <div class="mine-business-card-item-text">鎴戠殑鐢靛瓙鍚嶇墖</div> </div> <div class="mine-business-card-btn"> - <nut-button type="info">閫掑悕鐗�</nut-button> + <nut-button type="info" @click="goBusinessCard">閫掑悕鐗�</nut-button> </div> - </div> --> + </div> </UserHomeTopView> - <div class="mine-content-record"> - <div class="mine-content-record-item"> - <img class="mine-content-record-item-icon" :src="IconCollect" alt="" /> - <div class="mine-content-record-item-text">鎴戠殑鏀惰棌</div> + <template v-if="isLogin"> + <div class="mine-content-record"> + <div class="mine-content-record-item" @click="goMineFavorites"> + <img class="mine-content-record-item-icon" :src="IconCollect" alt="" /> + <nut-badge top="0" right="0" :value="8" color="#FF7D00" hidden> + <div class="mine-content-record-item-text">鎴戠殑鏀惰棌</div> + </nut-badge> + </div> + <div class="mine-content-record-item" @click="goMineContactRecord"> + <img class="mine-content-record-item-icon" :src="IconRecord" alt="" /> + <nut-badge top="0" right="0" :value="8" color="#FF7D00" hidden> + <div class="mine-content-record-item-text">鑱旂郴璁板綍</div> + </nut-badge> + </div> </div> - <div class="mine-content-record-item"> - <img class="mine-content-record-item-icon" :src="IconCollect" alt="" /> - <div class="mine-content-record-item-text">鑱旂郴璁板綍</div> - </div> - </div> - <div class="mine-content"></div> + <Cell :title="'鏇村鏈嶅姟'" class="mine-content-service"> + <div class="mine-content-service-list"> + <TaskDetailWelfareItem + :icon="IconFinance" + text="璐㈠姟绠$悊" + @click="goFinance" + ></TaskDetailWelfareItem> + <TaskDetailWelfareItem + :icon="IconRealName" + text="浼佷笟瀹炲悕" + @click.stop="goAuthentication" + ></TaskDetailWelfareItem> + <TaskDetailWelfareItem + :icon="IconSetting" + text="璁剧疆" + @click="goSetting" + ></TaskDetailWelfareItem> + </div> + </Cell> + <nut-button type="info" class="mine-content-logout" @click="handleLoginout" + >閫�鍑虹櫥褰�</nut-button + > + </template> </ContentView> - <ContentScrollView v-if="isLogin" class="mine-content-scroll-view"> </ContentScrollView> </PageLayoutWithBg> </template> <script setup lang="ts"> -import { - PageLayoutWithBg, - TransparentNavigationBar, - ContentScrollView, - UserHomeTopView, -} from '@/components'; +import { PageLayoutWithBg, TransparentNavigationBar, UserHomeTopView } from '@/components'; import IconBusinessCard from '@/assets/mine/icon-business-card.png'; import IconCollect from '@/assets/mine/icon-collect.png'; import IconRecord from '@/assets/mine/icon-record.png'; import IconMale from '@/assets/mine/icon-male.png'; import IconFemale from '@/assets/mine/icon-female.png'; +import IconFinance from '@/assets/mine/icon-finance.png'; +import IconRealName from '@/assets/mine/icon-realname.png'; +import IconSetting from '@/assets/mine/icon-setting.png'; import { useUser, useIsLogin, useGoLogin } from '@/hooks'; import Taro from '@tarojs/taro'; import { RouterPath, OssAssets } from '@/constants'; import { useSystemStore } from '@/stores/modules/system'; +import { Message } from '@12333/utils'; +import { useUserStore } from '@/stores/modules/user'; +import { useQueryClient } from '@tanstack/vue-query'; +import { TaskDetailWelfareItem } from '@12333/components'; +const userStore = useUserStore(); +const queryClient = useQueryClient(); const { userDetail, isCertified } = useUser(); const isLogin = useIsLogin(); const systemStore = useSystemStore(); @@ -105,7 +135,7 @@ } function goSetting() { - // goPage(RouterPath.setting); + goPage(RouterPath.setting); } Taro.showShareMenu({ @@ -123,6 +153,30 @@ function goAuthentication() { goPage(RouterPath.authenticationHome); } +function goMineFavorites() { + goPage(RouterPath.mineFavorites); +} +function goMineContactRecord() { + goPage(RouterPath.mineContactRecord); +} + +function goBusinessCard() { + goPage(RouterPath.businessCard); +} + +function goFinance() { + goPage(RouterPath.mineFinanceManage); +} + +async function handleLoginout() { + try { + await Message.confirm({ + message: '纭畾瑕侀��鍑虹櫥褰曞悧锛�', + }); + userStore.logoutAndToHome(); + queryClient.removeQueries(); + } catch (error) {} +} </script> <style lang="scss"> -- Gitblit v1.9.1