wupengfei
4 天以前 9e7d8d0d721d32b95cb5b7ee86a8813f0de4c628
apps/cMiniApp/src/pages/mine/index.vue
@@ -19,18 +19,34 @@
              <div class="user-info-item">{{ userDetail?.name ?? '' }}</div>
              <div class="user-info-auth">
                <div class="user-info-auth-item">
                  <div class="user-info-unCertified" v-if="!isCertified">
                    <div class="user-info-unCertified-text">未认证</div>
                    <div class="user-info-unCertified-btn" @click.stop="goAuthentication">
                  <div class="user-info-unCertified">
                    <div
                      class="user-info-unCertified-text"
                      v-if="userDetail?.realStatus === EnumPersonalUserRealStatus.UnReal"
                    >
                      未认证
                    </div>
                    <div class="user-info-unCertified-text" v-else>
                      {{ EnumUserRealMethodText[userDetail?.realMethod]
                      }}{{ EnumPersonalUserRealStatusText[userDetail?.realStatus] }}
                    </div>
                    <div
                      class="user-info-unCertified-btn"
                      @click.stop="goAuthentication"
                      v-if="
                        userDetail?.realStatus === EnumPersonalUserRealStatus.UnReal ||
                        userDetail?.realStatus === EnumPersonalUserRealStatus.Fail
                      "
                    >
                      立即认证
                    </div>
                  </div>
                  <div class="user-info-unCertified" v-else>
                  <!-- <div class="user-info-unCertified" v-else>
                    <img :src="IconAuth" class="user-info-unCertified-icon" />
                    <div class="user-info-unCertified-text">
                      {{ EnumUserRealMethodText[userDetail?.realMethod] }}
                      {{ EnumUserRealMethodText[userDetail?.realMethod] }}{{ EnumPersonalUserRealStatusText[userDetail?.realStatus] }}
                    </div>
                  </div>
                  </div> -->
                </div>
              </div>
            </div>
@@ -41,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(0) }}</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" />
@@ -61,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?.inProcessTaskCount ?? 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"
@@ -80,12 +132,13 @@
          >
            <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">
        <ListItem :icon="IconCollect" title="我收藏的任务" @click="goMineCollectTask"></ListItem>
        <ListItem :icon="IconAgreement" title="协议签约" @click="goMineAgreementSign"></ListItem>
        <ListItem :icon="IconSetting" title="人工客服" @click="goMineService"></ListItem>
        <ListItem :icon="IconSetting" title="设置" @click="goSetting"></ListItem>
        <!-- <ListItem :icon="IconRecruit" title="我要招人/用人" @click="goSetting"></ListItem> -->
      </List>
@@ -107,20 +160,32 @@
import { useUser, useIsLogin, useGoLogin } from '@/hooks';
import Taro from '@tarojs/taro';
import { RouterPath, OssAssets } from '@/constants';
import { EnumUserRealMethodText } from '@12333/constants';
import {
  EnumUserRealMethodText,
  EnumPersonalUserRealStatusText,
  EnumPersonalUserRealStatus,
} from '@12333/constants';
import { List, ListItem } from '@12333/components';
import { useSystemStore } from '@/stores/modules/system';
import PageLayoutWithBg from '@/components/Layout/PageLayoutWithBg.vue';
import { toThousand } from '@12333/utils';
import { useIntervalFn } from 'senin-mini/hooks';
import { useQuery } from '@tanstack/vue-query';
import * as authServices from '@12333/services/apiV2/auth';
const { userDetail, isCertified, updateUserInfo } = useUser();
const isLogin = useIsLogin();
const systemStore = useSystemStore();
const { goLoginFn } = useGoLogin();
const bgHeight = computed(() => 133 + systemStore.navHeight);
useQuery({
  queryKey: ['updateUserInfo'],
  queryFn: () => {},
  enabled: computed(
    () => isLogin.value && userDetail.value?.realStatus === EnumPersonalUserRealStatus.Checking
  ),
  refetchInterval: 5000,
});
Taro.useDidShow(() => {
  if (isLogin.value) {
@@ -168,6 +233,9 @@
function goMineCancel() {
  goPage(RouterPath.mineCancel);
}
function goMineHired() {
  goPage(RouterPath.mineHired);
}
function goMineCollectTask() {
  goPage(RouterPath.mineCollectTask);
}
@@ -178,6 +246,21 @@
function goMineWallet() {
  goPage(RouterPath.mineWallet);
}
function goMineService() {
  Taro.openCustomerServiceChat({
    extInfo: {
      url: 'https://work.weixin.qq.com/kfid/kfcd24e0c60fd91099',
    },
    corpId: 'wwc84cb8e0525c772f',
    fail: () => {
      Taro.showToast({
        title: '请稍后再试',
        icon: 'none',
      });
    },
  });
}
</script>
<style lang="scss">