From 04c7b0163caeae4ab1c5da62e301fa993101cfad Mon Sep 17 00:00:00 2001
From: 闫增涛 <1829501689@qq.com>
Date: 星期一, 31 三月 2025 10:40:45 +0800
Subject: [PATCH] bug修改

---
 pages/personalCenter/index.js |  231 ++++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 186 insertions(+), 45 deletions(-)

diff --git a/pages/personalCenter/index.js b/pages/personalCenter/index.js
index 1ecdbf5..341ca0e 100644
--- a/pages/personalCenter/index.js
+++ b/pages/personalCenter/index.js
@@ -1,6 +1,9 @@
-const app = getApp()
-const menuData = [
-  {
+const app = getApp();
+import moment from 'moment'
+import {
+  loginInfo
+} from '../../assets/js/login';
+const menuData = [{
     title: '鎴戠殑璁㈠崟',
     icon: '/static/images/personal/order.png',
     url: '/packagePersonal/pages/myOrder/index',
@@ -15,7 +18,8 @@
   {
     title: '鎴戠殑璇佷功',
     icon: '/static/images/personal/certificate.png',
-    url: '',
+    // url: '',
+    url: '/pages/personalCenter/certificate/index',
     type: 'certificate',
   },
   {
@@ -39,18 +43,31 @@
   {
     title: '鎴戠殑涓婁紶',
     icon: '/static/images/personal/upload.png',
-    url: '',
+    // url: '',
+    url: '/pages/personalCenter/myUpload/index',
     type: 'upload',
   },
   {
     title: '鍑轰功鐢宠',
     icon: '/static/images/personal/chushu.png',
+    // url: '',
     url: '/packagePersonal/pages/publishBooks/index',
     type: 'publishBooks',
+  },
+  {
+    title: '鎴戠殑璇剧▼',
+    icon: '/static/images/personal/course.png',
+    url: '/packageCourse/pages/course/index',
+    type: 'course',
+  },
+  {
+    title: '鎴戠殑鐝骇',
+    icon: '/static/images/personal/class.png',
+    url: '/packageCourse/pages/studentClass/index',
+    type: 'class',
   }
 ];
-const moreMenu = [
-  {
+const moreMenu = [{
     title: '鎴戠殑娑堟伅',
     icon: '/static/images/personal/notification.png',
     url: '/packagePersonal/pages/myMassage/index',
@@ -63,8 +80,7 @@
     type: 'feedback',
   }
 ];
-const moreMenu1 = [
-  {
+const moreMenu1 = [{
     title: '鍏充簬鎴戜滑',
     icon: '/static/images/personal/about.png',
     url: '/packagePersonal/pages/aboutUs/index?types=jsek_aboutUs',
@@ -77,8 +93,7 @@
     type: 'contact',
   }
 ];
-const userTypeList = [
-  {
+const userTypeList = [{
     lable: '涓亴鏁欏笀',
     value: 'vocSchoolTeachers'
   },
@@ -103,6 +118,7 @@
   data: {
     barHeight: '',
     navBarHeight: '',
+    scoll: false,
     isWhite: false,
     userInfo: {},
     currAuthStep: 1,
@@ -117,6 +133,13 @@
     moreMenu,
     moreMenu1,
     visible: false,
+    baseRefresh: {
+      value: false
+    },
+    loadingProps: {
+      size: '10rpx',
+    },
+    scrollTop: 0,
   },
   /**
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍔犺浇
@@ -129,35 +152,53 @@
       barHeight: systInfo.statusBarHeight,
       navBarHeight: navBarHeight,
     });
-    if (wx.getStorageSync(app.config.tokenKey)) {
-      this.setData({
-        currAuthStep: 2,
-      });
-      this.getUserInfo()
-    } else {
-      this.setData({
-        currAuthStep: 1,
-      });
-      wx.navigateTo({
-        url: "/pages/testLogin/index",
-      });
-    }
 
   },
   onShow() {
-
+    if (typeof this.getTabBar === 'function' && this.getTabBar()) {
+      this.getTabBar().setData({
+        active: 4
+      })
+    }
+    // 妫�鏌ョ櫥褰曠姸鎬�
+    const token = wx.getStorageSync(app.config.tokenKey)
+    if (!token) {
+      loginInfo(app, (data) => {
+        if (data) {
+          this.setData({
+            currAuthStep: 2,
+          });
+          this.getUserInfo()
+          this.getIntegral()
+        } else {
+          wx.switchTab({
+            url: '/pages/home/home',
+          })
+        }
+      })
+    } else {
+      this.setData({
+        currAuthStep: 3,
+      });
+      this.getUserInfo()
+      this.getIntegral()
+    }
   },
   /**
    * 椤甸潰鐩稿叧浜嬩欢澶勭悊鍑芥暟--鐩戝惉鐢ㄦ埛涓嬫媺鍔ㄤ綔
    */
   onPullDownRefresh() {
+    this.setData({
+      'baseRefresh.value': true,
+    })
     this.getUserInfo()
+    this.getIntegral()
+    wx.stopPullDownRefresh()
   },
   /**
    * 椤甸潰涓婃媺瑙﹀簳浜嬩欢鐨勫鐞嗗嚱鏁�
    */
-  onReachBottom() {
-  },
+  onReachBottom() {},
   // 鑾峰彇鐧诲綍鐢ㄦ埛韬唤
   getUserInfo() {
     app.MG.identity.getCurrentAppUser().then(res => {
@@ -167,21 +208,24 @@
         let userTypeData = res.infoList.find((item) => item.type == 'userType')
         let type = "";
         if (userTypeData) {
-          this.data.userTypeActive = JSON.parse(userTypeData.data).userType;
-          type = userTypeList.find((item) => item.value === this.data.userTypeActive)?.lable;
+          this.setData({
+            userTypeActive: JSON.parse(userTypeData.data).userType,
+          });
+          type = this.data.userTypeList.find((item) => item.value === this.data.userTypeActive)?.lable;
         } else {
-          type = '-'
+          type = ''
         }
         let defaultUser = {};
+        let nickNameData = res.infoList.find((item) => item.type == 'nickName')
         let teacherRole = res.roleLinks.find((item) => item.role.refCode == 'teacher')
         let teacherInfos = res.infoList.find((item) => item.type == 'teacherInfo')
-        let secretData = res.secretList.find(i => i.type == 'LoginNameAndPassword')
         let WeChatInfo = res.infoList.find((item) => item.type === "WeChat");
+        let secretData = res.secretList.find(i => i.type == 'LoginNameAndPassword')
         if (teacherRole && teacherInfos) {
           defaultUser = {
             ...teacherInfos,
-            fullName: teacherInfos.fullName,
-            icon: teacherInfos.icon,
+            nickName: nickNameData && JSON.parse(nickNameData.data).nickName ? JSON.parse(nickNameData.data).nickName : WeChatInfo ? WeChatInfo.name : '',
+            icon: nickNameData && JSON.parse(nickNameData.data).icon != "" ? JSON.parse(nickNameData.data).icon : WeChatInfo ? WeChatInfo.icon : '',
             userId: res.userId,
             role: 'Teacher',
             roleId: teacherRole.role.id,
@@ -194,27 +238,50 @@
         } else if (WeChatInfo) {
           defaultUser = {
             ...WeChatInfo,
-            fullName: WeChatInfo.name,
-            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,
-            userType: type
+            userType: type,
+            role: 'Student',
           }
           this.setData({
             currAuthStep: 3,
           });
         } else if (secretData) {
           defaultUser = {
-            fullName: secretData.credential,
-            icon: "",
+            nickName: nickNameData && JSON.parse(nickNameData.data).nickName ? JSON.parse(nickNameData.data).nickName : secretData.credential,
+            icon: nickNameData && JSON.parse(nickNameData.data).icon != "" ? JSON.parse(nickNameData.data).icon : "",
             userId: res.userId,
-            userType: type
+            role: "Student",
+            userType: type,
           }
+          this.setData({
+            currAuthStep: 3,
+          });
         }
         this.setData({
           userInfo: defaultUser
         })
+        if (defaultUser?.role == 'Teacher') {
+          const data = [...this.data.menuData]
+          const list = data.filter(item => item.type != 'class')
+          this.setData({
+            menuData: list
+          })
+        } else {
+          const data = [...this.data.menuData]
+          const list = data.filter(item => item.type != 'course')
+          this.setData({
+            menuData: list
+          })
+        }
         this.getTeacherInfo()
         wx.setStorageSync(app.config.userInfoKey, JSON.stringify(this.data.userInfo));
+        setTimeout(() => {
+          this.setData({
+            'baseRefresh.value': false,
+          })
+        }, 500);
       }
     });
   },
@@ -250,7 +317,6 @@
   },
   //淇敼鐢ㄦ埛绫诲瀷
   editUserType() {
-    console.log(44)
     if (!this.data.visible) {
       this.setData({
         visible: true,
@@ -262,6 +328,38 @@
       visible: e.detail.visible,
     });
   },
+  tabUserTypeClick(e) {
+    let {
+      info
+    } = e.currentTarget.dataset;
+    this.setData({
+      userTypeActive: info.value,
+    });
+  },
+  submit() {
+    let userTypeInfo = {
+      requests: [{
+        data: JSON.stringify({
+          userType: this.data.userTypeActive
+        }),
+        name: '鐢ㄦ埛绫诲瀷',
+        type: 'userType'
+      }]
+    }
+    app.MG.identity.setAppUserInfo(userTypeInfo).then((res) => {
+      if (res) {
+        wx.showToast({
+          title: "淇敼鎴愬姛",
+          icon: 'success',
+          duration: 1000,
+        })
+        this.getUserInfo()
+        this.setData({
+          visible: false,
+        });
+      }
+    })
+  },
   //璁剧疆
   gotoUserEditPage() {
     wx.navigateTo({
@@ -269,9 +367,27 @@
     });
   },
 
+  getIntegral() {
+    app.MG.store
+      .getUserWallet({
+        type: 'integral'
+      })
+      .then((res) => {
+        this.setData({
+          integral: res.balance,
+        });
+      })
+  },
+  getIntegralList() {
+    wx.navigateTo({
+      url: `/pages/personalCenter/pointsRecord/index`,
+    });
+
+  },
+
+
   //鐐瑰嚮鐩綍
   toPages(item) {
-    console.log(item)
     let info = item.currentTarget.dataset.info
     if (info.url) {
       wx.navigateTo({
@@ -286,14 +402,39 @@
     }
   },
 
+  onScroll(e) {
+    if (this.data.scoll) {
+      if (e.detail.scrollTop < 20) {
+        this.data.scoll = false
+        this.isChange(false);
+      }
+    } else {
+      if (e.detail.scrollTop > 20) {
+        this.data.scoll = true
+        this.isChange(true);
+      }
+    }
+  },
+
+  isChange(data) {
+    this.setData({
+      isWhite: data
+    })
+  },
+  // delectBtn() {
+  //   app.MG.ugc
+  //     .delTopicMessage({
+  //       messageIds: [2986, 1302, 1301, 3074, 1305, 1304]
+  //     })
+  //     .then((res) => {
+  //       console.log('鍒犻櫎鎴愬姛')
+  //     })
+  // },
+
   /**
    * 鐢ㄦ埛鐐瑰嚮鍙充笂瑙掑垎浜�
    */
   onShareAppMessage() {
 
   },
-  //璺宠浆鍏充簬鎴戜滑鍜岃仈绯绘垜浠�
-  onAboutUS() {
-    console.log(111);
-  }
 })
\ No newline at end of file

--
Gitblit v1.9.1