1
jhzh
2025-07-22 421087f05bbcee88211f2b95afd4843da521998b
src/page/newUser/setting.vue
@@ -1,32 +1,26 @@
<template>
  <div class="content">
    <div class="top_back">
    <!-- <van-nav-bar
      :placeholder="true"
      :safe-area-inset-top="true"
      :title="$t('setting')"
      left-arrow
      @click-left="$router.go(-1)"
    >
    </van-nav-bar> -->
    <!-- <div class="top_back">
      <div class="left_back_icon" @click="$router.go(-1)">
        <img src="../../assets/img/zuojiantou.png" alt />
      </div>
      <div class="titles">
        <span>{{ $t("setting") }}</span>
      </div>
    </div>
    <div style="width: 100%; height: 10px; background-color: #f8f8f8"></div>
    <div class="jy" @click="handleGoToBankCard()">
      <div class="left_gn">
        <div class="l_icon">
          <!-- <img src="../../assets/img/yeb.png" alt /> -->
        </div>
        <div class="r_title">
          <span>{{ $t("hj147") }}</span>
        </div>
      </div>
      <div class="right_gos">
        <img src="../../assets/img/youjiantou.png" alt />
      </div>
    </div>
    </div> -->
    <div style=" height: 10px; background-color: #f8f8f8"></div>
    <div class="jy" @click="goToSettings()">
      <div class="left_gn">
        <div class="l_icon">
          <!-- <img src="../../assets/img/yeb.png" alt /> -->
          <img src="../../assets/img/login_pass.svg" alt />
        </div>
        <div class="r_title">
          <span>{{ $t("hj144") }}</span>
@@ -36,26 +30,55 @@
        <img src="../../assets/img/youjiantou.png" alt />
      </div>
    </div>
    <!--       <div class="jy" @click="handleGoToTransfer()">
         <div class="left_gn">
            <div class="l_icon">
            </div>
            <div class="r_title">
               <span>{{ $t('hj145') }}</span>
            </div>
         </div>
         <div class="right_gos">
            <img src="../../assets/img/youjiantou.png" alt />
         </div>
      </div> -->
    <div class="jy" @click="handleGoToAuthentication()">
    <div class="jy" @click="handleGoToBankCard1()">
      <div class="left_gn">
        <div class="l_icon">
          <!-- <img src="../../assets/img/yeb.png" alt /> -->
          <img src="../../assets/img/company_Introduction.svg" alt />
        </div>
        <div class="r_title">
          <span>{{ $t("hj146") }}</span>
          <span>{{ $t("关于我们") }}</span>
        </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/i18.svg" alt />
        </div>
        <div class="r_title">
          <span>{{ $t("hj147") }}</span>
        </div>
      </div>
      <div class="right_gos">
        <img src="../../assets/img/youjiantou.png" alt />
      </div>
    </div> -->
    <div class="jy" @click="clicklang()">
      <div class="left_gn">
        <div class="l_icon">
          <img src="../../assets/img/i18.svg" alt />
        </div>
        <div class="r_title">
          <span>{{ $t("yy") }}</span>
        </div>
      </div>
      <div class="right_gos">
        {{language}}
        <img src="../../assets/img/youjiantou.png" alt />
      </div>
    </div>
    <!-- <div class="jy" @click="handleGoToAuthentication()">
      <div class="left_gn">
        <div class="l_icon">
          <img src="../../assets/img/login_pass.svg" alt />
        </div>
        <div class="r_title">
          <span>KYC</span>
        </div>
      </div>
      <div class="right_gos">
@@ -64,34 +87,22 @@
        </div>
        <img v-else 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/log_out.svg" alt />
        </div>
        <div class="r_title">
          <span>{{ $t("hj148") }}</span>
        </div>
      </div>
      <div class="right_gos">
        <img  src="../../assets/img/youjiantou.png" alt />
      </div>
    </div>
    <!--
      <div class="jy" @click="subclick()">
         <div class="left_gn">
            <div class="l_icon">
            </div>
            <div class="r_title">
               <span>{{ $t('subdk') }}</span>
            </div>
         </div>
         <div class="right_gos">
            <img src="../../assets/img/youjiantou.png" alt />
         </div>
      </div>
      <div class="jy" @click="yebclick()">
         <div class="left_gn">
            <div class="l_icon">
            </div>
            <div class="r_title">
               <span>{{ $t('yeb') }}</span>
            </div>
         </div>
         <div class="right_gos">
            <img src="../../assets/img/youjiantou.png" alt />
         </div>
      </div> -->
    <div class="jy" @click="clicklang()">
    <!-- <div class="jy" @click="clicklang()">
      <div class="left_gn">
        <div class="l_icon"></div>
        <div class="r_title">
@@ -101,26 +112,9 @@
      <div class="right_gos">
        <div style="margin-right: 10px">{{ language }}</div>
      </div>
    </div>
    <van-popup
      v-model="settingDialog"
      position="bottom"
      :style="{ height: '35%' }"
      @close="popClose"
    >
      <div
        class="lang_box"
        v-for="(item, index) in actions"
        :key="index"
        @click="qkclick(item)"
      >
        <div
          :class="$i18n.locale == item.lang ? 'lang_box_txt' : 'lang_box_txta'"
        >
          {{ item.text }}
        </div>
      </div>
    </van-popup>
    </div> -->
    <Language ref="language" @onChange="onChange" />
    <van-popup v-model="pswDialog" position="bottom" :style="{ height: '40%' }">
      <div class="setting_content">
        <div class="old_password">
@@ -152,11 +146,11 @@
        </div>
      </div>
    </van-popup>
    <div class="btn_s">
    <!-- <div class="btn_s">
      <button class="btn_s_box" @click="handleOutLoginClick()">
        {{ $t("hj148") }}
      </button>
    </div>
    </div> -->
  </div>
</template>
@@ -165,6 +159,8 @@
import { Toast, MessageBox } from "mint-ui";
import { isNull, pwdReg } from "@/utils/utils";
import { mapMutations } from "vuex";
import { Notify } from "vant";
import Language from "@/components/Language/index.vue";
export default {
  name: "newUser",
@@ -180,54 +176,19 @@
      userInfo: [],
      onlineService: "",
      language: "",
      actions: [
        {
          text: "English",
          icon: require("@/assets/ico/english.png"),
          lang: "zh-CN",
        },
        { text: "हिंदी", icon: require("@/assets/ico/india.png"), lang: "en" },
        { text: "한국인", icon: require("@/assets/ico/india.png"), lang: "hy" },
        {
          text: "ภาษาไทย",
          icon: require("@/assets/ico/india.png"),
          lang: "ty",
        },
        {
          text: "日本語にほんご",
          icon: require("@/assets/ico/india.png"),
          lang: "ry",
        },
        { text: "繁体中文", icon: require("@/assets/ico/tw.png"), lang: "tw" },
      ],
    };
  },
  components: {},
  components: { Language },
  created() {
    this.getUserInfo();
    this.language = window.localStorage.getItem("language");
    console.log(window.localStorage.getItem("language"));
    if (this.language == "zh-CN") {
      this.language = "English";
    } else {
      this.language = "हिंदी";
    }
  },
  methods: {
    ...mapMutations(["undataToken"]),
    popClose() {
      this.settingDialog = false;
    },
    qkclick(e) {
      this.settingDialog = false;
      window.localStorage.setItem("language", e.lang);
      this.$i18n.locale = e.lang;
      this.language = e.text;
    onChange(e) {
      this.language = e;
    },
    clicklang() {
      this.settingDialog = true;
      this.$refs.language.settingDialog = true;
    },
    yebclick() {
      this.$router.push("/yeb");
@@ -308,6 +269,7 @@
        // 判断是否登录
        this.$store.commit("dialogVisible", false);
        this.$store.state.userInfo = data.data;
        document.title = 'Setting'
        this.userInfo = data.data;
      } else {
        this.$store.commit("dialogVisible", true);
@@ -326,14 +288,14 @@
    },
    handleOutLoginClick() {
      // 退出登录
      MessageBox.confirm(this.$t("hj149") + "?", this.$t("hj165"), {
        confirmButtonText: this.$t("hj161"),
      MessageBox.confirm(this.$t("hj149"), this.$t(""), {
        confirmButtonText: this.$t("qr"),
        cancelButtonText: this.$t("hj106"),
      })
        .then(() => {
          this.toRegister();
        })
        .catch(() => {});
        // .catch(() => {});
    },
    goToSettings() {
      // 每次打开dialog 清空密码数据
@@ -354,7 +316,11 @@
      this.$router.push("/download");
    },
    handleGoToBankCard() {
      this.$router.push("/bankCard");
      // this.$router.push("/bankCard");
      this.$router.push("/banklist");
    },
    handleGoToBankCard1() {
      this.$router.push("/bankCard1");
    },
    async toRegister() {
      // 注销登陆
@@ -392,8 +358,14 @@
          let data = await api.changePassword(opts);
          if (data.status === 0) {
            this.changeLoginPsdBox = false;
            Toast(data.msg);
            this.pswDialog = false;
            this.settingDialog = false;
            Notify({
              type: "success",
              message: this.$t("密码修改成功"),
            });
            this.toRegister();
          } else {
            Toast(data.msg);
            this.settingDialog = false;
@@ -413,9 +385,26 @@
</script>
<style scoped lang="less">
  /deep/ .van-nav-bar__content {
    height: 65px;
  }
  /deep/ .van-nav-bar__title {
    font-family: "DINPro";
    width: 100%;
    height: 1.17333rem;
    display: flex;
    justify-content: center;
    align-items: center;
    font-style: normal;
    font-weight: 500;
    font-size: 0.48rem;
    color: #14181f;
  }
.right_gos_txt {
  margin-right: 15px;
}
.setting_content {
  width: 100%;
  height: 5rem;
@@ -449,7 +438,7 @@
      align-items: center;
      input {
        width: 100%;
        // width: 100%;
        height: 100%;
        padding-left: 0.2rem;
      }
@@ -457,7 +446,7 @@
  }
  .btn_setting {
    width: 100%;
    // width: 100%;
    height: 1.3rem;
    border-radius: 0.15rem;
    background: #2d6ae9;
@@ -473,34 +462,38 @@
    }
  }
}
.lang_box_txta {
  width: 100%;
  // width: 100%;
  height: 100px;
  text-align: center;
  line-height: 100px;
  border-bottom: 1px solid #ecf5ff;
}
.lang_box_txt {
  width: 100%;
  // width: 100%;
  height: 100px;
  text-align: center;
  line-height: 100px;
  border-bottom: 1px solid #ecf5ff;
  color: #2196f3;
}
.lang_box {
  width: 100%;
  // width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.btn_s_box {
  border: none;
  background: #409eff;
  color: #fff;
  height: 70px;
  width: 100%;
  // width: 100%;
  line-height: 70px;
  font-size: 16px;
  text-align: center;
@@ -508,14 +501,16 @@
  font-weight: 600;
  margin: 40px 20px 0 20px;
}
.btn_s {
  width: 100%;
  // width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.jy {
  width: 100%;
  // width: 100%;
  height: 1.5rem;
  // border-radius: 0.2rem;
  background: #fff;
@@ -523,6 +518,7 @@
  align-items: center;
  justify-content: space-between;
  // padding: 0 0.3rem;
  // background-color: red;''
  padding-top: 0.3rem;
  border-bottom: 1px solid #ecf5ff;
@@ -537,7 +533,7 @@
      display: flex;
      justify-content: center;
      align-items: center;
      padding-left: 0.4rem;
      img {
        width: 0.5041rem;
        height: 0.5041rem;
@@ -549,12 +545,11 @@
      height: 100%;
      display: flex;
      align-items: center;
      font-size: 0.4046rem;
      color: #404040;
      padding-left: 0.4rem;
      font-size: 0.3733333rem;
      color: #185546;
      padding-left: 0.2rem;
      span {
        font-weight: 600;
        // font-weight: 600;
      }
    }
  }
@@ -572,6 +567,7 @@
    }
  }
}
body {
  background-color: #f8f8f8;
}
@@ -628,15 +624,17 @@
}
.content {
  width: 100%;
  // width: 100%;
  margin: 0px 20px;
  height: 100%;
  // padding: 0 0.3rem;
  .top_back {
    width: 100%;
    // width: 100%;
    height: 2rem;
    display: flex;
    background-color: #fff;
    > div {
      width: 10%;
      height: 100%;
@@ -651,7 +649,7 @@
    }
    .titles {
      width: 100%;
      // width: 100%;
      height: 1.5rem;
      margin-top: 15px;
      // margin-left: 110px;
@@ -666,4 +664,4 @@
    }
  }
}
</style>
</style>