<!--pages/bookServices/detail/index.wxml-->
|
<import src="index.skeleton.wxml" />
|
<template is="skeleton" wx:if="{{pageLoading}}" />
|
|
<suggest-dialog
|
class="suggest-dialog"
|
showIndex="{{showIndex}}"
|
bookIcon="{{bookDetail.icon}}"
|
bookName="{{bookDetail.name}}"
|
></suggest-dialog>
|
<!-- <popup showIndex="{{showIndex}}"></popup> -->
|
<view class="page-bookService" wx:if="{{!pageLoading}}">
|
<t-toast id="t-toast" />
|
<movable-area class="movable-area">
|
<scroll-view
|
scroll-y="{{true}}"
|
class="book"
|
bindscrolltolower="onReachBottom"
|
>
|
<!-- 图书详情 -->
|
<view class="book-box">
|
<view class="book-detail" id="book-detail">
|
<view class="detail-left">
|
<view class="book-img">
|
<image
|
loading=""
|
src="{{bookDetail.icon ? bookDetail.icon : '/static/images/default-book-img.png'}}"
|
mode="aspectFit"
|
aria-label="{{bookDetail.name}}"
|
/>
|
</view>
|
<view class="book-use">
|
<view class="collect" bind:tap="setCollect">
|
<view>
|
<image
|
loading=""
|
src="/static/images/bookService/detail/collect.png"
|
wx:if="{{!bookDetail.isFavourite}}"
|
/>
|
<image
|
loading=""
|
src="/static/images/bookService/detail/collecting.png"
|
wx:if="{{bookDetail.isFavourite}}"
|
/>
|
</view>
|
<view class="use-title">收藏</view>
|
</view>
|
<view class="suggest" bind:tap="suggestBtn">
|
<view>
|
<image
|
loading=""
|
src="/static/images/bookService/detail/suggest.png"
|
/>
|
</view>
|
<view class="use-title">建议</view>
|
</view>
|
<view class="suggest" bindtap="editPhone">
|
<t-icon
|
class="editIcon"
|
style="color: rgb(194, 194, 194)"
|
name="calendar-edit"
|
size="40rpx"
|
/>
|
<view class="use-title">联系</view>
|
</view>
|
</view>
|
</view>
|
<view class="detail-right">
|
<view class="book-name showTow">{{bookDetail.name}}</view>
|
<view class="book-message">
|
<view class="message-li" wx:if="{{bookDetail.seriesName}}">
|
<view class="li-title">丛书名:</view>
|
<view class="li-content">{{bookDetail.seriesName}}</view>
|
</view>
|
<view class="message-li" wx:if="{{bookDetail.author}}">
|
<view class="li-title">作者:</view>
|
<view class="li-content">{{bookDetail.author}}</view>
|
</view>
|
<view class="message-li" wx:if="{{bookDetail.isbn}}">
|
<view class="li-title">ISBN:</view>
|
<view class="li-content">{{bookDetail.isbn}}</view>
|
</view>
|
<view class="message-li" wx:if="{{bookDetail.publicationDate}}">
|
<view class="li-title">出版时间:</view>
|
<view class="li-content">{{bookDetail.publicationDate}}</view>
|
</view>
|
<view
|
class="message-li"
|
wx:if="{{bookClass.length}}"
|
style="height: 80rpx"
|
>
|
<view class="li-title">图书分类:</view>
|
<view class="class-name showTow">{{bookClass}}</view>
|
</view>
|
</view>
|
<image
|
src="/static/images/bookService/detail/square.png"
|
class="right-background"
|
/>
|
</view>
|
</view>
|
<!-- 销售信息 -->
|
<view class="book-sale">
|
<view class="book-price">
|
<!-- 电子书售价 -->
|
<view class="electron-price" wx:if="{{bookDetail.price}}">
|
<view>
|
<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>
|
</view>
|
<view> </view>
|
</view>
|
<!-- 纸质书售价 -->
|
<view class="paper-price" wx:if="{{bookDetail.paperPrice}}">
|
<view>
|
<image
|
src="/static/images/bookService/detail/paper-price.png"
|
/>
|
</view>
|
<view class="price"
|
>{{bookDetail.paperPrice == '0.00' ? '免费' :
|
'¥'+bookDetail.paperPrice}}</view
|
>
|
</view>
|
</view>
|
<!-- 网店 -->
|
<view class="book-web">
|
<image
|
src="/static/images/bookService/detail/jd.png"
|
wx:if="{{bookDetail.JDLink}}"
|
bind:tap="goShop"
|
data-link="{{bookDetail.JDLink}}"
|
data-type="jd"
|
/>
|
<image
|
class="tmall-image"
|
src="/static/images/bookService/detail/tmall.png"
|
bind:tap="goShop"
|
data-link="{{bookDetail.tmallLink}}"
|
wx:if="{{bookDetail.tmallLink}}"
|
/>
|
<image
|
src="/static/images/bookService/detail/dangdang.png"
|
bind:tap="goShop"
|
data-link="{{bookDetail.dangdangLink}}"
|
wx:if="{{bookDetail.dangdangLink}}"
|
/>
|
<image
|
src="/static/images/bookService/detail/weidian.png"
|
bind:tap="goShop"
|
data-link="{{bookDetail.weidianLink}}"
|
wx:if="{{bookDetail.weidianLink}}"
|
/>
|
</view>
|
</view>
|
</view>
|
|
<view class="book-resource">
|
<t-tabs
|
value="{{tabValue}}"
|
bind:change="onTabsChange"
|
t-class="custom-tabs"
|
t-class-content="custom-panel"
|
class="tab-class"
|
>
|
<t-tab-panel
|
label="图书信息"
|
icon="{{ tabValue == 'brief' ? briefIconClick : briefIcon}}"
|
value="brief"
|
style="{{tabPanelstyle}}"
|
>
|
<book-brief
|
content="{{bookDetail.content}}"
|
catalogue="{{bookDetail.catalogue}}"
|
authorIntroduction="{{bookDetail.authorIntroduction}}"
|
wx:if="{{bookDetail.content || bookDetail.authorIntroduction}}"
|
></book-brief>
|
<view
|
wx:if="{{!bookDetail.content && !bookDetail.authorIntroduction && !loading}}"
|
class="noData"
|
>
|
<!-- <t-empty icon="folder-open" description="暂无数据" /> -->
|
<empty />
|
</view>
|
</t-tab-panel>
|
<!-- <t-tab-panel
|
label="电子书"
|
icon="{{tabValue == 'jsek_eBook' ? eBookClickIcon : eBookIcon}}"
|
value="jsek_eBook"
|
style="{{tabPanelstyle}}"
|
>
|
</t-tab-panel> -->
|
<t-tab-panel
|
label="教学资源"
|
icon="{{tabValue == 'jsek_teachingResources' ? teachResourcesClickIcon : teachResourcesIcon}}"
|
value="jsek_teachingResources"
|
class="{{loading ? 'loading': ''}}"
|
>
|
<view wx:if="{{!loading && applyState}}">
|
<teach-resource
|
applyState="{{applyState}}"
|
rejectCause="{{rejectCause}}"
|
deadline="{{deadline}}"
|
bind:applyResource="applyResource"
|
md5List="{{md5List}}"
|
applyResourceLoading="{{applyResourceLoading}}"
|
bind:uploadFile="uploadFile"
|
></teach-resource>
|
<tree
|
id="teach-tree"
|
openIds="{{openTeachids}}"
|
bookInfo="{{bookDetail}}"
|
treeList="{{teach}}"
|
tab="{{tabValue}}"
|
applyState="{{applyState}}"
|
deadline="{{deadline}}"
|
bind:downloadTeach="downloadTeach"
|
bind:handleTree="handleTree"
|
openTeachids="{{openTeachids}}"
|
wx:if="{{teach.length}}"
|
isShoppingCart="isShoppingCart"
|
bind:updateCloudLearning="updateCloudLearning"
|
></tree>
|
</view>
|
<view wx:if="{{loading}}" style="width: 100%; height: min-content">
|
<t-skeleton
|
row-col="{{rowCol}}"
|
theme="paragraph"
|
animation="gradient"
|
loading="{{loading}}"
|
></t-skeleton>
|
</view>
|
<view wx:if="{{noResources && !loading}}" class="noData">
|
<empty />
|
</view>
|
</t-tab-panel>
|
<t-tab-panel
|
label="云学习"
|
icon="{{tabValue == 'jsek_cloudLearning' ? learnResourceClickIcon : learnResourceIcon}}"
|
value="jsek_cloudLearning"
|
style="{{tabPanelstyle}}"
|
>
|
<view wx:if="{{!loading && learn.length}}">
|
<learn-resource
|
bind:getFreeResource="getFreeResource"
|
bind:allAddShoppiingCar="allAddShoppiingCar"
|
id="learn-resource"
|
buyResourceData="{{buyResourceData}}"
|
bookId="{{bookDetail.id}}"
|
isshowDrawBtn="{{isshowDrawBtn}}"
|
successOrderNumber="{{successOrderNumber}}"
|
isGoBuyResource="{{isGoBuyResource}}"
|
isShowBuyCloundMenu="{{isShowBuyCloundMenu}}"
|
isShowBuyCloundBtn="{{isShowBuyCloundBtn}}"
|
bind:buyCloudLearnClass="buyCloudLearnClass"
|
learnTaskData="{{learnTaskData}}"
|
></learn-resource>
|
|
<tree
|
id="tree"
|
openIds="{{openLearnids}}"
|
bookInfo="{{bookDetail}}"
|
tab="{{tabValue}}"
|
treeList="{{learn}}"
|
learnList="{{learn}}"
|
buyIds="{{buyIdList}}"
|
openLearnids="{{openLearnids}}"
|
cloundMenuIsBuy="{{cloundMenuIsBuy}}"
|
learnMenu="{{learnMenu}}"
|
isCloundHaveSaleMethod="{{isCloundHaveSaleMethod}}"
|
bind:updateShoppingCartHidden="updateShoppingCartHidden"
|
bind:updateCloudLearning="updateCloudLearning"
|
bind:getCloundIsBuy="getCloundIsBuy"
|
></tree>
|
</view>
|
<view wx:if="{{noResources && !loading}}" class="noData">
|
<empty />
|
</view>
|
</t-tab-panel>
|
<t-tab-panel
|
label="云测试"
|
icon="{{tabValue == 'questionBank' ? testResourceClickIocn : testResourceIocn}}"
|
value="questionBank"
|
style="{{tabPanelstyle}}"
|
>
|
<view wx:if="{{!loading}}">
|
<test-resource
|
id="test-resource"
|
list="{{test}}"
|
bankSaleData="{{bankSaleData}}"
|
isBuyBank="{{isBuyBank}}"
|
isShoppingBank="{{isShoppingBank}}"
|
bookInfo="{{bookDetail}}"
|
openIds="{{openLearnids}}"
|
mockData="{{mockData}}"
|
tab="{{tabValue}}"
|
storeInfo="{{options.storeInfo}}"
|
jslx="{{jslx}}"
|
bind:buyMock="buyMock"
|
bind:buyBank="buyBank"
|
bind:handleShoppingBank="handleShoppingBank"
|
></test-resource>
|
</view>
|
</t-tab-panel>
|
<t-tab-panel
|
label="云笔记"
|
icon="{{tabValue == 'jsek_note' ? noteClickIcon: noteIcon}}"
|
value="jsek_note"
|
style="{{tabPanelstyle}}"
|
>
|
<note bookInfo="{{bookDetail}}" id="note" class="note-list"></note>
|
</t-tab-panel>
|
<t-tab-panel
|
label="相关图书"
|
icon="{{tabValue == 'related_books' ? linkClickIcon: linkIcon}}"
|
value="related_books"
|
style="{{tabPanelstyle}}"
|
>
|
<related-books
|
relatedBookData="{{relatedBookData}}"
|
relatedBookLoading="{{relatedBookLoading}}"
|
noRelatedBookData="{{noRelatedBookData}}"
|
bind:goBookDetails="goBookDetails"
|
></related-books>
|
</t-tab-panel>
|
</t-tabs>
|
</view>
|
</scroll-view>
|
<movable-view class="movable-view" :x="{{x}}" :y="{{y}}" direction="all">
|
<view class="applyBox" bindtap="goApply">
|
<view class="box">
|
<t-image
|
src="/static/images/home/yangshuForm1.png"
|
mode="heightFix"
|
class="img"
|
/>
|
<view class="num" wx:if="{{num > 0}}">{{num}}</view>
|
</view>
|
</view>
|
</movable-view>
|
</movable-area>
|
<!-- 联系编辑弹窗 -->
|
<t-dialog visible="{{editDialog}}" close-btn>
|
<view slot="content" class="editContent">
|
<view class="editText">图书编辑:{{bookDetail.bookEditor}}</view>
|
<view class="editText">联系方式:{{bookDetail.contactInformation}}</view>
|
</view>
|
</t-dialog>
|
<!-- 我要建议弹窗 -->
|
<suggest
|
class="suggest-component"
|
id="suggest-component"
|
bookIcon="{{bookDetail.icon}}"
|
bookName="{{bookDetail.name}}"
|
></suggest>
|
<!-- 教学资源下载提示弹窗 -->
|
<t-dialog
|
class="teachDownloadDialog"
|
visible="{{isShowTeachDownload}}"
|
title="提示"
|
content="请前往PC端下载"
|
confirm-btn="{{ confirmBtn }}"
|
bind:confirm="closeTeachDownload"
|
/>
|
<!-- 购买按钮 -->
|
<view class="box-bottom">
|
<view class="bottom-btn" bind:tap="appplyElectronicBook">
|
<view>
|
<t-image
|
loading=""
|
src="/static/images/bookService/detail/ebook.png"
|
></t-image>
|
</view>
|
<view class="btn-text">电子样书申请</view>
|
</view>
|
<view class="bottom-btn" bind:tap="appplyPaperBook">
|
<view>
|
<t-image
|
src="/static/images/bookService/detail/paper-book.png"
|
></t-image>
|
</view>
|
<view class="btn-text">纸质样书申请</view>
|
</view>
|
<view
|
class="{{!bookBuy ? 'bottom-btn tryRead' : 'bottom-btn try'}}"
|
bind:tap="goRead"
|
data-type="freeFile"
|
wx:if="{{!bookBuy || applicationState == 'overdue'}}"
|
>
|
<view>
|
<t-image src="/static/images/bookService/detail/shidu.png"></t-image>
|
</view>
|
<view class="btn-text">试读</view>
|
</view>
|
|
<view
|
class="shopCar shopCarColor"
|
bind:tap="addBookShopcCar"
|
wx:if="{{!bookBuy && bookDetail.price !== '0.00' && bookDetail.isSell == '1'}}"
|
>加入购物车</view
|
>
|
<view
|
class="buy buyColor"
|
bind:tap="buyBtn"
|
wx:if="{{!bookBuy && bookDetail.price !== '0.00' && bookDetail.isSell == '1'}}"
|
>立即购买</view
|
>
|
<view
|
class="buy receiveColor"
|
bind:tap="buyBtn"
|
wx:if="{{!bookBuy && bookDetail.price == '0.00' && bookDetail.isSell == '1'}}"
|
>免费领取</view
|
>
|
<view
|
class="buy read"
|
bind:tap="goRead"
|
data-type="file"
|
wx:if="{{bookBuy || applicationState == 'Normal'}}"
|
>立即查看</view
|
>
|
</view>
|
</view>
|
<view wx:if="{{dialogBox}}">
|
<view class="popup-box" bindtap="closeDialog"></view>
|
<view class="info-center">
|
<view>
|
<view class="row-info">
|
<view class="body">
|
<view class="dialog-title">文件上传</view>
|
<view
|
style="width: 100%; height: 2rpx; background-color: #f4f4f4"
|
></view>
|
<view class="from-item">
|
<view class="label"> <text class="icon">*</text>资源名称: </view>
|
<view class="item-content">
|
<view class="inputBox1">
|
<t-input
|
placeholder="输入资源名称"
|
borderless
|
value="{{resourceInfo.resourceName}}"
|
bindchange="onNameInput"
|
/>
|
</view>
|
</view>
|
</view>
|
<view class="from-item">
|
<view class="label"> <text class="icon">*</text>资源类型: </view>
|
<view class="item-content">
|
<!-- <view class="inputBox1">
|
<t-input placeholder="输入资源类型" borderless value="{{resourceInfo.fileType}}" bindchange="onFileTypeInput" />
|
</view> -->
|
<t-cell
|
class="mb-16"
|
title=""
|
arrow
|
hover
|
note="{{resourceInfo.fileType}}"
|
bind:click="onResourcePicker"
|
/>
|
<t-picker
|
visible="{{resourceVisible}}"
|
value="{{resourceValue}}"
|
data-key="resource"
|
title="选择资源类型"
|
cancelBtn="取消"
|
confirmBtn="确认"
|
usingCustomNavbar
|
bindchange="onPickerChange"
|
bindcancel="onPickerCancel"
|
>
|
<t-picker-item options="{{fileTypeList}}" />
|
</t-picker>
|
</view>
|
</view>
|
<view class="from-item">
|
<view class="label">文件描述:</view>
|
<view class="item-content">
|
<view class="inputBox1">
|
<t-textarea
|
placeholder="请输入文件描述"
|
value="{{resourceInfo.description}}"
|
disableDefaultPadding="{{true}}"
|
autosize="{{true}}"
|
maxlength="300"
|
indicator
|
bind:change="textareaChange"
|
/>
|
</view>
|
</view>
|
</view>
|
<view class="from-item">
|
<view class="label"> <text class="icon">*</text>上传文件: </view>
|
<view class="item-content">
|
<t-button
|
size="small"
|
class="right-btn"
|
bind:tap="uploadPicture"
|
wx:if="{{isShowUp}}"
|
>点击上传</t-button
|
>
|
<view
|
wx:if="{{!isShowUp && fileList.length > 0}}"
|
class="fileList"
|
>
|
<text class="fileName">{{fileList[0].name}}</text>
|
<image
|
src="/static/images/bookService/detail/deleteHover.png"
|
class="deleteBtn"
|
data-md5="{{fileList[0].md5}}"
|
bind:tap="handleRemove"
|
/>
|
</view>
|
</view>
|
<view class="tip">注:文件大小不得超过50MB</view>
|
</view>
|
<view class="from-item">
|
<view class="protocolBox">
|
<t-checkbox
|
label="同意"
|
icon="rectangle"
|
checked="{{resourceInfo.agree}}"
|
bind:change="onChange"
|
/>
|
<text class="wait" bind:tap="getAgreement">《授权同意书》</text>
|
</view>
|
</view>
|
</view>
|
<view class="row-btn">
|
<view class="left-btn" bindtap="closeDialog">取消</view>
|
<view class="right-btn" bindtap="confirmM">确认</view>
|
</view>
|
</view>
|
</view>
|
</view>
|
</view>
|
|
<view class="popupBox">
|
<t-popup
|
visible="{{protocolShow}}"
|
bind:visible-change="onVisibleChange"
|
placement="center"
|
>
|
<view class="block">
|
<view class="protocol">
|
<rich-text space="emsp" nodes="{{protocolTxt}}" class="content" />
|
</view>
|
<t-icon
|
t-class="close-btn"
|
name="close-circle"
|
size="32"
|
color="#fff"
|
bind:tap="onCloseProtocol"
|
/>
|
</view>
|
</t-popup>
|
</view>
|
<!-- <view class="loading" wx:if="{{pageLoading}}">
|
<t-loading loading="{{pageLoading}}" size="40"></t-loading>
|
</view> -->
|