From bbba5d26e9e26c910ed337dcb65f462752ee6dce Mon Sep 17 00:00:00 2001
From: litian <C21AF165>
Date: 星期四, 12 九月 2024 09:11:47 +0800
Subject: [PATCH] fenxiang

---
 pages/personalCenter/certificate/index.js |  200 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 196 insertions(+), 4 deletions(-)

diff --git a/pages/personalCenter/certificate/index.js b/pages/personalCenter/certificate/index.js
index cd7b7c1..fc8bae3 100644
--- a/pages/personalCenter/certificate/index.js
+++ b/pages/personalCenter/certificate/index.js
@@ -1,17 +1,55 @@
+const app = getApp();
+import Wxml2Canvas from 'wxml2canvas';
+import moment from 'moment'
+import {
+  getPublicImage
+} from "../../../assets/js/middleGround/tool.js";
 Page({
 
   /**
    * 椤甸潰鐨勫垵濮嬫暟鎹�
    */
   data: {
-
+    active: 0,
+    topicIdOrRefCode: "applyCourseCertificate",
+    tabList: [{
+        label: '璇剧▼璇佷功',
+        key: 1,
+        topicIdOrRefCode: 'applyCourseCertificate',
+      },
+      {
+        label: '鏁欐潗璇佷功',
+        key: 2,
+        topicIdOrRefCode: 'applyTextbookCertificate',
+      }
+    ],
+    list: [],
+    //鍒嗛〉
+    page: 1,
+    limit: 6,
+    pageTotalCount: 0,
+    bottomLoading: false,
+    isMoreData: false,
+    // 杩斿洖椤堕儴 
+    isBackTop: false,
+    setScrollValue: 0,
+    skeletonLoding: true,
+    visible: false,
+    showIndex: false,
+    closeBtn: false,
+    deleteBtn: false,
+    images: [],
+    pubCertificateHide: false,
+    contentData: {},
+    rzzsImg: ''
   },
 
   /**
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍔犺浇
    */
   onLoad(options) {
-
+    console.log(options);
+    this.getDataList(false);
   },
 
   /**
@@ -28,6 +66,127 @@
 
   },
 
+  tabBookClick(item) {
+    let that = this;
+    let info = this.data.tabList[item.detail.value]
+    that.setData({
+      skeletonLoding: true,
+      active: item.detail.value,
+      topicIdOrRefCode: info.topicIdOrRefCode,
+      list: [],
+      page: 1,
+      bottomLoading: false,
+      isMoreData: false,
+    })
+    that.getDataList(false);
+  },
+  getDataList(isReachBottom) {
+    const data = {
+      start: this.data.page * this.data.limit - this.data.limit,
+      size: this.data.limit,
+      topicIdOrRefCode: this.data.topicIdOrRefCode,
+      appRefCode: app.config.appRefCode,
+      filterList: [],
+      sort: {
+        type: 'Desc',
+        field: 'CreateDate'
+      }
+    }
+    app.MG.ugc.getTopicMessageList(data)
+      .then((res) => {
+        if (res.datas.length > 0) {
+          res.datas.forEach((item) => {
+            if (item.content) {
+              item.productList = JSON.parse(item.content)
+              item.productList.updateDate = moment(item.updateDate).format('YYYY骞碝M鏈�')
+              item.productList.userPicture = getPublicImage(item.productList.userPicture, '', '')
+            }
+          })
+          let dataList = res.datas;
+          //瑙﹀簳鍔犺浇鏂版暟鎹苟淇濈暀鑰佹暟鎹�
+          if (isReachBottom) {
+            dataList = [...this.data.list, ...dataList] //灏嗘柊鏁版嵁鍔犲叆鑰佹暟鎹腑
+          }
+          this.setData({
+            list: dataList,
+            pageTotalCount: res.totalSize,
+            bottomLoading: false,
+            isMoreData: dataList.length > 0 ? false : true,
+            skeletonLoding: false,
+            loading: false
+          })
+        } else {
+          this.setData({
+            list: [],
+            skeletonLoding: false,
+            loading: false
+          })
+        }
+      })
+      .catch(() => {})
+  },
+  goBookDetails(e) {
+    let productList = e.currentTarget.dataset.book.productList
+    this.setData({
+      contentData: productList,
+      pubCertificateHide: true,
+    })
+    this.drawImage1()
+  },
+  drawImage1() {
+    let that = this;
+    let drawMyImage1 = new Wxml2Canvas({
+      width: that.data.imageWidth,
+      height: that.data.imageHeight,
+      element: 'myCanvas1',
+      progress(percent) {},
+      finish(url) {
+        wx.getFileSystemManager().readFile({
+          filePath: url,
+          encoding: 'base64',
+          success: (res) => {
+            let MyImageBase641 = 'data:image/jpg;base64,' + res.data
+            if (MyImageBase641) {
+              that.setData({
+                rzzsImg: MyImageBase641,
+              })
+            }
+            setTimeout(() => {
+              that.setData({
+                pubCertificateHide: false,
+                images: [that.data.rzzsImg],
+                showIndex: true,
+                visible: true,
+              })
+            }, 1000)
+          },
+        })
+      },
+      error(res) {
+        console.log("鐢熸垚鐨勫浘鐗囧け璐�", res)
+      }
+    }, this);
+    let data = {
+      list: [{
+        type: 'wxml',
+        class: '.my_canvas1 .my_draw_canvas1', //.my_draw_canvas姣忎釜瑕佺粯鍒跺厓绱犵殑绫诲悕
+        limit: '.my_canvas1', //my_canvas鏍瑰厓绱犵被鍚�
+        x: 0,
+        y: 0
+      }]
+    }
+    drawMyImage1.draw(data, that);
+  },
+
+  onClose(e) {
+    const {
+      trigger
+    } = e.detail;
+    this.setData({
+      visible: false,
+      images: [],
+    });
+  },
   /**
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰闅愯棌
    */
@@ -46,14 +205,47 @@
    * 椤甸潰鐩稿叧浜嬩欢澶勭悊鍑芥暟--鐩戝惉鐢ㄦ埛涓嬫媺鍔ㄤ綔
    */
   onPullDownRefresh() {
-
+    if (this._freshing) return
+    this.setData({
+      // list: [],
+      page: 1,
+      limit: 6,
+      pageTotalCount: 0,
+      bottomLoading: false,
+      isMoreData: false
+    })
+    this._freshing = true;
+    this.setData({
+      triggered: false,
+    })
+    this.getDataList(false);
+    this._freshing = false
   },
 
   /**
    * 椤甸潰涓婃媺瑙﹀簳浜嬩欢鐨勫鐞嗗嚱鏁�
    */
   onReachBottom() {
-
+    this.setData({
+      bottomLoading: true,
+      isMoreData: false
+    })
+    let bool = false;
+    if (this.data.pageTotalCount > this.data.list.length) {
+      bool = true;
+      this.setData({
+        page: this.data.page + 1,
+      })
+    } else {
+      setTimeout(() => {
+        this.setData({
+          bottomLoading: false,
+          isMoreData: true
+        })
+      }, 100)
+      return false;
+    }
+    this.getDataList(bool);
   },
 
   /**

--
Gitblit v1.9.1