From b0e2bf29dd96e7100f06b27997a6d4c6c3630374 Mon Sep 17 00:00:00 2001
From: litian <C21AF165>
Date: 星期一, 02 九月 2024 20:16:44 +0800
Subject: [PATCH] ceshi

---
 pages/digitalCourses/digitalCoursesDetails/index.wxss |    9 +++
 pages/digitalCourses/digitalCoursesDetails/index.js   |   95 ++++++++++++++++++++++---------
 pages/digitalCourses/digitalCoursesDetails/index.wxml |   25 +++++++-
 3 files changed, 98 insertions(+), 31 deletions(-)

diff --git a/pages/digitalCourses/digitalCoursesDetails/index.js b/pages/digitalCourses/digitalCoursesDetails/index.js
index 766d579..775c89b 100644
--- a/pages/digitalCourses/digitalCoursesDetails/index.js
+++ b/pages/digitalCourses/digitalCoursesDetails/index.js
@@ -2,8 +2,7 @@
 const app = getApp()
 import SparkMD5 from 'spark-md5'
 import FormData from '../../../utils/formdata/index.js';
-// import Wxml2Canvas from 'wxml2canvas';
-// const Wxml2Canvas = require('Wxml2Canvas')
+import Wxml2Canvas from 'wxml2canvas';
 import {
   worksDataBytool
 } from "../../../assets/js/toolClass.js";
@@ -157,7 +156,7 @@
     this.digitalCoursesDetailsGet(options.id)
     this.getPlayerList()
     this.getType()
-    this.getCertificateList()
+
   },
 
   /**
@@ -220,7 +219,6 @@
           this.setData({
             playerList: JSON.parse(res[0].value)
           })
-          console.log(this.data.playerList, "playerList")
         }
       })
   },
@@ -263,7 +261,6 @@
       }
     }
     app.MG.store.getProductDetail(query).then(async res => {
-      console.log(res);
       if (res.datas.purchasedSaleMethodIdList.includes(res.datas.defaultSaleMethodId)) {
         this.setData({
           isBuy: true
@@ -311,7 +308,7 @@
         })
       }
       this.getAboutBook(res.datas.productLinkInfo[res.datas.productLinkInfo.length - 1].LinkPath)
-
+      this.getCertificateList()
       this.setData({
         lecturerList: lecturer,
         digitalsData: res.datas,
@@ -347,7 +344,9 @@
     this.setData({
       tabValue: value
     })
-    console.log(this.data.tabValue);
+    if (this.data.tabValue == 1) {
+      this.saveAsImage()
+    }
     if (this.data.tabValue == 2) {
       this.getResource()
       this.getRelationBook()
@@ -361,7 +360,6 @@
   },
 
   selectChange(event) {
-    console.log(event)
     const value = event.target.dataset.value
     this.setData({
       selectActive: value
@@ -614,7 +612,6 @@
             isTextBookBuy: false
           })
         }
-        console.log(this.data.relationTextBook, "jc")
       })
   },
 
@@ -622,6 +619,27 @@
     wx.navigateTo({
       url: '/pages/digitalCourses/digitalCoursesDetails/components/digitalRead/index?refCode=' + this.data.relationTextBook.refCode + '&tryPageCount=' + this.data.relationTextBook.probationPage + '&isTextBookBuy=' + this.data.isTextBookBuy
     })
+  },
+
+  //鍦ㄧ嚎娴嬭瘯鎴戠殑鏀惰棌銆佹垜鐨勯敊棰�
+  goMycollect(e) {
+    const answertype = e.currentTarget.dataset.answertype;
+    const token = wx.getStorageSync("jsek-token");
+    if (!token) {
+      return wx.getUserProfile({
+        desc: "鐢ㄦ埛鐧诲綍",
+        success: (res) => {
+          console.log(res);
+        },
+      });
+    }
+    wx.navigateTo({
+      url: `/packageBookService/pages/bookServices/examination/examination?bookId=${
+        this.data.digitalsData.id
+      }&rootCmsItemId=${this.data.digitalsData.rootCmsItemId}&answerTitle=${
+        answertype == "collectQuestion" ? "鎴戠殑鏀惰棌" : "鎴戠殑閿欓"
+      }&answerType=${answertype}&storeInfo=${app.config.digitalCourses}`,
+    });
   },
 
   // 鑾峰彇鐩稿叧璇剧▼
@@ -665,7 +683,6 @@
         this.setData({
           relatedBookData: bookArr
         })
-        console.log(this.data.relatedBookData);
       } else {
         this.setData({
           relatedBookData: []
@@ -743,7 +760,6 @@
       // 鍙戣捣璁㈠崟鍒濆鍖栬姹傚苟绛夊緟缁撴灉
       const res = await app.MG.store.initOrder(query);
       // 鑾峰彇璁㈠崟鍙峰苟璧嬪�肩粰 orderNumber.value
-      console.log(res, 'res456');
       bookOrdersId = res.orderNumber;
       // 妫�鏌ヨ鍗曞彿鏄惁瀛樺湪
       if (bookOrdersId) {
@@ -768,9 +784,7 @@
             url,
           });
         }
-      } else {
-        console.log(222);
-      }
+      } else {}
     } else {
       wx.showToast({
         title: "鍟嗗搧涓嶅湪鏈夋晥鏈�",
@@ -792,21 +806,48 @@
   },
   //鐢宠璇佷功
   async saveAsImage() {
-    await nextTick()
-    let query = wx.createSelectorQuery();
-    let value = query.select("#pubCertificate").boundingClientRect();
-    Wxml2Canvas(value).then((canvas) => {
-      const img = canvas.toDataURL('image/png')
-      this.setData({
-        cbzsImg: img,
-      })
-    })
+    let query = wx.createSelectorQuery().in(this);
+    query.select("#pubCertificate").boundingClientRect();
+    query.exec(function (res) {
+      console.log("View 鐨勪俊鎭細", res[0]);
+    });
+    console.log(value, 123)
+    let drawImage = new Wxml2Canvas({
+      element: 'pubCertificate', // canvas鑺傜偣鐨刬d,
+      obj: that, // 鍦ㄧ粍浠朵腑浣跨敤鏃讹紝闇�瑕佷紶鍏ュ綋鍓嶇粍浠剁殑this
+      width: this.width * 2, // 瀹介珮
+      height: this.height * 2,
+      background: '#fff', // 榛樿鑳屾櫙鑹�
+      progress(percent) { // 缁樺埗杩涘害
+      },
+      finish(url) {
+        console.log("鍒涘缓鐨勫浘鐗�", url);
+      },
+      error(res) {
+        console.log(res);
+        // uni.hideLoading()
+        // 鐢诲け璐ョ殑鍘熷洜
+      }
+    }, this);
+    // const canvas = Wxml2Canvas.wxmlToCanvas(value);
+    // // 杞崲涓哄浘鐗�
+    // const img = Wxml2Canvas.canvasToTempImage(canvas);
+    // const path = Wxml2Canvas.canvasToTempFilePath(canvas);
+    // console.log(canvas)
+    // Wxml2Canvas(value).then((canvas) => {
+    //   const img = canvas.toDataURL('image/png')
+    //   this.setData({
+    //     cbzsImg: img,
+    //   })
+    // })
+
     // Wxml2Canvas(textCertificate.value).then((canvas1) => {
     //   const img1 = canvas1.toDataURL('image/png')
     //   rzzsImg.value = img1
     // })
-
-    pubCertificateHide.value = false
+    this.setData({
+      pubCertificateHide: false,
+    })
   },
   //鑾峰彇瀛楁
   getType() {
@@ -839,6 +880,7 @@
           })
         }
       })
+
     })
   },
 
@@ -905,7 +947,6 @@
           // encoding: 'binary', //缂栫爜鏍煎紡
           success: ress => {
             //鎴愬姛鐨勫洖璋�
-            console.log(ress.data, 45613489)
             let spark = new SparkMD5.ArrayBuffer();
             spark.append(ress.data);
             let md5 = spark.end(false);
@@ -935,7 +976,6 @@
                   if (res.statusCode == 200) {
                     resolve(res.data);
                     if (res.data) {
-                      console.log(md5, "md5555")
                       that.setData({
                         'userInfo.userPicture': app.config.requestCtx + `/file/GetPreViewImage?md5=` + md5,
                         pictureMd5: md5
@@ -1094,7 +1134,6 @@
     const {
       trigger
     } = e.detail;
-    console.log(trigger);
     this.setData({
       visible: false,
     });
diff --git a/pages/digitalCourses/digitalCoursesDetails/index.wxml b/pages/digitalCourses/digitalCoursesDetails/index.wxml
index e3355d1..0952578 100644
--- a/pages/digitalCourses/digitalCoursesDetails/index.wxml
+++ b/pages/digitalCourses/digitalCoursesDetails/index.wxml
@@ -101,8 +101,9 @@
               </view>
             </view>
           </view>
-          <!-- <view id="pubCertificate" wx:if="pubCertificateHide">
-            <image src="/static/images/certificate/szkc.jpg" mode="" class="bgImg" />
+          <canvas canvas-id="share"></canvas>
+          <view id="pubCertificate" wx:if="pubCertificateHide">
+            <image src="https://jsek.bnuic.com/home/certificate/szkc.jpg" mode="" class="bgImg" />
             <view class="certificateInfo">
               <view class="bookName">{{digitalsData.name}}</view>
               <view class="author">{{digitalsData.courseLeader || '-' }}</view>
@@ -113,7 +114,7 @@
               <view class="website">{{website}}</view>
               <view class="codeBox"></view>
             </view>
-          </view> -->
+          </view>
         </t-tab-panel>
         <t-tab-panel icon="{{ tabValue == '2' ? courseLearningClick : courseLearning}}" label="璇剧▼瀛︿範" value="2">
           <view class="course-content">
@@ -137,6 +138,24 @@
                 </tree>
               </view>
               <view wx:if="{{selectActive == 'test'}}">
+                <view class="testBtnBox">
+                  <view class="textTile">鍏眥{}}涓�</view>
+                  <view class="note-btn">
+                    <t-button theme="primary" class="make-note" bind:tap="goMycollect" data-answerType="errorQuestion" style="width: 220rpx">
+                      <view slot="content" class="btn-content">
+                        <image src="/static/images/bookService/detail/cuoti.png" />
+                        <text class="note-btn-text">鎴戠殑閿欓</text>
+                      </view>
+                    </t-button>
+                    <t-button theme="primary" class="make-note" bind:tap="goMycollect" data-answerType="collectQuestion" style="width: 220rpx;margin-left:10rpx;">
+                      <view slot="content" class="btn-content">
+                        <image src="/static/images/bookService/detail/wodeshoucang.png" />
+                        <text class="note-btn-text">鎴戠殑鏀惰棌</text>
+                      </view>
+                    </t-button>
+
+                  </view>
+                </view>
                 <testTree id="tree" openIds="{{openTeachids}}" bookInfo="{{digitalsData}}" tab="{{tab}}" treeList="{{testList}}"></testTree>
               </view>
             </view>
diff --git a/pages/digitalCourses/digitalCoursesDetails/index.wxss b/pages/digitalCourses/digitalCoursesDetails/index.wxss
index 2349435..2de52ef 100644
--- a/pages/digitalCourses/digitalCoursesDetails/index.wxss
+++ b/pages/digitalCourses/digitalCoursesDetails/index.wxss
@@ -542,6 +542,15 @@
 
 }
 
+.testBtnBox {
+  display: flex;
+  justify-content: space-between;
+  padding: 20rpx 32rpx;
+  margin-top: 30rpx;
+  border-top: 2rpx solid #ededed;
+  border-bottom: 2rpx solid #ededed;
+}
+
 .textTile {
   display: flex;
   align-items: center;

--
Gitblit v1.9.1