litian
2024-07-05 2f9305515c7264637164c9e03c2840f4219ca1e3
kong,
83个文件已修改
5个文件已添加
996 ■■■■■ 已修改文件
components/empty/index.js 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
components/empty/index.json 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
components/empty/index.wxml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
components/empty/index.wxss 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/detail/buyResource/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/detail/buyResource/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/detail/components/note/note.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/detail/components/note/note.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/detail/components/relatedBooks/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/detail/components/relatedBooks/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/detail/components/testResource/testResource.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/detail/components/testResource/testResource.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/detail/components/testTree/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/detail/components/tree/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/detail/components/tree/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/detail/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/detail/index.wxml 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/examination/examination.js 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/examination/examination.wxss 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/examination/questionList/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/examination/questionList/index.wxml 346 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/examination/questionList/index.wxss 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/examination/questionOptions/index.wxss 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/list/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/list/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageDomain/pages/resourceDetails/myAudio/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageDomain/pages/resourceDetails/myAudio/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageDomain/pages/resourceDetails/myVideo/index.js 70 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageDomain/pages/resourceDetails/myVideo/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageDomain/pages/resourceDetails/myVideo/index.wxml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageDomain/pages/sampleBookList/applicationForm/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageDomain/pages/sampleBookList/applicationForm/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageDomain/pages/sampleBookList/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageDomain/pages/sampleBookList/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageDomain/pages/teacherCertification/index.js 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/activateProduct/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/activateProduct/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/downloads/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/downloads/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/feedBack/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/feedBack/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/myCollection/index.js 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/myCollection/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/myCollection/index.wxml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/myCollection/index.wxss 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/myMassage/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/myMassage/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/myOrder/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/myOrder/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/sampleBooks/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packagePersonal/pages/sampleBooks/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/bibliographyList/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/bibliographyList/index.wxml 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/bookExhibitionList/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/bookExhibitionList/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/cart/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/cart/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/digitalCoursesDetails/components/note/note.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/digitalCoursesDetails/components/note/note.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/digitalCoursesDetails/components/question/question.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/digitalCoursesDetails/components/question/question.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/digitalCoursesDetails/components/testTree/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/digitalCoursesDetails/components/tree/index.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/digitalCoursesDetails/components/tree/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/digitalCoursesDetails/components/tree/index.wxml 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/digitalCoursesDetails/index.js 135 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/digitalCoursesDetails/index.json 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/digitalCoursesDetails/index.wxml 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/digitalCoursesDetails/index.wxss 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/index.js 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalCourses/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalTextbooks/digitalTextbooksDetails/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalTextbooks/digitalTextbooksDetails/index.wxml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalTextbooks/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/digitalTextbooks/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/home/home.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/home/home.wxml 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/index/resourceCover.js 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/index/resourceCover.wxml 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/index/resourceCover.wxss 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/retrievalPage/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/retrievalPage/index.wxml 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/specialDiscussion/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/specialDiscussion/index.wxml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/study/index.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/study/index.wxml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
services/home/home.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
static/images/empty.png 补丁 | 查看 | 原始文档 | blame | 历史
components/empty/index.js
New file
@@ -0,0 +1,25 @@
Component({
  /**
   * 组件的属性列表
   */
  properties: {
  },
  ready() {
  },
  /**
   * 组件的初始数据
   */
  data: {
  },
  /**
   * 组件的方法列表
   */
  methods: {
  }
})
components/empty/index.json
New file
@@ -0,0 +1,6 @@
{
  "component": true,
  "usingComponents": {
    "t-image": "tdesign-miniprogram/image/image"
  }
}
components/empty/index.wxml
New file
@@ -0,0 +1,4 @@
<view class="noData-box">
  <t-image class="note-icon" src="/static/images/empty.png"></t-image>
  <view class="text">暂无数据</view>
</view>
components/empty/index.wxss
New file
@@ -0,0 +1,14 @@
.noData-box {
  text-align: center;
}
.noData-box image {
  width: 205rpx !important;
  height: 133rpx !important;
}
.text {
  color: #999;
  font-size: 28rpx;
  margin-top: 20rpx;
}
packageBookService/pages/bookServices/detail/buyResource/index.json
@@ -4,7 +4,8 @@
    "tree": "/packageBookService/pages/bookServices/detail/components/tree/index",
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-empty": "tdesign-miniprogram/empty/empty",
    "t-button": "tdesign-miniprogram/button/button"
    "t-button": "tdesign-miniprogram/button/button",
    "empty": "/components/empty/index"
  },
  "navigationStyle": "custom",
  "disableScroll": true
packageBookService/pages/bookServices/detail/buyResource/index.wxml
@@ -39,7 +39,8 @@
      bind:changeResourceChecked="changeResourceChecked"
    />
    <view class="noData" wx:if="{{noData}}">
      <t-empty icon="folder-open" description="暂无数据" />
      <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
      <empty />
    </view>
  </view>
packageBookService/pages/bookServices/detail/components/note/note.json
@@ -12,6 +12,7 @@
    "t-popup": "tdesign-miniprogram/popup/popup",
    "t-icon": "tdesign-miniprogram/icon/icon",
    "t-empty": "tdesign-miniprogram/empty/empty",
    "t-skeleton": "tdesign-miniprogram/skeleton/skeleton"
    "t-skeleton": "tdesign-miniprogram/skeleton/skeleton",
    "empty": "/components/empty/index"
  }
}
packageBookService/pages/bookServices/detail/components/note/note.wxml
@@ -55,7 +55,8 @@
      </t-collapse-panel>
    </t-collapse>
    <view wx:if="{{noList}}" class="noData">
      <t-empty icon="folder-open" description="暂无数据" />
      <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
      <empty />
    </view>
  </view>
  <view class="bottom-box" wx:if="{{noteList.length}}">
packageBookService/pages/bookServices/detail/components/relatedBooks/index.json
@@ -3,6 +3,7 @@
  "usingComponents": {
    "t-empty": "tdesign-miniprogram/empty/empty",
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-skeleton": "tdesign-miniprogram/skeleton/skeleton"
    "t-skeleton": "tdesign-miniprogram/skeleton/skeleton",
    "empty": "/components/empty/index"
  }
}
packageBookService/pages/bookServices/detail/components/relatedBooks/index.wxml
@@ -16,7 +16,8 @@
    <text class="book-name">{{item.name}}</text>
  </view>
  <view class="noData" wx:if="{{noRelatedBookData}}">
    <t-empty icon="folder-open" description="暂无数据" />
    <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
    <empty />
  </view>
  <view class="loading-box" wx:if="{{relatedBookLoading}}">
    <!-- relatedBookLoading -->
packageBookService/pages/bookServices/detail/components/testResource/testResource.json
@@ -6,6 +6,7 @@
    "t-radio": "tdesign-miniprogram/radio/radio",
    "t-radio-group": "tdesign-miniprogram/radio-group/radio-group",
    "t-empty": "tdesign-miniprogram/empty/empty",
    "tree": "/packageBookService/pages/bookServices/detail/components/testTree/index"
    "tree": "/packageBookService/pages/bookServices/detail/components/testTree/index",
    "empty": "/components/empty/index"
  }
}
packageBookService/pages/bookServices/detail/components/testResource/testResource.wxml
@@ -77,7 +77,8 @@
    <tree id="test-tree" openIds="{{openIds}}" bookInfo="{{bookInfo}}" tab="{{tab}}" treeList="{{list}}" bind:goTest="goTest"></tree>
  </view>
  <view wx:if="{{noResources}}" class="noData" wx:if="{{radioItem == 'test' && !list.length}}">
    <t-empty icon="folder-open" description="暂无数据" />
    <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
    <empty />
  </view>
</view>
packageBookService/pages/bookServices/detail/components/testTree/index.json
@@ -8,6 +8,7 @@
    "t-button": "tdesign-miniprogram/button/button",
    "t-checkbox": "tdesign-miniprogram/checkbox/checkbox",
    "tree": "/packageBookService/pages/bookServices/detail/components/testTree/index",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
packageBookService/pages/bookServices/detail/components/tree/index.json
@@ -8,6 +8,7 @@
    "t-button": "tdesign-miniprogram/button/button",
    "t-checkbox": "tdesign-miniprogram/checkbox/checkbox",
    "tree": "/packageBookService/pages/bookServices/detail/components/tree/index",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
packageBookService/pages/bookServices/detail/components/tree/index.wxml
@@ -306,7 +306,8 @@
      </view>
      <!-- 暂无数据 -->
      <view wx:if="{{!item.children || !item.children.length}}" class="noData">
        <t-empty icon="folder-open" description="暂无数据" />
        <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
        <empty />
      </view>
      <view class="listItems" wx:if="{{children.length <= 0 && !loading}}">
        暂无数据
packageBookService/pages/bookServices/detail/index.json
@@ -20,7 +20,8 @@
    "t-empty": "tdesign-miniprogram/empty/empty",
    "t-fab": "tdesign-miniprogram/fab/fab",
    "t-skeleton": "tdesign-miniprogram/skeleton/skeleton",
    "suggest-dialog": "/packageBookService/pages/bookServices/detail/components/suggestDialog/index"
    "suggest-dialog": "/packageBookService/pages/bookServices/detail/components/suggestDialog/index",
    "empty": "/components/empty/index"
  },
  "onReachBottomDistance": 200,
  "disableScroll": true
packageBookService/pages/bookServices/detail/index.wxml
@@ -114,7 +114,8 @@
          <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 && !loading}}" class="noData">
              <t-empty icon="folder-open" description="暂无数据" />
              <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
              <empty />
            </view>
          </t-tab-panel>
          <!-- <t-tab-panel
@@ -139,7 +140,8 @@
              <t-skeleton row-col="{{rowCol}}" theme="paragraph" animation="gradient" loading="{{loading}}"></t-skeleton>
            </view>
            <view wx:if="{{noResources && !loading}}" class="noData">
              <t-empty icon="folder-open" description="暂无数据" />
              <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
              <empty />
            </view>
          </t-tab-panel>
          <t-tab-panel label="云学习" icon="{{tabValue == 'jsek_cloudLearning' ? learnResourceClickIcon : learnResourceIcon}}" value="jsek_cloudLearning" style="{{tabPanelstyle}}">
@@ -149,7 +151,8 @@
              <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 && !loading}}" class="noData">
              <t-empty icon="folder-open" description="暂无数据" />
              <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
              <empty />
            </view>
          </t-tab-panel>
          <t-tab-panel label="云测试" icon="{{tabValue == 'questionBank' ? testResourceClickIocn : testResourceIocn}}" value="questionBank" style="{{tabPanelstyle}}">
packageBookService/pages/bookServices/examination/examination.js
@@ -820,7 +820,7 @@
      let query = {
        path: "*",
        queryType: "*",
        storeInfo: this.data.storeInfo,
        productId: this.data.bookId,
        cmsPath: pathitem.productLinkPath,
        itemFields: {
@@ -840,6 +840,9 @@
          size: 999,
        },
      };
      if (this.data.storeInfo) {
        query.storeInfo = this.data.storeInfo
      }
      await app.MG.store.getProductDetail(query).then((res) => {
        this.setData({
          total: res.datas.cmsDatas[0].datas.length,
@@ -1355,7 +1358,6 @@
    for (let qindex = 0; qindex < this.data.collectList.length; qindex++) {
      const qitem = this.data.collectList[qindex];
      let query = {
        storeInfo: this.data.storeInfo,
        path: "*",
        cmsPath: this.data.rootCmsItemId,
        cmsType: "*",
@@ -1374,6 +1376,9 @@
          Embedded_QuestionBank_Difficulty: [],
        },
      };
      if (this.data.storeInfo) {
        query.storeInfo = this.data.storeInfo
      }
      await app.MG.store.getProductDetail(query).then((res) => {
        let questionArr = [];
        res.datas.cmsDatas[0].datas.forEach((item, index) => {
@@ -1603,7 +1608,6 @@
    let multipleChoiceArr = []; // 多选
    let completionArr = []; // 填空
    let query = {
      storeInfo: this.data.storeInfo,
      path: "*",
      cmsPath: this.data.rootCmsItemId,
      cmsType: "*",
@@ -1622,6 +1626,9 @@
        Embedded_QuestionBank_Difficulty: [],
      },
    };
    if (this.data.storeInfo) {
      query.storeInfo = this.data.storeInfo
    }
    await app.MG.store.getProductDetail(query).then((res) => {
      let questionArr = [];
      res.datas.cmsDatas[0].datas.forEach((item, index) => {
@@ -1889,7 +1896,6 @@
        itemIds.push(item.id + "");
      });
      let query = {
        storeInfo: this.data.storeInfo,
        path: "*",
        cmsPath: this.data.rootCmsItemId,
        cmsType: "*",
@@ -1908,6 +1914,9 @@
          Embedded_QuestionBank_Difficulty: [],
        },
      };
      if (this.data.storeInfo) {
        query.storeInfo = this.data.storeInfo
      }
      await app.MG.store.getProductDetail(query).then((res) => {
        res.datas.cmsDatas[0].datas.forEach((item, index) => {
          // 循环questionList,给每题赋值分数
packageBookService/pages/bookServices/examination/examination.wxss
@@ -26,7 +26,7 @@
.page-content {
  box-sizing: border-box;
  width: 100%;
  height: calc(100vh - env(safe-area-inset-bottom) - 73px);
  height: calc(100vh - env(safe-area-inset-bottom) - 100px);
  padding: 20rpx;
  background-color: #F2F3F8;
}
packageBookService/pages/bookServices/examination/questionList/index.json
@@ -12,6 +12,7 @@
    "t-textarea": "tdesign-miniprogram/textarea/textarea",
    "t-empty": "tdesign-miniprogram/empty/empty",
    "t-button": "tdesign-miniprogram/button/button",
    "mp-html": "mp-html"
    "mp-html": "mp-html",
    "empty": "/components/empty/index"
  }
}
packageBookService/pages/bookServices/examination/questionList/index.wxml
@@ -1,67 +1,32 @@
<!--pages/bookServices/examination/questionList/index.wxml-->
<view
  class="question-list"
  style="background-color:{{isNight ? '#222' : '#fff'}}"
>
<view class="question-list" style="background-color:{{isNight ? '#222' : '#fff'}}">
  <!-- 题型title -->
  <view
    class="question-title"
    wx:if="{{questionList[showIndex].type}}"
    style="background-color:{{isNight ? '#222' : '#fff'}}"
  >
    <text class="title-name">{{questionList[showIndex].type}}</text
    ><text
      wx:if="{{questionList[showIndex].score}}"
      class="title-score"
      style="color: {{isNight ? '#fff' : '#000'}};"
      >(每题{{questionList[showIndex].score}}分)</text
    >
  <view class="question-title" wx:if="{{questionList[showIndex].type}}" style="background-color:{{isNight ? '#222' : '#fff'}}">
    <text class="title-name">{{questionList[showIndex].type}}</text><text wx:if="{{questionList[showIndex].score}}" class="title-score" style="color: {{isNight ? '#fff' : '#000'}};">(每题{{questionList[showIndex].score}}分)</text>
  </view>
  <!-- 题目列表 -->
  <swiper
    class="swiper"
    bindanimationfinish="changeSwiper"
    current="{{currentIndex}}"
  >
  <swiper class="swiper" bindanimationfinish="changeSwiper" current="{{currentIndex}}">
    <swiper-item wx:for="{{questionList}}" wx:key="id" style="overflow-y: auto">
      <!-- 题干 -->
      <view
        class="question-stem title-score"
        style="color: {{isNight ? '#fff' : '#000'}}; font-size: {{sliderValue || 32}}rpx;"
      >
      <view class="question-stem title-score" style="color: {{isNight ? '#fff' : '#000'}}; font-size: {{sliderValue || 32}}rpx;">
        <!-- 题号 -->
        <text>{{item.number}}.</text>
        <!-- 听力题 -->
        <view wx:if="{{item.questionType == 'singleChoice' && item.src}}">
          <rich-text nodes="{{item.stem.stemTxt }}" />
          <view
            style="margin-top: {{item.stem.stemTxt ? '10rpx' : ''}};"
            class="audio-play-box"
            bind:tap="audioPlay"
            data-src="{{item.src}}"
          >
            <image
              src="{{isPlay ? '/static/images/resourceDetailsMyAudio/zanting@2x.png' : '/static/images/resourceDetailsMyAudio/play@2x.png'}}"
              mode="aspectFit"
            ></image>
          <view style="margin-top: {{item.stem.stemTxt ? '10rpx' : ''}};" class="audio-play-box" bind:tap="audioPlay" data-src="{{item.src}}">
            <image src="{{isPlay ? '/static/images/resourceDetailsMyAudio/zanting@2x.png' : '/static/images/resourceDetailsMyAudio/play@2x.png'}}" mode="aspectFit"></image>
          </view>
        </view>
        <!-- 仅文字 -->
        <view
          class="title-content text-space"
          wx:elif="{{item.stemStyle == 'Txt' && item.questionType != 'completion'}}"
          >{{item.stem.stemTxt}}</view
        >
        <view class="title-content text-space" wx:elif="{{item.stemStyle == 'Txt' && item.questionType != 'completion'}}">{{item.stem.stemTxt}}</view>
        <!-- 仅图片 -->
        <view wx:elif="{{item.stemStyle == 'Image'}}" class="title-content">
          <image src="{{item.stem.stemImage}}" mode="aspectFit" />
        </view>
        <!-- 图片加文字 -->
        <view
          wx:elif="{{item.stemStyle == 'TxtAndImage'}}"
          class="title-content text-space"
        >
        <view wx:elif="{{item.stemStyle == 'TxtAndImage'}}" class="title-content text-space">
          <view>{{item.stem.stemTxt}}</view>
          <image src="{{item.stem.stemImage}}" mode="aspectFit" />
        </view>
@@ -71,90 +36,36 @@
        </view>
        <!-- 填空题 -->
        <view wx:if="{{item.questionType == 'completion'}}">
          <view
            class="completion-box"
            wx:for="{{item.stem}}"
            wx:for-item="inputItem"
            wx:for-index="inputIndex"
            wx:key="inputIndex"
          >
            <t-input
              disabled="{{item.isComplete}}"
              bind:change="onChangeInput"
              data-value="{{item.option}}"
              data-id="{{item.id}}"
              data-index="{{inputItem.num}}"
              class="title-input {{isNight ? 'input-night-color' : ''}}"
              style="border: 2rpx solid rgba(220,220,220,1);border-radius: 12rpx;background-color:{{isNight ? '#000' : '#fff'}}; "
              placeholder-style="{{placeholderstyle}}"
              wx:if="{{inputItem.data == 'input'}}"
              placeholder="请输入文字"
              value="{{item.userAnswer[inputItem.num]}}"
            ></t-input>
          <view class="completion-box" wx:for="{{item.stem}}" wx:for-item="inputItem" wx:for-index="inputIndex" wx:key="inputIndex">
            <t-input disabled="{{item.isComplete}}" bind:change="onChangeInput" data-value="{{item.option}}" data-id="{{item.id}}" data-index="{{inputItem.num}}" class="title-input {{isNight ? 'input-night-color' : ''}}" style="border: 2rpx solid rgba(220,220,220,1);border-radius: 12rpx;background-color:{{isNight ? '#000' : '#fff'}}; " placeholder-style="{{placeholderstyle}}" wx:if="{{inputItem.data == 'input'}}" placeholder="请输入文字" value="{{item.userAnswer[inputItem.num]}}"></t-input>
            <text wx:else class="text-space">{{inputItem}}</text>
          </view>
        </view>
      </view>
      <!-- 答题区域 -->
      <view
        class="question-answer {{item.questionType == 'shortAnswer' ? 'textarea-center' : ''}}"
      >
      <view class="question-answer {{item.questionType == 'shortAnswer' ? 'textarea-center' : ''}}">
        <!-- 单选题 -->
        <t-radio-group
          wx:if="{{item.questionType == 'singleChoice' || item.questionType == 'judge'}}"
          defaultValue="{{item.userAnswer}}"
          disabled="{{item.isComplete}}"
          bind:change="onChangeRadio"
          class="radio-group"
          data-value="{{item.option}}"
          data-id="{{item.id}}"
        >
          <view
            wx:for="{{item.option}}"
            wx:for-item="contentItem"
            wx:for-index="contentIndex"
            wx:key="contentIndex"
          >
            <t-radio
              value="{{contentItem.value}}"
              icon="none"
              placement="right"
              borderless
              style="background-color: {{isNight ? '#222' : '#fff'}}"
            >
              <view
                style="font-size: {{sliderValue || 32}}rpx;"
                class="radio-item {{(answerType == 'option' || answerType == 'mock' ) && !submitStatus && item.userAnswer == contentItem.value ? 'radio-active' : isNight ? 'night' :''}} {{item.userAnswer == contentItem.value && submitStatus ?  item.isRight ? 'radio-correct' : 'radio-error' :''}}"
              >
        <t-radio-group wx:if="{{item.questionType == 'singleChoice' || item.questionType == 'judge'}}" defaultValue="{{item.userAnswer}}" disabled="{{item.isComplete}}" bind:change="onChangeRadio" class="radio-group" data-value="{{item.option}}" data-id="{{item.id}}">
          <view wx:for="{{item.option}}" wx:for-item="contentItem" wx:for-index="contentIndex" wx:key="contentIndex">
            <t-radio value="{{contentItem.value}}" icon="none" placement="right" borderless style="background-color: {{isNight ? '#222' : '#fff'}}">
              <view style="font-size: {{sliderValue || 32}}rpx;" class="radio-item {{(answerType == 'option' || answerType == 'mock' ) && !submitStatus && item.userAnswer == contentItem.value ? 'radio-active' : isNight ? 'night' :''}} {{item.userAnswer == contentItem.value && submitStatus ?  item.isRight ? 'radio-correct' : 'radio-error' :''}}">
                <!-- 仅文字 -->
                <text wx:if="{{item.optionStyle == 'Txt'}}" class="text-space"
                  >{{contentItem.value}}、{{contentItem.txt}}</text
                >
                <text wx:if="{{item.optionStyle == 'Txt'}}" class="text-space">{{contentItem.value}}、{{contentItem.txt}}</text>
                <!-- 仅图片 -->
                <view wx:if="{{item.optionStyle == 'Image'}}" class="fl-center">
                  <text>{{contentItem.value}}、</text>
                  <image src="{{contentItem.img}}" mode="aspectFit" />
                </view>
                <!-- 文字加图片 -->
                <view
                  wx:if="{{item.optionStyle == 'TxtAndImage'}}"
                  class="fl-center"
                  class="TxtAndImage-box"
                >
                <view wx:if="{{item.optionStyle == 'TxtAndImage'}}" class="fl-center" class="TxtAndImage-box">
                  <text class="text-space">{{contentItem.value}}、</text>
                  <view class="radio-textimg">{{contentItem.txt}}</view>
                  <image src="{{contentItem.img}}" mode="aspectFit" />
                </view>
                <!-- 富文本 -->
                <view
                  wx:if="{{item.optionStyle == 'RichText'}}"
                  class="judge-rich-box"
                >
                <view wx:if="{{item.optionStyle == 'RichText'}}" class="judge-rich-box">
                  <text>{{contentItem.value}}、</text>
                  <rich-text
                    nodes="{{  contentItem.txt}}"
                    style="display: flex; align-items: center; width: 100%"
                  ></rich-text>
                  <rich-text nodes="{{  contentItem.txt}}" style="display: flex; align-items: center; width: 100%"></rich-text>
                </view>
                <!-- <text
                  wx:if="{{submitStatus && (item.answer == contentItem.value && item.answer == item.userAnswer)}}"
@@ -169,225 +80,82 @@
          </view>
        </t-radio-group>
        <!-- 多选题 -->
        <t-checkbox-group
          class="checkbox-group"
          wx:elif="{{item.questionType == 'multipleChoice'}}"
          t-class="box"
          borderless
          bind:change="onChangeRadio"
          data-value="{{item.option}}"
          data-id="{{item.id}}"
          defaultValue="{{item.userAnswer}}"
        >
          <view
            wx:for="{{item.option}}"
            wx:for-item="contentItem"
            wx:for-index="contentIndex"
            wx:key="contentIndex"
          >
            <t-checkbox
              disabled="{{item.isComplete}}"
              icon="rectangle"
              block="{{false}}"
              class="t-checkbox"
              value="{{contentItem.value}}"
              style="background-color:{{isNight ? '#222' :'#F9F9F9'}}; "
            >
        <t-checkbox-group class="checkbox-group" wx:elif="{{item.questionType == 'multipleChoice'}}" t-class="box" borderless bind:change="onChangeRadio" data-value="{{item.option}}" data-id="{{item.id}}" defaultValue="{{item.userAnswer}}">
          <view wx:for="{{item.option}}" wx:for-item="contentItem" wx:for-index="contentIndex" wx:key="contentIndex">
            <t-checkbox disabled="{{item.isComplete}}" icon="rectangle" block="{{false}}" class="t-checkbox" value="{{contentItem.value}}" style="background-color:{{isNight ? '#222' :'#F9F9F9'}}; ">
              <!-- 仅文字 -->
              <view
                class="fl-center mh text-space"
                wx:if="{{item.optionStyle == 'Txt'}}"
                style="color:{{ isNight  ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;"
              >
              <view class="fl-center mh text-space" wx:if="{{item.optionStyle == 'Txt'}}" style="color:{{ isNight  ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;">
                <text>{{contentItem.value}}、</text>
                <text class="check-text-box">{{contentItem.txt}}</text>
              </view>
              <!-- 仅图片 -->
              <view
                wx:if="{{item.optionStyle == 'Image'}}"
                class="fl-center mh"
              >
                <text
                  style="color:{{ isNight  ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;"
                  >{{contentItem.value}}、</text
                >
              <view wx:if="{{item.optionStyle == 'Image'}}" class="fl-center mh">
                <text style="color:{{ isNight  ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;">{{contentItem.value}}、</text>
                <image src="{{contentItem.img}}" mode="aspectFit" />
              </view>
              <!-- 文字加图片 -->
              <view
                wx:if="{{item.optionStyle == 'TxtAndImage'}}"
                class="fl-center mh text-space"
              >
                <text
                  style="color:{{ isNight  ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;"
                  >{{contentItem.value}}、</text
                >
                <text
                  style="color:{{ isNight  ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;"
                  >{{contentItem.txt}}</text
                >
                <image
                  src="{{contentItem.img}}"
                  wx:if="{{contentItem.img}}"
                  mode="aspectFit"
                />
              <view wx:if="{{item.optionStyle == 'TxtAndImage'}}" class="fl-center mh text-space">
                <text style="color:{{ isNight  ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;">{{contentItem.value}}、</text>
                <text style="color:{{ isNight  ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;">{{contentItem.txt}}</text>
                <image src="{{contentItem.img}}" wx:if="{{contentItem.img}}" mode="aspectFit" />
              </view>
              <!-- 富文本 -->
              <view
                wx:if="{{item.optionStyle == 'RichText'}}"
                class="check-rich-box mh"
              >
              <view wx:if="{{item.optionStyle == 'RichText'}}" class="check-rich-box mh">
                <text>{{contentItem.value}}、</text>
                <rich-text
                  nodes="{{contentItem.txt}}"
                  class="multipleChoice"
                ></rich-text>
                <rich-text nodes="{{contentItem.txt}}" class="multipleChoice"></rich-text>
              </view>
            </t-checkbox>
          </view>
        </t-checkbox-group>
        <!-- 简答 翻译 -->
        <t-textarea
          disabled="{{item.isComplete}}"
          value="{{item.userAnswer}}"
          bind:change="onChangeRadio"
          data-value="{{item.option}}"
          data-id="{{item.id}}"
          class="option-textarea {{isNight ? 'textarea-night-color' :''}}"
          wx:elif="{{item.questionType == 'shortAnswer'}}"
          t-class="external-class"
          placeholder="请输入文字"
          bordered
          maxlength="500"
          disableDefaultPadding="{{true}}"
          indicator
          style="background-color:{{isNight ? '#000' : '#fff'}}; "
        />
        <t-textarea disabled="{{item.isComplete}}" value="{{item.userAnswer}}" bind:change="onChangeRadio" data-value="{{item.option}}" data-id="{{item.id}}" class="option-textarea {{isNight ? 'textarea-night-color' :''}}" wx:elif="{{item.questionType == 'shortAnswer'}}" t-class="external-class" placeholder="请输入文字" bordered maxlength="500" disableDefaultPadding="{{true}}" indicator style="background-color:{{isNight ? '#000' : '#fff'}}; " />
      </view>
      <!-- 我的错题、收藏模式下,查看解析按钮 -->
      <view
        wx:if="{{(answerType == 'collectQuestion' || answerType ==  'errorQuestion') && (item.questionType == 'multipleChoice' || item.questionType ==  'completion' || item.questionType == 'shortAnswer')}}"
        style="margin-left: 40rpx"
      >
        <t-button theme="primary" class="view-parsing" bind:tap="viewParsing"
          >查看解析</t-button
        >
      <view wx:if="{{(answerType == 'collectQuestion' || answerType ==  'errorQuestion') && (item.questionType == 'multipleChoice' || item.questionType ==  'completion' || item.questionType == 'shortAnswer')}}" style="margin-left: 40rpx">
        <t-button theme="primary" class="view-parsing" bind:tap="viewParsing">查看解析</t-button>
      </view>
      <!-- 单选、多选解析 -->
      <view
        class="analysis"
        wx:if="{{item.isComplete && (item.questionType == 'singleChoice' || item.questionType == 'judge' || item.questionType == 'multipleChoice')}}"
      >
      <view class="analysis" wx:if="{{item.isComplete && (item.questionType == 'singleChoice' || item.questionType == 'judge' || item.questionType == 'multipleChoice')}}">
        <view class="analysis-answer {{sliderValue >35 ? 'fl-cl' : '' }}">
          <view
            class="answer-correct answer-center"
            style="font-size: {{sliderValue || 32}}rpx;"
          >
          <view class="answer-correct answer-center" style="font-size: {{sliderValue || 32}}rpx;">
            <text class="analysis-title-box">正确答案:</text>
            <rich-text
              nodes="{{item.answer}}"
              style="font-size: {{sliderValue || 40}}rpx;"
            ></rich-text>
            <rich-text nodes="{{item.answer}}" style="font-size: {{sliderValue || 40}}rpx;"></rich-text>
          </view>
          <view
            class="answer-center  {{item.isRight ? 'answer-correct' : 'answer-error'}}  {{sliderValue <= 35 ? 'marginL' : ''}}"
            wx:if="{{item.questionType !== 'shortAnswer'}}"
          >
            <text
              class="analysis-title-box"
              style="font-size: {{sliderValue || 32}}rpx;"
              >您的答案:</text
            ><text
              class="answer-text"
              style="font-size: {{sliderValue || 40}}rpx;"
              >{{item.userAnswer}}</text
            >
          <view class="answer-center  {{item.isRight ? 'answer-correct' : 'answer-error'}}  {{sliderValue <= 35 ? 'marginL' : ''}}" wx:if="{{item.questionType !== 'shortAnswer'}}">
            <text class="analysis-title-box" style="font-size: {{sliderValue || 32}}rpx;">您的答案:</text><text class="answer-text" style="font-size: {{sliderValue || 40}}rpx;">{{item.userAnswer}}</text>
          </view>
        </view>
        <view
          class="analysis-text"
          wx:if="{{item.analysisCon}}"
          style="color: {{isNight ? '#fff' : '#000'}};"
        >
          <text
            style="font-size: {{sliderValue || 32}}rpx;"
            class="answer-analysis"
            >答案解析:</text
          >
          <rich-text
            style="font-size: {{sliderValue || 32}}rpx;"
            nodes="{{item.analysisCon}}"
            class="analysis-content"
          ></rich-text>
        <view class="analysis-text" wx:if="{{item.analysisCon}}" style="color: {{isNight ? '#fff' : '#000'}};">
          <text style="font-size: {{sliderValue || 32}}rpx;" class="answer-analysis">答案解析:</text>
          <rich-text style="font-size: {{sliderValue || 32}}rpx;" nodes="{{item.analysisCon}}" class="analysis-content"></rich-text>
        </view>
      </view>
      <!-- 填空、简答解析 -->
      <view
        class="analysis"
        wx:if="{{(item.questionType == 'shortAnswer' || item.questionType == 'completion') && item.isComplete}}"
      >
        <view
          style="display: {{item.questionType == 'completion' ? 'flex' : 'block'}}"
        >
          <text
            wx:if="{{item.questionType == 'completion'}}"
            class="short-answer-fz answer-correct"
            style="font-size:{{sliderValue || 32}}rpx;"
            >正确答案:</text
          >
          <text
            wx:if="{{item.questionType == 'shortAnswer'}}"
            class="short-answer-fz"
            style="color:{{isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;"
          >
      <view class="analysis" wx:if="{{(item.questionType == 'shortAnswer' || item.questionType == 'completion') && item.isComplete}}">
        <view style="display: {{item.questionType == 'completion' ? 'flex' : 'block'}}">
          <text wx:if="{{item.questionType == 'completion'}}" class="short-answer-fz answer-correct" style="font-size:{{sliderValue || 32}}rpx;">正确答案:</text>
          <text wx:if="{{item.questionType == 'shortAnswer'}}" class="short-answer-fz" style="color:{{isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;">
            参考答案:
          </text>
          <rich-text
            wx:if="{{item.questionType == 'shortAnswer'}}"
            nodes="{{item.answer}}"
            style="font-size:{{sliderValue || 28}}rpx; color:{{item.questionType == 'completion' ? '#1FBC1F' : isNight ? '#fff' : '#000'}}"
          ></rich-text>
          <view
            wx:if="{{item.questionType == 'completion'}}"
            style="font-size:{{sliderValue || 28}}rpx;"
            class="short-answer-fz answer-correct"
            >{{item.answer}}</view
          >
          <rich-text wx:if="{{item.questionType == 'shortAnswer'}}" nodes="{{item.answer}}" style="font-size:{{sliderValue || 28}}rpx; color:{{item.questionType == 'completion' ? '#1FBC1F' : isNight ? '#fff' : '#000'}}"></rich-text>
          <view wx:if="{{item.questionType == 'completion'}}" style="font-size:{{sliderValue || 28}}rpx;" class="short-answer-fz answer-correct">{{item.answer}}</view>
        </view>
        <view
          wx:if="{{item.questionType == 'completion'}}"
          class="short-answer-mr"
          style="display: {{item.questionType == 'completion' ? 'flex' : 'block'}}"
        >
          <text
            class="short-answer-fz {{item.isRight ? 'answer-correct' : 'answer-error'}}"
            style="font-size:{{sliderValue || 32}}rpx;"
            >您的答案:</text
          >
          <view
            class="short-answer-fz {{item.isRight ? 'answer-correct' : 'answer-error'}}"
            style="color:{{isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 28}}rpx;"
            >{{item.userAnswer}}</view
          >
        <view wx:if="{{item.questionType == 'completion'}}" class="short-answer-mr" style="display: {{item.questionType == 'completion' ? 'flex' : 'block'}}">
          <text class="short-answer-fz {{item.isRight ? 'answer-correct' : 'answer-error'}}" style="font-size:{{sliderValue || 32}}rpx;">您的答案:</text>
          <view class="short-answer-fz {{item.isRight ? 'answer-correct' : 'answer-error'}}" style="color:{{isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 28}}rpx;">{{item.userAnswer}}</view>
        </view>
        <view class="short-answer-mr" style="margin-bottom: 50rpx">
          <text
            class="short-answer-fz;"
            style="color:{{isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;"
            >答案解析:</text
          >
          <rich-text
            nodes="{{item.analysisCon}}"
            style="font-size:{{sliderValue || 28}}rpx;;color:{{isNight ? '#fff' : '#000'}}"
          ></rich-text>
          <text class="short-answer-fz;" style="color:{{isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;">答案解析:</text>
          <rich-text nodes="{{item.analysisCon}}" style="font-size:{{sliderValue || 28}}rpx;;color:{{isNight ? '#fff' : '#000'}}"></rich-text>
        </view>
      </view>
    </swiper-item>
    <swiper-item wx:if="{{noData}}">
      <view class="noData">
        <t-empty icon="folder-open" description="暂无数据" />
        <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
        <empty />
      </view>
    </swiper-item>
  </swiper>
</view>
</view>
packageBookService/pages/bookServices/examination/questionList/index.wxss
@@ -193,6 +193,7 @@
.textarea-center {
  display: flex;
  justify-content: center;
  margin-bottom: 30rpx;
}
.input-night-color {
packageBookService/pages/bookServices/examination/questionOptions/index.wxss
@@ -38,7 +38,7 @@
.popup-block {
  width: 100vw;
  height: 700rpx;
  padding-bottom: 50rpx;
  padding-bottom: 100rpx;
  background: #fff;
  border-top-left-radius: 16rpx;
  border-top-right-radius: 16rpx;
@@ -60,7 +60,8 @@
.question-card-list {
  padding: 0 20rpx;
  height: 100%;
  margin-bottom: 100rpx;
  height: 500rpx;
  overflow-y: auto;
}
@@ -118,7 +119,7 @@
}
.question-list {
  margin: 8rpx 0 66rpx 0;
  margin: 8rpx 0;
  display: flex;
  flex-wrap: wrap;
}
@@ -128,7 +129,7 @@
  justify-content: center;
  align-items: center;
  margin: 38rpx 20rpx 0 0;
  width: 126rpx;
  width: 120rpx;
  height: 62rpx;
  font-size: 34rpx;
}
packageBookService/pages/bookServices/list/index.json
@@ -7,7 +7,8 @@
    "t-search": "tdesign-miniprogram/search/search",
    "t-pull-down-refresh": "tdesign-miniprogram/pull-down-refresh/pull-down-refresh",
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  },
  "navigationStyle": "custom",
  "disableScroll": true
packageBookService/pages/bookServices/list/index.wxml
@@ -130,7 +130,8 @@
            <view class="book-author book-color">{{item.author}}</view>
          </view>
          <view wx:if="{{noData}}" class="noData">
            <t-empty icon="folder-open" description="暂无数据" />
            <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
            <empty />
          </view>
        </view>
      </view>
packageDomain/pages/resourceDetails/myAudio/index.json
@@ -16,6 +16,7 @@
    "t-slider": "tdesign-miniprogram/slider/slider",
    "t-dropdown-menu": "tdesign-miniprogram/dropdown-menu/dropdown-menu",
    "t-dropdown-item": "tdesign-miniprogram/dropdown-item/dropdown-item",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
packageDomain/pages/resourceDetails/myAudio/index.wxml
@@ -94,7 +94,8 @@
        <view class="wrapper">
          <t-collapse value="{{activeValues}}" bind:change="handleChange">
            <view wx:if="{{noteList.length == 0}}" class="noData">
              <t-empty icon="folder-open" description="暂无数据" />
              <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
              <empty />
            </view>
            <t-collapse-panel value="{{item.id}}" expandIcon wx:for="{{noteList}}">
packageDomain/pages/resourceDetails/myVideo/index.js
@@ -42,7 +42,9 @@
    loading: false,
    hidden: true,
    videoError: false,
    videoLoading: false
    videoLoading: false,
    progress: 0,
    playerList: []
  },
  // 格式化笔记时间
  convertTimestamp(timestamp) {
@@ -79,7 +81,7 @@
      formPath: options.formPath,
      flag: false
    })
    console.log(this.data.storeInfo,13)
    console.log(this.data.storeInfo, 13)
    if (options.parentName !== "教学资源" && options.parentName !== "云学习") {
      this.setData({
        parentName: options.parentName,
@@ -117,6 +119,7 @@
      let duration = this.data.pauseTime - this.data.startTime
      this.count(duration)
    }
    this.setPlayerList()
  },
  /**
@@ -130,6 +133,7 @@
      let duration = this.data.pauseTime - this.data.startTime
      this.count(duration)
    }
    this.setPlayerList()
  },
  count(timeStr) {
    const data = {
@@ -185,7 +189,6 @@
  },
  showDialog(e) {
    this.setData({
      dialogKey: true,
      textvalue: '',
@@ -235,7 +238,6 @@
    app.MG.store.getProductDetail(query).then(res => {
      console.log(this.data.productLinkPath, 345)
      res.datas.cmsDatas[0].datas.forEach((item) => {
        console.log(item, 222)
        if (item.selectType === "video" || item.learnSelectType === "video") {
          this.data.threeLeveData.push(item)
          this.setData({
@@ -243,7 +245,6 @@
          })
          this.data.threeLeveData.forEach((items, index) => { // 修改此处添加index参数
            if (this.data.productLinkPath == items.productLinkPath) {
              console.log(items, 5678)
              if (this.data.formPath === "jsek_cloudLearning") {
                let file
                items.protectedFile ? file = items.protectedFile : file = items.freeFile
@@ -269,25 +270,26 @@
        loading: false,
        hidden: false
      })
      console.log('地址', this.data.showData);
    })
  },
  onVideo(e) {
    this.setPlayerList()
    const item = e.currentTarget.dataset.item
    this.setData({
      videoLoaidng: true,
      selectedId: e.currentTarget.dataset.index,
      activeId: item.id,
      // showData: '',
      titleName: item.name
    })
    if (item.selectType == "video" || item.learnSelectType === "video") {
      if (this.data.formPath === "jsek_cloudLearning") {
        let file
        item.protectedFile ? file = item.protectedFile : file = item.freeFile
        item.protectedFile || item.file ? file = item.protectedFile || item.file : file = item.freeFile
        this.setData({
          showData: app.config.requestCtx + '/file/api/ApiDownloadForAuthorize?md5=' + file + '&token=' + wx.getStorageSync(app.config.tokenKey)
        })
        console.log(this.data.showData);
      } else {
        this.setData({
          showData: item.file ? app.config.requestCtx + '/file/api/ApiDownload?md5=' + item.file : app.config.requestCtx + '/file/api/ApiDownload?md5=' + item.freeFile,
@@ -295,6 +297,54 @@
      }
    }
  },
  timeUpdate(e) {
    let {
      currentTime,
      duration
    } = e.detail
    this.setData({
      progress: ((currentTime / duration) * 100).toFixed(2)
    })
  },
  //获取视频学习
  getPlayerList() {
    app.MG.identity
      .getUserKey({
        domain: 'videoPlayer',
        keys: [this.data.bookId]
      })
      .then((res) => {
        if (res.length > 0) {
          this.setData({
            playerList: JSON.parse(res[0].value)
          })
        }
      })
  },
  setPlayerList() {
    let that = this
    if (that.data.progress > 0) {
      let index = that.data.playerList.findIndex((itemData) => itemData.cmsItemId == that.data.activeId)
      if (index > -1) {
        that.data.playerList.splice(index, 1)
      }
      that.data.playerList.push({
        cmsItemId: that.data.activeId,
        progress: that.data.progress
      })
      app.MG.identity
        .setUserKey({
          setKeyRequests: [{
            domain: 'videoPlayer',
            key: that.data.bookId,
            value: JSON.stringify(that.data.playerList)
          }]
        })
        .then((res) => {})
    }
  },
  getProductUserSubmitTopicGet() {
    app.MG.ugc.getProductUserSubmitTopic({
@@ -351,8 +401,6 @@
    } else if (this.data.submitType == 'edit') {
      this.updateNote()
    }
    console.log(this.data.textvalue);
    console.log(this.data.titleName);
    this.setData({
      dialogKey: false
    });
@@ -405,7 +453,6 @@
        // item.deleteHover = false
        item.createDate = this.convertTimestamp(item.createDate)
      })
      console.log(res, 'res');
      this.setData({
        "pageCount.total": res.totalSize,
        noteList: res.datas,
@@ -546,7 +593,6 @@
    console.log(e);
  },
  videoError: function (e) {
    console.log('视频加载失败', e);
    this.setData({
      videoError: true
    });
packageDomain/pages/resourceDetails/myVideo/index.json
@@ -14,6 +14,7 @@
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-popup": "tdesign-miniprogram/popup/popup",
    "t-empty": "tdesign-miniprogram/empty/empty",
    "t-skeleton": "tdesign-miniprogram/skeleton/skeleton"
    "t-skeleton": "tdesign-miniprogram/skeleton/skeleton",
    "empty": "/components/empty/index"
  }
}
packageDomain/pages/resourceDetails/myVideo/index.wxml
@@ -16,7 +16,7 @@
    <view wx:if="{{videoLoaidng}}" class="video-loading">
      <t-loading theme="circular" size="60rpx" class="wrapper" loading="{{videoLoaidng}}" />
    </view>
    <video show-center-play-btn="{{false}}" src="{{showData}}" bindloadedmetadata="loadedmetadata"></video>
    <video show-center-play-btn="{{false}}" src="{{showData}}" bindloadedmetadata="loadedmetadata" bindtimeupdate="timeUpdate"></video>
  </view>
  <view wx:if="{{!videoChange}}" class="videoSubsidiaryBox">
@@ -42,7 +42,8 @@
      <t-tab-panel label="笔记" value="1" style="{{tabPanelstyle}}">
        <view class="wrapper">
          <view wx:if="{{!noteList.length}}" class="noData">
            <t-empty icon="folder-open" description="暂无数据" />
            <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
            <empty />
          </view>
          <t-collapse value="{{activeValues}}" bind:change="handleChange">
            <t-collapse-panel value="{{item.id}}" expandIcon wx:for="{{noteList}}" wx:key="id">
packageDomain/pages/sampleBookList/applicationForm/index.json
@@ -6,7 +6,8 @@
    "t-input": "tdesign-miniprogram/input/input",
    "t-cascader": "tdesign-miniprogram/cascader/cascader",
    "t-swipe-cell": "tdesign-miniprogram/swipe-cell/swipe-cell",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  },
  "disableScroll": true
}
packageDomain/pages/sampleBookList/applicationForm/index.wxml
@@ -66,7 +66,8 @@
            </view>
          </view>
          <view wx:if="{{bookList.length == 0}}" class="empyt">
            <t-empty icon="folder-open" description="暂无数据" />
            <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
            <empty />
          </view>
        </view>
      </view>
packageDomain/pages/sampleBookList/index.json
@@ -12,6 +12,7 @@
    "t-checkbox": "tdesign-miniprogram/checkbox/checkbox",
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-pull-down-refresh": "tdesign-miniprogram/pull-down-refresh/pull-down-refresh",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
packageDomain/pages/sampleBookList/index.wxml
@@ -151,7 +151,8 @@
            </view>
          </view>
          <view wx:if="{{bookList.length == 0}}" class="empyt">
            <t-empty icon="folder-open" description="暂无数据" />
            <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
            <empty />
          </view>
          <view class="bottom-loading" wx:if="{{bottomLoading}}">
            <t-loading
packageDomain/pages/teacherCertification/index.js
@@ -142,8 +142,9 @@
      })
      this.newGetTeacherInfo()
    })
  },
  //获取教师状态
  newGetTeacherInfo() {
    let that = this;
packagePersonal/pages/activateProduct/index.json
@@ -5,6 +5,7 @@
    "t-pull-down-refresh": "tdesign-miniprogram/pull-down-refresh/pull-down-refresh",
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-image": "tdesign-miniprogram/image/image",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
packagePersonal/pages/activateProduct/index.wxml
@@ -54,7 +54,8 @@
            </view>
          </view>
          <view wx:if="{{list.length == 0}}" class="empyt">
            <t-empty icon="folder-open" description="暂无数据" />
            <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
            <empty />
          </view>
          <view class="bottom-loading" wx:if="{{bottomLoading}}">
            <t-loading theme="circular" size="40rpx" text="加载中..." class="wrapper" />
packagePersonal/pages/downloads/index.json
@@ -5,6 +5,7 @@
    "t-image": "tdesign-miniprogram/image/image",
    "t-pull-down-refresh": "tdesign-miniprogram/pull-down-refresh/pull-down-refresh",
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
packagePersonal/pages/downloads/index.wxml
@@ -27,7 +27,8 @@
      </view>
    </view>
    <view wx:if="{{list.length == 0 && !skeletonLoding}}" class="empyt">
      <t-empty icon="folder-open" description="暂无数据" />
      <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
      <empty />
    </view>
    <view class="bottom-loading" wx:if="{{bottomLoading}}">
      <t-loading theme="circular" size="40rpx" text="加载中..." class="wrapper" />
packagePersonal/pages/feedBack/index.json
@@ -7,6 +7,7 @@
    "t-pull-down-refresh": "tdesign-miniprogram/pull-down-refresh/pull-down-refresh",
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-image": "tdesign-miniprogram/image/image",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
packagePersonal/pages/feedBack/index.wxml
@@ -42,7 +42,8 @@
        </view>
      </view>
      <view wx:if="{{list.length == 0 && !skeletonLoding}}" class="empyt">
        <t-empty icon="folder-open" description="暂无数据" />
        <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
        <empty />
      </view>
      <view class="bottom-loading" wx:if="{{bottomLoading}}">
        <t-loading theme="circular" size="40rpx" text="加载中..." class="wrapper" />
packagePersonal/pages/myCollection/index.js
@@ -184,8 +184,16 @@
    const {
      book
    } = e.currentTarget.dataset;
    let url = ''
    if (this.data.activeName == 'FavoriteBookCity') {
      url = `/packageBookService/pages/bookServices/detail/index?id=${book.id}&name=${book.name}`
    } else if (this.data.activeName == 'Favoriteclass') {
      url = `/pages/digitalCourses/digitalCoursesDetails/index?id=${book.id}`
    } else if (this.data.activeName == 'FavoriteTextBooks') {
      url = `/pages/digitalTextbooks/digitalTextbooksDetails/index?id=${book.id}`
    }
    wx.navigateTo({
      url: `/packageBookService/pages/bookServices/detail/index?id=${book.id}&name=${book.name}`,
      url: url,
    });
  },
packagePersonal/pages/myCollection/index.json
@@ -7,6 +7,7 @@
    "t-pull-down-refresh": "tdesign-miniprogram/pull-down-refresh/pull-down-refresh",
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-image": "tdesign-miniprogram/image/image",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
packagePersonal/pages/myCollection/index.wxml
@@ -10,8 +10,8 @@
        </view>
      </view>
      <view class="list" wx:if="{{list.length > 0 && !skeletonLoding}}">
        <view wx:if="{{activeName == 'FavoriteBookCity'}}" class="listBox">
          <view class="content-item" wx:for="{{list}}" wx:for-item="item" wx:for-index="index" wx:key="index">
        <view class="listBox">
          <view class="{{activeName == 'Favoriteclass' ? 'class--tem' : 'content-item'}}" wx:for="{{list}}" wx:for-item="item" wx:for-index="index" wx:key="index">
            <view class="icon" data-book="{{item}}" bindtap="goBookDetails">
              <image src="{{item.icon}}" mode="aspectFit" class="img" wx:if="{{item.icon}}" />
              <image src="/static/images/default-book-img.png" mode="aspectFit" class="img" wx:else />
@@ -36,7 +36,8 @@
            </view> -->
      </view>
      <view wx:if="{{list.length == 0 && !skeletonLoding}}" class="empyt">
        <t-empty icon="folder-open" description="暂无数据" />
        <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
        <empty />
      </view>
      <view class="bottom-loading" wx:if="{{bottomLoading}}">
        <t-loading theme="circular" size="40rpx" text="加载中..." class="wrapper" />
packagePersonal/pages/myCollection/index.wxss
@@ -37,7 +37,7 @@
}
.t-tabs__nav :nth-child(1) {
  border-radius: 30rpx 30rpx 0 0rpx;
  border-radius: 30rpx 30rpx 0 0rpx !important;
}
.t-tabs__nav :nth-child(2) {
@@ -64,6 +64,10 @@
.t-tabs__item--active+.t-tabs__item {
  border-radius: 0 30rpx 0 30rpx !important;
}
.t-tabs__item--active+.t-tabs__item+.t-tabs__item {
  border-radius: 30rpx 30rpx 0rpx 0rpx !important;
}
.refresh-container {
@@ -98,13 +102,28 @@
  position: relative;
}
.class--tem {
  width: calc(100%/2 - 40rpx);
  margin-bottom: 30rpx;
  margin: 0 20rpx;
  align-self: stretch;
  position: relative;
}
.class--tem .icon {
  height: 200rpx;
  width: 100%;
  box-shadow: 0px 0px 20rpx 2px rgba(0, 0, 0, 0.16);
}
.content-item .icon {
  height: 300rpx;
  width: 210rpx;
  box-shadow: 0px 0px 20rpx 2px rgba(0, 0, 0, 0.16);
}
.content-item .icon .img {
.content-item .icon .img,
.class--tem .icon .img {
  width: 100%;
  height: 100%;
  object-fit: contain;
packagePersonal/pages/myMassage/index.json
@@ -5,6 +5,7 @@
    "t-image": "tdesign-miniprogram/image/image",
    "t-pull-down-refresh": "tdesign-miniprogram/pull-down-refresh/pull-down-refresh",
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
packagePersonal/pages/myMassage/index.wxml
@@ -22,7 +22,8 @@
      </view>
    </view>
    <view wx:if="{{list.length == 0 && !skeletonLoding}}" class="empyt">
      <t-empty icon="folder-open" description="暂无数据" />
      <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
      <empty />
    </view>
    <view class="bottom-loading" wx:if="{{bottomLoading}}">
      <t-loading theme="circular" size="40rpx" text="加载中..." class="wrapper" />
packagePersonal/pages/myOrder/index.json
@@ -9,6 +9,7 @@
    "t-pull-down-refresh": "tdesign-miniprogram/pull-down-refresh/pull-down-refresh",
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-image": "tdesign-miniprogram/image/image",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
packagePersonal/pages/myOrder/index.wxml
@@ -59,7 +59,8 @@
        </view>
      </view>
      <view wx:if="{{list.length == 0}}" class="empyt">
        <t-empty icon="folder-open" description="暂无数据" />
        <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
        <empty />
      </view>
      <view class="bottom-loading" wx:if="{{bottomLoading}}">
        <t-loading theme="circular" size="40rpx" text="加载中..." class="wrapper" />
packagePersonal/pages/sampleBooks/index.json
@@ -7,6 +7,7 @@
    "t-pull-down-refresh": "tdesign-miniprogram/pull-down-refresh/pull-down-refresh",
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-image": "tdesign-miniprogram/image/image",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
packagePersonal/pages/sampleBooks/index.wxml
@@ -59,7 +59,8 @@
        </view>
      </view>
      <view wx:if="{{list.length == 0 && !skeletonLoding}}" class="empyt">
        <t-empty icon="folder-open" description="暂无数据" />
        <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
        <empty />
      </view>
      <view class="bottom-loading" wx:if="{{bottomLoading}}">
        <t-loading theme="circular" size="40rpx" text="加载中..." class="wrapper" />
pages/bibliographyList/index.json
@@ -10,7 +10,8 @@
    "t-button": "tdesign-miniprogram/button/button",
    "t-input": "tdesign-miniprogram/input/input",
    "t-dialog": "tdesign-miniprogram/dialog/dialog",
    "t-toast": "tdesign-miniprogram/toast/toast"
    "t-toast": "tdesign-miniprogram/toast/toast",
    "empty": "/components/empty/index"
  },
  "navigationStyle": "custom",
  "backgroundTextStyle": "dark"
pages/bibliographyList/index.wxml
@@ -28,7 +28,8 @@
      <t-tab-panel label="高等教育({{higherTotal}})" value="0">
        <view wx:if="{{higherList.length <= 0}}" class="noDataBox">
          <t-empty icon="folder-open" description="暂无数据" />
          <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
          <empty />
        </view>
        <scroll-view scroll-y="{{true}}" wx:else class="scroll-box" lower-threshold="{{300}}" refresher-default-style="none" refresher-triggered="{{triggered}}" bindscrolltolower="onReachBottom">
          <view class="outsideHigherBox">
@@ -54,7 +55,8 @@
      </t-tab-panel>
      <t-tab-panel label="职业教育({{vocationalTotal}})" value="1">
        <view wx:if="{{vocationalList.length <= 0}}" class="noDataBox">
          <t-empty icon="folder-open" description="暂无数据" />
          <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
          <empty />
        </view>
        <scroll-view scroll-y="{{true}}" wx:else class="scroll-box" lower-threshold="{{200}}" refresher-default-style="none" refresher-triggered="{{triggered}}" bindscrolltolower="onReachBottom">
          <view class="outsideHigherBox">
@@ -80,7 +82,8 @@
      </t-tab-panel>
      <t-tab-panel label="教师教育({{teacherTotal}})" value="2">
        <view wx:if="{{teacherList.length <= 0}}" class="noDataBox">
          <t-empty icon="folder-open" description="暂无数据" />
          <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
          <empty />
        </view>
        <scroll-view scroll-y="{{true}}" wx:else class="scroll-box" lower-threshold="{{200}}" refresher-default-style="none" refresher-triggered="{{triggered}}" bindscrolltolower="onReachBottom">
          <view class="outsideHigherBox">
pages/bookExhibitionList/index.json
@@ -8,7 +8,8 @@
    "t-toast": "tdesign-miniprogram/toast/toast",
    "t-icon": "tdesign-miniprogram/icon/icon",
    "t-empty": "tdesign-miniprogram/empty/empty",
    "t-loading": "tdesign-miniprogram/loading/loading"
    "t-loading": "tdesign-miniprogram/loading/loading",
    "empty": "/components/empty/index"
  },
  "onReachBottomDistance": 100,
  "navigationStyle": "custom",
pages/bookExhibitionList/index.wxml
@@ -81,7 +81,8 @@
    >
      <view class="outside">
        <view wx:if="{{!bookExhibitionList.length }}" class="noData">
          <t-empty icon="folder-open" description="暂无数据" />
          <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
          <empty />
        </view>
        <view
          class="contentBox"
pages/cart/index.json
@@ -8,7 +8,8 @@
    "t-toast": "tdesign-miniprogram/toast/toast",
    "t-empty": "tdesign-miniprogram/empty/empty",
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-image": "tdesign-miniprogram/image/image"
    "t-image": "tdesign-miniprogram/image/image",
    "empty": "/components/empty/index"
  },
  "enablePullDownRefresh": true,
  "onReachBottomDistance": 100,
pages/cart/index.wxml
@@ -12,7 +12,8 @@
    <view>
      <!-- <checkbox-group bindchange="HandelItemChange"> -->
      <view wx:if="{{shoppingCartData.length <= 0}}" class="noDataBox">
        <t-empty icon="folder-open" description="暂无数据" font-size="80" />
        <!-- <t-empty icon="folder-open" description="暂无数据" font-size="80" /> -->
        <empty />
      </view>
      <!-- <button bind:tap="onLogin"> 去登录</button> -->
      <t-swipe-cell
pages/digitalCourses/digitalCoursesDetails/components/note/note.json
@@ -12,6 +12,7 @@
    "t-popup": "tdesign-miniprogram/popup/popup",
    "t-icon": "tdesign-miniprogram/icon/icon",
    "t-empty": "tdesign-miniprogram/empty/empty",
    "t-skeleton": "tdesign-miniprogram/skeleton/skeleton"
    "t-skeleton": "tdesign-miniprogram/skeleton/skeleton",
    "empty": "/components/empty/index"
  }
}
pages/digitalCourses/digitalCoursesDetails/components/note/note.wxml
@@ -55,7 +55,8 @@
      </t-collapse-panel>
    </t-collapse>
    <view wx:if="{{noList}}" class="noData">
      <t-empty icon="folder-open" description="暂无数据" />
      <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
      <empty />
    </view>
  </view>
  <view class="bottom-box" wx:if="{{noteList.length}}">
pages/digitalCourses/digitalCoursesDetails/components/question/question.json
@@ -12,6 +12,7 @@
    "t-popup": "tdesign-miniprogram/popup/popup",
    "t-icon": "tdesign-miniprogram/icon/icon",
    "t-empty": "tdesign-miniprogram/empty/empty",
    "t-skeleton": "tdesign-miniprogram/skeleton/skeleton"
    "t-skeleton": "tdesign-miniprogram/skeleton/skeleton",
    "empty": "/components/empty/index"
  }
}
pages/digitalCourses/digitalCoursesDetails/components/question/question.wxml
@@ -24,7 +24,8 @@
      </t-collapse-panel>
    </t-collapse>
    <view wx:if="{{noList}}" class="noData">
      <t-empty icon="folder-open" description="暂无数据" />
      <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
      <empty />
    </view>
  </view>
  <view class="bottom-box" wx:if="{{onlineQuestionsList.length}}">
pages/digitalCourses/digitalCoursesDetails/components/testTree/index.json
@@ -8,6 +8,7 @@
    "t-button": "tdesign-miniprogram/button/button",
    "t-checkbox": "tdesign-miniprogram/checkbox/checkbox",
    "tree": "/packageBookService/pages/bookServices/detail/components/testTree/index",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
pages/digitalCourses/digitalCoursesDetails/components/tree/index.js
@@ -57,6 +57,7 @@
    // 跳转音视频播放器
    goPlayer(e) {
      // 检查登录状态
      console.log(123)
      const token = wx.getStorageSync(app.config.tokenKey);
      if (token) {
        const item = e.currentTarget.dataset.item;
pages/digitalCourses/digitalCoursesDetails/components/tree/index.json
@@ -8,6 +8,7 @@
    "t-button": "tdesign-miniprogram/button/button",
    "t-checkbox": "tdesign-miniprogram/checkbox/checkbox",
    "tree": "/packageBookService/pages/bookServices/detail/components/tree/index",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
pages/digitalCourses/digitalCoursesDetails/components/tree/index.wxml
@@ -14,6 +14,7 @@
              </view>
              <!-- 名称 -->
              <text class="name" style="width: 100%">{{item.name || '-'}}</text>
              <text>{{item.progress ? item.progress : 0}}%</text>
            </view>
            <view>
              <!-- 云学习试看图标 -->
@@ -46,7 +47,8 @@
                  <image wx:else src="/static/images/bookService/detail/word.png" mode="" />
                </view>
                <!-- 名称 -->
                <text class="name" style="width:540rpx">{{citem.name || '-'}}</text>
                <text class="name" style="width:440rpx">{{citem.name || '-'}}</text>
                <text>{{citem.progress ? citem.progress : 0}}%</text>
              </view>
              <view>
                <!-- 云学习试看图标 -->
@@ -60,7 +62,8 @@
      </view>
      <!-- 暂无数据 -->
      <view wx:if="{{!item.children || !item.children.length}}" class="noData">
        <t-empty icon="folder-open" description="暂无数据" />
        <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
        <empty />
      </view>
      <view class="listItems" wx:if="{{children.length <= 0 && !loading}}">
        暂无数据
pages/digitalCourses/digitalCoursesDetails/index.js
@@ -2,6 +2,9 @@
const app = getApp()
import moment from 'moment'
import Toast from "tdesign-miniprogram/toast";
import {
  loginInfo
} from '../../../assets/js/login';
Page({
  /**
@@ -62,6 +65,17 @@
    notePage: 1,
    noteLimit: 6,
    noteTotalCount: 0,
    images: [],
    visible: false,
    showIndex: false,
    closeBtn: false,
    deleteBtn: false,
    bookId: '',
    playerList: [],
    worksInfo: [],
    isCertificate: {},
    isLearn: false,
    isTest: false,
  },
  formatDate(dateString) {
    if (!dateString) {
@@ -113,9 +127,12 @@
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    console.log(options);
    this.setData({
      bookId: options.id
    })
    this.digitalCoursesDetailsGet(options.id)
    this.getPlayerList()
    this.getResource()
  },
  /**
@@ -165,6 +182,22 @@
   */
  onShareAppMessage() {
  },
  //获取视频学习
  getPlayerList() {
    app.MG.identity
      .getUserKey({
        domain: 'videoPlayer',
        keys: [this.data.bookId]
      })
      .then((res) => {
        if (res.length > 0) {
          this.setData({
            playerList: JSON.parse(res[0].value)
          })
          console.log(this.data.playerList, "playerList")
        }
      })
  },
  digitalCoursesDetailsGet(digitalTextId) {
    let query = {
@@ -310,17 +343,27 @@
      }
    }
    app.MG.store.getProductDetail(query).then((res) => {
      console.log(res.datas, 1111)
      let test = []
      let learn = []
      let learnItemList = []
      if (res.datas.cmsDatas[0].datas.length > 0) {
        res.datas.cmsDatas[0].datas.forEach((item) => {
          if (item.type == 'questionBankFolder' || item.type == 'questionBankItem') {
            test.push(item)
          } else if (item.type != "resourceItem") {
            this.data.playerList.forEach(pItem => {
              if (pItem.cmsItemId == item.id) {
                item.progress = pItem.progress
              }
            })
            learn.push(item)
          }
          if (item.type == 'productItem') {
            learnItemList.push(item)
          }
        })
        if (this.data.selectActive === 'learn') {
          let list = []
          // 测试 6位// 正式 5位//  测试调用传20,内部7  正式调用传17 内部传6
@@ -357,6 +400,24 @@
              openTeachids: result,
            });
          }
        }
        //判断资源是否学习完成
        if (learnItemList.length == playerList.value.length) {
          let data = playerList.value.filter((ditem) => ditem.progress != '100')
          if (data) {
            this.setData({
              isLearn: false,
            });
          } else {
            this.setData({
              isLearn: true,
            });
          }
        } else {
          this.setData({
            isLearn: false,
          });
        }
      }
    })
@@ -584,7 +645,50 @@
    });
  },
  //申请证书
  //获取字段
  getType() {
    app.MG.resource.getCmsTypeByRefCode({
      refCodes: ['jsek_courseCertificate']
    }).then((res) => {
      this.setData({
        worksInfo: res[0].cmsTypeLinks[0].children,
      })
    })
  },
  getCertificateList() {
    const data = {
      start: 0,
      size: 9999,
      topicIdOrRefCode: 'applyCourseCertificate',
      appRefCode: config.appRefCode,
      sort: {
        type: 'Desc',
        field: 'CreateDate'
      }
    }
    app.MG.ugc.getTopicMessageList(data).then((res) => {
      res.datas.map((item) => {
        item.content = JSON.parse(item.content)
        if (item.content.id == this.data.bookId) {
          this.setData({
            isCertificate: item
          })
        }
      })
    })
  },
  onCertificate() {
    if (!this.data.isBuy) {
      wx.showToast({
        title: "请先购买,体验完整服务",
        icon: "none",
        duration: 1000,
      });
    }
    var page = getCurrentPages().pop(); // 获取当前页面实例
    page.setData({
      // 动态设置禁止滚动的样式
@@ -666,4 +770,29 @@
      }
    }
  },
  //证书查看
  onClick1() {
    this.setData({
      images: ['/static/images/certificate/cbzs.jpg'],
      showIndex: true,
      visible: true,
    })
  },
  onClick2() {
    this.setData({
      images: ['/static/images/certificate/rzzs.jpg'],
      showIndex: true,
      visible: true,
    })
  },
  onClose(e) {
    const {
      trigger
    } = e.detail;
    console.log(trigger);
    this.setData({
      visible: false,
    });
  },
})
pages/digitalCourses/digitalCoursesDetails/index.json
@@ -12,6 +12,8 @@
    "tree": "/pages/digitalCourses/digitalCoursesDetails/components/tree/index",
    "testTree": "/pages/digitalCourses/digitalCoursesDetails/components/testTree/index",
    "note": "/pages/digitalCourses/digitalCoursesDetails/components/note/note",
    "question": "/pages/digitalCourses/digitalCoursesDetails/components/question/question"
    "question": "/pages/digitalCourses/digitalCoursesDetails/components/question/question",
    "t-image-viewer": "tdesign-miniprogram/image-viewer/image-viewer",
    "empty": "/components/empty/index"
  }
}
pages/digitalCourses/digitalCoursesDetails/index.wxml
@@ -56,7 +56,8 @@
          <view class="course-content">
            <rich-text wx:if="{{digitalsData.content}}" nodes="{{digitalsData.content}}"></rich-text>
            <view wx:else="" class="noDataBox">
              <t-empty icon="folder-open" description="暂无数据" font-size="80" />
              <!-- <t-empty icon="folder-open" description="暂无数据" font-size="80" /> -->
              <empty />
            </view>
          </view>
          <view class="rubricBox">
@@ -91,11 +92,11 @@
          </view>
          <view class="course-content">
            <view class="certificateChart">
              <view class="chart">
                <image src="" mode="" />
              <view class="chart" bind:tap="onClick1">
                <image src="/static/images/certificate/cbzs.jpg" mode="" />
              </view>
              <view class="chart">
                <image src="" mode="" />
              <view class="chart" bind:tap="onClick2">
                <image src="/static/images/certificate/rzzs.jpg" mode="" />
              </view>
            </view>
          </view>
@@ -108,11 +109,11 @@
            </view>
            <view class="list-box">
              <view wx:if="{{selectActive == 'learn'}}">
                <tree id="test-tree" openIds="{{openTeachids}}" bookInfo="{{digitalsData}}" treeList="{{learnList}}" bind:goTest="goTest">
                <tree id="test-tree" openIds="{{openTeachids}}" bookInfo="{{digitalsData}}" treeList="{{learnList}}">
                </tree>
              </view>
              <view wx:if="{{selectActive == 'test'}}">
                <testTree id="tree" openIds="{{openTeachids}}" bookInfo="{{digitalsData}}" tab="{{tab}}" treeList="{{testList}}" bind:goTest="goTest"></testTree>
                <testTree id="tree" openIds="{{openTeachids}}" bookInfo="{{digitalsData}}" tab="{{tab}}" treeList="{{testList}}"></testTree>
              </view>
            </view>
          </view>
@@ -209,4 +210,6 @@
      </view>
    </view>
  </view>
</view>
</view>
<t-image-viewer usingCustomNavbar deleteBtn="{{deleteBtn}}" closeBtn="{{closeBtn}}" showIndex="{{showIndex}}" visible="{{visible}}" images="{{images}}" bind:change="onChange" bind:close="onClose"></t-image-viewer>
pages/digitalCourses/digitalCoursesDetails/index.wxss
@@ -9,6 +9,11 @@
.page-bookService {
  width: 100vw;
  height: 100%;
}
.t-image-viewer {
  --td-image-viewer-top: 0 !important;
}
.outsideContentBox {
pages/digitalCourses/index.js
@@ -184,7 +184,6 @@
      }
    }
    app.MG.store.getProductList(obj).then((res) => {
      console.log(res, '7895')
      res.datas.forEach(item => {
        item.price = item.price.toFixed(2)
      })
@@ -193,21 +192,15 @@
        courseList: res.datas
      })
      console.log(this.data.courseList);
    })
  },
  searchBook() {
    console.log(this.data.searchValue);
    this.getCourseList(this.data.activeItem)
  },
  courseDetail(e) {
    console.log(e);
    const item = e.currentTarget.dataset.item
    setNewView('productId', item.id)
    this.getCourseTypeListList()
    wx.navigateTo({
      url: '/pages/digitalCourses/digitalCoursesDetails/index?id=' + item.id,
    })
pages/digitalCourses/index.json
@@ -4,7 +4,8 @@
    "t-search": "tdesign-miniprogram/search/search",
    "t-empty": "tdesign-miniprogram/empty/empty",
    "t-tabs": "tdesign-miniprogram/tabs/tabs",
    "t-tab-panel": "tdesign-miniprogram/tab-panel/tab-panel"
    "t-tab-panel": "tdesign-miniprogram/tab-panel/tab-panel",
    "empty": "/components/empty/index"
  },
  "navigationStyle": "custom",
  "disableScroll": false
pages/digitalTextbooks/digitalTextbooksDetails/index.json
@@ -6,6 +6,7 @@
    "t-image": "tdesign-miniprogram/image/image",
    "t-toast": "tdesign-miniprogram/toast/toast",
    "t-empty": "tdesign-miniprogram/empty/empty",
    "suggest": "/packageBookService/pages/bookServices/detail/components/suggest/suggest"
    "suggest": "/packageBookService/pages/bookServices/detail/components/suggest/suggest",
    "empty": "/components/empty/index"
  }
}
pages/digitalTextbooks/digitalTextbooksDetails/index.wxml
@@ -76,8 +76,8 @@
              <rich-text nodes="{{digitalsData.content}}"></rich-text>
            </view>
            <view class="noDataBox" wx:else>
              <t-empty icon="folder-open" description="暂无数据" font-size="80" />
              <!-- <t-empty icon="folder-open" description="暂无数据" font-size="80" /> -->
              <empty />
            </view>
          </t-tab-panel>
          <t-tab-panel icon="{{tabValue == 'jsek_cloudLearning' ? learnResourceClickIcon : learnResourceIcon}}" value="jsek_cloudLearning" label="证书信息" style="{{tabPanelstyle}}">
@@ -100,8 +100,8 @@
            <view class="noDataBox">
              <t-empty icon="folder-open" description="暂无数据" font-size="80" />
              <!-- <t-empty icon="folder-open" description="暂无数据" font-size="80" /> -->
              <empty />
            </view>
          </t-tab-panel>
          <t-tab-panel icon="{{tabValue == 'jsek_teachingResources' ? teachResourcesClickIcon : teachResourcesIcon}}" value="jsek_teachingResources" label="作者信息" style="{{tabPanelstyle}}">
@@ -115,7 +115,8 @@
              <rich-text nodes="{{digitalsData.authorIntroduction}}"></rich-text>
            </view>
            <view class="noDataBox" wx:else>
              <t-empty icon="folder-open" description="暂无数据" font-size="80" />
              <!-- <t-empty icon="folder-open" description="暂无数据" font-size="80" /> -->
              <empty />
            </view>
          </t-tab-panel>
          <t-tab-panel icon="{{tabValue == 'catalogue' ? catalogueClickIcon : catalogue}}" value="catalogue" label="目录" style="{{tabPanelstyle}}">
@@ -130,8 +131,8 @@
              <rich-text nodes="{{digitalsData.catalogue}}"></rich-text>
            </view>
            <view class="noDataBox" wx:else>
              <t-empty icon="folder-open" description="暂无数据" font-size="80" />
              <!-- <t-empty icon="folder-open" description="暂无数据" font-size="80" /> -->
              <empty />
            </view>
          </t-tab-panel>
          <t-tab-panel icon="{{tabValue == 'questionBank' ? testResourceClickIocn : testResourceIocn}}" value="questionBank" label="相关教材" style="{{tabPanelstyle}}">
@@ -142,7 +143,8 @@
              <view class="basic"> 相关教材</view>
            </view>
            <view class="noDataBox" wx:if="{{relatedBookData.length <= 0}}">
              <t-empty icon="folder-open" description="暂无数据" font-size="80" />
              <!-- <t-empty icon="folder-open" description="暂无数据" font-size="80" /> -->
              <empty />
            </view>
            <view class="correlation" wx:else>
              <view style="margin-bottom: 30rpx;" wx:for="{{relatedBookData}}" wx:key="index" wx:for-item="item" wx:for-index="index" data-item="{{item}}" bind:tap="onCorrelationBook">
@@ -182,7 +184,7 @@
      </view>
      <view class="shopCarColor" bind:tap="addBookShopcCar" wx:if="{{!isBuy}}">加入购物车</view>
      <view class="buyColor" bind:tap="buyBtn" wx:if="{{!isBuy && digitalsData.price != 0}}">立即购买</view>
      <view class="buyColor" bind:tap="buyBtn" wx:if="{{!isBuy && digitalsData.price == 0}} ">免费领取</view>
      <view class="buyColor" bind:tap="buyBtn" wx:if="{{!isBuy && digitalsData.price == 0.00}}">免费领取</view>
      <view class="{{!isBuy ? 'buyColor' :'reading'}}" bind:tap="goRead" wx:if="{{isBuy}}">
        立即阅读
      </view>
pages/digitalTextbooks/index.json
@@ -4,7 +4,8 @@
    "t-search": "tdesign-miniprogram/search/search",
    "t-empty": "tdesign-miniprogram/empty/empty",
    "t-tabs": "tdesign-miniprogram/tabs/tabs",
    "t-tab-panel": "tdesign-miniprogram/tab-panel/tab-panel"
    "t-tab-panel": "tdesign-miniprogram/tab-panel/tab-panel",
    "empty": "/components/empty/index"
  },
  "navigationStyle": "custom",
  "disableScroll": false
pages/digitalTextbooks/index.wxml
@@ -49,7 +49,8 @@
            </view>
            <view wx:if="{{!digitalTextbooksData.length }}" class="noData">
              <t-empty icon="folder-open" description="暂无数据" />
              <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
              <empty />
            </view>
          </view>
pages/home/home.json
@@ -16,6 +16,7 @@
    "t-tab-panel": "tdesign-miniprogram/tab-panel/tab-panel",
    "t-grid": "tdesign-miniprogram/grid/grid",
    "t-grid-item": "tdesign-miniprogram/grid-item/grid-item",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
pages/home/home.wxml
@@ -97,7 +97,8 @@
            </view>
          </view>
          <view class="empyt" wx:else>
            <t-empty icon="folder-open" description="暂无数据" font-size="80" />
            <!-- <t-empty icon="folder-open" description="暂无数据" font-size="80" /> -->
            <empty />
          </view>
        </view>
        <view class="tabCardPublic iconTwo">
@@ -129,7 +130,8 @@
            </view>
          </view>
          <view class="empyt" wx:else>
            <t-empty icon="folder-open" description="暂无数据" font-size="80" />
            <!-- <t-empty icon="folder-open" description="暂无数据" font-size="80" /> -->
            <empty />
          </view>
        </view>
        <view class="tabCardPublic iconTwo">
@@ -184,7 +186,8 @@
            </view>
          </view>
          <view class="empyt" wx:else>
            <t-empty icon="folder-open" description="暂无数据" font-size="80" />
            <!-- <t-empty icon="folder-open" description="暂无数据" font-size="80" /> -->
            <empty />
          </view>
        </view>
        <view class="tabCardPublic">
pages/index/resourceCover.js
@@ -12,7 +12,8 @@
    cmsId: '',
    productLinkPath: '',
    parentProductLinkPath: '',
    formPath: ''
    formPath: '',
    copyUrl: '',
  },
  /**
@@ -112,6 +113,9 @@
          "/file/api/ApiDownload?md5=" +
          book.freeFile;
        console.log(fileLink, "fileLink");
        this.setData({
          copyUrl: fileLink
        })
        // wx.redirectTo({
        //   url: "/packageBookService/pages/bookServices/webView/index?url=" + fileLink
        // });
@@ -122,6 +126,21 @@
    })
  },
  copyUrl(e) {
    let url = e.currentTarget.dataset.value
    console.log(url)
    // wx.setClipboardData(url)
    wx.setClipboardData({
      data: `${e.currentTarget.dataset.value}`,
      success(res) {
        console.log(res.data) // data
      },
      fail(err) {
        reject(err);
      }
    })
  },
  /**
   * 用户点击右上角分享
   */
pages/index/resourceCover.wxml
@@ -1,3 +1,5 @@
<!--pages/index/resourceCover.wxml-->
<text></text>
<view class="copy" wx:if="{{copyUrl}}">
  点击<text class="text" catchtap="copyUrl" data-value="{{copyUrl}}">复制链接</text>,在浏览器中打开下载
</view>
<web-view wx:if="{{webpageSrc}}" src="{{webpageSrc}}"></web-view>
pages/index/resourceCover.wxss
@@ -1 +1,10 @@
/* pages/index/resourceCover.wxss */
/* pages/index/resourceCover.wxss */
.copy {
  padding: 100rpx 0;
  text-align: center;
}
.text {
  color: #ff6c00;
}
pages/retrievalPage/index.json
@@ -10,7 +10,8 @@
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-image": "tdesign-miniprogram/image/image",
    "t-dialog": "tdesign-miniprogram/dialog/dialog",
    "t-input": "tdesign-miniprogram/input/input"
    "t-input": "tdesign-miniprogram/input/input",
    "empty": "/components/empty/index"
  },
  "navigationBarTitleText": "检索结果",
  "enablePullDownRefresh": true,
pages/retrievalPage/index.wxml
@@ -16,7 +16,8 @@
      <t-tab-panel label="图书({{bookTotal}})" value="0" style="{{tabPanelstyle}}" bind:tap="tabClick">
        <view wx:if="{{bookData.length <= 0}}" class="noDataBox">
          <t-empty icon="folder-open" description="暂无数据" />
          <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
          <empty />
        </view>
        <scroll-view scroll-y="{{true}}" class="scrollViewBox" bindscrolltolower="onScrollToLower">
          <view class="bookDataBox">
@@ -37,7 +38,8 @@
      </t-tab-panel>
      <t-tab-panel label="课程({{courseTotal}})" value="1">
        <view wx:if="{{courseData.length <= 0}}" class="noDataBox">
          <t-empty icon="folder-open" description="暂无数据" />
          <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
          <empty />
        </view>
        <scroll-view scroll-y="{{true}}" class="scrollViewBox" bindscrolltolower="onScrollToLower">
@@ -72,7 +74,8 @@
      </t-tab-panel>
      <t-tab-panel label="数字教材({{digitalTextbooksTotal}})" value="2">
        <view wx:if="{{digitalTextbooksData.length <= 0}}" class="noDataBox">
          <t-empty icon="folder-open" description="暂无数据" />
          <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
          <empty />
        </view>
        <scroll-view scroll-y="{{true}}" class="scrollViewBox" bindscrolltolower="onScrollToLower">
          <view class="bookDataBox">
@@ -93,7 +96,8 @@
      </t-tab-panel>
      <t-tab-panel label="专题({{seminarTotal}})" value="3">
        <view wx:if="{{seminarData.length <= 0}}" class="noDataBox">
          <t-empty icon="folder-open" description="暂无数据" />
          <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
          <empty />
        </view>
        <scroll-view scroll-y="{{true}}" class="scrollViewBox" bindscrolltolower="onScrollToLower">
          <view class="listBox">
@@ -125,7 +129,8 @@
      </t-tab-panel>
      <t-tab-panel label="书目({{bookFairTotal}})" value="4">
        <view wx:if="{{bookFairData.length <= 0 }}" class="noDataBox">
          <t-empty icon="folder-open" description="暂无数据" />
          <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
          <empty />
        </view>
        <scroll-view scroll-y="{{true}}" class="scrollViewBox" bindscrolltolower="onScrollToLower">
@@ -152,7 +157,8 @@
      </t-tab-panel>
      <t-tab-panel label="书展({{biblioClassificationTotal}})" value="5">
        <view wx:if="{{biblioClassificationData.length <= 0}}" class="noDataBox">
          <t-empty icon="folder-open" description="暂无数据" />
          <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
          <empty />
        </view>
        <scroll-view scroll-y="{{true}}" class="scrollViewBox" bindscrolltolower="onScrollToLower">
pages/specialDiscussion/index.json
@@ -4,7 +4,8 @@
    "t-search": "tdesign-miniprogram/search/search",
    "t-empty": "tdesign-miniprogram/empty/empty",
    "t-tabs": "tdesign-miniprogram/tabs/tabs",
    "t-tab-panel": "tdesign-miniprogram/tab-panel/tab-panel"
    "t-tab-panel": "tdesign-miniprogram/tab-panel/tab-panel",
    "empty": "/components/empty/index"
  },
  "navigationStyle": "custom",
  "disableScroll": false
pages/specialDiscussion/index.wxml
@@ -33,7 +33,8 @@
      </view>
    </view>
    <view wx:if="{{specialSubjectList.length <= 0}}" class="noDataBox">
      <t-empty icon="folder-open" description="暂无数据" font-size="80" />
      <!-- <t-empty icon="folder-open" description="暂无数据" font-size="80" /> -->
      <empty />
    </view>
  </view>
  <view wx:else>
@@ -62,7 +63,8 @@
          </view>
        </view>
        <view wx:if="{{specialDiscussionList.length <= 0}}" class="noDataBox">
          <t-empty icon="folder-open" description="暂无数据" font-size="80" />
          <!-- <t-empty icon="folder-open" description="暂无数据" font-size="80" /> -->
          <empty />
        </view>
      </t-tab-panel>
    </t-tabs>
pages/study/index.json
@@ -6,6 +6,7 @@
    "t-back-top": "tdesign-miniprogram/back-top/back-top",
    "t-loading": "tdesign-miniprogram/loading/loading",
    "t-image": "tdesign-miniprogram/image/image",
    "t-empty": "tdesign-miniprogram/empty/empty"
    "t-empty": "tdesign-miniprogram/empty/empty",
    "empty": "/components/empty/index"
  }
}
pages/study/index.wxml
@@ -49,7 +49,8 @@
            </view> -->
      </view>
      <view wx:if="{{list.length == 0}}" class="empyt">
        <t-empty icon="folder-open" description="暂无数据" />
        <!-- <t-empty icon="folder-open" description="暂无数据" /> -->
        <empty />
      </view>
      <view class="bottom-loading" wx:if="{{bottomLoading}}">
        <t-loading theme="circular" size="40rpx" text="加载中..." class="wrapper" />
services/home/home.js
@@ -35,8 +35,8 @@
          text: '专题讨论',
          key: 4,
          icon: '/static/images/home/zhuantitaolun@2x.png',
          url: '/pages/specialDiscussion/index',
          // url: ''
          // url: '/pages/specialDiscussion/index',
          url: ''
        },
        {
          text: '线上书展',
static/images/empty.png