QYF-GitLab1
4 天以前 019abc739d9e231c2ebfe9ca537f82e2e1843496
src/views/bookStore/detail.vue
@@ -20,9 +20,9 @@
            </div>
          </el-tooltip>
        </div>
        <div class="bookDetail">
        <div class="bookDetail" v-loading="loading">
          <div class="bookImg">
            <img class="autoImg" :src="bookInfo.icon" alt="" />
            <img class="autoImg" :src="bookInfo.icon ? bookInfo.icon : defaultImg" alt="" />
          </div>
          <span class="iconfont icon-tubiaozhizuo"></span>
@@ -39,7 +39,7 @@
                  @click="collectBook"
                  v-if="bookInfo.isFavourite"
                  class="buyIcon"
                  src="@/assets/images/bookStore/shoucang.svg"
                  src="@/assets/images/xiehe/detail/Collection_fill.png"
                  style="margin-right: 10px"
                />
                <span
@@ -52,7 +52,16 @@
                <div class="collectText" @click="collectBook" v-if="bookInfo.isFavourite">
                  已收藏
                </div>
                <div class="collectText" @click="collectBook" v-else>收藏</div>
                <div class="collectText" @click="collectBook" v-else>
                  <img
                    @click="collectBook"
                    class="buyIcon"
                    src="@/assets/images/xiehe/detail/Collection.png"
                    style="margin-right: 10px"
                  />
                  收藏
                </div>
              </div>
            </div>
            <div class="authorBox">
@@ -171,60 +180,6 @@
            </div>
          </div>
        </div>
        <el-dialog title="联系编辑" :visible.sync="contactVisible" width="30%" :lock-scroll="false">
          <div class="contactBox" v-if="bookInfo.editor">
            <div class="contacItem">
              <i class="iconfont icon-renwu-ren contacIcon"></i>
              {{ bookInfo.editor.name }}
            </div>
            <div class="contacItem">
              <i class="iconfont icon-QQ contacIcon"></i>
              {{ bookInfo.editor.qq }}
            </div>
            <div class="contacItem">
              <i class="iconfont icon-tongxunlu contacIcon"></i>
              {{ bookInfo.editor.phone }}
            </div>
            <div class="contacItem">
              <i class="iconfont icon-dianhua contacIcon"></i>
              {{ bookInfo.editor.telephone }}
            </div>
          </div>
          <el-empty v-else description="暂无数据" class="empty" :image-size="100"></el-empty>
        </el-dialog>
        <el-dialog title="信息反馈" :visible.sync="dialogVisible" width="50%" :lock-scroll="false">
          <div class="infoDialog">
            <el-input
              type="textarea"
              :rows="8"
              placeholder="详细描述您所遇到的问题,有助于快速给您反馈!"
              v-model="textarea"
            >
            </el-input>
            <div class="subBtn">
              <el-button type="primary" @click="sendDiscuss">提交</el-button>
            </div>
            <div class="infoList">
              <div class="infoItem" v-for="(item, index) in commentList" :key="index">
                <div class="infoImg">
                  <img v-if="item.icon" class="autoImg" :src="item.icon" alt="" />
                  <i v-else class="el-icon-user-solid"></i>
                </div>
                <div class="infoContent">
                  <div class="infoTitle">
                    <div class="userNameBox">{{ item.content.name }}</div>
                    <div class="userNameBox">
                      {{ moment(item.createDate).format('YYYY-MM-DD') }}
                    </div>
                  </div>
                  <div class="infoText">
                    {{ item.content.content }}
                  </div>
                </div>
              </div>
            </div>
          </div>
        </el-dialog>
      </div>
    </div>
@@ -262,7 +217,10 @@
            </div>
          </div>
        </div>
        <div v-else-if="editableTabsValue == '2'" class="catalogue">bbbb</div>
        <div v-else-if="editableTabsValue == '2'" class="catalogue">
          <div v-if="bookInfo.catalogue" v-html="bookInfo.catalogue" class="catalogueContent"></div>
          <el-empty description="暂无数据" v-else />
        </div>
        <div v-else-if="editableTabsValue == '6'" class="supportingResources">
          <div class="resourcesBox">
            <el-empty v-if="!resourceHave" :image-size="150" description="暂无内容"></el-empty>
@@ -285,6 +243,7 @@
            </div>
          </div>
        </div>
        <div v-else class="catalogue"><el-empty description="暂无数据" /></div>
      </div>
      <div class="recommendBox">
        <div class="recommendTitle">推荐教材</div>
@@ -318,6 +277,7 @@
import moment from 'moment'
import axios from 'axios'
import * as echarts from 'echarts'
import defaultImg from '@/assets/images/book-cover.png'
import imgIcon from '@/assets/images/digitalTextbooks/img.png'
import AudioIcon from '@/assets/images/digitalTextbooks/Audio.png'
import DIcon from '@/assets/images/digitalTextbooks/3D.png'
@@ -331,6 +291,7 @@
import { ref, onBeforeMount, inject, reactive, onMounted, watchEffect } from 'vue'
const MG = inject('MG')
const config = inject('config')
const logIn = inject('logIn')
import { useRouter, useRoute } from 'vue-router'
import { applyBookStore } from '@/store'
const route = useRoute()
@@ -341,9 +302,11 @@
let recommendBookListData = ref([])
let editableTabsValue = ref('1')
let resourceHave = ref(true)
let loading = ref(false)
var chartDom = null
var myChart = {}
var option = null
const editableTabs = reactive([
  {
    title: '教材信息',
@@ -382,6 +345,33 @@
    getBookResource()
  }
})
//收藏书籍
const collectBook = () => {
  if (localStorage.getItem(config.tokenKey)) {
    if (bookInfo.value.isFavourite) {
      MG.store
        .delProductLink({
          productIds: [bookInfo.value.id],
          linkType: 'FavoriteBookCity',
        })
        .then(() => {
          bookInfo.value.isFavourite = false
        })
    } else {
      let params = {
        productIds: [bookInfo.value.id],
        linkType: 'FavoriteBookCity',
      }
      MG.store.addProductLink(params).then((res) => {
        bookInfo.value.isFavourite = true
      })
    }
  } else {
    logIn()
    console.log(logIn)
  }
}
//申请试用
const applyTextBook = () => {
@@ -523,6 +513,7 @@
}
const getBookDetail = (id) => {
  loading.value = true
  const query = {
    path: '*',
    queryType: '*',
@@ -549,6 +540,7 @@
  MG.store.getProductDetail(query).then((res) => {
    console.log(res, 'res')
    bookInfo.value = res.datas
    loading.value = false
    console.log(res.datas, 'res')
  })
}
@@ -935,4 +927,9 @@
    }
  }
}
.textbookContent,
.authorInfo {
  margin-top: 20px;
  line-height: 28px;
}
</style>