From abe52e53bee051e3f801d001c4de58d34a3fefd7 Mon Sep 17 00:00:00 2001
From: litian <C21AF165>
Date: 星期三, 23 十月 2024 09:54:09 +0800
Subject: [PATCH] wj

---
 packageDomain/pages/resourceDetails/document/index.js                            |    6 
 packageBookService/pages/bookServices/detail/components/tree/index.wxml          |   12 +-
 packageBookService/pages/bookServices/detail/components/teachResource/index.json |    1 
 packageBookService/pages/bookServices/detail/components/teachResource/index.wxss |   80 ++++++++++++++++++++
 packageBookService/pages/bookServices/detail/components/tree/index.js            |   22 ++--
 packageBookService/pages/bookServices/detail/components/teachResource/index.wxml |   36 +++++++-
 packageBookService/pages/bookServices/detail/index.wxml                          |    2 
 packageBookService/pages/bookServices/detail/index.js                            |   14 +++
 packageBookService/pages/bookServices/detail/components/teachResource/index.js   |   53 +++++++++++++
 9 files changed, 198 insertions(+), 28 deletions(-)

diff --git a/packageBookService/pages/bookServices/detail/components/teachResource/index.js b/packageBookService/pages/bookServices/detail/components/teachResource/index.js
index 2f38a73..37b2482 100644
--- a/packageBookService/pages/bookServices/detail/components/teachResource/index.js
+++ b/packageBookService/pages/bookServices/detail/components/teachResource/index.js
@@ -1,3 +1,4 @@
+const app = getApp();
 Component({
   properties: {
     applyState: {
@@ -16,7 +17,7 @@
       type: String,
       value: "",
     },
-    treeList: {
+    md5List: {
       type: Array,
     }
   },
@@ -26,6 +27,8 @@
       content: "鐭ラ亾浜�",
       variant: "base"
     },
+    dialogBox: false,
+    input: '',
   },
   methods: {
     copy() {
@@ -62,5 +65,53 @@
     uploadBtn() {
       this.triggerEvent("uploadFile", true);
     },
+
+    mailbox() {
+      this.setData({
+        dialogBox: true
+      })
+    },
+    // 寮圭獥鍙栨秷
+    closeDialog() {
+      this.setData({
+        dialogBox: false,
+      })
+    },
+    //鎻愪氦
+    confirmM(e) {
+      wx.showLoading({
+        title: '鍙戦�佷腑...',
+      })
+      const isEmailValid = /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/.test(this.data.input);
+      if (isEmailValid && this.data.input) {
+        this.setData({
+          dialogBox: false
+        })
+        let query = {
+          eMail: this.data.input,
+          md5s: this.properties.md5List
+        }
+        app.MG.file.sendFileWithEmail(query).then(res => {
+          wx.hideLoading()
+          if (res) {
+            wx.showToast({
+              icon: 'success',
+              title: '閭欢宸插彂閫�',
+            })
+          }
+        })
+      } else {
+        // 鏍¢獙涓嶉�氳繃锛岀粰鍑洪敊璇彁绀�
+        wx.showToast({
+          title: '閭鏍煎紡涓嶆纭�',
+          icon: 'none',
+        });
+      }
+    },
+    inputChange(e) {
+      this.setData({
+        input: e.detail.value
+      })
+    },
   },
 });
\ No newline at end of file
diff --git a/packageBookService/pages/bookServices/detail/components/teachResource/index.json b/packageBookService/pages/bookServices/detail/components/teachResource/index.json
index 27e8ebd..689dc30 100644
--- a/packageBookService/pages/bookServices/detail/components/teachResource/index.json
+++ b/packageBookService/pages/bookServices/detail/components/teachResource/index.json
@@ -4,6 +4,7 @@
     "t-image": "tdesign-miniprogram/image/image",
     "t-button": "tdesign-miniprogram/button/button",
     "t-dialog": "tdesign-miniprogram/dialog/dialog",
+    "t-input": "tdesign-miniprogram/input/input",
     "empty": "/components/empty/index"
   }
 }
\ No newline at end of file
diff --git a/packageBookService/pages/bookServices/detail/components/teachResource/index.wxml b/packageBookService/pages/bookServices/detail/components/teachResource/index.wxml
index dd78ff9..f7ca042 100644
--- a/packageBookService/pages/bookServices/detail/components/teachResource/index.wxml
+++ b/packageBookService/pages/bookServices/detail/components/teachResource/index.wxml
@@ -1,7 +1,6 @@
 <view class="teach-btn">
   <t-button
     theme="primary"
-    style="width: 120px; height: 36px"
     class="btn"
     bind:tap="uploadBtn"
   >
@@ -13,12 +12,39 @@
       <text>涓婁紶璧勬簮</text>
     </view>
   </t-button>
-  <!-- <t-button theme="primary" style="width: 120px; height: 36px">
+  <!-- <t-button theme="primary" style="margin-left:20rpx" class="btn" bind:tap="mailbox">
+    <view slot="content" class="btn-content">
     <t-image src="/static/images/bookService/detail/download.png"></t-image>
-    鎵归噺涓嬭浇
+    <text>涓嬭浇鍒伴偖绠�</text>
+  </view>
   </t-button> -->
 </view>
-<view
+
+<view wx:if="{{dialogBox}}"> 
+  <view class="popup-box" bindtap="closeDialog"></view>
+  <view class="info-center" style="top:40%;">
+    <view>
+      <view class="row-info">
+        <view class="body">
+          <view class="dialog-title">璇疯緭鍏ラ偖绠�</view>
+          <view class="input-box">
+            <t-input
+              class="input"
+              placeholder="璇疯緭鍏ラ偖绠卞彿"
+              value="{{input}}"
+              bind:change="inputChange"
+            ></t-input>
+          </view>
+        </view>
+        <view class="row-btn">
+          <view class="left-btn" bindtap="closeDialog">鍙栨秷</view>
+          <view class="right-btn" bindtap="confirmM">纭</view>
+        </view>
+      </view>
+    </view>
+  </view>
+</view>
+<!-- <view
   class="applyResult  {{applyState == 'none' ? 'applyNone' : applyState == 'Normal' ? 'applyPass' : applyState == 'WaitAudit' ? 'applying' :applyState == 'Reject' ? 'applyReject' :'' }}"
   wx:if="{{treeList.length}}"
 >
@@ -63,7 +89,7 @@
 </view>
 <view class="noData" wx:else>
   <empty />
-</view>
+</view> -->
 <!-- 鏈�氳繃鍘熷洜 -->
 <t-dialog
   visible="{{showRejectDialog}}"
diff --git a/packageBookService/pages/bookServices/detail/components/teachResource/index.wxss b/packageBookService/pages/bookServices/detail/components/teachResource/index.wxss
index 5987f10..1b397eb 100644
--- a/packageBookService/pages/bookServices/detail/components/teachResource/index.wxss
+++ b/packageBookService/pages/bookServices/detail/components/teachResource/index.wxss
@@ -88,6 +88,7 @@
 
 .btn {
   width: 220rpx;
+  height: 64rpx;
   font-size: 28rpx;
   --td-button-primary-bg-color: #fff;
   --td-button-primary-border-color: #FF6C00;
@@ -116,4 +117,83 @@
 
 .noData {
   height: 300rpx;
+}
+
+
+.info-center {
+  position: fixed;
+  top: 30%;
+  z-index: 999;
+  background-color: white;
+  align-items: center;
+  justify-content: center;
+  border-radius: 10rpx;
+  width: 80%;
+  margin-left: 10%;
+  margin-right: 10%;
+}
+
+.row-btn {
+  width: 100%;
+  display: flex;
+  flex-direction: row;
+  align-items: center;
+  border-top: 1rpx solid #f1f1f1;
+}
+
+.row-btn view {
+  flex: 1;
+  text-align: center;
+  margin: 20rpx 10%;
+  padding: 12rpx 0;
+  font-size: 32rpx;
+  border-radius: 10rpx;
+}
+
+.left-btn {
+  background-color: #f1f1f1;
+  color: #5C5C5C;
+}
+
+.right-btn {
+  background-color: #ff6c00;
+  color: white;
+}
+
+.row-info .body {
+  min-height: 160rpx;
+}
+
+.dialog-title {
+  padding: 20rpx 0;
+  text-align: center;
+  font-size: 35rpx;
+  font-weight: 600;
+}
+
+.input-box {
+  padding: 0 20rpx;
+  width: 92%;
+}
+
+.input-box .t-input--border::after {
+  height: 0 !important;
+}
+
+.input {
+  border-radius: 20rpx;
+  border: 2rpx solid rgba(220, 220, 220, 1);
+  border-radius: 12rpx;
+  width: 98%;
+  padding: 0 0 0 16rpx
+}
+
+/* 钂欏眰 */
+.popup-box {
+  position: absolute;
+  z-index: 99;
+  top: 0;
+  background-color: rgba(0, 0, 0, 0.5);
+  width: 100%;
+  height: 100%;
 }
\ No newline at end of file
diff --git a/packageBookService/pages/bookServices/detail/components/tree/index.js b/packageBookService/pages/bookServices/detail/components/tree/index.js
index 437d7dd..ed16170 100644
--- a/packageBookService/pages/bookServices/detail/components/tree/index.js
+++ b/packageBookService/pages/bookServices/detail/components/tree/index.js
@@ -195,17 +195,17 @@
         })
       }
       if (item.selectType == 'zip') {
-        if (this.properties.applyState == 'Normal') {
-          return wx.showToast({
-            icon: 'error',
-            title: '璇峰墠寰�PC绔笅杞�',
-          })
-        } else {
-          return wx.showToast({
-            icon: 'error',
-            title: '璇峰厛鐢宠涓嬭浇',
-          })
-        }
+        // if (this.properties.applyState == 'Normal') {
+        return wx.showToast({
+          icon: 'error',
+          title: '璇峰墠寰�PC绔笅杞�',
+        })
+        // } else {
+        //   return wx.showToast({
+        //     icon: 'error',
+        //     title: '璇峰厛鐢宠涓嬭浇',
+        //   })
+        // }
       }
       if (this.properties.tab == "jsek_teachingResources" && (item.file || item.freeFile)) {
         let file = item.fileMap[item.file] ? item.fileMap[item.file] : item.fileMap[item.freeFile]
diff --git a/packageBookService/pages/bookServices/detail/components/tree/index.wxml b/packageBookService/pages/bookServices/detail/components/tree/index.wxml
index 582dc00..fc81d48 100644
--- a/packageBookService/pages/bookServices/detail/components/tree/index.wxml
+++ b/packageBookService/pages/bookServices/detail/components/tree/index.wxml
@@ -67,17 +67,17 @@
                   mode="aspectFill"
                 />
                 <image
-                  wx:elif="{{ item.fileMap[item.file].extension == 'doc' ||  item.fileMap[item.file].extension == 'docx'}}"
+                  wx:elif="{{ item.fileMap[item.file].extension == 'doc' ||  item.fileMap[item.file].extension == 'docx' || item.fileMap[item.freeFile].extension == 'doc' ||  item.fileMap[item.freeFile].extension == 'docx'}}"
                   src="/static/images/bookService/detail/word.png"
                   mode="aspectFill"
                 />
                 <image
-                  wx:elif="{{ item.fileMap[item.file].extension == 'xlsx' ||  item.fileMap[item.file].extension == 'xlsx'}}"
+                  wx:elif="{{ item.fileMap[item.file].extension == 'xlsx' ||  item.fileMap[item.file].extension == 'xlsx' || item.fileMap[item.freeFile].extension == 'xlsx' ||  item.fileMap[item.freeFile].extension == 'xlsx'}}"
                   src="/static/images/bookService/detail/excel.png"
                   mode="aspectFill"
                 />
                 <image
-                  wx:elif="{{ item.fileMap[item.file].extension == 'ppt' ||  item.fileMap[item.file].extension == 'pptx'}}"
+                  wx:elif="{{ item.fileMap[item.file].extension == 'ppt' ||  item.fileMap[item.file].extension == 'pptx' || item.fileMap[item.freeFile].extension == 'ppt' ||  item.fileMap[item.freeFile].extension == 'pptx'}}"
                   src="/static/images/bookService/detail/PPT.png"
                   mode="aspectFill"
                 />
@@ -242,17 +242,17 @@
                     mode="aspectFill"
                   />
                   <image
-                    wx:elif="{{ citem.fileMap[citem.file].extension == 'doc' ||  citem.fileMap[citem.file].extension == 'docx'}}"
+                    wx:elif="{{ citem.fileMap[citem.file].extension == 'doc' ||  citem.fileMap[citem.file].extension == 'docx' || citem.fileMap[citem.freeFile].extension == 'doc' ||  citem.fileMap[citem.freeFile].extension == 'docx'}}"
                     src="/static/images/bookService/detail/word.png"
                     mode="aspectFill"
                   />
                   <image
-                    wx:elif="{{ citem.fileMap[citem.file].extension == 'xlsx' ||  citem.fileMap[citem.file].extension == 'xlsx'}}"
+                    wx:elif="{{ citem.fileMap[citem.file].extension == 'xlsx' ||  citem.fileMap[citem.file].extension == 'xlsx' || citem.fileMap[citem.freeFile].extension == 'xlsx' ||  citem.fileMap[citem.freeFile].extension == 'xlsx' }}"
                     src="/static/images/bookService/detail/excel.png"
                     mode="aspectFill"
                   />
                   <image
-                    wx:elif="{{ citem.fileMap[citem.file].extension == 'ppt' ||  citem.fileMap[citem.file].extension == 'pptx'}}"
+                    wx:elif="{{ citem.fileMap[citem.file].extension == 'ppt' ||  citem.fileMap[citem.file].extension == 'pptx' || citem.fileMap[citem.freeFile].extension == 'ppt' ||  citem.fileMap[citem.freeFile].extension == 'pptx'}}"
                     src="/static/images/bookService/detail/PPT.png"
                     mode="aspectFill"
                   />
diff --git a/packageBookService/pages/bookServices/detail/index.js b/packageBookService/pages/bookServices/detail/index.js
index 2d430ee..68ed718 100644
--- a/packageBookService/pages/bookServices/detail/index.js
+++ b/packageBookService/pages/bookServices/detail/index.js
@@ -209,7 +209,8 @@
     isShowUp: true,
     protocolShow: false,
     protocolTxt: '',
-    learnMenu: null
+    learnMenu: null,
+    md5List: []
   },
 
   resetTree: function (e) {
@@ -994,8 +995,19 @@
         cloundSaleMethod &&
         new Date().getTime() <= new Date(cloundSaleMethod.EndDate).getTime() &&
         new Date().getTime() >= new Date(cloundSaleMethod.BeginDate).getTime()
+      let md5s = []
       res.datas.cmsDatas[0].datas.forEach((item) => {
         // 浜戝涔犱笂鏈夐攢鍞柟寮忥紝鍘绘帀浜戝涔犱笅鎵�鏈夐攢鍞柟寮�
+        if (this.data.tabValue == "jsek_teachingResources") {
+
+          if (item.file || item.freeFile) {
+            let md5 = item.file ? item.file : item.freeFile
+            md5s.push(md5)
+          }
+          this.setData({
+            md5List: md5s,
+          });
+        }
         if (flags) item.saleMethod = []
         item.checked = false;
         if (item.sysType == 'CmsItem') {
diff --git a/packageBookService/pages/bookServices/detail/index.wxml b/packageBookService/pages/bookServices/detail/index.wxml
index 8e534ac..b1c9889 100644
--- a/packageBookService/pages/bookServices/detail/index.wxml
+++ b/packageBookService/pages/bookServices/detail/index.wxml
@@ -205,7 +205,7 @@
                 rejectCause="{{rejectCause}}"
                 deadline="{{deadline}}"
                 bind:applyResource="applyResource"
-                treeList="{{teach}}"
+                md5List="{{md5List}}"
                 applyResourceLoading="{{applyResourceLoading}}"
                 bind:uploadFile="uploadFile"
               ></teach-resource>
diff --git a/packageDomain/pages/resourceDetails/document/index.js b/packageDomain/pages/resourceDetails/document/index.js
index f887867..00cbcfa 100644
--- a/packageDomain/pages/resourceDetails/document/index.js
+++ b/packageDomain/pages/resourceDetails/document/index.js
@@ -286,7 +286,6 @@
   //鍒氳繘鏉ョ殑鏃跺�欒皟鐢�
   handleTeachData(item) {
     //鍥剧墖
-
     if (item.selectType == 'picture') {
       this.setData({
         showData: item.file ? app.config.requestCtx + '/file/api/ApiDownload?md5=' + item.file : app.config.requestCtx + '/file/api/ApiDownload?md5=' + item.freeFile,
@@ -309,13 +308,14 @@
     }
     //鏂囨。绛�
     if (item.selectType == 'pdf' || item.selectType == 'document') {
+      let md5 = item.file ? item.file : item.freeFile
       app.MG.file.getPdfInfo({
-        md5: item.file
+        md5: md5
       }).then((res) => {
         let naturalResources = []
         if (res && res.totalPages) {
           for (let i = 0; i < res.totalPages; i++) {
-            const src = app.config.requestCtx + '/file/GetPdfPageImage?md5=' + item.file + '&index=' + (i + 1) + '&dpi=300'
+            const src = app.config.requestCtx + '/file/GetPdfPageImage?md5=' + md5 + '&index=' + (i + 1) + '&dpi=300'
             naturalResources.push(src)
           }
         }

--
Gitblit v1.9.1