From a1fb6cd3c3b8a48da4f9393e09718da04f51a373 Mon Sep 17 00:00:00 2001
From: DESKTOP-CVS3R96\我恁爹 <11>
Date: Tue, 15 Nov 2022 09:58:00 +0800
Subject: [PATCH] 11111

---
 src/page/newUser/index.vue |  274 +++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 217 insertions(+), 57 deletions(-)

diff --git a/src/page/newUser/index.vue b/src/page/newUser/index.vue
index 92f5396..2e6175b 100644
--- a/src/page/newUser/index.vue
+++ b/src/page/newUser/index.vue
@@ -6,19 +6,19 @@
           <div @click="goToTopUp()">
             <img src="@/assets/img/qianbao.png" alt />
           </div>
-          <div>
+          <div @click="goOnline">
             <img src="@/assets/img/kefu.png" alt />
           </div>
         </div>
       </div>
-      <div class="users">
+      <div class="users" @click="goWall()">
         <div class="left_tou">
           <div class="left_tx">
             <div>
               <img src="@/assets/img/eslogo.png" alt />
             </div>
           </div>
-          <div class="right_name" @click="$router.push('/wallet')">
+          <div class="right_name">
             <span>{{ userInfo.realName ? userInfo.realName : userInfo.phone }}</span>
           </div>
         </div>
@@ -28,58 +28,82 @@
       </div>
       <div class="center_card">
         <div class="keyon">
-          <span>{{ '总资产' }}</span>
+          <span>{{ $t('hj49') }}</span>
         </div>
-        <div class="num_price">
-          <p
-            v-if="this.$store.state.settingForm.indexDisplay && !this.$store.state.settingForm.futuresDisplay"
-            class="account"
-          >
+        <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)
-            }}
+                $store.state.userInfo.userIndexAmt).toFixed(2)
+            }}11
           </p>
-          <p
-            v-else-if="!this.$store.state.settingForm.indexDisplay && this.$store.state.settingForm.futuresDisplay"
-            class="account"
-          >
+          <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)
-            }}
+                $store.state.userInfo.userFuturesAmt).toFixed(2)
+            }}22
           </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).toFixed(2) }}</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>
+            <span>{{ $t('hj55') }}</span>
           </div>
           <div>
-            <span>{{ '可用余额(¥)' }}</span>
+            <span>{{ $t('hj141') }}</span>
+          </div>
+
+          <div>
+            <span>{{ $t('hj48') }}</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>
+                :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>
+                :class="$store.state.userInfo.allProfitAndLose > 0 ? ' red' : $store.state.userInfo.allProfitAndLose < 0 ? ' green' : ''">{{
+                    '¥ ' + $store.state.userInfo.allProfitAndLose
+                }}</span>
             </span>
           </div>
-          <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>
+          <span>{{ selectUserFlag ? $t('hj142') : $t('hj143') }}</span>
         </div>
       </div>
       <div class="jy" @click="goToSettings()">
@@ -88,7 +112,7 @@
             <img src="../../assets/img/xiugaimima.png" alt />
           </div>
           <div class="r_title">
-            <span>{{ '修改密码' }}</span>
+            <span>{{ $t('hj144') }}</span>
           </div>
         </div>
         <div class="right_gos">
@@ -101,7 +125,7 @@
             <img src="../../assets/img/huazhuan2.png" alt />
           </div>
           <div class="r_title">
-            <span>{{ '资金划转' }}</span>
+            <span>{{ $t('hj145') }}</span>
           </div>
         </div>
         <div class="right_gos">
@@ -114,7 +138,7 @@
             <img src="../../assets/img/shiming.png" alt />
           </div>
           <div class="r_title">
-            <span>{{ '实名认证' }}</span>
+            <span>{{ $t('hj146') }}</span>
           </div>
         </div>
         <div class="right_gos">
@@ -127,7 +151,7 @@
             <img src="../../assets/img/shiming.png" alt />
           </div>
           <div class="r_title">
-            <span>{{ '绑定银行卡' }}</span>
+            <span>{{ $t('hj147') }}</span>
           </div>
         </div>
         <div class="right_gos">
@@ -140,7 +164,7 @@
             <img src="../../assets/img/out2.png" alt />
           </div>
           <div class="r_title">
-            <span>{{ '退出登录' }}</span>
+            <span>{{ $t('hj148') }}</span>
           </div>
         </div>
         <div class="right_gos">
@@ -152,7 +176,7 @@
       <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" />
@@ -160,7 +184,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" />
@@ -168,18 +192,18 @@
         </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>
-    <loginPopup />
+
   </div>
 </template>
 
@@ -187,7 +211,8 @@
 import * as api from "@/axios/api";
 import { Toast } from "mint-ui";
 import { isNull, pwdReg } from "@/utils/utils";
-import loginPopup from "@/components/loginDialog.vue";
+import { MessageBox } from 'mint-ui'
+
 
 export default {
   name: "newUser",
@@ -199,38 +224,90 @@
       oldPassword: "", // 旧密码
       newPassword: "", // 新密码
       cirNewPassword: "", //确认新密码
-      userInfo: {},
+      userInfo: [],
+      onlineService: "",
     };
   },
   components: {
-    loginPopup,
   },
   created() {
     this.getUserInfo();
+    this.getInfoSite();
   },
   methods: {
+    goOnline() {
+      if (navigator.vibrate) {
+        // 支持
+        navigator.vibrate([55]);
+      }
+      window.location.href = this.onlineService;
+    },
+    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')
+    },
     handleZh() {
       this.selectUserFlag = !this.selectUserFlag;
-      this.dialogVisible = true;
+
+      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('hj165'), {
+        confirmButtonText: this.$t('hj161'),
+        cancelButtonText: this.$t('hj106'),
+      }).then(() => {
+        this.toRegister();
+      }).catch(() => {
+
+      });
     },
     goToSettings() {
+      if (this.userInfo.length == 0) {
+        this.$store.commit('dialogVisible', true);
+        return;
+      }
       // 每次打开dialog 清空密码数据
       this.settingDialog = !this.settingDialog;
       if (this.settingDialog) {
@@ -240,17 +317,29 @@
       }
     },
     handleGoToTransfer() {
+      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);
+        return;
+      }
       this.$router.push("/authentications");
     },
     handleGoToBankCard() {
+      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) {
@@ -268,10 +357,10 @@
         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 {
         // 修改密码
@@ -290,9 +379,13 @@
             this.settingDialog = false;
           }
         } else {
-          Toast("新密码不一致");
+          Toast(this.$t('hj155'));
           this.settingDialog = false;
         }
+      }
+      if (navigator.vibrate) {
+        // 支持
+        navigator.vibrate([55]);
       }
     }
   }
@@ -300,29 +393,42 @@
 </script>
 
 <style scoped lang="less">
+.green {
+  color: #028f52 !important;
+}
+
+.red {
+  color: #b60c0d !important;
+}
+
 .user_page {
   width: 100%;
   height: calc(100% - 1.3rem);
+
   .content {
     width: 100%;
     height: 100%;
     padding: 0 0.3rem;
+
     .top_icon {
       width: 100%;
       height: 1.5rem;
       display: flex;
       justify-content: flex-end;
       align-items: center;
+
       .right_icon {
         width: 25%;
         height: 50%;
         display: flex;
-        > div {
+
+        >div {
           width: 50%;
           height: 100%;
           display: flex;
           justify-content: center;
           align-items: center;
+
           img {
             width: 0.6rem;
             height: 0.6rem;
@@ -330,6 +436,7 @@
         }
       }
     }
+
     .users {
       width: 100%;
       height: 1.7949rem;
@@ -338,10 +445,12 @@
       display: flex;
       align-items: center;
       justify-content: space-between;
+
       .left_tou {
         width: 80%;
         height: 70%;
         display: flex;
+
         .left_tx {
           width: 20%;
           height: 100%;
@@ -349,29 +458,34 @@
           display: flex;
           align-items: center;
           justify-content: center;
-          > div {
+
+          >div {
             width: 1rem;
             height: 1rem;
             border-radius: 50%;
             overflow: hidden;
             background: rgb(211, 211, 211);
+
             img {
               width: 100%;
               height: 100%;
             }
           }
         }
+
         .right_name {
           width: 80%;
           height: 100%;
           display: flex;
           align-items: center;
           font-size: 0.4415rem;
+
           span {
             font-weight: 600;
           }
         }
       }
+
       .right_go {
         width: 20%;
         height: 70%;
@@ -379,69 +493,98 @@
         justify-content: flex-end;
         align-items: center;
         padding-right: 0.2rem;
+
         img {
           width: 0.6rem;
           height: 0.6rem;
         }
       }
     }
+
     .center_card {
       width: 100%;
-      height: 5.3846rem;
+      // height: 5.3846rem;
       background-image: linear-gradient(to right bottom, #ffffff, #dfedfc);
       // background-image: linear-gradient(to right, #ffffff , #dfedfc);
       margin-top: 0.5rem;
       border-radius: 0.15rem;
       padding: 0.5rem 0.4rem;
+
       .keyon {
         width: 100%;
-        height: 0.5128rem;
         font-size: 0.359rem;
         display: flex;
         align-items: center;
         color: #3d4144;
+        font-weight: 600;
+        justify-content: center;
+        padding-bottom: 0.2rem;
+
         span {
           font-weight: 600;
+          font-size: 0.6rem;
         }
       }
+
       .num_price {
         width: 100%;
-        height: 0.6667rem;
+        // height: 0.6667rem;
         margin-top: 0.1rem;
         display: flex;
         align-items: center;
+        justify-content: center;
         font-size: 0.5528rem;
+        padding-bottom: 0.3rem;
+
         span {
           font-weight: 600;
         }
       }
+
+      .account {
+        font-size: 0.6rem;
+        font-weight: 600;
+      }
+
       .yk {
         width: 100%;
         height: 0.5rem;
         display: flex;
         align-items: center;
-        > div {
-          width: 50%;
+        justify-content: space-between;
+
+        >div {
+          width: 33%;
           height: 100%;
           color: #97989d;
           display: flex;
           align-items: center;
+          justify-content: center;
+        }
+
+        .orenge {
+          // color: rgb(216, 141, 1) !important;
         }
       }
+
       .yk.es {
         margin-top: 0.3rem;
       }
+
       .yk.as {
         font-size: 0.4033rem;
         margin-top: 0.1rem;
+
         span {
           color: #000;
           font-weight: 600;
         }
+
         .bzz {
-          color: #4ea364;
+          // color: #4ea364;
         }
       }
+
       .btns {
         width: 100%;
         height: 1.2821rem;
@@ -453,14 +596,17 @@
         font-size: 0.4015rem;
         color: #fff;
         margin-top: 0.35rem;
+
         span {
           font-weight: 600;
         }
       }
+
       .active {
         background: #4ea364;
       }
     }
+
     .jy {
       width: 100%;
       height: 1.5rem;
@@ -471,21 +617,25 @@
       justify-content: space-between;
       padding: 0 0.3rem;
       margin-top: 0.3rem;
+
       .left_gn {
         width: 40%;
         height: 60%;
         display: flex;
+
         .l_icon {
           width: 30%;
           height: 100%;
           display: flex;
           justify-content: center;
           align-items: center;
+
           img {
             width: 0.5041rem;
             height: 0.5041rem;
           }
         }
+
         .r_title {
           width: 70%;
           height: 100%;
@@ -493,17 +643,20 @@
           align-items: center;
           font-size: 0.4046rem;
           color: #404040;
+
           span {
             font-weight: 600;
           }
         }
       }
+
       .right_gos {
         width: 20%;
         height: 60%;
         display: flex;
         align-items: center;
         justify-content: flex-end;
+
         img {
           width: 0.6rem;
           height: 0.6rem;
@@ -512,10 +665,12 @@
     }
   }
 }
+
 .setting_content {
   width: 100%;
   height: 5rem;
   padding: 0.3rem;
+
   .old_password {
     width: 100%;
     height: 1rem;
@@ -523,22 +678,26 @@
     border-radius: 0.15rem;
     display: flex;
     margin-top: 0.5rem;
+
     .left_titles {
       width: 25%;
       height: 100%;
       display: flex;
       align-items: center;
       padding-left: 0.2rem;
+
       // justify-content: flex-end;
       span {
         font-weight: 600;
       }
     }
+
     .right_password_input {
       width: 80%;
       height: 100%;
       display: flex;
       align-items: center;
+
       input {
         width: 100%;
         height: 100%;
@@ -546,6 +705,7 @@
       }
     }
   }
+
   .btn_setting {
     width: 100%;
     height: 1.3rem;
@@ -557,10 +717,10 @@
     display: flex;
     align-items: center;
     justify-content: center;
+
     span {
       font-weight: 600;
     }
   }
 }
-
 </style>
\ No newline at end of file

--
Gitblit v1.9.3