jhzh
2025-08-27 ef2e2e3f9c6d37cc47b14ce0444fb75e6aa19dd1
src/page/newUser/index.vue
@@ -1,178 +1,235 @@
<template>
  <div class="user_page">
  <div class="user_page DINPro">
    <div class="content">
      <div class="top_icon">
        <div class="right_icon">
          <div @click="goToTopUp()">
            <img src="@/assets/img/qianbao.png" alt />
      <!-- <div class="top_icon">
        <div class="left_icon">
          <div>
            <img
              src="../../assets/img/img_log_home.png"
              style="width: 40px; height: 40px; border-radius: 50px"
            />
          </div>
          <div @click="goOnline">
            <img src="@/assets/img/kefu.png" alt />
          </div>
        </div>
      </div>
      <div class="users" @click="goWall()">
        <div class="left_tou">
          <div class="left_tx">
            <div>
              <img src="@/assets/img/eslogo.png" alt />
          <div class="top_box">
            <div class="top_box_top" style="font-weight: 600">
              {{ userInfo.realName }}
            </div>
            <div class="top_box_top" style="margin-top: 2px">
              ID:{{ userInfo.phone }}
            </div>
          </div>
          <div class="right_name">
            <span>{{ userInfo.realName ? userInfo.realName : userInfo.phone }}</span>
        </div>
        <div class="right_icon">
          <div style="justify-content: flex-end" @click="goToTopUp()">
            <img src="@/assets/img/shezhia.png" alt />
          </div>
        </div>
        <div class="right_go">
          <img src="@/assets/img/youjiantou.png" alt />
      </div> -->
      <div class="userbox">
        <img style="width: 59px;height: 59px;margin-bottom: 20px;" src="@/assets/img/aass.png"/>
        <div style="margin-bottom: 10px;font-size: 15px;">{{ userInfo.phone }}</div>
        <div style="margin-bottom: 20px;display: flex;">
          <div >UID:{{ userInfo.id }}
          </div>
          <div :style="userInfo.isActive==2?'color:#16B06E;margin-left: 10px;':'color:#C8302F;margin-left: 10px;'">{{userInfo.isActive==2?$t('hj203'):$t('hj204')}}</div>
        </div>
      </div>
      <div class="center_card">
        <div class="keyon">
          <span>{{ '总资产' }}</span>
      <div class="sfrz">
        <div class="sfrz_left">
          <img src="@/assets/img/shiminga.png"/>
          <div style="margin-left: 5px;">{{$t('hj246')}}</div>
        </div>
        <div class="num_price" v-if="userInfo.length == 0">
          ¥0
        </div>
        <div class="num_price" v-if="userInfo.length != 0">
          <p v-if="this.$store.state.settingForm.indexDisplay && !this.$store.state.settingForm.futuresDisplay"
            class="account">
            ¥{{ $store.state.hide ? '****' : Number($store.state.userInfo.userAmt +
                $store.state.userInfo.userIndexAmt).toFixed(2)
            }}11
          </p>
          <p v-else-if="!this.$store.state.settingForm.indexDisplay && this.$store.state.settingForm.futuresDisplay"
            class="account">
            ¥{{ $store.state.hide ? '****' : Number($store.state.userInfo.userAmt +
                $store.state.userInfo.userFuturesAmt).toFixed(2)
            }}22
          </p>
          <p v-else-if="!this.$store.state.settingForm.indexDisplay && !this.$store.state.settingForm.futuresDisplay"
            class="account">¥&nbsp;&nbsp;{{ $store.state.hide ? '****' : Number($store.state.userInfo.userAmt).toFixed(2) }}</p>
        </div>
        <div class="yk es">
          <div>
            <span>{{ '冻结保证金' }}</span>
          </div>
          <div>
            <span>{{ '盈亏' }}</span>
          </div>
          <div>
            <span>{{ '可用余额(¥)' }}</span>
          </div>
        </div>
        <div class="yk as">
          <div>
            <span class="orenge">¥ {{ userInfo.length != 0 ? $store.state.userInfo.allFreezAmt + $store.state.userInfo.djzj : 0}}</span>
          </div>
          <div v-if="userInfo.length == 0">
            <span v-if="!selectUserFlag">
              <span>{{ '¥ 0' }}</span>
            </span>
            <span v-else >
              <span>{{ '¥ 0' }}</span>
            </span>
          </div>
          <div v-if="userInfo.length != 0">
            <span v-if="!selectUserFlag">
              <span
                :class="$store.state.userInfo.allIndexProfitAndLose > 0 ? ' red' : $store.state.userInfo.allIndexProfitAndLose < 0 ? ' green' : ''">{{
                    '¥ ' + $store.state.userInfo.allIndexProfitAndLose
                }}</span>
            </span>
            <span v-else>
              <span
                :class="$store.state.userInfo.allProfitAndLose > 0 ? ' red' : $store.state.userInfo.allProfitAndLose < 0 ? ' green' : ''">{{
                    '¥ ' + $store.state.userInfo.allProfitAndLose
                }}</span>
            </span>
          </div>
          <div v-if="userInfo.length == 0">
            <span class="bzz" v-if="!selectUserFlag">{{ '¥ 0' }}</span>
            <span class="bzz" v-else>{{ '¥ 0' }}</span>
          </div>
          <div v-if="userInfo.length != 0">
            <span class="bzz" v-if="!selectUserFlag">{{ '¥ ' + $store.state.userInfo.userIndexAmt }}</span>
            <span class="bzz" v-else>{{ '¥ ' + $store.state.userInfo.userAmt }}</span>
          </div>
        </div>
        <div class="btns" @click="handleZh()" :class="selectUserFlag ? '' : 'active'">
          <span>{{ selectUserFlag ? '切换指数账户' : '切换沪深账户' }}</span>
        <div class="sfrz_right" @click="$router.push('/authentications')">
          {{userInfo.isActive==2?$t('hj203'):$t('hj204')}}
        </div>
      </div>
      <div class="jy" @click="goToSettings()">
        <div class="left_gn">
          <div class="l_icon">
            <img src="../../assets/img/xiugaimima.png" alt />
          </div>
          <div class="r_title">
            <span>{{ '修改密码' }}</span>
          </div>
        </div>
        <div class="right_gos">
          <img src="../../assets/img/youjiantou.png" alt />
      <div>
        <div style="margin-top: 20px;color: #fff;border-radius: 4px;width: max-content;padding: 8px 16px;background-color: #185546;margin-left: 15px;margin-bottom: 20px;">
          {{$t('日股')}}
        </div>
      </div>
      <div class="jy" @click="handleGoToTransfer()">
        <div class="left_gn">
          <div class="l_icon">
            <img src="../../assets/img/huazhuan2.png" alt />
          </div>
          <div class="r_title">
            <span>{{ '资金划转' }}</span>
          </div>
        </div>
        <div class="right_gos">
          <img src="../../assets/img/youjiantou.png" alt />
        </div>
      <div class="content-box">
        <van-row class="van-row-box">
          <van-col span="20">
            <div class="content-all">
              <span>{{ $t("賬戶總資產") }}(JPY)</span>
            </div>
            <div class="number-all">
              <showHide :text="asstesAll" :flg="xy" />
            </div>
          </van-col>
          <van-col span="4" style="display: flex; justify-content: flex-end">
            <!-- <van-icon
              @click="$router.push('/rechargelist')"
              name="orders-o"
              size="20"
            /> -->
            <i @click="xy = !xy" class="iconfont xy">&#xe8c7;</i>
          </van-col>
        </van-row>
        <!-- <van-row style="margin-top: 16px">
          <van-col span="8" style="display: flex; justify-content: center">
            <van-button @click="$router.push('/recharge')" class="btn-two" type="primary">
              {{ $t("hj172") }}
            </van-button>
          </van-col>
          <van-col span="8" style="display: flex; justify-content: center">
            <van-button
              @click="$router.push('/RechargeSure')"
              class="btn-two"
              type="default"
              >{{ $t("提款") }}</van-button
            >
          </van-col> -->
         <!-- <van-col span="8" style="display: flex; justify-content: center">
            <van-button
              @click="leverShow = true"
              class="btn-two"
              type="default"
            >
              {{ $t("申请杠杠") }}
            </van-button>
          </van-col> -->
        </van-row>
        <van-dialog
          v-model="leverShow"
          :title="$t('申请杠杠')"
          show-cancel-button
          :cancelButtonText="$t('取消')"
          :confirmButtonText="$t('确认')"
          @confirm="confirmLever"
        >
          <van-radio-group v-model="radio">
            <van-cell-group>
              <van-cell title="1X" clickable @click="radio = '1'">
                <template #right-icon>
                  <van-radio name="1" />
                </template>
              </van-cell>
              <van-cell title="2X" clickable @click="radio = '2'">
                <template #right-icon>
                  <van-radio name="2" />
                </template>
              </van-cell>
              <van-cell title="5X" clickable @click="radio = '5'">
                <template #right-icon>
                  <van-radio name="5" />
                </template>
              </van-cell>
              <van-cell title="10X" clickable @click="radio = '10'">
                <template #right-icon>
                  <van-radio name="10" />
                </template>
              </van-cell>
            </van-cell-group>
          </van-radio-group>
        </van-dialog>
      </div>
      <div class="jy" @click="handleGoToAuthentication()">
        <div class="left_gn">
          <div class="l_icon">
            <img src="../../assets/img/shiming.png" alt />
      <div class="content-list-box">
        <div class="price">
          <div class="price_box">
            <div class="price_box_title">{{$t('hometips')}}</div>
            <div class="price_box_txt">{{asstesAll}}</div>
          </div>
          <div class="r_title">
            <span>{{ '实名认证' }}</span>
          <div class="price_box">
            <div class="price_box_title">{{$t('日股冻结')}}</div>
            <div class="price_box_txt">0.00</div>
          </div>
          <div class="price_box">
            <div class="price_box_title">{{$t('累計盈虧')}}</div>
            <div class="price_box_txt">{{moneyList[0].cumulativeProfitAndLoss}}</div>
          </div>
          <div class="price_box">
            <div class="price_box_title">{{$t('浮動盈虧')}}</div>
            <div class="price_box_txt">{{moneyList[0].profitAndLoss}}</div>
          </div>
          <div class="price_box">
            <div class="price_box_title">{{$t('待补金额')}}</div>
            <div class="price_box_txt">{{moneyList[0].amountToBeCovered}}</div>
          </div>
          <div class="price_box">
            <div class="price_box_title">{{$t('hj48')}}</div>
            <div class="price_box_txt">{{moneyList[0].availableBalance}}</div>
          </div>
        </div>
        <div class="right_gos">
          <img src="../../assets/img/youjiantou.png" alt />
        </div>
      </div>
      <div class="jy" @click="handleGoToBankCard()">
        <div class="left_gn">
          <div class="l_icon">
            <img src="../../assets/img/shiming.png" alt />
          </div>
          <div class="r_title">
            <span>{{ '绑定银行卡' }}</span>
        <!-- <div class="divider div-shrink"></div> -->
        <!-- <van-tabs
          line-width="22px"
          swipe-threshold="2"
          offset-top="20px"
          @change="tabsChange"
        >
          <van-tab
            v-model="active"
            v-for="(item, index) in listAsstes"
            :title="item.title"
            :key="index"
            :name="item.title"
          >
            <ul class="money">
              <li style="text-align: left">
                <div class="li-title">
                  {{ item.title1 }}({{ item.symbolCode }})
                </div>
                <div class="li-USDT">
                  <div class="DINPro">
                    {{ item.symbol }}
                    {{ item.availableBalance   }}
                  </div>
                </div>
              </li>
              <li>
                <div class="li-title">
                  {{ item.title2 }}({{ item.symbolCode }})
                </div>
                <div class="li-USDT">
                  <div class="DINPro">
                    {{ item.symbol }}
                    {{ item.freezeMoney   }}
                  </div>
                </div>
              </li>
              <li>
                <div class="li-title">
                  {{ $t("待补金额") }}({{ item.symbolCode }})
                </div>
                <div class="li-USDT">
                  <div class="DINPro">
                    {{ item.symbol }}
                    {{ item.amountToBeCovered   }}
                  </div>
                </div>
              </li>
            </ul>
          </van-tab>
        </van-tabs> -->
        <div class="btnsss">
          <div class="btn_box" v-for="(item,index) in btnlist" :key="index" @click="gotorush(item.url)">
            <img class="btn_box_img" :src="item.img"/>
            <div class="btn_box_txt">{{item.txt}}</div>
          </div>
        </div>
        <div class="right_gos">
          <img src="../../assets/img/youjiantou.png" alt />
        </div>
      </div>
      <div class="jy" @click="handleOutLoginClick()">
        <div class="left_gn">
          <div class="l_icon">
            <img src="../../assets/img/out2.png" alt />
        <setting style="width: auto;"></setting>
        <div style="width: 100%;height: 100px;"></div>
      <!--  <div class="path" >
          <div class="path_box" v-for="(item,index) in iconlist" :key="index" @click="nato(item.path)">
            <div class="path_img">
              <img alt :src="item.icon"/>
            </div>
            <div class="path_txt">{{item.title}}</div>
          </div>
          <div class="r_title">
            <span>{{ '退出登录' }}</span>
          </div>
        </div>
        <div class="right_gos">
          <img src="../../assets/img/youjiantou.png" alt />
        </div>
        </div> -->
      </div>
    </div>
    <Language ref="language" @onChange="onChange" />
    <van-popup v-model="settingDialog" position="bottom" :style="{ height: '40%' }">
      <div class="setting_content">
        <div class="old_password">
          <div class="left_titles">
            <span>{{ '旧密码:' }}</span>
            <span>{{ $t("hj150") + ":" }}</span>
          </div>
          <div class="right_password_input">
            <input type="password" v-model="oldPassword" />
@@ -180,7 +237,7 @@
        </div>
        <div class="old_password">
          <div class="left_titles">
            <span>{{ '新密码:' }}</span>
            <span>{{ $t("hj151") + ":" }}</span>
          </div>
          <div class="right_password_input">
            <input type="password" v-model="newPassword" />
@@ -188,112 +245,407 @@
        </div>
        <div class="old_password">
          <div class="left_titles">
            <span>{{ '确认新密码:' }}</span>
            <span>{{ $t("hj152") + ":" }}</span>
          </div>
          <div class="right_password_input">
            <input type="password" v-model="cirNewPassword" />
          </div>
        </div>
        <div class="btn_setting" @click="changeLoginPsd()">
          <span>{{ '确认修改' }}</span>
          <span>{{ $t("hj153") }}</span>
        </div>
      </div>
    </van-popup>
  </div>
</template>
<script>
import * as api from "@/axios/api";
import { Toast } from "mint-ui";
import { Toast, MessageBox } from "mint-ui";
import { isNull, pwdReg } from "@/utils/utils";
import showHide from "@/components/showHide";
import Vue from "vue";
import { Notify } from "vant";
import Language from "@/components/Language/index.vue";
import setting from "./setting.vue"
export default {
  name: "newUser",
  components: { showHide,Language,setting },
  data() {
    return {
      name: "大狗子",
      pswDialog: false,
      leverShow: false,
      radio: "1",
      // 显示隐藏
      xy: true,
      listAsstes: [
        {
          title: this.$t("日股資產"),
          title3: this.$t("日股總資產"),
          title1: this.$t("日股可用"),
          title2: this.$t("日股冻结"),
          accectType: "JP",
          symbolCode: "JPY",
          symbol: "¥",
        },
      ],
      active: this.$t("日股資產"),
      name: "",
      btnlist:[
        {
          img:require('../../assets/img/chongzhi.svg'),
          txt:this.$t('hj172'),
          url:'/recharge'
        },
        {
          img:require('../../assets/img/tixian.svg'),
          txt:this.$t('hj177'),
          url:'/RechargeSure'
        },
        {
          img:require('../../assets/img/bank_card.svg'),
          txt:this.$t('hj247'),
          url:'/banklist'
        },
        {
          img:require('../../assets/img/mingxi.svg'),
          txt:this.$t('明细'),
          url:'/Record'
        },
        {
          img:require('../../assets/img/mykefu.svg'),
          txt:this.$t('kf'),
          url:''
        },
        {
          img:require('../../assets/img/userrz.svg'),
          txt:this.$t('hj203'),
          url:'/authentications'
        }
      ],
      selectUserFlag: true,
      settingDialog: false,
      oldPassword: "", // 旧密码
      newPassword: "", // 新密码
      cirNewPassword: "", //确认新密码
      cirNewPassword: "", // 确认新密码
      userInfo: [],
      onlineService: "",
      moneyList: [],
      asstesAll: "0.00",
      iconlist:[{
        icon:require('../../assets/img/usericon.png'),
        path:'/bankCard1',
        title: this.$t("关于我们"),
      },
      {
        icon:require('../../assets/img/usericon.png'),
        path:'/banklist',
        title: this.$t("hj147"),
      },
      {
        icon:require('../../assets/img/usericon.png'),
        path:'/mm',
        title: this.$t("hj144"),
      },
      {
        icon:require('../../assets/img/usericon.png'),
        path:'/authentications',
        title: this.$t("hj146"),
      },
      // {
      //   icon:require('../../assets/img/usericon.png'),
      //   path:'/banklist',
      //   title: this.$t("ysmrz"),
      // },
      {
        icon:require('../../assets/img/usericon.png'),
        path:'/yy',
        title: this.$t("yy"),
      },
      {
        icon:require('../../assets/img/usericon.png'),
        path:'/tc',
        title: this.$t("hj148"),
      },
      ],
      language: "",
    };
  },
  components: {
  },
  created() {
    this.getUserInfo();
    this.getMoneyData();
    this.getInfoSite();
  },
  methods: {
    goOnline() {
      if (navigator.vibrate) {
          // 支持
          navigator.vibrate([55]);
        }
      window.location.href = this.onlineService;
    clicklang() {
      this.$refs.language.settingDialog = true;
    },
    async getInfoSite() {
      let data = await api.getInfoSite()
    onChange(e) {
      this.language = e;
      this.active = this.$t("日股資產")
      this.listAsstes=[
        {
          title: this.$t("日股資產"),
          title3: this.$t("日股總資產"),
          title1: this.$t("日股可用"),
          title2: this.$t("日股冻结"),
          accectType: "JP",
          symbolCode: "JPY",
          symbol: "¥",
        },
      ]
      this.iconlist = [{
        icon:require('../../assets/img/usericon.png'),
        path:'/bankCard1',
        title: this.$t("关于我们"),
      },
      {
        icon:require('../../assets/img/usericon.png'),
        path:'/banklist',
        title: this.$t("hj147"),
      },
      {
        icon:require('../../assets/img/usericon.png'),
        path:'/mm',
        title: this.$t("hj144"),
      },
      {
        icon:require('../../assets/img/usericon.png'),
        path:'/authentications',
        title: 'KYC',
      },
      // {
      //   icon:require('../../assets/img/usericon.png'),
      //   path:'/banklist',
      //   title: this.$t("ysmrz"),
      // },
      {
        icon:require('../../assets/img/usericon.png'),
        path:'/yy',
        title: this.$t("yy"),
      },
      {
        icon:require('../../assets/img/usericon.png'),
        path:'/tc',
        title: this.$t("hj148"),
      },
      ]
    },
    nato(path){
      if(path=='/mm'){
        this.goToSettings()
      }else if (path=='/yy'){
        this.clicklang()
      }else if (path == '/tc'){
        this.handleOutLoginClick()
      }else{
        this.$router.push(path);
      }
    },
    async toRegister() {
      // 注销登陆
      window.localStorage.removeItem("USERTOKEN"); // 清空本地存储 USERTOKEN字段
      this.clearCookie();
      let data = await api.logout();
      if (data.status === 0) {
        this.onlineService = data.data.onlineService
        // Toast(data.msg)
        this.undataToken(null);
        this.$router.push("/login");
      } else {
        Toast(data.msg)
        Toast(data.msg);
      }
      this.$router.push("/login");
    },
    goWall() {
      if (this.userInfo.length == 0) {
        this.$store.commit('dialogVisible', true);
        return;
    gotorush(e){
      // if(e=='/recharge'){
      //   Toast(this.$t('请联系客服'));
      // }else
       if(e==''){
        // window.open('https://lin.ee/7I7cvGD', '_blank');
        // window.open('https://lin.ee/69mzBfD', '_blank');
        window.open(this.onlineService);
      }else{
        this.$router.push(e);
      }
      this.$router.push('/wallet')
    },
    handleZh() {
      this.selectUserFlag = !this.selectUserFlag;
      if (this.userInfo.length == 0) {
        this.$store.commit('dialogVisible', true);
        return;
      }
      if (navigator.vibrate) {
          // 支持
          navigator.vibrate([55]);
        }
    },
    async getUserInfo() {
      // 获取用户信息
      let data = await api.getUserInfo();
      if (data.status === 0) {
        // 判断是否登录
        this.$store.commit('dialogVisible', false);
        this.$store.state.userInfo = data.data;
        this.userInfo = data.data;
      } else {
        this.$store.commit('dialogVisible', true);
      }
    },
    goToTopUp() {
      if (this.userInfo.length == 0) {
        this.$store.commit('dialogVisible', true);
        return;
      }
      if (navigator.vibrate) {
          // 支持
          navigator.vibrate([55]);
        }
      this.$router.push("/wallet");
    },
    handleOutLoginClick() {
      // 退出登录
      this.toRegister();
      MessageBox.confirm(this.$t("hj149"), this.$t(""), {
        confirmButtonText: this.$t("qr"),
        cancelButtonText: this.$t("hj106"),
      })
        .then(() => {
          this.toRegister();
        })
        .catch(() => {});
    },
    // 申请杠杠
    async confirmLever() {
      const res = await api.applyLever({ lever: this.radio });
      if (res.status === 0) {
        Notify({
          type: "success",
          message: this.$t("申请杠杠成功,请联系客服!"),
        });
      } else {
        Notify({ type: "warning", message: res.msg });
      }
    },
    kefu() {
      this.$store.commit("elAlertShow", {
          elAlertShow: true,
          elAlertText: this.$t("当前充值渠道已关闭请选择在线客服进行充值。")
        });
      // window.open(this.onlineService);
    },
    async getMoneyData() {
      let data = await api.getMoney();
      if (data.status === 0) {
        // 判断是否登录
        this.moneyList = data.data;
        data.data.map((item) => {
          this.listAsstes.map((items) => {
            if (item.accectType === items.accectType) {
              Vue.set(items, "availableBalance", item.availableBalance);
              Vue.set(items, "availableBalanceUSD", item.availableBalanceUSD);
              Vue.set(items, "freezeMoney", item.freezeMoney);
              Vue.set(items, "freezeMoneyUSD", item.freezeMoneyUSD);
              Vue.set(items, "symbol", item.symbol);
              Vue.set(items, "symbolCode", item.symbolCode);
              Vue.set(items, "amountToBeCovered", item.amountToBeCovered);
            }
          });
        });
        const arr = data.data.filter((item) => item.accectType === "JP");
        this.asstesAll = arr[0].totalMoney;
      }
    },
    tabsChange(e) {
      console.log(e);
    },
    yebclick() {
      this.$router.push("/yeb");
    },
    regexNum(str) {
      console.log(str);
      str = str.toString();
      if (str.indexOf(".") == -1) {
        str = str + ".00";
      }
      var newStr = str.split(".");
      var point = newStr[1];
      if (point.length < 2) {
        point = point + "0";
      }
      var moneyPoint = newStr[0];
      if (moneyPoint.length <= 3) {
        return moneyPoint + "." + point;
      } else {
        var mPoint = moneyPoint.substr(
          moneyPoint.length - 3,
          moneyPoint.length
        );
        var twoPoint = moneyPoint.substr(0, moneyPoint.length - 3);
        var endString = twoPoint
          .toString()
          .replace(/(\d)(?=(\d{2})+(?!\d))/g, "$1,");
        return endString + "," + mPoint + "." + point;
      }
    },
    goOnline() {
      if (navigator.vibrate) {
        // 支持
        navigator.vibrate([55]);
      }
      this.$router.push("/service");
    },
    async getInfoSite() {
      let data = await api.getInfoSite();
      if (data.status === 0) {
        this.onlineService = data.data.onlineService;
      } else {
        Toast(data.msg);
      }
    },
    goWall() {
      if (this.userInfo.length === 0) {
        this.$store.commit("dialogVisible", true);
        return;
      }
      this.$router.push("/wallet");
    },
    gotoa(e) {
      if (this.userInfo.length === 0) {
        this.$store.commit("dialogVisible", true);
        return;
      }
      if (e == 1) {
        this.$router.push("/wallet");
      } else if (e == 2) {
        this.$router.push("/tixian");
      } else {
        this.$router.push("/transfers");
      }
    },
    subclick() {
      this.$router.push("/SubDK");
    },
    subaclick() {
      this.$router.push("/tixian");
    },
    handleZh() {
      this.selectUserFlag = !this.selectUserFlag;
      if (this.userInfo.length === 0) {
        this.$store.commit("dialogVisible", true);
        return;
      }
      if (navigator.vibrate) {
        // 支持
        navigator.vibrate([55]);
      }
    },
    async getUserInfo() {
      // 获取用户信息
      let data = await api.getUserInfodata();
      if (data.status === 0) {
        // 判断是否登录
        this.$store.commit("dialogVisible", false);
        this.$store.state.userInfo = data.data;
        this.userInfo = data.data;
      } else {
        this.$store.commit("dialogVisible", true);
      }
    },
    goToTopUp() {
      // if (this.userInfo.length === 0) {
      //    this.$store.commit('dialogVisible', true)
      //    return
      // }
      // if (navigator.vibrate) {
      //    // 支持
      //    navigator.vibrate([55])
      // }
      this.$router.push("/setting");
    },
    // handleOutLoginClick() {
    //   // 退出登录
    //   MessageBox.confirm(this.$t(""), this.$t("hj165"), {
    //     confirmButtonText: this.$t("qr"),
    //     cancelButtonText: this.$t("hj106"),
    //   })
    //     .then(() => {
    //       this.toRegister();
    //     })
    //     .catch(() => {});
    // },
    goToSettings() {
      if (this.userInfo.length == 0) {
        this.$store.commit('dialogVisible', true);
      if (this.userInfo.length === 0) {
        this.$store.commit("dialogVisible", true);
        return;
      }
      // 每次打开dialog 清空密码数据
@@ -305,29 +657,36 @@
      }
    },
    handleGoToTransfer() {
      if (this.userInfo.length == 0) {
        this.$store.commit('dialogVisible', true);
      if (this.userInfo.length === 0) {
        this.$store.commit("dialogVisible", true);
        return;
      }
      this.$router.push("/transfers");
    },
    handleGoToAuthentication() {
      if (this.userInfo.length == 0) {
        this.$store.commit('dialogVisible', true);
      if (this.userInfo.length === 0) {
        this.$store.commit("dialogVisible", true);
        return;
      }
      this.$router.push("/authentications");
    },
    handleGoToAuthenticationaz() {
      if (this.userInfo.length === 0) {
        this.$store.commit("dialogVisible", true);
        return;
      }
      this.$router.push("/download");
    },
    handleGoToBankCard() {
      if (this.userInfo.length == 0) {
        this.$store.commit('dialogVisible', true);
      if (this.userInfo.length === 0) {
        this.$store.commit("dialogVisible", true);
        return;
      }
      this.$router.push("/bankCard");
    },
    async toRegister() {
      // 注销登陆
      window.localStorage.clear("USERTOKEN"); // 清空本地存储 USERTOKEN字段
      window.localStorage.removeItem("USERTOKEN"); // 清空本地存储 USERTOKEN字段
      this.clearCookie();
      let data = await api.logout();
      if (data.status === 0) {
@@ -345,17 +704,17 @@
        isNull(this.newPassword) ||
        isNull(this.cirNewPassword)
      ) {
        Toast("请输入新旧密码");
        Toast(this.$t("hj154"));
        this.settingDialog = false;
      } else if (!pwdReg(this.newPassword)) {
        Toast("密码为6~12位,数字、字母或符号");
        Toast(this.$t("hj19"));
        this.settingDialog = false;
      } else {
        // 修改密码
        if (this.newPassword === this.cirNewPassword) {
          let opts = {
            oldPwd: this.oldPassword,
            newPwd: this.newPassword
            newPwd: this.newPassword,
          };
          let data = await api.changePassword(opts);
          if (data.status === 0) {
@@ -367,52 +726,378 @@
            this.settingDialog = false;
          }
        } else {
          Toast("新密码不一致");
          Toast(this.$t("hj155"));
          this.settingDialog = false;
        }
      }
      if (navigator.vibrate) {
          // 支持
          navigator.vibrate([55]);
        }
    }
  }
        // 支持
        navigator.vibrate([55]);
      }
    },
  },
};
</script>
<style scoped lang="less">
.green {
    color: #028f52 !important;
  .sfrz_right{
    background: #185546;
    padding: 8px 16px;
    border-radius: 4px;
    color: #fff;
  }
  .sfrz_left{
    display: flex;
    color: #276048;
  }
  .sfrz{
        // margin-top: 10px;
        background: #e8f4f0;
        padding: 0.422rem 15px;
        display: flex;
        justify-content: space-between;
        align-items: center;
  }
  .userbox{
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 60px;
  }
  .btn_box_txt{
font-size: .346667rem;
    color: #185546;
    font-family: Arial, sans-serif;
  }
  .btn_box_img{
    width: .64rem;
        height: .64rem;
        margin-bottom: .16rem;
  }
  .btn_box{
    margin-top: .373333rem;
    width: 31%;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #fff;
    padding: .32rem 0;
  }
  .btnsss{
    margin: 0px 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
  .path_txt{
    text-align: center;
  }
  .path_img{
    img{
      width: 55px;
      height: 55px;
      margin-bottom: 10px;
    }
  }
  .path_box{
    width: 25%;
    display: flex;
    // justify-content: center;
    align-items: center;
    flex-direction: column;
    margin-bottom: 20px;
  }
  .path{
    margin: 0 20px;
    margin-top: 20px;
    padding: 20px 0;
    display: flex;
    flex-wrap: wrap;
    border-radius: 12px;
    box-shadow:  2px 2px 8px 2px rgba(0, 0, 0, 0.2);
  }
/deep/ .van-button--primary {
  background-color: #0066ed;
}
.red{
/deep/ .van-tab {
  min-width: 2.66667rem;
  height: 1.17333rem;
  font-style: normal;
  font-weight: 400;
  font-size: 0.37333rem;
  text-align: center;
  color: #687284;
  box-sizing: border-box;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
/deep/ .van-tab--active {
  color: #2c2e3b;
}
/deep/ .van-tabs--line .van-tabs__wrap {
  height: auto;
}
/deep/ .van-tabs__line {
  background-color: #0066ed;
  // height: auto;
}
.xy {
  font-size: 28px;
  color: #cfd0d2;
  margin-left: 10px;
  cursor: pointer;
}
.money {
  font-family: "DINPro", serif;
  width: 100%;
  max-width: 25.6rem;
  li {
    width: 100%;
    max-width: 25.6rem;
    height: 1.54667rem;
    border-bottom: 0.02667rem solid #e5e8ed;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 0.4rem;
    box-sizing: border-box;
    text-align: right;
    .li-title {
      font-style: normal;
      font-weight: 500;
      font-size: 0.37333rem;
      color: #2d2f3c;
      text-align: left;
    }
    .li-USDT {
      min-width: 180px;
      text-align: right;
      font-style: normal;
      font-weight: 500;
      font-size: 0.37333rem;
      color: #2d2f3c;
      line-height: 28px;
    }
  }
}
.price_box_txt{
  color:#000;
  font-size: 24px;
  font-weight: bold;
}
.price_box_title{
  color:#858093;
  margin-bottom: 15px;
}
.price_box{
  background-color: #E8F4F0;
  display: flex;
  flex-direction: column;
  width: 48.9%;
  border-radius: 6px;
  margin-bottom: 12px;
  padding: .37rem .373333rem;
}
.price{
  margin:12px 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.content-list-box {
  // width: 100%;
  // min-height: calc(100vh - 6rem);
  // margin:12px 15px;
  // background-color: #fff;
  .divider {
    width: 100%;
    height: 0.13333rem;
    background: #f1f1f1;
  }
}
.content-box {
  width: 100%;
  // min-height: 5.52rem;
  // background: #ffffff;
  // box-shadow: 0 0.16rem 0.32rem #eaeaea99;
  padding: 0.4rem;
  box-sizing: border-box;
  // border-top-left-radius: 0.4rem;
  // border-top-right-radius: 0.4rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  .content-title {
    font-family: "DINPro", serif;
    line-height: 28px;
    font-style: normal;
    font-weight: 400;
    font-size: 0.32rem;
    color: #14181f;
  }
  .btn-two {
    font-style: normal;
    font-weight: 400;
    font-size: 0.37333rem;
    line-height: 0.37333rem;
    width: 88%;
    height: 0.8rem;
    border: 0.01333rem solid #cfd0d2;
    border-radius: 0.05333rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.13333rem;
    box-sizing: border-box;
    overflow: hidden;
  }
}
.van-row-box {
  .content-all {
    font-style: normal;
    font-weight: 400;
    font-size: 0.32rem;
    color: #14181f;
    display: flex;
    line-height: 28px;
    // align-items: center;
  }
  .number-all {
    font-size: 32px;
    font-family: "DINPro", serif;
    line-height: 38px;
  }
}
.top_box_top {
  color: #fff;
  font-size: 0.4rem;
}
.top_box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  // align-items: center;
  margin-left: 15px;
}
.left_icon {
  display: flex;
}
.btn2 {
  font-size: 0.4rem;
  text-align: center;
  width: 120px;
  padding: 0.17074rem 0.222222rem;
  border-radius: 25px;
  background: #409eff;
  color: #fff;
}
.btn1 {
  width: 120px;
  font-size: 0.4rem;
  text-align: center;
  padding: 0.17074rem 0.222222rem;
  border-radius: 25px;
  border: 1px solid #dcdfe9;
  color: #0d0d0d;
}
.box1_bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 27px;
  // padding-bottom: 10px;
}
.title_box_left {
  width: 50%;
  font-size: 0.4rem;
}
.title_box_right {
  width: 50%;
  font-size: 0.4rem;
}
.green {
  color: #028f52 !important;
}
.cd_box {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 0.5px solid #e5e5e5;
  border-radius: 8px;
  margin-top: 17px;
  box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.3);
}
.cd_box_body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 8px 8px 0 0;
  padding: 18px 8px;
  font-size: 0.4rem;
  font-weight: 500;
}
.cd_box_top {
  display: flex;
  align-items: center;
  background: #f5f5f5;
  border-radius: 8px 8px 0 0;
  padding: 18px 8px;
  font-size: 0.4rem;
  font-weight: 500;
}
.red {
  color: #b60c0d !important;
}
.top_box {
  display: flex;
}
.title_box {
  display: flex;
  font-size: 10px;
  color: #9ea3ae;
}
.user_page {
  width: 100%;
  height: calc(100% - 1.3rem);
  background: #F8FAF9;
  .content {
    width: 100%;
    height: 100%;
    padding: 0 0.3rem;
    .top_icon {
      width: 100%;
      height: 1.5rem;
      display: flex;
      justify-content: flex-end;
      justify-content: space-between;
      align-items: center;
      padding: 0 0.3rem;
      .right_icon {
        width: 25%;
        width: 17%;
        height: 50%;
        display: flex;
        >div {
          width: 50%;
        > div {
          width: 100%;
          height: 100%;
          display: flex;
          justify-content: center;
          justify-content: space-between;
          align-items: center;
          img {
@@ -445,7 +1130,7 @@
          align-items: center;
          justify-content: center;
          >div {
          > div {
            width: 1rem;
            height: 1rem;
            border-radius: 50%;
@@ -489,10 +1174,12 @@
    .center_card {
      width: 100%;
      box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.3);
      // height: 5.3846rem;
      background-image: linear-gradient(to right bottom, #ffffff, #dfedfc);
      background: #fff;
      // background-image: linear-gradient(to right bottom, #ffffff, #dfedfc);
      // background-image: linear-gradient(to right, #ffffff , #dfedfc);
      margin-top: 0.5rem;
      // margin-top: 0.5rem;
      border-radius: 0.15rem;
      padding: 0.5rem 0.4rem;
@@ -502,13 +1189,13 @@
        display: flex;
        align-items: center;
        color: #3d4144;
        font-weight: 600;
        justify-content: center;
        // font-weight: 600;
        // justify-content: center;
        padding-bottom: 0.2rem;
        span {
          font-weight: 600;
          font-size: 0.6rem;
          // font-weight: 600;
          font-size: 0.4rem;
        }
      }
@@ -517,20 +1204,22 @@
        // height: 0.6667rem;
        margin-top: 0.1rem;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.5528rem;
        // align-items: center;
        // justify-content: center;
        // font-size: 0.5528rem;
        padding-bottom: 0.3rem;
        span {
          font-weight: 600;
          font-size: 0.4rem;
        }
      }
      .account{
      .account {
        font-size: 0.6rem;
        font-weight: 600;
      }
      .yk {
        width: 100%;
        height: 0.5rem;
@@ -538,7 +1227,7 @@
        align-items: center;
        justify-content: space-between;
        >div {
        > div {
          width: 33%;
          height: 100%;
          color: #97989d;
@@ -546,7 +1235,8 @@
          align-items: center;
          justify-content: center;
        }
        .orenge{
        .orenge {
          // color: rgb(216, 141, 1) !important;
        }
      }
@@ -603,12 +1293,12 @@
      margin-top: 0.3rem;
      .left_gn {
        width: 40%;
        // width: 40%;
        height: 60%;
        display: flex;
        .l_icon {
          width: 30%;
          // width: 30%;
          height: 100%;
          display: flex;
          justify-content: center;
@@ -621,12 +1311,13 @@
        }
        .r_title {
          width: 70%;
          // width: 70%;
          height: 100%;
          display: flex;
          align-items: center;
          font-size: 0.4046rem;
          color: #404040;
          padding-left: 0.3rem;
          span {
            font-weight: 600;
@@ -635,7 +1326,7 @@
      }
      .right_gos {
        width: 20%;
        // width: 20%;
        height: 60%;
        display: flex;
        align-items: center;
@@ -707,4 +1398,10 @@
    }
  }
}
</style>
/deep/ .el-upload__input {
  display: none !important;
}
input[type="file"] {
  display: none !important;
}
</style>