闫增涛
2024-04-16 cf1fcff430fa1331c1d9b2b844fa9ad710fb7a26
packageBookService/pages/bookServices/detail/index.wxml
@@ -1,147 +1,415 @@
<!--pages/bookServices/detail/index.wxml-->
<import src="index.skeleton.wxml" />
<template is="skeleton" wx:if="{{pageLoading}}" />
<!-- pageLoading -->
<!--导航区域 -->
<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" />
  </view>
  <view class="navbar-title">{{options.name}}</view>
</view>
<t-toast id="t-toast" />
<scroll-view scroll-y="{{true}}" class="book" bindscrolltolower="onReachBottom">
  <!-- 图书详情 -->
  <view class="book-box">
    <view class="book-detail">
      <view class="detail-left">
        <view class="book-img">
          <t-image src="{{bookDetail.icon}}" mode="aspectFill" width="120" height="170" aria-label="{{bookDetail.name}}" />
<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}}">
  <!-- <view style="width: 100%; height: {{barHeight}}px; "></view>
  <view class="nacigationBar" style="width: 100%; height: {{navBarHeight}}px;">
    <view>
      <t-icon
        name="chevron-left"
        size="30"
        data-name="{{item}}"
        bind:click="goBack"
      />
    </view>
    <view class="navbar-title" style="width: 100%">
      <text>{{options.name}}</text>
    </view>
  </view> -->
  <t-toast id="t-toast" />
  <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>
        </view>
        <view class="book-use">
          <view class="collect" bind:tap="setCollect">
            <view>
              <t-image src="/static/images/bookService/detail/collect.png" wx:if="{{!bookDetail.isFavourite}}"></t-image>
              <t-image src="/static/images/bookService/detail/collecting.png" wx:if="{{bookDetail.isFavourite}}"></t-image>
        <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="use-title">收藏</view>
          </view>
          <view class="suggest" bind:tap="suggestBtn">
            <view>
              <t-image src="/static/images/bookService/detail/suggest.png"></t-image>
            <view class="message-li" wx:if="{{bookDetail.author}}">
              <view class="li-title">作者:</view>
              <view class="li-content">{{bookDetail.author}}</view>
            </view>
            <view class="use-title">我要建议</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="detail-right">
        <view class="book-name">{{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 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="message-li">
            <view class="li-title" wx:if="{{bookDetail.author}}">作者:</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">
            <view class="li-title" wx:if="{{bookDetail.publicationDate}}">出版时间:</view>
            <view class="li-content">{{bookDetail.publicationDate}}</view>
          </view>
          <view class="message-li" wx:if="{{bookDetail.class}}" style="height: 80rpx">
            <view class="li-title">图书分类:</view>
            <view class="class-name showTow">{{bookDetail.class}}</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>
        <t-image src="/static/images/bookService/detail/square.png" class="right-background"></t-image>
        <!-- 网店 -->
        <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-sale">
      <view class="book-price">
        <!-- 电子书售价 -->
        <view class="electron-price">
          <view>
            <t-image src="/static/images/bookService/detail/electon-price.png"></t-image>
          </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>
    <view class="book-resource">
      <movable-area class="movable-area">
        <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}}"
              authorIntroduction="{{bookDetail.authorIntroduction}}"
              wx:if="{{bookDetail.content || bookDetail.authorIntroduction}}"
            ></book-brief>
            <view
              wx:if="{{!bookDetail.content && !bookDetail.authorIntroduction}}"
              class="noData"
            >
              <t-empty icon="folder-open" description="暂无数据" />
            </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 && teach.length && !noResources && applyState}}"
            >
              <teach-resource
                applyState="{{applyState}}"
                rejectCause="{{rejectCause}}"
                deadline="{{deadline}}"
                bind:applyResource="applyResource"
                applyResourceLoading="{{applyResourceLoading}}"
              ></teach-resource>
              <tree
                id="teach-tree"
                openIds="{{openTeachids}}"
                bookInfo="{{bookDetail}}"
                treeList="{{teach}}"
                tab="{{tabValue}}"
                applyState="{{applyState}}"
                bind:downloadTeach="downloadTeach"
                bind:handleTree="handleTree"
                openTeachids="{{openTeachids}}"
                wx:if="{{teach.length}}"
                isShoppingCart="isShoppingCart"
                bind:updateCloudLearning="updateCloudLearning"
              ></tree>
            </view>
            <!-- <t-loading
              theme="circular"
              size="60rpx"
              class="loading"
              loading="{{loading }}"
            /> -->
            <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}}" class="noData">
              <t-empty icon="folder-open" description="暂无数据" />
            </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}}"
              ></learn-resource>
              <tree
                id="tree"
                openIds="{{openLearnids}}"
                bookInfo="{{bookDetail}}"
                tab="{{tabValue}}"
                treeList="{{learn}}"
                buyIds="{{buyIdList}}"
                openLearnids="{{openLearnids}}"
                bind:updateShoppingCartHidden="updateShoppingCartHidden"
                bind:updateCloudLearning="updateCloudLearning"
              ></tree>
            </view>
            <view wx:if="{{noResources}}" class="noData">
              <t-empty icon="folder-open" description="暂无数据" />
            </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}}"
                bookInfo="{{bookDetail}}"
                mockData="{{mockData}}"
                bind:buyMock="buyMock"
              ></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>
        <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>
          <view> </view>
        </view>
        <!-- 纸质书售价 -->
        <view class="paper-price">
          <view>
            <t-image src="/static/images/bookService/detail/paper-price.png"></t-image>
          </view>
          <view class="price">¥{{bookDetail.paperPrice == '0.00' ? '免费' :
            bookDetail.paperPrice}}</view>
        </view>
      </view>
      <!-- 网店 -->
      <view class="book-web">
        <t-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 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 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" bind:tap="goShop" data-link="{{bookDetail.weidianLink}}" wx:if="{{bookDetail.weidianLink}}"></t-image>
      </view>
        </movable-view>
      </movable-area>
    </view>
  </view>
  <view class="book-resource">
    <t-tabs defaultValue="{{tabValue}}" bind:change="onTabsChange" t-class="custom-tabs" t-class-content="custom-panel" class="tab-class">
      <t-tab-panel label="图书简介" value="brief" style="{{tabPanelstyle}}">
        <book-brief content="{{bookDetail.content}}" authorIntroduction="{{bookDetail.authorIntroduction}}"></book-brief>
      </t-tab-panel>
      <t-tab-panel label="电子书" value="1" style="{{tabPanelstyle}}">
        电子书
      </t-tab-panel>
      <t-tab-panel label="教学资源" value="jsek_teachingResources" class="{{loading ? 'loading': ''}}">
        <view wx:if="{{!loading && teach.length}}">
          <teach-resource applyState="{{applyState}}" rejectCause="{{rejectCause}}" bind:applyResource="applyResource"></teach-resource>
          <tree bookInfo="{{bookDetail}}" treeList="{{teach}}" tab="{{tabValue}}" applyState="{{applyState}}" bind:downloadTeach="downloadTeach" openTeachids="{{openTeachids}}"></tree>
        </view>
        <t-loading theme="circular" size="60rpx" class="loading" loading="{{loading}}" />
      </t-tab-panel>
      <t-tab-panel label="云学习" value="jsek_cloudLearning" style="{{tabPanelstyle}}">
        <view wx:if="{{!loading && learn.length}}">
          <learn-resource bind:getFreeResource="getFreeResource" bind:allAddShoppiingCar="allAddShoppiingCar" id="learn-resource"></learn-resource>
          <tree bookInfo="{{bookDetail}}" tab="{{tabValue}}" treeList="{{learn}}" buyIds="{{buyIdList}}" openLearnids="{{openLearnids}}"></tree>
        </view>
      </t-tab-panel>
      <t-tab-panel label="云测试" value="questionBank" style="{{tabPanelstyle}}">
        <view wx:if="{{!loading && test.length}}">
          <test-resource list="{{test}}" bookInfo="{{bookDetail}}" mockData="{{mockData}}"></test-resource>
        </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>
    </t-tabs>
  </view>
  </scroll-view>
  <!-- 我要建议弹窗 -->
  <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">
    <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>
    <view class="bottom-btn">
    <view class="bottom-btn" bind:tap="appplyPaperBook">
      <view>
        <t-image src="/static/images/bookService/detail/paper-book.png"></t-image>
        <t-image
          src="/static/images/bookService/detail/paper-book.png"
        ></t-image>
      </view>
      <view class="btn-text">纸质样书申请</view>
    </view>
    <view class="shopCar {{tabValue == 'jsek_teachingResources' ? 'disabledColor' : 'shopCarColor' }}" bind:tap="addBookShopcCar">加入购物车</view>
    <view class="buy  {{tabValue == 'jsek_teachingResources' ? 'disabledColor' : 'buyColor' }}" bind:tap="buyBtn">立即购买</view>
    <view
      class="{{!bookBuy && bookDetail.isSell ? 'bottom-btn tryRead' : 'bottom-btn try'}}"
      bind:tap="goRead"
      wx:if="{{!bookBuy}}"
    >
      <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" wx:if="{{bookBuy}}">立即查看</view>
  </view>
</scroll-view>
<!-- 我要建议弹窗 -->
<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>
<!-- <view class="loading" wx:if="{{pageLoading}}">
  <t-loading loading="{{pageLoading}}" size="40"></t-loading>
</view> -->