From ecabd20b3dfbd956dad14ffb6ba3dc2efcfdd7c1 Mon Sep 17 00:00:00 2001 From: yiming <m13691596795@163.com> Date: 星期一, 25 三月 2024 16:23:32 +0800 Subject: [PATCH] 微信支付 --- packageBookService/pages/bookServices/list/index.wxml | 115 +++ packageBookService/pages/bookServices/examination/questionList/index.wxml | 14 packageBookService/pages/bookServices/detail/buyResource/index.js | 270 ++++++++ static/images/bookService/detail/weidian.png | 0 static/images/bookService/examination/datika-w.png | 0 packageBookService/pages/bookServices/detail/index.wxml | 105 ++- packageBookService/pages/bookServices/buyResource/index.wxml | 2 static/images/bookService/examination/chongzuo-w.png | 0 packageBookService/pages/bookServices/examination/examination.js | 158 ---- packageBookService/pages/bookServices/buyResource/index.js | 66 ++ packageBookService/pages/bookServices/detail/components/webView/index.js | 110 +++ packageBookService/pages/bookServices/list/index.js | 4 packageBookService/pages/bookServices/detail/buyResource/index.wxss | 33 + pages/bookServices/assort/index.wxml | 111 +++ packageBookService/pages/bookServices/detail/components/webView/index.json | 4 packageBookService/pages/bookServices/examination/questionSchedule/index.js | 3 static/images/bookService/examination/yejian-click.png | 0 pages/cart/paymentPage/index.wxss | 5 packageBookService/pages/bookServices/examination/questionOptions/index.js | 4 packageBookService/pages/bookServices/detail/components/suggest/suggest.js | 8 packageBookService/pages/bookServices/detail/components/tree/index.wxss | 5 static/images/bookService/examination/rijian.png | 0 pages/cart/index.js | 8 pages/cart/paymentPage/index.js | 43 + packageBookService/pages/bookServices/detail/components/webView/index.wxss | 4 packageBookService/pages/bookServices/detail/buyResource/index.json | 8 packageBookService/pages/bookServices/detail/components/testResource/testResource.wxss | 5 packageBookService/pages/bookServices/examination/questionList/index.wxss | 2 pages/home/home.js | 2 packageBookService/pages/bookServices/buyResource/index.json | 3 packageBookService/pages/bookServices/detail/index.wxss | 31 pages/bookServices/assort/index.js | 3 packageBookService/pages/bookServices/buyResource/index.wxss | 1 packageBookService/pages/bookServices/detail/components/brief/index.js | 3 static/images/bookService/examination/setting-w.png | 0 packageBookService/pages/bookServices/examination/examination.wxml | 4 packageBookService/pages/bookServices/examination/questionOptions/index.wxml | 48 packageBookService/pages/bookServices/examination/questionSchedule/index.wxml | 2 packageBookService/pages/bookServices/detail/components/note/note.js | 1 packageBookService/pages/bookServices/detail/buyResource/index.wxml | 27 assets/js/config.js | 4 packageBookService/pages/bookServices/detail/index.js | 169 ++++- pages/bookServices/assort/index.wxss | 4 packageBookService/pages/bookServices/detail/components/note/note.wxml | 89 ++ packageBookService/pages/bookServices/detail/components/learnResource/learnResource.wxml | 34 static/images/bookService/examination/rijian-click.png | 0 packageBookService/pages/bookServices/detail/components/brief/index.wxml | 10 packageBookService/pages/bookServices/detail/index.json | 2 pages/cart/paymentPage/index.wxml | 1 pages/retrievalPage/index.wxss | 4 app.json | 4 packageBookService/pages/bookServices/detail/components/tree/index.wxml | 161 ++++ packageBookService/pages/bookServices/detail/components/learnResource/learnResource.js | 27 static/images/bookService/examination/wodeshoucang-w.png | 0 packageBookService/pages/bookServices/detail/components/webView/index.wxml | 4 packageDomain/pages/resourceDetails/myAudio/index.wxss | 2 packageBookService/pages/bookServices/detail/components/testResource/testResource.wxml | 93 ++ 57 files changed, 1,414 insertions(+), 406 deletions(-) diff --git a/app.json b/app.json index 2b71cb4..8f90f72 100644 --- a/app.json +++ b/app.json @@ -52,7 +52,9 @@ "pages/bookServices/detail/index", "pages/bookServices/examination/examination", "pages/bookServices/webpage/index", - "pages/components/webView/index" + "pages/components/webView/index", + "pages/bookServices/buyResource/index", + "pages/bookServices/detail/buyResource/index" ] } ], diff --git a/assets/js/config.js b/assets/js/config.js index f1adde9..4ede485 100644 --- a/assets/js/config.js +++ b/assets/js/config.js @@ -20,8 +20,8 @@ export const fontUrl = "http://192.168.3.132:5173"; // export const fontUrl = "http://182.92.203.7:3007/jsek/website"; // export const fontUrl = "http://jsysf.bnuic.com/website"; -// export const epubUrl = "http://182.92.203.7:3007/epubReadMobile/"; -export const epubUrl = "http://jsysf.bnuic.com/epubReadMobile/#/"; +export const epubUrl = "http://182.92.203.7:3007/epubReadMobile/"; +// export const epubUrl = "http://jsysf.bnuic.com/epubReadMobile/#/"; const config = { requestCtx, diff --git a/packageBookService/pages/bookServices/buyResource/index.js b/packageBookService/pages/bookServices/buyResource/index.js new file mode 100644 index 0000000..c989574 --- /dev/null +++ b/packageBookService/pages/bookServices/buyResource/index.js @@ -0,0 +1,66 @@ +// packageBookService/pages/bookServices/buyResource/index.js +Page({ + + /** + * 椤甸潰鐨勫垵濮嬫暟鎹� + */ + data: { + + }, + + /** + * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍔犺浇 + */ + onLoad(options) { + + }, + + /** + * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍒濇娓叉煋瀹屾垚 + */ + onReady() { + + }, + + /** + * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鏄剧ず + */ + onShow() { + + }, + + /** + * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰闅愯棌 + */ + onHide() { + + }, + + /** + * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍗歌浇 + */ + onUnload() { + + }, + + /** + * 椤甸潰鐩稿叧浜嬩欢澶勭悊鍑芥暟--鐩戝惉鐢ㄦ埛涓嬫媺鍔ㄤ綔 + */ + onPullDownRefresh() { + + }, + + /** + * 椤甸潰涓婃媺瑙﹀簳浜嬩欢鐨勫鐞嗗嚱鏁� + */ + onReachBottom() { + + }, + + /** + * 鐢ㄦ埛鐐瑰嚮鍙充笂瑙掑垎浜� + */ + onShareAppMessage() { + + } +}) \ No newline at end of file diff --git a/packageBookService/pages/bookServices/buyResource/index.json b/packageBookService/pages/bookServices/buyResource/index.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/packageBookService/pages/bookServices/buyResource/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/packageBookService/pages/bookServices/buyResource/index.wxml b/packageBookService/pages/bookServices/buyResource/index.wxml new file mode 100644 index 0000000..5795b03 --- /dev/null +++ b/packageBookService/pages/bookServices/buyResource/index.wxml @@ -0,0 +1,2 @@ +<!--packageBookService/pages/bookServices/buyResource/index.wxml--> +<text>packageBookService/pages/bookServices/buyResource/index.wxml</text> diff --git a/packageBookService/pages/bookServices/buyResource/index.wxss b/packageBookService/pages/bookServices/buyResource/index.wxss new file mode 100644 index 0000000..df43765 --- /dev/null +++ b/packageBookService/pages/bookServices/buyResource/index.wxss @@ -0,0 +1 @@ +/* packageBookService/pages/bookServices/buyResource/index.wxss */ \ No newline at end of file diff --git a/packageBookService/pages/bookServices/detail/buyResource/index.js b/packageBookService/pages/bookServices/detail/buyResource/index.js new file mode 100644 index 0000000..dc40f65 --- /dev/null +++ b/packageBookService/pages/bookServices/detail/buyResource/index.js @@ -0,0 +1,270 @@ +// packageBookService/pages/bookServices/detail/buyResource/index.js +const app = getApp() +Page({ + + /** + * 椤甸潰鐨勫垵濮嬫暟鎹� + */ + data: { + barHeight: '', + navBarHeight: '', + learn: [], + openLearnids: [], + bookId: '', + loading: false, + }, + + /** + * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍔犺浇 + */ + onLoad(options) { + const systInfo = wx.getSystemInfoSync(); + const menu = wx.getMenuButtonBoundingClientRect(); // 鑳跺泭淇℃伅 + const navBarHeight = (menu.top - systInfo.statusBarHeight) * 2 + menu.height; // 瀵艰埅鏍忛珮搴� + this.setData({ + barHeight: systInfo.statusBarHeight, + navBarHeight: navBarHeight, + bookId: options.bookId + }); + this.getResourceClass() + console.log(options); + this.getResourceData({ productLinkPath: options.productLinkPath, refCode: options.refCode }) + }, + + /** + * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍒濇娓叉煋瀹屾垚 + */ + onReady() { + + }, + + /** + * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鏄剧ず + */ + onShow() { + + }, + + /** + * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰闅愯棌 + */ + onHide() { + + }, + + /** + * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍗歌浇 + */ + onUnload() { + + }, + + /** + * 椤甸潰鐩稿叧浜嬩欢澶勭悊鍑芥暟--鐩戝惉鐢ㄦ埛涓嬫媺鍔ㄤ綔 + */ + onPullDownRefresh() { + + }, + + /** + * 椤甸潰涓婃媺瑙﹀簳浜嬩欢鐨勫鐞嗗嚱鏁� + */ + onReachBottom() { + + }, + + /** + * 鐢ㄦ埛鐐瑰嚮鍙充笂瑙掑垎浜� + */ + onShareAppMessage() { + + }, + goBack() { + wx.navigateBack() + }, + // 鑾峰彇鏁欏璧勬簮 浜戝涔� 浜戞祴璇� + getResourceData(type) { + this.setData({ + loading: true, + noResources: false + }) + let query = { + path: '*', + queryType: '*', + productId: this.data.bookId, + cmsPath: type.productLinkPath, + itemFields: { + SysType: 'CmsFolder', + // 璧勬簮绫诲瀷锛岃瘯璇绘枃浠讹紝鏄惁鍏佽涓嬭浇绛夊弬鏁� + selectType: [], + freeFile: [], + file: [], + resourcesClassification: [], + isDownload: [], + jsek_resourceBrief: [], + jsek_link: [], + jsek_questionBank: [] + }, + pading: { + start: 0, + size: 999 + }, + } + app.MG.store + .getProductDetail(query) + .then(async (res) => { + if (!res.datas.cmsDatas[0].datas.length) { + return this.setData({ + noResources: true, + loading: false + }) + } + //鏁欏璧勬簮 浜戝涔� + if (type.refCode == 'jsek_teachingResources' || type.refCode == 'jsek_cloudLearning') { + if (res.datas.cmsDatas[0].datas.length > 0) { + res.datas.cmsDatas[0].datas.forEach(item => { + item.checked = false + }) + const list = await this.getAllResource(res.datas.cmsDatas[0].datas) + if (type.refCode == 'jsek_teachingResources') { + this.setData({ + teach: list, + loading: false + }) + this.findChildIds(this.data.teach, this.data.openTeachids = []) + } else if (type.refCode == 'jsek_cloudLearning') { + res.datas.cmsDatas[0].datas.forEach(item => { + item.checked = false + }) + const list = await this.getAllResource(res.datas.cmsDatas[0].datas) + this.setData({ + learn: list, + loading: false + }) + this.findChildIds(this.data.learn, this.data.openLearnids = []) + } + } else { + // 鏃犳暟鎹� + } + } else if (type.refCode == 'jsek_questionBank') { + // const list = await this.getAllResource(res.datas.cmsDatas[0].datas) + this.setData({ + test: res.datas.cmsDatas[0].datas, + loading: false + }) + } else { + console.log('鍏朵粬'); + } + }) + .catch((e) => { + console.log(e) + }) + }, + // 鑾峰彇tag涓嬫墍鏈夎祫婧� + async getAllResource(data) { + if (!data.length) return false + for (let i = 0; i < data.length; i++) { + let item = data[i] + if (item.sysType == 'CmsFolder' && item.childrenCount > 0) { + item.children = [] + item.children = await this.getFolderItem(item.productLinkPath) + await this.getAllResource(item.children) + } + } + return data + }, + // 鑾峰彇璧勬簮鎺ュ彛 + async getFolderItem(path) { + let query = { + path: '*', + queryType: '*', + productId: this.data.bookId, + cmsPath: path, + itemFields: { + SysType: 'CmsFolder', + // 璧勬簮绫诲瀷锛岃瘯璇绘枃浠讹紝鏄惁鍏佽涓嬭浇绛夊弬鏁� + selectType: [], + freeFile: [], + file: [], + protectedFile: [], + resourcesClassification: [], + isDownload: [], + jsek_resourceBrief: [], + jsek_link: [], + accessType: [] + }, + pading: { + start: 0, + size: 999 + }, + } + const data = await app.MG.store.getProductDetail(query) + data.datas.cmsDatas[0].datas.forEach((item) => { + this.data.resourceClassList.forEach((type) => { + if (type.value == item.resourcesClassification) item.resourceClass = type.name + }) + // 缃戦〉 涓嶈兘涓嬭浇 绉佹湁鏂囦欢 + if (item.sysType == 'CmsItem') { + if (item.selectType == 'webpage') { + item.disabled = true + } else { + if (item.isDownload != 1) { + item.disabled = true + } + } + if (item.file) { + if (item.fileMap[item.file].protectType == 'Private') item.disabled = true + } + } + }) + data.datas.cmsDatas[0].datas.forEach(item => { + if (this.data.tabValue == 'jsek_teachingResources') { + item.checked = false + } else if (this.data.tabValue == 'jsek_cloudLearning') { + item.checked = false + item.isbuy = this.resourceIsBuy(item) + item.isShopCar = this.isShoppingCart(item) + } + }) + return data.datas.cmsDatas[0].datas + }, + // 鑾峰彇灞曞紑椤� + findChildIds(data, result) { + let index = 0 + for (let i = 0; i < data.length; i++) { + if (index < 3) { + const item = data[i] + if (item.childrenFolderCount > 0) { + result.push(item.id) + for (let j = 0; j < item.children.length; j++) { + if (index < 3) { + const childrenItme = item.children[j] + if (item.childrenCount > 0) { + result.push(childrenItme.id) + index += 1 + } + } else { + break + } + } + } else if (item.childrenCount > 0) { + result.push(item.id) + index += 1 + } + } else { + break + } + } + }, + // 鑾峰彇璧勬簮鎵�灞炲垎绫� + getResourceClass() { + let query = { + refCodes: ['resourcesClassification'] + } + app.MG.store.getProductTypeField(query).then((res) => { + this.setData({ + resourceClassList: JSON.parse(res[0].config).option + }) + }) + }, +}) \ No newline at end of file diff --git a/packageBookService/pages/bookServices/detail/buyResource/index.json b/packageBookService/pages/bookServices/detail/buyResource/index.json new file mode 100644 index 0000000..dcaf1f1 --- /dev/null +++ b/packageBookService/pages/bookServices/detail/buyResource/index.json @@ -0,0 +1,8 @@ +{ + "usingComponents": { + "t-icon": "tdesign-miniprogram/icon/icon", + "tree": "/packageBookService/pages/bookServices/detail/components/tree/index", + "t-loading": "tdesign-miniprogram/loading/loading" + }, + "navigationStyle": "custom" +} \ No newline at end of file diff --git a/packageBookService/pages/bookServices/detail/buyResource/index.wxml b/packageBookService/pages/bookServices/detail/buyResource/index.wxml new file mode 100644 index 0000000..e628055 --- /dev/null +++ b/packageBookService/pages/bookServices/detail/buyResource/index.wxml @@ -0,0 +1,27 @@ +<!--packageBookService/pages/bookServices/detail/buyResource/index.wxml--> +<!--瀵艰埅鍖哄煙 --> +<view style="width: 100%; height: {{barHeight}}px; "></view> +<view class="nacigationBar" style="width: 70%; height: {{navBarHeight}}px;"> + <view class="flex"> + <view> + <t-icon + name="chevron-left" + size="30" + data-name="{{item}}" + bind:click="goBack" + /> + </view> + <view class="navbar-title">璧勬簮璐拱</view> + </view> + <view> 鍏ㄩ�� </view> +</view> + +<!-- 鍐呭 --> + +<view class="buy-resource" wx:if="{{!loading}}"> + <tree treeList="{{learn}}" tab="{{'jsek_cloudLearning'}}" /> +</view> + +<view class="noData" wx:if="{{loading}}"> + <t-loading size="60rpx" loading="{{loading}}" /> +</view> diff --git a/packageBookService/pages/bookServices/detail/buyResource/index.wxss b/packageBookService/pages/bookServices/detail/buyResource/index.wxss new file mode 100644 index 0000000..af2f4f2 --- /dev/null +++ b/packageBookService/pages/bookServices/detail/buyResource/index.wxss @@ -0,0 +1,33 @@ +/* packageBookService/pages/bookServices/detail/buyResource/index.wxss */ +.nacigationBar { + background-color: #fff; + display: flex; + align-items: center; + justify-content: space-between; +} + +.navbar-title { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + color: #0F1214; + font-size: 40rpx; + font-weight: bold; +} + +.flex { + display: flex; +} + +.space-between { + justify-content: space-between; +} + +.noData { + width: 100%; + height: 100%; + display: flex; + justify-content: center; + align-items: center; + --td-loading-color: #ff6c00; +} \ No newline at end of file diff --git a/packageBookService/pages/bookServices/detail/components/brief/index.js b/packageBookService/pages/bookServices/detail/components/brief/index.js index ad255bb..3f493b3 100644 --- a/packageBookService/pages/bookServices/detail/components/brief/index.js +++ b/packageBookService/pages/bookServices/detail/components/brief/index.js @@ -8,5 +8,8 @@ type: String, value: '', }, + }, + data:{ + richStyle:'font-size: 28rpx;color: #333; line-height: 48rpx;text-align: justify;' } }); diff --git a/packageBookService/pages/bookServices/detail/components/brief/index.wxml b/packageBookService/pages/bookServices/detail/components/brief/index.wxml index 4f3471a..7f221b6 100644 --- a/packageBookService/pages/bookServices/detail/components/brief/index.wxml +++ b/packageBookService/pages/bookServices/detail/components/brief/index.wxml @@ -2,19 +2,19 @@ <view class="basic" wx:if="{{content}}"> <view class="basic-title"> <view> - <t-image src="/static/images/bookService/detail/label.png"></t-image> + <image src="/static/images/bookService/detail/label.png" /> </view> <view class="title-name">鍩烘湰淇℃伅</view> </view> - <rich-text nodes="{{content}}" style="font-size: 28rpx; color: #333; line-height: 48rpx; text-align: justify"></rich-text> + <rich-text nodes="{{content}}" style="{{richStyle}}"></rich-text> </view> <view class="basic" wx:if="{{authorIntroduction}}"> <view class="basic-title"> <view> - <t-image src="/static/images/bookService/detail/author.png"></t-image> + <image src="/static/images/bookService/detail/author.png" /> </view> <view class="title-name">浣滆�呯畝浠�</view> </view> </view> - <rich-text nodes="{{authorIntroduction}}" style="font-size: 28rpx; color: #333; line-height: 48rpx; text-align: justify" /> -</view> \ No newline at end of file + <rich-text nodes="{{authorIntroduction}}" style="{{richStyle}}" /> +</view> diff --git a/packageBookService/pages/bookServices/detail/components/learnResource/learnResource.js b/packageBookService/pages/bookServices/detail/components/learnResource/learnResource.js index 3a67e7b..ed3f0eb 100644 --- a/packageBookService/pages/bookServices/detail/components/learnResource/learnResource.js +++ b/packageBookService/pages/bookServices/detail/components/learnResource/learnResource.js @@ -4,7 +4,12 @@ * 缁勪欢鐨勫睘鎬у垪琛� */ properties: { - + buyResourceData: { + type: Object, + }, + bookId: { + type: Number + } }, /** @@ -27,14 +32,20 @@ } // 瑙﹀彂浜嬩欢鐨勯�夐」 this.triggerEvent('getFreeResource', myEventDetail, myEventOption) }, - allAddShoppiingCar() { - var myEventDetail = {} // detail瀵硅薄锛屾彁渚涚粰浜嬩欢鐩戝惉鍑芥暟 - var myEventOption = { - bubbles: true, - composed: true - } // 瑙﹀彂浜嬩欢鐨勯�夐」 - this.triggerEvent('allAddShoppiingCar', myEventDetail, myEventOption) + // allAddShoppiingCar() { + // var myEventDetail = {} // detail瀵硅薄锛屾彁渚涚粰浜嬩欢鐩戝惉鍑芥暟 + // var myEventOption = { + // bubbles: true, + // composed: true + // } // 瑙﹀彂浜嬩欢鐨勯�夐」 + // this.triggerEvent('allAddShoppiingCar', myEventDetail, myEventOption) + // }, + goBuyResource() { + wx.navigateTo({ + url: `/packageBookService/pages/bookServices/detail/buyResource/index?productLinkPath=${this.properties.buyResourceData.productLinkPath}&refCode=${this.properties.buyResourceData.refCode}&bookId=${this.properties.bookId}`, + }) }, + changeReceive(type) { this.setData({ receive: type diff --git a/packageBookService/pages/bookServices/detail/components/learnResource/learnResource.wxml b/packageBookService/pages/bookServices/detail/components/learnResource/learnResource.wxml index 4dde643..6f9de93 100644 --- a/packageBookService/pages/bookServices/detail/components/learnResource/learnResource.wxml +++ b/packageBookService/pages/bookServices/detail/components/learnResource/learnResource.wxml @@ -1,15 +1,33 @@ <!--pages/bookServices/detail/components/learnResource/learnResource.wxml--> <view class="learnResource" theme="primary"> - <t-button loading="{{receive}}" class="btn" theme="primary" style="height: 72rpx; font-size: 28rpx; " t-class="external-class" bind:tap="getFreeResource"> - <t-image src=" /static/images/bookService/detail/yijianlingqu.png"></t-image> + <t-button + loading="{{receive}}" + class="btn" + theme="primary" + style="height: 72rpx; font-size: 28rpx" + t-class="external-class" + bind:tap="getFreeResource" + > + <image src=" /static/images/bookService/detail/yijianlingqu.png" /> <text>棰嗗彇鏌ョ湅</text> </t-button> - <t-button loading="{{buy}}" class="btn" theme="primary" style="height: 72rpx; font-size: 28rpx;" bind:tap="allAddShoppiingCar"> - <t-image src="/static/images/bookService/detail/yijiangoumai.png"></t-image> - 涓�閿喘涔� + <t-button + loading="{{buy}}" + class="btn" + theme="primary" + style="height: 72rpx; font-size: 28rpx" + bind:tap="goBuyResource" + > + <image src="/static/images/bookService/detail/yijiangoumai.png" /> + 璧勬簮璐拱 </t-button> - <t-button class="btn" theme="primary" style="height: 72rpx; font-size: 28rpx;" wx:if="{{false}}"> - <t-image src="/static/images/bookService/detail/renwudan锛廼con.png"></t-image> + <t-button + class="btn" + theme="primary" + style="height: 72rpx; font-size: 28rpx" + wx:if="{{false}}" + > + <image src="/static/images/bookService/detail/renwudan锛廼con.png" /> 瀛︿範浠诲姟鍗� </t-button> -</view> \ No newline at end of file +</view> diff --git a/packageBookService/pages/bookServices/detail/components/note/note.js b/packageBookService/pages/bookServices/detail/components/note/note.js index 64cc2ad..5f4fb5e 100644 --- a/packageBookService/pages/bookServices/detail/components/note/note.js +++ b/packageBookService/pages/bookServices/detail/components/note/note.js @@ -141,7 +141,6 @@ loading: true, noList: false }) - console.log(this.properties.bookInfo.id, 'this.properties.bookInfo.id'); let topicId await app.MG.ugc .getProductUserSubmitTopic({ diff --git a/packageBookService/pages/bookServices/detail/components/note/note.wxml b/packageBookService/pages/bookServices/detail/components/note/note.wxml index bd0ab06..1a1f5e5 100644 --- a/packageBookService/pages/bookServices/detail/components/note/note.wxml +++ b/packageBookService/pages/bookServices/detail/components/note/note.wxml @@ -1,19 +1,30 @@ <!--pages/bookServices/detail/components/note/note.wxml--> <view class="note"> <view class="note-btn"> - <t-button theme="primary" class="make-note" bind:tap="openDialog" style="width: 240rpx;"> + <t-button + theme="primary" + class="make-note" + bind:tap="openDialog" + style="width: 240rpx" + > <view slot="content"> - <t-image src="/static/images/bookService/detail/makeNote.png"></t-image> + <image src="/static/images/bookService/detail/makeNote.png" /> 璁扮瑪璁� </view> </t-button> </view> <view class="note-content"> - - <t-collapse value="{{activeValues}}" bind:change="handleChange" wx:if="{{!loading && noteList.length}}"> + <t-collapse + value="{{activeValues}}" + bind:change="handleChange" + wx:if="{{!loading && noteList.length}}" + > <t-collapse-panel value="{{item.id}}" expandIcon wx:for="{{noteList}}"> <view slot="header" class="collapse-header"> - <t-image class="note-icon" src="/static/images/bookService/detail/note-icon.png"></t-image> + <t-image + class="note-icon" + src="/static/images/bookService/detail/note-icon.png" + ></t-image> <view class="header-name">{{item.name}}</view> </view> <view> @@ -21,8 +32,18 @@ <view class="note-bottom"> <view class="note-time">{{item.createDate}}</view> <view class="bottom-btn"> - <t-image src="/static/images/bookService/detail/compliceHover.png" class="complice" bind:tap="editNote" data-note="{{item}}"></t-image> - <t-image src="/static/images/bookService/detail/deleteHover.png" class="delete" bind:tap="deleteNote" data-id="{{item.id}}"></t-image> + <image + src="/static/images/bookService/detail/compliceHover.png" + class="complice" + bind:tap="editNote" + data-note="{{item}}" + /> + <image + src="/static/images/bookService/detail/deleteHover.png" + class="delete" + bind:tap="deleteNote" + data-id="{{item.id}}" + /> </view> </view> </view> @@ -37,29 +58,65 @@ <text wx:if="{{isMore == false}}">娌℃湁鏇村浜�</text> </view> </view> -<view class="loading-box" wx:if="{{loading}}" > +<view class="loading-box" wx:if="{{loading}}"> <t-loading loading="{{loading}}" size="60rpx"></t-loading> </view> - <!-- 璁扮瑪璁板脊绐� --> -<t-popup visible="{{showNoteDialog}}" bind:visible-change="onVisibleChange" placement="center"> +<t-popup + visible="{{showNoteDialog}}" + bind:visible-change="onVisibleChange" + placement="center" +> <view class="popup"> <view slot="title"> <view class="title-text" wx:if="{{!flag}}"> <text class="note-title">{{submitTitle}}</text> - <t-image src="/static/images/bookService/detail/edit.png" class="edit-icon" bind:tap="changeTitle" data-value="{{true}}"></t-image> + <t-image + src="/static/images/bookService/detail/edit.png" + class="edit-icon" + bind:tap="changeTitle" + data-value="{{true}}" + ></t-image> </view> <view wx:else> - <t-input value="{{submitTitle}}" data-value="{{false}}" bind:enter="changeTitle" bind:blur="changeTitle" bind:change="inputChange" maxlength="{{50}}" style="{{inputStyle}}"></t-input> + <t-input + value="{{submitTitle}}" + data-value="{{false}}" + bind:enter="changeTitle" + bind:blur="changeTitle" + bind:change="inputChange" + maxlength="{{50}}" + style="{{inputStyle}}" + ></t-input> </view> </view> <view slot="content" class="content"> - <t-textarea value="{{textvalue}}" t-class="external-class" label="" placeholder="璇疯緭鍏ョ瑪璁板唴瀹�" maxcharacter="500" disableDefaultPadding="{{true}}" indicator bind:change="textareaChange" bind:blur="" style="{{inputStyle}}" placeholder-style="{{placeholderstyle}}" /> + <t-textarea + value="{{textvalue}}" + t-class="external-class" + label="" + placeholder="璇疯緭鍏ョ瑪璁板唴瀹�" + maxcharacter="500" + disableDefaultPadding="{{true}}" + indicator + bind:change="textareaChange" + bind:blur="" + style="{{inputStyle}}" + placeholder-style="{{placeholderstyle}}" + /> </view> <view class="submit-btn"> - <t-button theme="primary" size="large" block bind:tap="confirmSuggest">鎻愪氦</t-button> + <t-button theme="primary" size="large" block bind:tap="confirmSuggest" + >鎻愪氦</t-button + > </view> </view> - <t-icon t-class="close-btn" name="close-circle" size="32" color="#fff" bind:tap="closeDialog" /> -</t-popup> \ No newline at end of file + <t-icon + t-class="close-btn" + name="close-circle" + size="32" + color="#fff" + bind:tap="closeDialog" + /> +</t-popup> diff --git a/packageBookService/pages/bookServices/detail/components/suggest/suggest.js b/packageBookService/pages/bookServices/detail/components/suggest/suggest.js index b79c95e..b7190c7 100644 --- a/packageBookService/pages/bookServices/detail/components/suggest/suggest.js +++ b/packageBookService/pages/bookServices/detail/components/suggest/suggest.js @@ -60,7 +60,7 @@ textvalue: e.detail.value }) }, - feedBack() { + async feedBack() { const token = wx.getStorageSync('jsek-token') if (!token) { return wx.getUserProfile({ @@ -86,7 +86,7 @@ newDataListRequest: [] } - app.MG.ugc.newTopicMessage(query).then((res) => { + await app.MG.ugc.newTopicMessage(query).then((res) => { wx.showToast({ title: '鎻愪氦鎴愬姛', icon: 'success', @@ -95,7 +95,7 @@ }) }, // 纭畾 - confirmSuggest() { + async confirmSuggest() { 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(this.data.inputvalue); if (!this.data.ratevalue) { return wx.showToast({ @@ -118,7 +118,7 @@ title: '璇疯緭鍏ュ弽棣堝弽棣堝唴瀹�', }) } - this.feedBack() + await this.feedBack() } }, }) diff --git a/packageBookService/pages/bookServices/detail/components/testResource/testResource.wxml b/packageBookService/pages/bookServices/detail/components/testResource/testResource.wxml index 61d1f5c..1329559 100644 --- a/packageBookService/pages/bookServices/detail/components/testResource/testResource.wxml +++ b/packageBookService/pages/bookServices/detail/components/testResource/testResource.wxml @@ -1,45 +1,78 @@ <!--pages/bookServices/detail/components/testResource/testResource.wxml--> <view class="test-resource"> <view class="top-btn"> - <t-radio-group class="test-radio" t-class="horizontal-box" value="{{radioItem}}" bind:change="onRadioChange" style="margin: 0 10rpx 0 0"> + <t-radio-group + class="test-radio" + t-class="horizontal-box" + value="{{radioItem}}" + bind:change="onRadioChange" + style="margin: 0 10rpx 0 0" + > <view class="card {{radioItem == 'test' ? 'card--active' : ''}}"> <t-radio value="test" icon="none" borderless style="height: 80rpx"> <view class="radio-content" slot="content"> - <t-image src="{{ radioItem == 'test' ? '/static/images/bookService/detail/practice-icon.png' : '/static/images/bookService/detail/notest.png'}}"></t-image> - <text style="color: {{radioItem == 'test' ? '#fff':''}};">缁冧範</text> + <image + src="{{ radioItem == 'test' ? '/static/images/bookService/detail/practice-icon.png' : '/static/images/bookService/detail/notest.png'}}" + ></image> + <text style="color: {{radioItem == 'test' ? '#fff':''}};" + >缁冧範</text + > </view> </t-radio> </view> <view class="card {{radioItem == 'mock' ? 'card--active' : ''}}"> <t-radio value="mock" icon="none" borderless style="height: 74rpx"> <view class="radio-content" slot="content"> - <t-image src="{{ radioItem == 'mock' ? '/static/images/bookService/detail/checkpaper.png' : '/static/images/bookService/detail/zujuan.png'}}"></t-image> - <text style="color: {{radioItem == 'mock' ? '#fff':''}};">缁勫嵎</text> + <image + src="{{ radioItem == 'mock' ? '/static/images/bookService/detail/checkpaper.png' : '/static/images/bookService/detail/zujuan.png'}}" + ></image> + <text style="color: {{radioItem == 'mock' ? '#fff':''}};" + >缁勫嵎</text + > </view> </t-radio> </view> </t-radio-group> - <t-button class="error-btn" theme="default" size="medium" style="padding: 0 12rpx" bind:tap="goMycollect" data-answerType="errorQuestion"> + <t-button + class="error-btn" + theme="default" + size="medium" + style="padding: 0 12rpx" + bind:tap="goMycollect" + data-answerType="errorQuestion" + > <view slot="content"> - <t-image src="/static/images/bookService/detail/cuoti.png"></t-image> + <image src="/static/images/bookService/detail/cuoti.png"></image> 鎴戠殑閿欓 </view> </t-button> - <t-button class="collect-btn" theme="default" size="medium" style="padding: 0 12rpx" bind:tap="goMycollect" data-answerType="collectQuestion"> + <t-button + class="collect-btn" + theme="default" + size="medium" + style="padding: 0 12rpx" + bind:tap="goMycollect" + data-answerType="collectQuestion" + > <view slot="content"> - <t-image src="/static/images/bookService/detail/wodeshoucang.png"></t-image> + <image src="/static/images/bookService/detail/wodeshoucang.png"></image> 鎴戠殑鏀惰棌 </view> </t-button> </view> <!-- 缁冧範鍒楄〃 --> - <view class="resource-list" wx:for="{{list}}" wx:key="id" wx:if="{{radioItem == 'test'}}"> + <view + class="resource-list" + wx:for="{{list}}" + wx:key="id" + wx:if="{{radioItem == 'test'}}" + > <view class="list-title"> - <t-image src="/static/images/bookService/detail/test-icon.png"></t-image> + <image src="/static/images/bookService/detail/test-icon.png"></image> <text>{{item.name}}</text> </view> <view class="practice" bind:tap="goTest" data-value="{{item}}"> - <t-image src="/static/images/bookService/detail/lianxi-icon.png"></t-image> + <image src="/static/images/bookService/detail/lianxi-icon.png"></image> </view> </view> </view> @@ -49,25 +82,45 @@ <view wx:if="{{mockData.mockList.length}}"> <view class="mack-num">宸茬粍鍗穥{mockData.mockList.length}}娆�</view> <view class="mock-list"> - <view class="mock-list-box" wx:for="{{mockData.mockList}}" wx:key="id" data-item="{{item}}" bind:tap="goMackPaper"> + <view + class="mock-list-box" + wx:for="{{mockData.mockList}}" + wx:key="id" + data-item="{{item}}" + bind:tap="goMackPaper" + > <view class="mock-title">{{item.name}}</view> <view class="mock-message"> <view class="message-box"> <view class="mack-state"> - <text wx:if="{{item.state == '3'}}" class="complete state-pad">宸插畬鎴�</text> - <text wx:elif="{{item.state == '2' || item.state == '1'}}" class="Incomplete state-pad">鏈畬鎴�</text> + <text wx:if="{{item.state == '3'}}" class="complete state-pad" + >宸插畬鎴�</text + > + <text + wx:elif="{{item.state == '2' || item.state == '1'}}" + class="Incomplete state-pad" + >鏈畬鎴�</text + > <text wx:else class="Incomplete state-pad">鏈紑濮�</text> </view> <view class="mock-time">{{item.createDate}}</view> </view> - <view class="mock-score" wx:if="{{item.report.userScore}}">{{item.report.userScore}}鍒�</view> + <view class="mock-score" wx:if="{{item.state == '3'}}" + >{{item.report.userScore}}鍒�</view + > </view> </view> </view> </view> <view wx:else class="not-mock"> - <t-image src="/static/images/bookService/examination/zhuangtai-icon.png"></t-image> - <view class="not-mock-message note-mock-text">缁勫嵎鏄敹璐瑰姛鑳斤紝璇疯喘涔板悗浣跨敤锛�</view> - <view class="note-mock-price note-mock-text">浠锋牸锛�<text class="mock-price">锟{mockData.price}}</text> 鍏�/娆�</view> + <image + src="/static/images/bookService/examination/zhuangtai-icon.png" + ></image> + <view class="not-mock-message note-mock-text" + >缁勫嵎鏄敹璐瑰姛鑳斤紝璇疯喘涔板悗浣跨敤锛�</view + > + <view class="note-mock-price note-mock-text" + >浠锋牸锛�<text class="mock-price">锟{mockData.price}}</text> 鍏�/娆�</view + > </view> -</view> \ No newline at end of file +</view> diff --git a/packageBookService/pages/bookServices/detail/components/testResource/testResource.wxss b/packageBookService/pages/bookServices/detail/components/testResource/testResource.wxss index 34496b5..d78e74a 100644 --- a/packageBookService/pages/bookServices/detail/components/testResource/testResource.wxss +++ b/packageBookService/pages/bookServices/detail/components/testResource/testResource.wxss @@ -13,6 +13,11 @@ background-color: #FFF6F0; } +.list-title { + display: flex; + align-items: center; +} + .list-title image { width: 34rpx; height: 38rpx; diff --git a/packageBookService/pages/bookServices/detail/components/tree/index.wxml b/packageBookService/pages/bookServices/detail/components/tree/index.wxml index 32b7b5a..3820ca8 100644 --- a/packageBookService/pages/bookServices/detail/components/tree/index.wxml +++ b/packageBookService/pages/bookServices/detail/components/tree/index.wxml @@ -1,62 +1,171 @@ <view class="tree"> <t-collapse default-value="{{activeValues}}" bind:change="handleChange"> - <t-collapse-panel wx:for="{{treeList}}" wx:for-item="item" wx:for-index="index" wx:key="id" value="{{index}}" expandIcon disabled="{{!item.children}}"> + <t-collapse-panel + wx:for="{{treeList}}" + wx:for-item="item" + wx:for-index="index" + wx:key="id" + value="{{index}}" + expandIcon + disabled="{{!item.children}}" + > <view slot="header" class="header-title"> <view wx:if="{{tab == 'jsek_cloudLearning'}}"> - <t-checkbox icon="rectangle" checked="{{item.checked}}" data-item="{{item}}" bind:change="checkResourceTitle" /> + <t-checkbox + icon="rectangle" + checked="{{item.checked}}" + data-item="{{item}}" + bind:change="checkResourceTitle" + /> <!-- <t-checkbox icon="rectangle" checked="{{true}}" data-item="{{item}}" bind:change="checkResourceTitle" /> --> - </view> <text>{{item.name}}</text> </view> - <view class="list" wx:for="{{item.children}}" wx:for-item="citem" wx:for-index="cindex" wx:key="cindex"> + <view + class="list" + wx:for="{{item.children}}" + wx:for-item="citem" + wx:for-index="cindex" + wx:key="cindex" + > <!-- // 鍒ゆ柇 鏃犲瓙椤� 涓斾负鍟嗗搧item 鐩存帴鏄剧ず --> - <view class="listItems" wx:if="{{citem.childrenFolderCount <= 0 && citem.type == 'productItem'}}"> - <view class="itemsInfo" wx:if="{{citem.name}}" data-item="{{citem}}" data-index="{{cindex}}"> - <view class="contentBox" bind:tap="goPlayer" data-item="{{citem}}" data-parent="{{item}}"> + <view + class="listItems" + wx:if="{{citem.childrenFolderCount <= 0 && citem.type == 'productItem'}}" + > + <view + class="itemsInfo" + wx:if="{{citem.name}}" + data-item="{{citem}}" + data-index="{{cindex}}" + > + <view + class="contentBox" + bind:tap="goPlayer" + data-item="{{citem}}" + data-parent="{{item}}" + > <!-- 鏁欏璧勬簮 浜戝涔� 鍥炬爣 --> - <view class="box-image" style="{{ tab == 'jsek_teachingResources' ? 'width: 350rpx;' : 'width: 450rpx;'}}"> + <view + class="box-image" + style="{{ tab == 'jsek_teachingResources' ? 'width: 350rpx;' : 'width: 450rpx;'}}" + > <view class="checkBox" wx:if="{{tab == 'jsek_cloudLearning'}}"> <!-- checked="{{citem.checked}}" --> <!-- <t-checkbox icon="rectangle" checked="{{citem.checked}}" disabled="{{citem.selectType=='webpage' || citem.isDownload != 1 || citem.fileMap[citem.file].protectType == 'Private'}}" catch:change="checkResource" data-item="{{citem}}" /> --> - <t-checkbox icon="rectangle" checked="{{citem.checked}}" data-item="{{citem}}" catch:change="checkResource" /> + <t-checkbox + icon="rectangle" + checked="{{citem.checked}}" + data-item="{{citem}}" + catch:change="checkResource" + /> </view> <!-- 鏁欏璧勬簮鍥炬爣 --> <view class="teach-icon"> - <t-image wx:if="{{citem.selectType == 'audio'}}" src="/static/images/bookService/detail/audioIcon.png" mode="aspectFill" /> - <t-image wx:if="{{citem.selectType == 'video'}}" src="/static/images/bookService/detail/video.png" mode="aspectFill" /> - <t-image wx:if="{{citem.selectType == 'pdf'}}" src="/static/images/bookService/detail/pdf.png" mode="aspectFill" /> - <t-image wx:if="{{citem.selectType == 'webpage'}}" src="/static/images/bookService/detail/net.png" mode="aspectFill" /> - <t-image wx:if="{{citem.selectType == 'picture'}}" src="/static/images/bookService/detail/picture.png" mode="aspectFill" /> - <t-image wx:if="{{citem.selectType == 'zip'}}" src="/static/images/bookService/detail/zip.png" mode="aspectFill" /> - <t-image wx:if="{{ citem.fileMap[citem.file].extension == 'doc' || citem.fileMap[citem.file].extension == 'docx'}}" src="/static/images/bookService/detail/word.png" mode="aspectFill" /> - <t-image wx:if="{{ citem.fileMap[citem.file].extension == 'xlsx' || citem.fileMap[citem.file].extension == 'xlsx'}}" src="/static/images/bookService/detail/excel.png" mode="aspectFill" /> - <t-image wx:if="{{ citem.fileMap[citem.file].extension == 'ppt' || citem.fileMap[citem.file].extension == 'pptx'}}" src="/static/images/bookService/detail/PPT.png" mode="aspectFill" /> + <image + wx:if="{{citem.selectType == 'audio'}}" + src="/static/images/bookService/detail/audioIcon.png" + mode="aspectFill" + /> + <image + wx:if="{{citem.selectType == 'video'}}" + src="/static/images/bookService/detail/video.png" + mode="aspectFill" + /> + <image + wx:if="{{citem.selectType == 'pdf'}}" + src="/static/images/bookService/detail/pdf.png" + mode="aspectFill" + /> + <image + wx:if="{{citem.selectType == 'webpage'}}" + src="/static/images/bookService/detail/net.png" + mode="aspectFill" + /> + <image + wx:if="{{citem.selectType == 'picture'}}" + src="/static/images/bookService/detail/picture.png" + mode="aspectFill" + /> + <image + wx:if="{{citem.selectType == 'zip'}}" + src="/static/images/bookService/detail/zip.png" + mode="aspectFill" + /> + <image + wx:if="{{ citem.fileMap[citem.file].extension == 'doc' || citem.fileMap[citem.file].extension == 'docx'}}" + src="/static/images/bookService/detail/word.png" + mode="aspectFill" + /> + <image + wx:if="{{ citem.fileMap[citem.file].extension == 'xlsx' || citem.fileMap[citem.file].extension == 'xlsx'}}" + src="/static/images/bookService/detail/excel.png" + mode="aspectFill" + /> + <image + wx:if="{{ citem.fileMap[citem.file].extension == 'ppt' || citem.fileMap[citem.file].extension == 'pptx'}}" + src="/static/images/bookService/detail/PPT.png" + mode="aspectFill" + /> </view> <!-- 浜戝涔犲浘鏍� --> <view> </view> <!-- 鍚嶇О --> - <text class="name" style="{{ tab == 'jsek_teachingResources' ? 'width: 300rpx;' : 'width: 400rpx;'}}">{{citem.name}}</text> + <text + class="name" + style="{{ tab == 'jsek_teachingResources' ? 'width: 300rpx;' : 'width: 400rpx;'}}" + >{{citem.name}}</text + > </view> <!-- 鏁欏璧勬簮绫诲瀷 --> <view class="teachClass"> {{citem.resourceClass}} </view> - <view class="teach-btn" wx:if="{{tab == 'jsek_teachingResources'}}"> + <view + class="teach-btn" + wx:if="{{tab == 'jsek_teachingResources'}}" + > <!-- 涓嬭浇鎸夐挳 --> - <t-image src="/static/images/bookService/detail/download-icon.png" width="16" height="16" class="download" data-value="{{citem}}" catchtap="downloadTeach"></t-image> + <image + src="/static/images/bookService/detail/download-icon.png" + class="download-image" + data-value="{{citem}}" + catchtap="downloadTeach" + ></image> </view> <view wx:if="{{tab == 'jsek_cloudLearning'}}"> <!-- 浜戝涔犺瘯鐪嬪浘鏍� --> - <t-image src="/static/images/bookService/detail/shikan.png" class="testSee" wx:if="{{!citem.isbuy ? false : citem.freeFile ? true : false}}"></t-image> + <image + src="/static/images/bookService/detail/shikan.png" + class="testSee" + wx:if="{{!citem.isbuy ? false : citem.freeFile ? true : false}}" + ></image> <!-- 浜戝涔犲姞鍏ヨ喘鐗╄溅鍥炬爣 --> - <t-image src="/static/images/bookService/detail/cart.png" wx:if="{{citem.isShopCar}}" class="shopCar" bind:tap="onCloudShoppingCart"></t-image> + <image + src="/static/images/bookService/detail/cart.png" + wx:if="{{citem.isShopCar}}" + class="shopCar" + bind:tap="onCloudShoppingCart" + ></image> <!-- 浜戝涔犺喘涔板浘鏍� --> - <t-image bind:tap="onCloudShoppingCart" src="/static/images/bookService/detail/need-buy.png" class="need-buy" wx:if="{{citem.isbuy }}"></t-image> + <image + bind:tap="onCloudShoppingCart" + src="/static/images/bookService/detail/need-buy.png" + class="need-buy" + wx:if="{{citem.isbuy }}" + ></image> </view> </view> </view> </view> <!-- // 鍒ゆ柇 涓嶆槸鍟嗗搧 鏈夊瓙椤� 閫掑綊缁勪欢 --> - <tree wx:else bookInfo="{{bookInfo}}" treeList="{{[citem]}}" itemId="{{itemId}}" tab="{{tab}}" openTeachids="{{openTeachids}}" openLearnids="{{openLearnids}}"></tree> + <tree + wx:else + bookInfo="{{bookInfo}}" + treeList="{{[citem]}}" + itemId="{{itemId}}" + tab="{{tab}}" + openTeachids="{{openTeachids}}" + openLearnids="{{openLearnids}}" + ></tree> </view> <view class="listItems" wx:if="{{children.length <= 0 && !loading}}"> 鏆傛棤鏁版嵁 @@ -68,4 +177,4 @@ </t-collapse> </view> -<web-view wx:if="{{webpageSrc}}" src="{{webpageSrc}}"></web-view> \ No newline at end of file +<web-view wx:if="{{webpageSrc}}" src="{{webpageSrc}}"></web-view> diff --git a/packageBookService/pages/bookServices/detail/components/tree/index.wxss b/packageBookService/pages/bookServices/detail/components/tree/index.wxss index 6f1e9fb..48981db 100644 --- a/packageBookService/pages/bookServices/detail/components/tree/index.wxss +++ b/packageBookService/pages/bookServices/detail/components/tree/index.wxss @@ -18,7 +18,10 @@ padding: 0; } - +.download-image { + width: 32rpx; + height: 32rpx; +} .contentBox { padding: 0 26rpx; diff --git a/packageBookService/pages/bookServices/detail/components/webView/index.js b/packageBookService/pages/bookServices/detail/components/webView/index.js new file mode 100644 index 0000000..6c5577c --- /dev/null +++ b/packageBookService/pages/bookServices/detail/components/webView/index.js @@ -0,0 +1,110 @@ +// packageBookService/pages/components/webView/index.js +const app = getApp() +Component({ + /** + * 缁勪欢鐨勫睘鎬у垪琛� + */ + properties: { + fileInfo: { + type: Object, + value: {} + } + }, + /** + * 椤甸潰鐨勫垵濮嬫暟鎹� + */ + data: { + src: "", + link: false, + epubObj: null, + currentPage: '', + }, + + methods: { + onLoadWeb(e) { + console.log(e, "load") + }, + + onError(e) { + console.log(e, "err") + }, + + setWebViewSrc() { + var url = app.config.epubUrl + + "?md5=" + + this.properties.fileInfo.md5 + + "&bookName=" + + this.properties.fileInfo.bookName + + "&url=" + app.config.requestCtx + + "&token=" + + wx.getStorageSync(app.config.tokenKey) + + "&recordLocation=" + + this.data.currentPage + this.setData({ + src: url + }) + }, + + // 鑾峰彇UserKey + getProgress() { + app.MG.identity + .getUserKey({ + domain: "bookReadProgress", + keys: [this.properties.fileInfo.md5], + }) + .then((res) => { + if (res.length) { + try { + this.setData({ + currentPage: JSON.parse(res[0].value).page, + }); + } catch (error) { + this.setData({ + currentPage: "", + }); + } + if (this.data.currentPage > this.properties.fileInfo.freePage) { + this.setData({ + currentPage: "", + }); + } + } + this.setWebViewSrc(); + }); + }, + // 璁剧疆userKey + setProgress(data) { + if (data.page && data.page != this.data.currentPage) { + app.MG.identity + .setUserKey({ + setKeyRequests: [{ + domain: "bookReadProgress", + key: this.properties.fileInfo.md5, + value: JSON.stringify(data), + },], + }) + .then((res) => { }); + } + }, + + drawBack(e) { + let { + currentLocation, + percentage, + type + } = + e.detail.data[0]; + if (type == "progress" && type != "backDetail") { + this.setProgress({ + page: currentLocation, + progress: percentage, + }); + } else if (type == "backDetail") { + this.setProgress({ + page: 1, + progress: "0%", + }); + } + }, + } +}) \ No newline at end of file diff --git a/packageBookService/pages/bookServices/detail/components/webView/index.json b/packageBookService/pages/bookServices/detail/components/webView/index.json new file mode 100644 index 0000000..e8cfaaf --- /dev/null +++ b/packageBookService/pages/bookServices/detail/components/webView/index.json @@ -0,0 +1,4 @@ +{ + "component": true, + "usingComponents": {} +} \ No newline at end of file diff --git a/packageBookService/pages/bookServices/detail/components/webView/index.wxml b/packageBookService/pages/bookServices/detail/components/webView/index.wxml new file mode 100644 index 0000000..2cee560 --- /dev/null +++ b/packageBookService/pages/bookServices/detail/components/webView/index.wxml @@ -0,0 +1,4 @@ +<!--packageBookService/pages/components/webView/index.wxml--> +<view class="page-body"> + <!-- <web-view bind:message="drawBack" binderror="onError" bindload="onLoadWeb" src="{{src}}"></web-view> --> +</view> \ No newline at end of file diff --git a/packageBookService/pages/bookServices/detail/components/webView/index.wxss b/packageBookService/pages/bookServices/detail/components/webView/index.wxss new file mode 100644 index 0000000..06a98b7 --- /dev/null +++ b/packageBookService/pages/bookServices/detail/components/webView/index.wxss @@ -0,0 +1,4 @@ +.page-body { + width: 100vw; + height: 500rpx; +} \ No newline at end of file diff --git a/packageBookService/pages/bookServices/detail/index.js b/packageBookService/pages/bookServices/detail/index.js index 500be20..bc9ec6c 100644 --- a/packageBookService/pages/bookServices/detail/index.js +++ b/packageBookService/pages/bookServices/detail/index.js @@ -67,6 +67,16 @@ paperBookCount: 0, //绾歌川涔﹀墿浣欐鏁� ebookCount: 0, //鐢靛瓙涔﹀墿浣欐鏁� userInfo: {}, + fileInfo: { + bookName: "", + fileType: "", + md5: "", + freePage: "" + }, //闃呰鍣ㄦ暟鎹� + buyResourceData: { + productLinkPath: '', + refCode: '', + } }, @@ -157,7 +167,7 @@ * 椤甸潰涓婃媺瑙﹀簳浜嬩欢鐨勫鐞嗗嚱鏁� */ onReachBottom() { - if (this.data.tabValue == 'jesk_note') { + if (this.data.tabValue == 'jsek_note') { const child = this.selectComponent('#note') child.onReachBottom() } @@ -352,13 +362,44 @@ this.setData({ noFile: true }); + if (res.datas[0].bookshelf_pdf) { + this.setData({ + "fileInfo.bookName": this.data.bookDetail.name, + "fileInfo.fileType": 'pdf', + "fileInfo.md5": res.datas[0].bookshelf_pdf, + "fileInfo.freePage": res.datas[0].bookshelf_probationPage, + }); + } else if (res.datas[0].bookshelf_protectedEpub) { + this.setData({ + "fileInfo.bookName": this.data.bookDetail.name, + "fileInfo.fileType": 'epub', + "fileInfo.md5": res.datas[0].bookshelf_protectedEpub, + "fileInfo.freePage": res.datas[0].bookshelf_freeEpub, + }); + } } } else { if (this.data.bookDetail.pdf || this.data.bookDetail.protectedEpub) { this.setData({ noFile: true }); + if (this.data.bookDetail.pdf) { + this.setData({ + "fileInfo.bookName": this.data.bookDetail.name, + "fileInfo.fileType": 'pdf', + "fileInfo.md5": this.data.bookDetail.pdf, + "fileInfo.freePage": this.data.bookDetail.probationPage, + }); + } else if (this.data.bookDetail.protectedEpub) { + this.setData({ + "fileInfo.bookName": this.data.bookDetail.name, + "fileInfo.fileType": 'epub', + "fileInfo.md5": this.data.bookDetail.protectedEpub, + "fileInfo.freePage": this.data.bookDetail.freeEpubPage, + }); + } } + console.log(this.data.fileInfo, 456) this.setData({ selectedIds: this.data.bookDetail.defaultSaleMethodId, bookBuy: this.data.bookDetail.purchasedSaleMethodIdList.indexOf(this.data.bookDetail.defaultSaleMethodId) > -1 @@ -453,6 +494,12 @@ if (e.detail.label == '鏁欏璧勬簮' || e.detail.label == '浜戝涔�' || e.detail.label == '浜戞祴璇�') { const checkData = this.data.cmsDatas.find(item => item.refCode == e.detail.value) if (checkData) { + if (e.detail.value == 'jsek_cloudLearning') { + this.setData({ + 'buyResourceData.productLinkPath': checkData.productLinkPath, + 'buyResourceData.refCode': checkData.refCode + }) + } if ((e.detail.value == 'jsek_teachingResources' && !this.data.teach.length) || (e.detail.value == 'jsek_cloudLearning' && !this.data.learn.length) || (e.detail.value == 'questionBank' && !this.data.test.length)) { @@ -470,6 +517,12 @@ if (token) { child.changeLoading() child.getNoteList() + } + + } else if (e.detail.label == '鐢靛瓙涔�') { + const child = this.selectComponent('#eBook') + if (child) { + child.getProgress() } } @@ -669,54 +722,65 @@ // 鍥句功娣诲姞璐墿杞� async addBookShopcCar() { - const token = wx.getStorageSync('jsek-token') - if (!token) { - return wx.getUserProfile({ - desc: '鐢ㄦ埛鐧诲綍', - success: (res) => { - console.log(res); + + if (!this.data.expire) { + + const token = wx.getStorageSync('jsek-token') + if (!token) { + return wx.getUserProfile({ + desc: '鐢ㄦ埛鐧诲綍', + success: (res) => { + console.log(res); + } + }) + } + + const shoppingCartGetId = [] + + let query = { + start: 0, + size: 9999, + filterList: [], + searchList: [] + } + const res = await app.MG.store.getShoppingCartProductList(query) + res.datas.forEach((item) => { + shoppingCartGetId.push(item.saleMethod.id) + }) + console.log(shoppingCartGetId, 'shoppingCartGetId'); + console.log(this.data.selectedIds, '閿�鍞柟寮廼d'); + const determine = shoppingCartGetId.some((item) => item == this.data.selectedIds) + console.log(determine); + if (!determine) { + let query = { + requests: [ + { + saleMethodId: this.data.selectedIds, + storeEventId: null, + agentCode: '鐢靛瓙涔�' + } + ] } + const addRes = app.MG.store.addShoppingCart(query) + this.showSuccessToast() + + } else { + Toast({ + context: this, + selector: '#t-toast', + message: '宸叉坊鍔�', + theme: 'success', + direction: 'column', + }); + } + } else { + wx.showToast({ + title: "鍟嗗搧涓嶅湪鏈夋晥鏈�", + icon: 'none', + duration: 1000, }) } - const shoppingCartGetId = [] - - let query = { - start: 0, - size: 999, - filterList: [], - searchList: [] - } - const res = await app.MG.store.getShoppingCartProductList(query) - res.datas.forEach((item) => { - shoppingCartGetId.push(item.saleMethod.id) - }) - console.log(shoppingCartGetId, 'shoppingCartGetId'); - console.log(this.data.selectedIds, '閿�鍞柟寮廼d'); - const determine = shoppingCartGetId.some((item) => item == this.data.selectedIds) - console.log(determine); - if (!determine) { - let query = { - requests: [ - { - saleMethodId: this.data.selectedIds, - storeEventId: null, - agentCode: '鐢靛瓙涔�' - } - ] - } - const addRes = app.MG.store.addShoppingCart(query) - this.showSuccessToast() - - } else { - Toast({ - context: this, - selector: '#t-toast', - message: '宸叉坊鍔�', - theme: 'success', - direction: 'column', - }); - } }, @@ -1342,6 +1406,21 @@ } }, + goRead() { + if (!this.data.noFile) { + wx.showToast({ + title: '鏆傛棤闃呰鏂囦欢', + icon: 'none', + duration: 2000 + }) + return false; + } + wx.navigateTo({ + url: '/packageBookService/pages/components/webView/index?md5=' + this.data.fileInfo.md5 + '&fileName=' + this.data.fileInfo.bookName + '&fileType=' + this.data.fileInfo.fileType + '&freePage=' + this.data.fileInfo.freePage + }) + + }, + //鏍蜂功鐢宠 //鐢宠鐢靛瓙鏍蜂功 appplyElectronicBook() { diff --git a/packageBookService/pages/bookServices/detail/index.json b/packageBookService/pages/bookServices/detail/index.json index 9bba7c1..980bf12 100644 --- a/packageBookService/pages/bookServices/detail/index.json +++ b/packageBookService/pages/bookServices/detail/index.json @@ -1,5 +1,4 @@ { - "component": true, "usingComponents": { "t-icon": "tdesign-miniprogram/icon/icon", "t-image": "tdesign-miniprogram/image/image", @@ -14,6 +13,7 @@ "note": "/packageBookService/pages/bookServices/detail/components/note/note", "tree": "/packageBookService/pages/bookServices/detail/components/tree/index", "suggest": "/packageBookService/pages/bookServices/detail/components/suggest/suggest", + "epub-view": "/packageBookService/pages/bookServices/detail/components/webView/index", "t-loading": "tdesign-miniprogram/loading/loading", "t-dialog": "tdesign-miniprogram/dialog/dialog", "t-toast": "tdesign-miniprogram/toast/toast", diff --git a/packageBookService/pages/bookServices/detail/index.wxml b/packageBookService/pages/bookServices/detail/index.wxml index b55720f..63fca54 100644 --- a/packageBookService/pages/bookServices/detail/index.wxml +++ b/packageBookService/pages/bookServices/detail/index.wxml @@ -19,33 +19,35 @@ <view class="book-detail"> <view class="detail-left"> <view class="book-img"> - <t-image + <image + loading="" src="{{bookDetail.icon}}" mode="aspectFill" - width="120" - height="170" aria-label="{{bookDetail.name}}" /> </view> <view class="book-use"> <view class="collect" bind:tap="setCollect"> <view> - <t-image + <image + loading="" src="/static/images/bookService/detail/collect.png" wx:if="{{!bookDetail.isFavourite}}" - ></t-image> - <t-image + /> + <image + loading="" src="/static/images/bookService/detail/collecting.png" wx:if="{{bookDetail.isFavourite}}" - ></t-image> + /> </view> <view class="use-title">鏀惰棌</view> </view> <view class="suggest" bind:tap="suggestBtn"> <view> - <t-image + <image + loading="" src="/static/images/bookService/detail/suggest.png" - ></t-image> + /> </view> <view class="use-title">鎴戣寤鸿</view> </view> @@ -81,10 +83,10 @@ <view class="class-name showTow">{{bookDetail.class}}</view> </view> </view> - <t-image + <image src="/static/images/bookService/detail/square.png" class="right-background" - ></t-image> + /> </view> </view> <!-- 閿�鍞俊鎭� --> @@ -93,16 +95,14 @@ <!-- 鐢靛瓙涔﹀敭浠� --> <view class="electron-price"> <view> - <t-image - src="/static/images/bookService/detail/electon-price.png" - ></t-image> + <image src="/static/images/bookService/detail/electon-price.png" /> </view> <view class="price"> <view class="price-text" >楼{{bookDetail.price == '0.00' ? '鍏嶈垂' :bookDetail.price}}</view > <view class="price-old" wx:if="{{bookDetail.oldPrice != '0.00'}}" - >楼{{bookDetail.oldPrice}} <view class="line"></view> + >楼{{bookDetail.oldPrice}} </view> </view> <view> </view> @@ -110,9 +110,7 @@ <!-- 绾歌川涔﹀敭浠� --> <view class="paper-price"> <view> - <t-image - src="/static/images/bookService/detail/paper-price.png" - ></t-image> + <image src="/static/images/bookService/detail/paper-price.png" /> </view> <view class="price" >楼{{bookDetail.paperPrice == '0.00' ? '鍏嶈垂' : @@ -122,33 +120,32 @@ </view> <!-- 缃戝簵 --> <view class="book-web"> - <t-image + <image src="/static/images/bookService/detail/jd.png" wx:if="{{bookDetail.JDLink}}" bind:tap="goShop" data-link="{{bookDetail.JDLink}}" data-type="jd" - ></t-image> - <t-image + /> + <image + class="tmall-image" src="/static/images/bookService/detail/tmall.png" - width="32" - height="22" bind:tap="goShop" data-link="{{bookDetail.tmallLink}}" wx:if="{{bookDetail.tmallLink}}" - ></t-image> - <t-image + /> + <image src="/static/images/bookService/detail/dangdang.png" bind:tap="goShop" data-link="{{bookDetail.dangdangLink}}" wx:if="{{bookDetail.dangdangLink}}" - ></t-image> - <t-image - src="/static/images/bookService/detail/jd.png" + /> + <image + src="/static/images/bookService/detail/weidian.png" bind:tap="goShop" data-link="{{bookDetail.weidianLink}}" wx:if="{{bookDetail.weidianLink}}" - ></t-image> + /> </view> </view> </view> @@ -164,7 +161,7 @@ <book-brief content="{{bookDetail.content}}" authorIntroduction="{{bookDetail.authorIntroduction}}" - wx:if="{{bookDetail.content || bookDetail.authorIntroduction}}" + wx:if="{{bookDetail.content && bookDetail.authorIntroduction}}" ></book-brief> <view wx:if="{{!bookDetail.content && !bookDetail.authorIntroduction}}" @@ -173,8 +170,12 @@ <t-empty icon="folder-open" description="鏆傛棤鏁版嵁" /> </view> </t-tab-panel> - <t-tab-panel label="鐢靛瓙涔�" value="1" style="{{tabPanelstyle}}"> - 鐢靛瓙涔� + <t-tab-panel label="鐢靛瓙涔�" value="jsek_eBook" style="{{tabPanelstyle}}"> + <epub-view + fileInfo="{{fileInfo}}" + id="eBook" + class="webView" + ></epub-view> </t-tab-panel> <t-tab-panel label="鏁欏璧勬簮" @@ -218,6 +219,8 @@ bind:getFreeResource="getFreeResource" bind:allAddShoppiingCar="allAddShoppiingCar" id="learn-resource" + buyResourceData="{{buyResourceData}}" + bookId="{{bookDetail.id}}" ></learn-resource> <tree id="tree" @@ -248,13 +251,8 @@ <t-empty icon="folder-open" description="鏆傛棤鏁版嵁" /> </view> </t-tab-panel> - <t-tab-panel label="浜戠瑪璁�" value="jesk_note" style="{{tabPanelstyle}}"> - <note - bookInfo="{{bookDetail}}" - id="note" - class="note-list" - bind:changeLoaidng="changeLoaidng" - ></note> + <t-tab-panel label="浜戠瑪璁�" value="jsek_note" style="{{tabPanelstyle}}"> + <note bookInfo="{{bookDetail}}" id="note" class="note-list"></note> </t-tab-panel> </t-tabs> </view> @@ -262,7 +260,10 @@ <view class="box-bottom"> <view class="bottom-btn" bind:tap="appplyElectronicBook"> <view> - <t-image src="/static/images/bookService/detail/ebook.png"></t-image> + <t-image + loading="" + src="/static/images/bookService/detail/ebook.png" + ></t-image> </view> <view class="btn-text">鐢靛瓙鏍蜂功鐢宠</view> </view> @@ -275,15 +276,35 @@ <view class="btn-text">绾歌川鏍蜂功鐢宠</view> </view> <view - class="shopCar {{(tabValue == 'jsek_teachingResources' || tabValue == 'jesk_note') ? 'disabledColor' : 'shopCarColor' }}" + class="shopCar {{(tabValue == 'jsek_teachingResources' || tabValue == 'jsek_note') ? 'disabledColor' : 'shopCarColor' }}" bind:tap="addBookShopcCar" + wx:if="{{tabValue != 'jsek_eBook'}}" >鍔犲叆璐墿杞�</view > <view - class="buy {{(tabValue == 'jsek_teachingResources' || tabValue == 'jesk_note') ? 'disabledColor' : 'buyColor' }}" + class="buy {{(tabValue == 'jsek_teachingResources' || tabValue == 'jsek_note') ? 'disabledColor' : 'buyColor' }}" bind:tap="buyBtn" + wx:if="{{tabValue != 'jsek_eBook'}}" >绔嬪嵆璐拱</view > + <view + class="shopCar shopCarColor" + bind:tap="addBookShopcCar" + wx:if="{{tabValue == 'jsek_eBook' && !bookBuy}}" + >鍔犲叆璐墿杞�</view + > + <view + class="buy buyColor" + bind:tap="buyBtn" + wx:if="{{tabValue == 'jsek_eBook' && !bookBuy}}" + >绔嬪嵆璐拱</view + > + <view + class="read buyColor" + bind:tap="goRead" + wx:if="{{tabValue == 'jsek_eBook' && bookBuy}}" + >绔嬪嵆鏌ョ湅</view + > </view> </scroll-view> <!-- 鎴戣寤鸿寮圭獥 --> diff --git a/packageBookService/pages/bookServices/detail/index.wxss b/packageBookService/pages/bookServices/detail/index.wxss index 8b09d1f..abbb481 100644 --- a/packageBookService/pages/bookServices/detail/index.wxss +++ b/packageBookService/pages/bookServices/detail/index.wxss @@ -22,10 +22,19 @@ background-color: #F2F3F8; } +.book-img image { + width: 240rpx; + height: 340rpx; +} + .book-detail { padding: 32rpx; display: flex; border-radius: 0 0 20rpx 20rpx; +} + +.tmall-image { + width: 64rpx !important; } .detail-left { @@ -172,16 +181,10 @@ position: relative; font-size: 28rpx; opacity: 0.6; + text-decoration: line-through; + text-decoration-color: #fff; } -.line { - position: absolute; - top: 50%; - left: -5rpx; - width: 80%; - height: 3rpx; - background-color: #fff; -} .book-web { margin-left: 30rpx; @@ -263,6 +266,14 @@ color: #fff; } +.read { + width: 50%; + display: flex; + align-items: center; + justify-content: center; + color: #fff; +} + .shopCarColor { background-color: #F1AC37; } @@ -338,4 +349,8 @@ position: absolute; top: 30rpx; left: 118rpx; +} + +.webView { + height: 500rpx; } \ No newline at end of file diff --git a/packageBookService/pages/bookServices/examination/examination.js b/packageBookService/pages/bookServices/examination/examination.js index d99f15b..e444433 100644 --- a/packageBookService/pages/bookServices/examination/examination.js +++ b/packageBookService/pages/bookServices/examination/examination.js @@ -90,6 +90,11 @@ * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鏄剧ず */ onShow() { + if (this.data.answerType != 'mock') { + if (wx.timer) { + clearInterval(wx.timer) + } + } if (this.data.answerType == 'mock') { if (wx.timer) { clearInterval(wx.timer) @@ -109,12 +114,18 @@ * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰闅愯棌 */ onHide() { + if (wx.timer) { + clearInterval(wx.timer) + } }, /** * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍗歌浇 */ onUnload(e) { + if (wx.timer) { + clearInterval(wx.timer) + } if (this.data.countdownInterval !== null) { clearInterval(this.data.countdownInterval) } @@ -458,18 +469,19 @@ let oldQuestionList = [] oldQuestionList = await this.getMockQuestionList() const userAnswerList = await this.getMockAnswer() - await this.getMockDataList(oldQuestionList, userAnswerList) this.setData({ 'mockData.sumTime': oldMockData.time, cardList: oldQuestionList }) + await this.getMockDataList(oldQuestionList, userAnswerList) } if (oldMockData.state == '0' || oldMockData.state == '1' || oldMockData.state == '2') { this.startCountdown() } if (oldMockData.state == '3') { this.setData({ - submitStatus: true + submitStatus: true, + subjectiveNum: oldMockData.report.userScore }) } } @@ -1389,141 +1401,8 @@ // 鑾峰彇缁勫嵎棰樼洰鍒楄〃 async getMockDataList(questionList, oldList) { const questionDataList = this.data.questionDataList - // for (let pathindex = 0; pathindex < questionList.length; pathindex++) { - // const pathitem = questionList[pathindex]; - // let itemIds = [] - // pathitem.infoList.forEach(item => { - // itemIds.push(item.id + '') - // }) - // let query = { - // path: '*', - // cmsPath: this.data.rootCmsItemId, - // cmsType: '*', - // productId: this.data.bookId, - // queryType: '*', - // itemIds, - // itemFields: { - // Embedded_QuestionBank_Stem: [], - // Embedded_QuestionBank_AnalysisCon: [], - // Embedded_QuestionBank_Answer: [], - // Embedded_QuestionBank_Option: [], - // Embedded_QuestionBank_QuestionType: [], - // Embedded_QuestionBank_StemStyle: [], - // Embedded_QuestionBank_OptionStyle: [], - // Embedded_QuestionBank_KnowledgePoint: [], - // Embedded_QuestionBank_Difficulty: [] - // } - // } - // await app.MG.store.getProductDetail(query).then((res) => { - // res.datas.cmsDatas[0].datas.forEach((item, index) => { - // // 寰幆questionList,缁欐瘡棰樿祴鍊煎垎鏁� - // let oldObj - // if (oldList) oldObj = oldList.find((oldItem) => oldItem.id == item.id) - // let questionObj = { - // // number: pathitem.infoList.find(infoItem => infoItem.itemId == item.id).number, - // id: item.id, - // score: pathitem.infoList.find(infoItem => infoItem.id == item.id).score, - // stem: - // item.Embedded_QuestionBank_QuestionType == 'completion' - // ? JSON.parse(item.Embedded_QuestionBank_Stem) - // .stemTxt.replaceAll('<vacancy>', ',input,') - // .split(',') - // : JSON.parse(item.Embedded_QuestionBank_Stem), // 棰樺共 - // answer: item.Embedded_QuestionBank_Answer, // 绛旀 - // option: item.Embedded_QuestionBank_Option - // ? JSON.parse(item.Embedded_QuestionBank_Option) - // : '', // 閫夋嫨棰橀�夐」 - // analysisCon: item.Embedded_QuestionBank_AnalysisCon, // 瑙f瀽 - // questionType: item.Embedded_QuestionBank_QuestionType, // 棰樺瀷 - // optionStyle: item.Embedded_QuestionBank_OptionStyle, // 閫夐」鏄剧ず绫诲瀷 - // stemStyle: item.Embedded_QuestionBank_StemStyle, // 棰樺共鏄剧ず绫诲瀷 - // difficulty: item.Embedded_QuestionBank_Difficulty - // ? 4 - item.Embedded_QuestionBank_Difficulty - // : 0, // 闅惧害绛夌骇 - // userAnswer: oldObj - // ? oldObj.answer - // : item.Embedded_QuestionBank_QuestionType == 'completion' || - // item.Embedded_QuestionBank_QuestionType == 'multipleChoice' - // ? [] - // : '', - // isUserAnswer: oldObj ? this.isHaveAnswer(oldObj.userAnswer) : false, - // isRight: oldObj ? oldObj.isRight : null, - // // isComplete: oldObj ? oldObj.isComplete : false, - // isComplete: this.data.mockData.state == '3' ? true : oldObj ? this.isHaveAnswer(oldObj.answer) : false, - // isCollect: this.data.collectList.indexOf(item.id) > -1 ? true : false, - // isUnfold: '' // 鎺у埗瑙f瀽鐨勬姌鍙犻潰鏉挎槸鍚﹀睍寮� - // } - // // 澶氶�夊拰濉┖绛旀鑲负鏁扮粍锛岃杞崲JSON鏍煎紡 - // if ( - // questionObj.questionType == 'completion' || - // questionObj.questionType == 'multipleChoice' - // ) { - // try { - // questionObj.answer = JSON.parse(questionObj.answer) - // } catch (error) { - // questionObj.answer = item.Embedded_QuestionBank_Answer - // } - // } - // // 濉┖棰樻敼閫� - // if (questionObj.questionType == 'completion') { - // let index = 0 - // for (let i = 0; i < questionObj.stem.length; i++) { - // const item = questionObj.stem[i] - // if (item == 'input') { - // questionObj.stem[i] = { - // num: index, - // data: 'input' - // } - // if (!oldObj) questionObj.userAnswer[index] = '' - // index++ - // } - // } - // } - // // 鑾峰彇鍥剧墖 - // if (questionObj.stemStyle == 'Image' || questionObj.stemStyle == 'TxtAndImage') { - // questionObj.stem.stemImage = getPublicImage(questionObj.stem.stemImage, 150) - // } - // if (questionObj.optionStyle == 'Image' || questionObj.optionStyle == 'TxtAndImage') { - // questionObj.option.forEach(optionItem => { - // if (optionItem.img) optionItem.img = getPublicImage(optionItem.img, 150) - // }) - // } - // if (oldObj && oldObj.isRight) { - // this.setData({ - // correctNum: this.data.correctNum + 1 - // }) - // } - // if (item.questionType != 'shortAnswer' && item.isComplete) { - // this.setData({ - // subjectiveTotal: this.data.subjectiveTotal + 1 - // }) - // } - // // if (oldObj && isHaveAnswer(oldObj.answer)) countDownRef.value.changeAlready() - // // cardList璧嬪�� - // let cardIndex = this.data.cardList.findIndex((item) => item.catalogName == pathitem.catalogName) - // debugger - // let infoIndex = this.data.cardList[cardIndex].infoList.findIndex(infoItem => infoItem.id == item.id) - - // this.setData({ - // [`cardList[${cardIndex}].infoList[${infoIndex}]`]: questionObj - // }) - // let questionList = [] - // const cardUpdatedList = this.data.cardList - // cardUpdatedList.forEach(aitem => { - // aitem.infoList.forEach((bitem, bindex) => { - // questionList.push(bitem) - // bitem.number = bindex + 1 - // }) - // }) - // this.setData({ - // questionDataList: questionList, - // cardList: cardUpdatedList - // }) - // console.log('缁勫嵎棰樼洰鍒楄〃', this.data.questionDataList); - // }) - // }) - // } - questionList.forEach(async (pathitem, pathindex) => { + for (let pathindex = 0; pathindex < questionList.length; pathindex++) { + const pathitem = questionList[pathindex]; let itemIds = [] pathitem.infoList.forEach(item => { itemIds.push(item.id + '') @@ -1582,7 +1461,7 @@ isUserAnswer: oldObj ? this.isHaveAnswer(oldObj.userAnswer) : false, isRight: oldObj ? oldObj.isRight : null, // isComplete: oldObj ? oldObj.isComplete : false, - isComplete: this.data.mockData.state == '3' ? true : oldObj ? this.isHaveAnswer(oldObj.answer) : false, + isComplete: this.data.mockData.state == '3' ? true : false, isCollect: this.data.collectList.indexOf(item.id) > -1 ? true : false, isUnfold: '' // 鎺у埗瑙f瀽鐨勬姌鍙犻潰鏉挎槸鍚﹀睍寮� } @@ -1650,10 +1529,9 @@ questionDataList: questionList, cardList: cardUpdatedList }) - console.log('缁勫嵎棰樼洰鍒楄〃', this.data.questionDataList); }) }) - }) + } this.setData({ loading: false }) diff --git a/packageBookService/pages/bookServices/examination/examination.wxml b/packageBookService/pages/bookServices/examination/examination.wxml index f1223d0..9b02607 100644 --- a/packageBookService/pages/bookServices/examination/examination.wxml +++ b/packageBookService/pages/bookServices/examination/examination.wxml @@ -22,7 +22,7 @@ /> </view> --> -<view class="page-content"> +<view class="page-content" style="background-color:{{isNight ? '#222' : ''}}"> <question-schedule wx:if="{{!loading}}" id="countDownRef" @@ -57,7 +57,7 @@ <!-- 搴曢儴鍖哄煙--> -<view class="page-bottom"> +<view class="page-bottom" style="background-color:{{isNight ? '#202020' : ''}}"> <question-options id="question-options" isNight="{{isNight}}" diff --git a/packageBookService/pages/bookServices/examination/questionList/index.wxml b/packageBookService/pages/bookServices/examination/questionList/index.wxml index 08c85f6..73af0ce 100644 --- a/packageBookService/pages/bookServices/examination/questionList/index.wxml +++ b/packageBookService/pages/bookServices/examination/questionList/index.wxml @@ -1,13 +1,13 @@ <!--pages/bookServices/examination/questionList/index.wxml--> <view class="question-list" - style="background-color:{{isNight ? '#000' : '#fff'}}" + style="background-color:{{isNight ? '#222' : '#fff'}}" > <!-- 棰樺瀷title --> <view class="question-title" wx:if="{{questionList[showIndex].type}}" - style="background-color:{{isNight ? '#000' : '#fff'}}" + style="background-color:{{isNight ? '#222' : '#fff'}}" > <text class="title-name">{{questionList[showIndex].type}}</text ><text class="title-score" style="color: {{isNight ? '#fff' : '#000'}};" @@ -39,7 +39,7 @@ class="title-TxtAndImage" > <text>{{item.stem.stemTxt}}</text> - <t-image src="{{item.stem.stemImage}}"></t-image> + <t-image src="{{item.stem.stemImage}}" /> </view> <!-- 瀵屾枃鏈� --> <view @@ -108,7 +108,7 @@ <!-- 浠呭浘鐗� --> <view wx:if="{{item.optionStyle == 'Image'}}" class="fl-center"> <text>{{contentItem.value}}銆�</text> - <t-image src="{{contentItem.img}}"></t-image> + <t-image src="{{contentItem.img}}" /> </view> <!-- 鏂囧瓧鍔犲浘鐗� --> <view @@ -117,7 +117,7 @@ > <text>{{contentItem.value}}銆�</text> <text>{{contentItem.txt}}</text> - <t-image src="{{contentItem.img}}"></t-image> + <t-image src="{{contentItem.img}}" /> </view> <!-- 瀵屾枃鏈� --> <view wx:if="{{item.optionStyle == 'RichText'}}"> @@ -162,7 +162,7 @@ <!-- 浠呭浘鐗� --> <view wx:if="{{item.optionStyle == 'Image'}}" class="fl-center"> <text>{{contentItem.value}}銆�</text> - <t-image src="{{contentItem.img}}"></t-image> + <t-image src="{{contentItem.img}}" /> </view> <!-- 鏂囧瓧鍔犲浘鐗� --> <view @@ -171,7 +171,7 @@ > <text>{{contentItem.value}}銆�</text> <text>{{contentItem.txt}}</text> - <t-image src="{{contentItem.img}}"></t-image> + <t-image src="{{contentItem.img}}" /> </view> <!-- 瀵屾枃鏈� --> <view wx:if="{{item.optionStyle == 'RichText'}}"> diff --git a/packageBookService/pages/bookServices/examination/questionList/index.wxss b/packageBookService/pages/bookServices/examination/questionList/index.wxss index 34fbd19..0e45e42 100644 --- a/packageBookService/pages/bookServices/examination/questionList/index.wxss +++ b/packageBookService/pages/bookServices/examination/questionList/index.wxss @@ -1,7 +1,7 @@ /* pages/bookServices/examination/questionList/index.wxss */ .question-list { width: 95%; - height: 86%; + height: 84%; padding: 20rpx; background-color: #ffffff; border-radius: 20rpx; diff --git a/packageBookService/pages/bookServices/examination/questionOptions/index.js b/packageBookService/pages/bookServices/examination/questionOptions/index.js index 66344a8..1aeb95a 100644 --- a/packageBookService/pages/bookServices/examination/questionOptions/index.js +++ b/packageBookService/pages/bookServices/examination/questionOptions/index.js @@ -64,7 +64,7 @@ questionCardState: false, setUpPopup: false, testReportState: false, - sliderValue: 10, + sliderValue: 28, useTime: '', radioItem: 'daytime' }, @@ -166,10 +166,10 @@ }, // 婊戝潡鍙樺寲 onChangeSlider(e) { - console.log(e); this.setData({ sliderValue: e.detail.value }) + console.log(e.detail.value); }, // 璁剧疆閬僵灞傜偣鍑� onSetUpChange(e) { diff --git a/packageBookService/pages/bookServices/examination/questionOptions/index.wxml b/packageBookService/pages/bookServices/examination/questionOptions/index.wxml index 69c72da..6262100 100644 --- a/packageBookService/pages/bookServices/examination/questionOptions/index.wxml +++ b/packageBookService/pages/bookServices/examination/questionOptions/index.wxml @@ -1,17 +1,16 @@ <!--pages/bookServices/examination/questionOptions/index.wxml--> <view class="page-bottom" - style="color: {{isNight ? '#fff' : '#000'}}; background-color:{{isNight ? '#000' : '#fff'}}" + style="color: {{isNight ? '#fff' : '#000'}}; background-color:{{isNight ? '#202020' : '#fff'}}" > <view class="li-option" bind:tap="setCollect" style="color: {{isNight ? '#fff' : '#000'}};" > - <t-image - src="{{ questionDataList[currentIndex].isCollect ? '/static/images/bookService/detail/collecting.png' : '/static/images/bookService/examination/collect.png'}}" - > - </t-image> + <image + src="{{ questionDataList[currentIndex].isCollect ? '/static/images/bookService/detail/collecting.png' : isNight ? '/static/images/bookService/examination/wodeshoucang-w.png' : '/static/images/bookService/examination/collect.png'}}" + /> 鏀惰棌 </view> <view @@ -19,9 +18,9 @@ bind:tap="handlePopup" style="color: {{isNight ? '#fff' : '#000'}};" > - <t-image - src="/static/images/bookService/examination/questionCard.png" - ></t-image> + <image + src="{{isNight ? '/static/images/bookService/examination/datika-w.png' : '/static/images/bookService/examination/questionCard.png'}}" + /> 绛旈鍗� </view> <view @@ -29,7 +28,9 @@ bind:tap="setUpBtn" style="color: {{isNight ? '#fff' : '#000'}};" > - <t-image src="/static/images/bookService/examination/setting.png"></t-image> + <image + src="{{isNight ? '/static/images/bookService/examination/setting-w.png' : '/static/images/bookService/examination/setting.png'}}" + /> 璁剧疆 </view> <view @@ -38,7 +39,9 @@ wx:if="{{answerType == 'option' || (answerType == 'mock' && !submitStatus)}}" style="color: {{isNight ? '#fff' : '#000'}};" > - <t-image src="/static/images/bookService/examination/reset.png"></t-image> + <image + src="{{isNight ? '/static/images/bookService/examination/chongzuo-w.png' : '/static/images/bookService/examination/reset.png'}}" + /> 閲嶅仛 </view> <view class="bottom-submit"> @@ -74,7 +77,7 @@ </view> </view> <view class="question-card-list"> - <view wx:for="{{cardList}}" class="card-box"> + <view wx:for="{{cardList}}" wx:key="index" class="card-box"> <!-- 棰樺瀷 --> <view class="question-title"> <text class="color-box"></text> @@ -115,9 +118,18 @@ <t-slider value="{{sliderValue}}" theme="capsule" - step="{{10}}" + min="{{14}}" + max="{{100}}" + step="{{7}}" bind:change="onChangeSlider" /> + <!-- <slider + value="{{sliderValue}}" + min="{{10}}" + step="{{10}}" + activeColor="#ff6c00" + bind:chang="onChangeSlider" + /> --> </view> <text>A+</text> @@ -134,9 +146,9 @@ <view class="card {{radioItem == 'daytime' ? 'card--active' : ''}}"> <t-radio value="daytime" icon="none" borderless> <view class="radio-content" slot="content"> - <t-image - src="{{ radioItem == 'daytime' ? '/static/images/bookService/examination/rijian.png' : '/static/images/bookService/detail/notest.png'}}" - ></t-image> + <image + src="{{ radioItem == 'daytime' ? '/static/images/bookService/examination/rijian-click.png' : '/static/images/bookService/examination/rijian.png'}}" + /> <text style="color: {{radioItem == 'daytime' ? '#fff':''}};" >鏃ラ棿妯″紡</text > @@ -146,9 +158,9 @@ <view class="card {{radioItem == 'night' ? 'card--active' : ''}}"> <t-radio value="night" icon="none" borderless> <view class="radio-content" slot="content"> - <t-image - src="{{ radioItem == 'night' ? '/static/images/bookService/detail/practice-icon.png' : '/static/images/bookService/examination/yejian.png'}}" - ></t-image> + <image + src="{{ radioItem == 'night' ? '/static/images/bookService/examination/yejian-click.png' : '/static/images/bookService/examination/yejian.png'}}" + /> <text style="color: {{radioItem == 'night' ? '#fff':''}};" >澶滈棿妯″紡</text > diff --git a/packageBookService/pages/bookServices/examination/questionSchedule/index.js b/packageBookService/pages/bookServices/examination/questionSchedule/index.js index 0039701..903a716 100644 --- a/packageBookService/pages/bookServices/examination/questionSchedule/index.js +++ b/packageBookService/pages/bookServices/examination/questionSchedule/index.js @@ -79,6 +79,9 @@ this.setData({ percentage: (this.data.ready / this.data.questionList.length) * 100 }) + }, + 'isNight': function (newValue) { + console.log('is', newValue); } }, /** diff --git a/packageBookService/pages/bookServices/examination/questionSchedule/index.wxml b/packageBookService/pages/bookServices/examination/questionSchedule/index.wxml index b95c893..9d5f617 100644 --- a/packageBookService/pages/bookServices/examination/questionSchedule/index.wxml +++ b/packageBookService/pages/bookServices/examination/questionSchedule/index.wxml @@ -3,7 +3,7 @@ wx:if="{{((answerType == 'option' || answerType == 'mock') && !submitStatus) || answerType == 'collectQuestion' || answerType =='errorQuestion'}}" class="schedule" id="schedule" - style="background-color:{{isNight ? '#000' : '#fff'}}" + style="background-color:{{isNight ? '#1a1a1a' : '#fff'}}" > <view class="schedule-top"> <!-- 绛旈杩涘害 --> diff --git a/packageBookService/pages/bookServices/list/index.js b/packageBookService/pages/bookServices/list/index.js index 656c94b..7fd0570 100644 --- a/packageBookService/pages/bookServices/list/index.js +++ b/packageBookService/pages/bookServices/list/index.js @@ -287,7 +287,7 @@ subAccess: this.data.pathList, }; } else { - pathObj = { + pathObj = { path, queryType: '*', }; @@ -323,7 +323,7 @@ ], sort, coverSize: { - height: 145, + width: 105 }, paging: { start: 0, diff --git a/packageBookService/pages/bookServices/list/index.wxml b/packageBookService/pages/bookServices/list/index.wxml index 2994416..7e76b60 100644 --- a/packageBookService/pages/bookServices/list/index.wxml +++ b/packageBookService/pages/bookServices/list/index.wxml @@ -2,40 +2,112 @@ <view style="width: 100%; height: {{barHeight}}px;"></view> <view class="nacigationBar" style="width: 70%; height: {{navBarHeight}}px;"> <view> - <t-icon name="chevron-left" size="30" data-name="{{item}}" bind:click="goBack" /> + <t-icon + name="chevron-left" + size="30" + data-name="{{item}}" + bind:click="goBack" + /> </view> - <t-search model:value="{{searchValue}}" shape="round" placeholder="璇疯緭鍏ュ叧閿瘝/涔﹀悕/ISBN/浣滆��" class="navBar-search" style="width: 464rpx" bind:submit="searchBook" /> + <t-search + model:value="{{searchValue}}" + shape="round" + placeholder="璇疯緭鍏ュ叧閿瘝/涔﹀悕/ISBN/浣滆��" + class="navBar-search" + style="width: 464rpx" + bind:submit="searchBook" + /> </view> <view class="bookServices-list"> <view class="list-header"> <scroll-view scroll-x="{{true}}" class="header-scroll"> - <t-dropdown-menu style="width: 800rpx;"> - <t-dropdown-item options="{{stairList.options}}" value="{{stairList.value}}" bindchange="onChangeStair" style="background-color: #F6F6F6;" /> - <t-dropdown-item label="浜岀骇" options="{{secondList.options}}" optionsColumns="2" multiple value="{{secondList.value}}" bind:confirm="onConfirmSecond" bind:change="onChangeSecond" /> - <t-dropdown-item label="閲嶇偣椤圭洰" options="{{majorProjectList.options}}" optionsColumns="2" multiple defaultValue="{{majorProjectList.value}}" bind:confirm="changeMajorProject" bind:reset="resetMajorProject" /> - <t-dropdown-item label="鏂板舰鎬佹暀鏉�" options="{{newTextBook.options}}" optionsColumns="2" multiple defaultValue="{{newTextBook.value}}" bind:confirm="changeNewText" bind:reset="resetNewText" /> + <t-dropdown-menu style="width: 800rpx"> + <t-dropdown-item + options="{{stairList.options}}" + value="{{stairList.value}}" + bindchange="onChangeStair" + style="background-color: #f6f6f6" + /> + <t-dropdown-item + label="浜岀骇" + options="{{secondList.options}}" + optionsColumns="2" + multiple + value="{{secondList.value}}" + bind:confirm="onConfirmSecond" + bind:change="onChangeSecond" + /> + <t-dropdown-item + label="閲嶇偣椤圭洰" + options="{{majorProjectList.options}}" + optionsColumns="2" + multiple + defaultValue="{{majorProjectList.value}}" + bind:confirm="changeMajorProject" + bind:reset="resetMajorProject" + /> + <t-dropdown-item + label="鏂板舰鎬佹暀鏉�" + options="{{newTextBook.options}}" + optionsColumns="2" + multiple + defaultValue="{{newTextBook.value}}" + bind:confirm="changeNewText" + bind:reset="resetNewText" + /> </t-dropdown-menu> </scroll-view> <view class="header-sort" bind:tap="sortClick"> <view class="sort-name">鎺掑簭</view> <!-- <view class="sort-icon"> --> - <t-icon name="swap-left" size="28rpx" class="icon-right" color="{{sort == 'Asc' ? '#ff6c00' : ''}}" /> - <t-icon name="swap-left" size="28rpx" class="icon-left" color="{{sort == 'Desc' ? '#ff6c00' : ''}}" /> + <t-icon + name="swap-left" + size="28rpx" + class="icon-right" + color="{{sort == 'Asc' ? '#ff6c00' : ''}}" + /> + <t-icon + name="swap-left" + size="28rpx" + class="icon-left" + color="{{sort == 'Desc' ? '#ff6c00' : ''}}" + /> <!-- </view> --> </view> </view> - <t-pull-down-refresh value="{{enable}}" loadingProps="{{loadingProps}}" loadingTexts="{{['涓嬫媺鍒锋柊', '鏉炬墜鍒锋柊', '姝e湪鍒锋柊', '鍒锋柊瀹屾垚']}}" bind:refresh="onRefresh" class="down-refresh"> - <scroll-view scroll-y="{{true}}" class="list-container" bindrefresherrefresh="onPullDownRefresh" bindscrolltolower="onReachBottom"> + <t-pull-down-refresh + value="{{enable}}" + loadingProps="{{loadingProps}}" + loadingTexts="{{['涓嬫媺鍒锋柊', '鏉炬墜鍒锋柊', '姝e湪鍒锋柊', '鍒锋柊瀹屾垚']}}" + bind:refresh="onRefresh" + class="down-refresh" + > + <scroll-view + scroll-y="{{true}}" + class="list-container" + bindrefresherrefresh="onPullDownRefresh" + bindscrolltolower="onReachBottom" + > <view class="assort-title"> <view class="title-box"></view> <view class="title-name">{{assortCheck.name}}</view> </view> <view class="page-content"> <view class="book-list" wx:if="{{!loaidng}}"> - <view class="book-box" wx:for="{{bookList}}" wx:key="id" bind:tap="goDetail" data-book="{{item}}"> + <view + class="book-box" + wx:for="{{bookList}}" + wx:key="id" + bind:tap="goDetail" + data-book="{{item}}" + > <view class="book-img"> - <t-image src="{{item.icon ? item.icon : '/static/images/default-book-img.png'}}" aria-label="{item.name{}}" mode="widthFix" /> + <image + src="{{item.icon ? item.icon : '/static/images/default-book-img.png'}}" + aria-label="{item.name{}}" + mode="widthFix" + /> </view> <view class="book-name book-color">{{ item.name}}</view> <view class="book-author book-color">{{item.author}}</view> @@ -46,13 +118,24 @@ </view> <!-- loading --> <view class="loading-box" wx:if="{{loaidng}}"> - <t-loading theme="circular" size="60rpx" class="wrapper" loading="{{loaidng}}" wx:if="{{loaidng}}" /> + <t-loading + theme="circular" + size="60rpx" + class="wrapper" + loading="{{loaidng}}" + wx:if="{{loaidng}}" + /> </view> </view> <view class="bottom-box"> - <t-loading theme="circular" size="40rpx" class="wrapper" wx:if="{{isMore == true}}" /> + <t-loading + theme="circular" + size="40rpx" + class="wrapper" + wx:if="{{isMore == true}}" + /> <text wx:if="{{isMore == false}}">娌℃湁鏇村浜�</text> </view> </scroll-view> </t-pull-down-refresh> -</view> \ No newline at end of file +</view> diff --git a/packageDomain/pages/resourceDetails/myAudio/index.wxss b/packageDomain/pages/resourceDetails/myAudio/index.wxss index c3fedad..c8fe5d3 100644 --- a/packageDomain/pages/resourceDetails/myAudio/index.wxss +++ b/packageDomain/pages/resourceDetails/myAudio/index.wxss @@ -321,8 +321,6 @@ background-color: #FF6C00 !important; } - - .publicBtn { margin-right: 10rpx; margin-left: 20rpx; diff --git a/pages/bookServices/assort/index.js b/pages/bookServices/assort/index.js index e8f86b1..d10b5cd 100644 --- a/pages/bookServices/assort/index.js +++ b/pages/bookServices/assort/index.js @@ -161,6 +161,9 @@ field: 'state' } ], + coverSize: { + width: 76 + }, queryType: '\\', searchList: [], size: '30', diff --git a/pages/bookServices/assort/index.wxml b/pages/bookServices/assort/index.wxml index f02d0c0..b2a5581 100644 --- a/pages/bookServices/assort/index.wxml +++ b/pages/bookServices/assort/index.wxml @@ -2,8 +2,21 @@ <view class="page-header"> <!-- 鎼滅储妗� --> <view class="search"> - <t-search t-class-input="t-search__input" t-class-input-container="t-search__input-container" placeholder="璇疯緭鍏ュ叧閿瘝/涔﹀悕/ISBN/浣滆��" leftIcon="" bind:submit="navToSearchPage" placeholder-style="{{placeholderstyle}}"> - <t-icon slot="left-icon" prefix="wr" name="search" size="40rpx" color="#bbb" /> + <t-search + t-class-input="t-search__input" + t-class-input-container="t-search__input-container" + placeholder="璇疯緭鍏ュ叧閿瘝/涔﹀悕/ISBN/浣滆��" + leftIcon="" + bind:submit="navToSearchPage" + placeholder-style="{{placeholderstyle}}" + > + <t-icon + slot="left-icon" + prefix="wr" + name="search" + size="40rpx" + color="#bbb" + /> </t-search> </view> </view> @@ -12,7 +25,13 @@ <view class="side-bar-wrapper" wx:if="{{!loading}}"> <view class="tab-left"> <t-side-bar value="{{assortCheck.code}}" bind:change="changeAssort"> - <t-side-bar-item wx:for="{{assortList}}" wx:key="id" value="{{item.refCode}}" label="{{item.name}}" badge-props="{{item.badgeProps}}" /> + <t-side-bar-item + wx:for="{{assortList}}" + wx:key="id" + value="{{item.refCode}}" + label="{{item.name}}" + badge-props="{{item.badgeProps}}" + /> </t-side-bar> </view> <view class="page-right"> @@ -20,44 +39,100 @@ <view class="side-bar-content" wx:if="{{!listLoding}}"> <!-- 涓�绾у垎绫� --> <view class="tab-top"> - <scroll-view scroll-x="{{true}}" class="myScroll" show-scrollbar="{{false}}"> - <view wx:for="{{startList}}" wx:key="id" class="row {{startCheck.id == item.id ? 'tab-active' : ''}}" bind:tap="tabClick" data-tabData="{{item}}">{{item.name}}</view> + <scroll-view + scroll-x="{{true}}" + class="myScroll" + show-scrollbar="{{false}}" + > + <view + wx:for="{{startList}}" + wx:key="id" + class="row {{startCheck.id == item.id ? 'tab-active' : ''}}" + bind:tap="tabClick" + data-tabData="{{item}}" + >{{item.name}}</view + > </scroll-view> </view> <!-- 鍐呭 --> - <scroll-view scroll-y="{{true}}" class="class-list" scroll-into-view="{{ 'list' + startCheck.id}}"> + <scroll-view + scroll-y="{{true}}" + class="class-list" + scroll-into-view="{{ 'list' + startCheck.id}}" + > <view wx:if="{{listLoading}}"> - <t-loading theme="spinner" size="400rpx" loading="{{listLoading}}"></t-loading> + <t-loading + theme="spinner" + size="400rpx" + loading="{{listLoading}}" + ></t-loading> </view> - <view wx:for="{{startList}}" wx:for-item="item" wx:key="item.id" id="{{ 'list' + item.id}}" class="class-box" wx:if="{{!listLoading}}"> + <view + wx:for="{{startList}}" + wx:for-item="item" + wx:key="item.id" + id="{{ 'list' + item.id}}" + class="class-box" + wx:if="{{!listLoading}}" + > <view class="class-name">{{item.name}}</view> <view class="class-content"> - <view wx:for="{{item.children}}" wx:for-item="citem" wx:key="id" class="book-box" bind:tap="goPageList" data-stair="{{citem}}" data-tabData="{{item}}" wx:if="{{item.children.length}}"> + <view + wx:for="{{item.children}}" + wx:for-item="citem" + wx:key="id" + class="book-box" + bind:tap="goPageList" + data-stair="{{citem}}" + data-tabData="{{item}}" + wx:if="{{item.children.length}}" + > <view class="assort-img"> - <image src="{{citem.icon ? citem.icon : '/static/images/bookService/assort/book-img.png'}}" mode="widthFix" /> + <image + src="{{citem.icon ? citem.icon : '/static/images/bookService/assort/book-img.png'}}" + mode="widthFix" + /> </view> <view class="classify">{{citem.name}}</view> </view> - <view wx:if="{{!item.children.length}}" class="book-box" bind:tap="goPageList" data-tabData="{{item}}"> + <view + wx:if="{{!item.children.length}}" + class="book-box" + bind:tap="goPageList" + data-tabData="{{item}}" + > <view class="assort-img"> - <image src="{{item.icon ? item.icon : '/static/images/bookService/assort/book-img.png'}}" mode="heightFix"></image> + <image + src="{{item.icon ? item.icon : '/static/images/bookService/assort/book-img.png'}}" + mode="widthFix" + ></image> </view> <text class="classify">鍏ㄩ儴</text> </view> </view> </view> - <view class="bottom-box"> - </view> + <view class="bottom-box"> </view> </scroll-view> </view> <!-- loading --> <view class="loading-box" wx:if="{{listLoding}}"> - <t-loading theme="circular" size="60rpx" class="wrapper" loading="{{listLoding}}" wx:if="{{listLoding}}" /> + <t-loading + theme="circular" + size="60rpx" + class="wrapper" + loading="{{listLoding}}" + wx:if="{{listLoding}}" + /> </view> </view> - </view> <view class="loading-box" wx:if="{{loading}}"> - <t-loading theme="circular" size="60rpx" class="wrapper" loading="{{loading}}" wx:if="{{loading}}" /> + <t-loading + theme="circular" + size="60rpx" + class="wrapper" + loading="{{loading}}" + wx:if="{{loading}}" + /> </view> -</view> \ No newline at end of file +</view> diff --git a/pages/bookServices/assort/index.wxss b/pages/bookServices/assort/index.wxss index 4b330d3..9f30850 100644 --- a/pages/bookServices/assort/index.wxss +++ b/pages/bookServices/assort/index.wxss @@ -141,8 +141,8 @@ .assort-img { display: flex; - width: 116rpx; - height: 142rpx; + width: 152rpx; + height: 186rpx; box-shadow: 0px 3px 6px 1px rgba(0, 0, 0, 0.16); margin-bottom: 20rpx; } diff --git a/pages/cart/index.js b/pages/cart/index.js index 2abc176..7d37d43 100644 --- a/pages/cart/index.js +++ b/pages/cart/index.js @@ -53,6 +53,7 @@ }) res.datas.forEach(item => { + console.log(item, 'item456'); item.imgUrl = getPublicImage(item.productMonWithLinkDto.product.icon, '', '160'); this.setData({ @@ -121,8 +122,13 @@ const selectedIds = selectedItems.map(item => item.id); console.log('閫変腑鐨勫晢鍝� id:', selectedIds); if (selectedIds.length) { - app.MG.store.shoppingCartCreateOrder({ linkIds: selectedIds }).then(res => { + let data = { + linkIds: selectedIds + } + app.MG.store.shoppingCartCreateOrder(data).then(res => { console.log(res, 456); + + const url = '/pages/cart/paymentPage/index?orderNumber=' + res.orderNumber wx.navigateTo({ url diff --git a/pages/cart/paymentPage/index.js b/pages/cart/paymentPage/index.js index 00c7468..d1b3162 100644 --- a/pages/cart/paymentPage/index.js +++ b/pages/cart/paymentPage/index.js @@ -16,6 +16,8 @@ productList: [], payPrice: '', orderGoods: '', + isPaySuccess: false, + isPayComplete: false, }, /** @@ -123,7 +125,7 @@ }) }, confirmOrderGet() { - + var that = this; let query = { orderNum: this.data.orderGoods } @@ -137,11 +139,46 @@ // 鐢ㄦ埛鏈粦瀹氬井淇� 鎶�500 app.MG.store.makeWeChatPay(resOrderNum).then(payRes => { const payVal = JSON.parse(payRes); - console.log(payVal); + wx.requestPayment({ + "appId": payVal.appId, + "timeStamp": payVal.timeStamp, + "nonceStr": payVal.nonceStr, + "package": payVal.package, + "signType": payVal.signType, + "paySign": payVal.paySign, + success: function (res) { + console.log('鏀粯鎴愬姛'); + if (res.errMsg == 'requestPayment:ok') { + that.setData({ + isPaySuccess: true + }) + } + }, + fail: function (res) { + console.log('鏀粯澶辫触'); + }, + // 鏃犺鏀粯鎴愬姛澶辫触閮戒細璋冪敤 + "complete": function (res) { + if (res.errMsg == 'requestPayment:ok') { + that.setData({ + isPayComplete: true + }) + } + if (that.data.isPaySuccess && that.data.isPayComplete) { + that.navToBack() + } + } + }); }) } - // this.makeWeChatQrPayGet() + }) // 璋冨彇寰俊浜岀淮鐮佹敮浠� }, + // 椤甸潰杩斿洖 + navToBack() { + + // 杩斿洖 + wx.navigateBack() + }, }) \ No newline at end of file diff --git a/pages/cart/paymentPage/index.wxml b/pages/cart/paymentPage/index.wxml index 6bc8732..0c1a497 100644 --- a/pages/cart/paymentPage/index.wxml +++ b/pages/cart/paymentPage/index.wxml @@ -27,7 +27,6 @@ {{item.orderSaleMethod.product.name}} </view> </view> - <view class="textBox" wx:if="{{type == 'product'}}">鍥句功鏈嶅姟-鐢靛瓙涔�</view> <view class="textBox" wx:if="{{type == 'item'}}">鍥句功鏈嶅姟-浜戝涔�</view> <view class="priceBox">锟{item.payPrice}}</view> diff --git a/pages/cart/paymentPage/index.wxss b/pages/cart/paymentPage/index.wxss index ab15ca0..6009b23 100644 --- a/pages/cart/paymentPage/index.wxss +++ b/pages/cart/paymentPage/index.wxss @@ -31,6 +31,7 @@ background: #FFFFFF; border-radius: 20px; margin: 30rpx 0; + /* padding: 30rpx 0; */ } .imageBox { @@ -174,7 +175,9 @@ margin: 30rpx 0; } -.paymentPageBox {} +.paymentPageBox { + margin-top: 165rpx; +} page { background-color: #F2F3F8; diff --git a/pages/home/home.js b/pages/home/home.js index 2105851..b2ef42e 100644 --- a/pages/home/home.js +++ b/pages/home/home.js @@ -520,7 +520,7 @@ onPageScroll(e) { this.setData({ - isWhite: e.scrollTop > 50 ? true : false + isWhite: e.scrollTop > 20 ? true : false }) }, diff --git a/pages/retrievalPage/index.wxss b/pages/retrievalPage/index.wxss index e2cc9b1..b8cdd06 100644 --- a/pages/retrievalPage/index.wxss +++ b/pages/retrievalPage/index.wxss @@ -326,4 +326,8 @@ align-items: center; justify-content: center; --td-loading-color: #ff6c00; +} + +.t-tabs__item--evenly { + flex: 1 0 auto !important; } \ No newline at end of file diff --git a/static/images/bookService/detail/weidian.png b/static/images/bookService/detail/weidian.png new file mode 100644 index 0000000..9a99cca --- /dev/null +++ b/static/images/bookService/detail/weidian.png Binary files differ diff --git a/static/images/bookService/examination/chongzuo-w.png b/static/images/bookService/examination/chongzuo-w.png new file mode 100644 index 0000000..4e939e8 --- /dev/null +++ b/static/images/bookService/examination/chongzuo-w.png Binary files differ diff --git a/static/images/bookService/examination/datika-w.png b/static/images/bookService/examination/datika-w.png new file mode 100644 index 0000000..122620c --- /dev/null +++ b/static/images/bookService/examination/datika-w.png Binary files differ diff --git a/static/images/bookService/examination/rijian-click.png b/static/images/bookService/examination/rijian-click.png new file mode 100644 index 0000000..3080ac1 --- /dev/null +++ b/static/images/bookService/examination/rijian-click.png Binary files differ diff --git a/static/images/bookService/examination/rijian.png b/static/images/bookService/examination/rijian.png index 3080ac1..046a8d2 100644 --- a/static/images/bookService/examination/rijian.png +++ b/static/images/bookService/examination/rijian.png Binary files differ diff --git a/static/images/bookService/examination/setting-w.png b/static/images/bookService/examination/setting-w.png new file mode 100644 index 0000000..ca24d1f --- /dev/null +++ b/static/images/bookService/examination/setting-w.png Binary files differ diff --git a/static/images/bookService/examination/wodeshoucang-w.png b/static/images/bookService/examination/wodeshoucang-w.png new file mode 100644 index 0000000..647cd15 --- /dev/null +++ b/static/images/bookService/examination/wodeshoucang-w.png Binary files differ diff --git a/static/images/bookService/examination/yejian-click.png b/static/images/bookService/examination/yejian-click.png new file mode 100644 index 0000000..fc32b09 --- /dev/null +++ b/static/images/bookService/examination/yejian-click.png Binary files differ -- Gitblit v1.9.1