From ccda9ec2fe70d8f51ef184eafc04b78d22dfbabd Mon Sep 17 00:00:00 2001
From: litian <C21AF165>
Date: 星期三, 26 六月 2024 15:02:28 +0800
Subject: [PATCH] 小程序,教材,课程

---
 packagePersonal/pages/userSetting/index.js |  121 ++++++++++++++++++++++++++++++++++------
 1 files changed, 103 insertions(+), 18 deletions(-)

diff --git a/packagePersonal/pages/userSetting/index.js b/packagePersonal/pages/userSetting/index.js
index 1fcc0ea..7329d10 100644
--- a/packagePersonal/pages/userSetting/index.js
+++ b/packagePersonal/pages/userSetting/index.js
@@ -10,7 +10,7 @@
   data: {
     userInfo: {},
     defaultAvatarUrl: 'https://cdn-we-retail.ym.tencent.com/miniapp/usercenter/icon-user-center-avatar@2x.png',
-    userInfoBox: false,
+
     editType: '',
     userInfoForm: {
       icon: '',
@@ -24,6 +24,9 @@
     emailError: false,
     imgCode: '',
     countDown: 0,
+    mailCountDown: 0,
+    userInfoBox: false,
+    height: '', //灞忓箷楂樺害
   },
 
   /**
@@ -46,7 +49,15 @@
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鏄剧ず
    */
   onShow() {
-
+    var that = this;
+    // 鍔ㄦ�佽幏鍙栧睆骞曢珮搴�
+    wx.getSystemInfo({
+      success: (result) => {
+        that.setData({
+          height: result.windowHeight
+        });
+      },
+    })
   },
   // 鑾峰彇鐧诲綍鐢ㄦ埛韬唤
   getUserInfo() {
@@ -64,8 +75,8 @@
         if (teacherRole && teacherInfos) {
           defaultUser = {
             ...teacherInfos,
-            nickName: nickNameData ? JSON.parse(nickNameData.data).nickName : teacherInfos.name,
-            icon: nickNameData ? JSON.parse(nickNameData.data).icon : WeChatInfo.icon,
+            nickName: nickNameData ? JSON.parse(nickNameData.data).nickName : WeChatInfo ? WeChatInfo.name : '',
+            icon: nickNameData ? JSON.parse(nickNameData.data).icon : WeChatInfo ? WeChatInfo.icon : '',
             userId: res.userId,
             role: 'Teacher',
             roleId: teacherRole.role.id,
@@ -75,8 +86,8 @@
         } else if (WeChatInfo) {
           defaultUser = {
             ...WeChatInfo,
-            nickName: nickNameData ? JSON.parse(nickNameData.data).nickName : WeChatInfo.name,
-            icon: JSON.parse(nickNameData.data).icon ? JSON.parse(nickNameData.data).icon : WeChatInfo.icon,
+            nickName: nickNameData && JSON.parse(nickNameData.data).nickName ? JSON.parse(nickNameData.data).nickName : WeChatInfo.name,
+            icon: nickNameData && JSON.parse(nickNameData.data).icon ? JSON.parse(nickNameData.data).icon : WeChatInfo.icon,
             userId: res.userId,
             phoneNumber: phoneInfo?.credential,
             Email: emailInfo?.credential
@@ -107,7 +118,7 @@
         editType: info,
         "userInfoForm.captcha": "",
         "userInfoForm.code": "",
-        "userInfoForm.nickName": ''
+        "userInfoForm.nickName": this.data.userInfo.nickName,
       });
     }
     this.getImgCapcha()
@@ -116,6 +127,7 @@
     this.setData({
       userInfoBox: e.detail.visible,
       countDown: 0,
+      mailCountDown: 0
     });
   },
   editIconInfo(e) {
@@ -207,11 +219,17 @@
     const {
       phoneError
     } = this.data;
-    const isPhoneNumber = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/.test(e.detail.value);
-    if (phoneError === isPhoneNumber) {
+    if (e.detail.value) {
+      const isPhoneNumber = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/.test(e.detail.value);
+      if (phoneError === isPhoneNumber) {
+        this.setData({
+          phoneError: !isPhoneNumber,
+          "userInfoForm.phone": e.detail.value,
+        });
+      }
+    } else {
       this.setData({
-        phoneError: !isPhoneNumber,
-        "userInfoForm.phone": e.detail.value,
+        phoneError: false,
       });
     }
   },
@@ -220,11 +238,19 @@
     const {
       emailError
     } = this.data;
-    const isPhoneNumber = /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/.test(e.detail.value);
-    if (emailError === isPhoneNumber) {
+    if (e.detail.value) {
+      const isPhoneNumber = /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/.test(e.detail.value);
+      if (emailError === isPhoneNumber) {
+        this.setData({
+          emailError: !isPhoneNumber,
+        });
+      }
       this.setData({
-        emailError: !isPhoneNumber,
         "userInfoForm.email": e.detail.value,
+      });
+    } else {
+      this.setData({
+        emailError: false,
       });
     }
   },
@@ -251,6 +277,7 @@
   },
 
   getPhoneCode() {
+    if (this.data.countDown > 0) return false
     if (this.data.userInfoForm.phone && this.data.userInfoForm.captcha) {
       app.MG.identity
         .getPhoneCode({
@@ -287,14 +314,14 @@
   getSecond(time) {
     let timer = null
     if (!timer) {
-      let countDown = time;
       this.setData({
         countDown: time,
       });
+      let conut = this.data.countDown;
       timer = setInterval(() => {
-        countDown--
+        conut--
         this.setData({
-          countDown: countDown,
+          countDown: conut,
         });
         if (this.data.countDow == 0) {
           clearInterval(timer)
@@ -320,7 +347,7 @@
               duration: 1000
             })
             // 寮�鍚煭淇¢獙璇佸�掕鏃�
-            this.getSecond(60)
+            this.getSecondEmail(60)
           } else {
             wx.showToast({
               title: '閭楠岃瘉鐮佸彂閫佸け璐�',
@@ -338,9 +365,35 @@
       })
     }
   },
+  getSecondEmail(time) {
+    if (this.data.mailCountDown <= 0) {
+      this.setData({
+        mailCountDown: time,
+      });
+
+      let timer = setInterval(() => {
+        let count = this.data.mailCountDown - 1;
+        this.setData({
+          mailCountDown: count,
+        });
+
+        if (count === 0) {
+          clearInterval(timer);
+        }
+      }, 1000);
+    }
+  },
 
   confirmInfo() {
     if (this.data.editType == 'nickName') {
+      if (!this.data.userInfoForm.nickName) {
+        wx.showToast({
+          title: '璇疯緭鍏ユ樀绉�',
+          icon: 'none',
+          duration: 1000
+        })
+        return false;
+      }
       let userTypeInfo = {
         "requests": [{
           data: JSON.stringify({
@@ -366,6 +419,22 @@
       })
 
     } else if (this.data.editType == 'phone') {
+      if (!this.data.userInfoForm.phone) {
+        wx.showToast({
+          title: '璇疯緭鍏ユ墜鏈哄彿',
+          icon: 'none',
+          duration: 1000
+        })
+        return false;
+      }
+      if (!this.data.userInfoForm.code) {
+        wx.showToast({
+          title: '璇疯緭鍏ラ獙璇佺爜',
+          icon: 'none',
+          duration: 1000
+        })
+        return false;
+      }
       let query = {
         phoneNumber: this.data.userInfoForm.phone,
         phoneCaptcha: this.data.userInfoForm.code
@@ -397,6 +466,22 @@
         }
       })
     } else if (this.data.editType == 'email') {
+      if (!this.data.userInfoForm.email) {
+        wx.showToast({
+          title: '璇疯緭鍏ラ偖绠�',
+          icon: 'none',
+          duration: 1000
+        })
+        return false;
+      }
+      if (!this.data.userInfoForm.code) {
+        wx.showToast({
+          title: '璇疯緭鍏ラ獙璇佺爜',
+          icon: 'none',
+          duration: 1000
+        })
+        return false;
+      }
       let query = {
         eMail: this.data.userInfoForm.email,
         captcha: this.data.userInfoForm.code

--
Gitblit v1.9.1