litian
2024-12-24 6df96b3e7a7da1985ee875e84711e9f15c5fbff0
Merge refs/remotes/origin/master into refs/heads/master
12个文件已修改
349 ■■■■ 已修改文件
packageBookService/pages/bookServices/examination/examination.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/psychologyAnswer/questionList/index.wxml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/psychologyAnswer/testdata/index.js 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageCourse/components/baseClass/index.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageCourse/components/teaching/index.wxml 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageCourse/pages/course/detail/index.js 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageCourse/pages/course/detail/index.wxml 250 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageCourse/pages/course/index.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageCourse/pages/course/index.wxss 补丁 | 查看 | 原始文档 | blame | 历史
packageCourse/pages/studentClass/index.js 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageCourse/pages/teachClass/index.wxml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/cart/index.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
packageBookService/pages/bookServices/examination/examination.js
@@ -2460,7 +2460,7 @@
      // 做完了且加入了班级,提交到message
      if (this.data.classList.length && this.data.joinGroup) {
        this.data.classList.forEach(item => {
          if (item.linkProductDto.product.id == this.data.bookId)
          if (item.linkProductDto.product.id == this.data.bookId && item.topicId)
            this.newTopicMessage(item.topicId)
        })
        this.setinteractionInfo()
packageBookService/pages/psychologyAnswer/questionList/index.wxml
@@ -19,7 +19,7 @@
          </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" />
packageBookService/pages/psychologyAnswer/testdata/index.js
@@ -1,7 +1,7 @@
var localData = {
  "list": [{
      "name": "测测你的生活品质",
      "title": "请仔细阅读以下问题,凭你的第一感觉回答。请选择与你相符的答案,即使你感到不太确定,也要回答每个问题。",
      "title": "请仔细阅读以下问题,凭你的第一感觉回答。请选择与你相符的答案,即使你感到不太确定,也要回答每个问题。(答案仅自己可见)",
      "fromType": "json",
      "scoreRules": [],
      "scoreData": [{
@@ -45,8 +45,7 @@
          }
        ]
      ],
      "list": [
        {
      "list": [{
          "analysisCon": "略",
          "id": "0C85D525",
          "optionIndex": 0,
@@ -649,7 +648,7 @@
    },
    {
      "name": "身体症状问卷",
      "title": "下面是与心理因素相关的身体症状列表,请根据自己上一周的情况,在相应的位置上画圈,看看工作量与身体症状之间是否存在联系。",
      "title": "下面是与心理因素相关的身体症状列表,请根据自己上一周的情况,在相应的位置上画圈,看看工作量与身体症状之间是否存在联系。(答案仅自己可见)",
      "fromType": "json",
      "scoreRules": [],
      "scoreData": [{
@@ -1662,7 +1661,7 @@
    },
    {
      "name": "一般自我效能感量表",
      "title": "<p>一般自我效能感量表(general self-efficacyscale,GSES)最早的德文版是由柏林自由大学的临床和健康心理学家施瓦泽(Schwarzer)教授及其同事于1981年编制完成的,开始共有20个项目,后来改进为10个项目。目前该量表在国际上被广泛使用。该量表的中文版最早由张建新和施瓦泽于1995年在中国香港一年级大学生中使用。中文版本已被证明具有良好的信度和效度。</p><p>以下10个句子都是关于你平时对自己的一般看法,请你根据自己的实际情况,选择合适的选项。“1”表示完全不正确。“2”表示有点正确,“3”表示多数正确,“4”表示完全正确。答案没有对错之分,对每一个句子无须多考虑。</p>",
      "title": "<p>以下10个句子都是关于你平时对自己的一般看法,请你根据自己的实际情况,选择合适的选项。“1”表示完全不正确。“2”表示有点正确,“3”表示多数正确,“4”表示完全正确。答案没有对错之分,对每一个句子无须多考虑。(答案仅自己可见)</p>",
      "fromType": "json",
      "scoreRules": [],
      "scoreData": [{
@@ -1825,7 +1824,7 @@
    },
    {
      "name": "学习动力自我诊断测试",
      "title": "这个量表主要为了帮助你了解自己在学习动机、学习兴趣、学习目标上是否存在困扰,共20个题目。请你根据自己的情况,实事求是地对每个题目做“是”或“否”的回答。",
      "title": "这个量表主要为了帮助你了解自己在学习动机、学习兴趣、学习目标上是否存在困扰,共20个题目。请你根据自己的情况,实事求是地对每个题目做“是”或“否”的回答。(答案仅自己可见)",
      "fromType": "json",
      "scoreRules": [],
      "scoreData": [{
@@ -2113,7 +2112,7 @@
    },
    {
      "name": "人际关系综合诊断表",
      "title": "本量表共28个问题,每个问题做“是”或“否”回答。请你认真完成,然后参照计分及分析方法,对测试结果做出解释。",
      "title": "本量表共28个问题,每个问题做“是”或“否”回答。请你认真完成,然后参照计分及分析方法,对测试结果做出解释。(答案仅自己可见)",
      "fromType": "json",
      "scoreRules": [],
      "scoreData": [{
@@ -2497,7 +2496,7 @@
    },
    {
      "name": "婚姻稳定性测试",
      "title": "<p>你选择好终身伴侣了吗?你是怎样看待婚姻的呢?下面的婚姻稳定性测试可以帮你更好地预测未来婚姻的稳定性。</p><p>请仔细阅读每道题,选择符合你的答案。</p>",
      "title": "<p>你选择好终身伴侣了吗?你是怎样看待婚姻的呢?下面的婚姻稳定性测试可以帮你更好地预测未来婚姻的稳定性。</p><p>请仔细阅读每道题,选择符合你的答案。(答案仅自己可见)</p>",
      "fromType": "json",
      "scoreRules": [{
        "index": "",
@@ -2664,7 +2663,7 @@
    },
    {
      "name": "你的恋爱心理是否成熟?",
      "title": "请认真阅读以下各项,根据自己的真实情况作答。",
      "title": "请认真阅读以下各项,根据自己的真实情况作答。(答案仅自己可见)",
      "fromType": "json",
      "scoreRules": [],
      "scoreData": [{
@@ -2702,8 +2701,7 @@
          }
        ]
      }],
      "list": [
        {
      "list": [{
          "analysisCon": "略",
          "id": "3P1E1B001",
          "optionStyle": "Txt",
@@ -3093,7 +3091,7 @@
    },
    {
      "name": "压力心理测试",
      "title": "请回想一下自己在过去一个月内是否出现过下述情况。",
      "title": "请回想一下自己在过去一个月内是否出现过下述情况。(答案仅自己可见)",
      "fromType": "json",
      "scoreRules": [],
      "scoreData": [{
@@ -3350,7 +3348,7 @@
    },
    {
      "name": "抑郁自评量表(SDS)",
      "title": "下面有20条文字,请仔细阅读每一条,把意思弄明白后根据您最近一星期的情况选择适当的选项。“A”表示没有或很少时间有,“B”表示小部分时间有,“C”表示相当多时间有,“D”表示绝大部分时间都有。",
      "title": "下面有20条文字,请仔细阅读每一条,把意思弄明白后根据您最近一星期的情况选择适当的选项。“A”表示没有或很少时间有,“B”表示小部分时间有,“C”表示相当多时间有,“D”表示绝大部分时间都有。(答案仅自己可见)",
      "fromType": "json",
      "scoreRules": [],
      "scoreData": [{
@@ -3391,43 +3389,43 @@
      }],
      "optionList": [
        [{
            "txt": "",
            "txt": "没有或很少时间有",
            "value": "A",
            "score": 1
          },
          {
            "txt": "",
            "txt": "小部分时间有",
            "value": "B",
            "score": 2
          },
          {
            "txt": "",
            "txt": "相当多时间有",
            "value": "C",
            "score": 3
          },
          {
            "txt": "",
            "txt": "绝大部分时间都有 ",
            "value": "D",
            "score": 4
          }
        ],
        [{
            "txt": "",
            "txt": "没有或很少时间有",
            "value": "A",
            "score": 4
          },
          {
            "txt": "",
            "txt": "小部分时间有",
            "value": "B",
            "score": 3
          },
          {
            "txt": "",
            "txt": "相当多时间有",
            "value": "C",
            "score": 2
          },
          {
            "txt": "",
            "txt": "绝大部分时间都有",
            "value": "D",
            "score": 1
          }
@@ -3677,7 +3675,7 @@
    },
    {
      "name": "了解你的职业化程度",
      "title": "职业化指一种工作状态的标准化、规范化和制度化,即在合适的时间、地点用合适的方式完成工作。职业化体现了一个人能准确地扮演好自己的职业角色,尽职尽责地完成自己的工作。作为一名即将走进职场的大学生,你的职业化程度有多高呢?请完成下列测试。",
      "title": "职业化指一种工作状态的标准化、规范化和制度化,即在合适的时间、地点用合适的方式完成工作。职业化体现了一个人能准确地扮演好自己的职业角色,尽职尽责地完成自己的工作。作为一名即将走进职场的大学生,你的职业化程度有多高呢?请完成下列测试。(答案仅自己可见)",
      "fromType": "json",
      "scoreRules": [],
      "scoreData": [{
@@ -4036,7 +4034,7 @@
    },
    {
      "name": "职业能力测试",
      "title": "根据你的实际情况,对下面每种活动做出评定。",
      "title": "根据你的实际情况,对下面每种活动做出评定。(答案仅自己可见)",
      "fromType": "json",
      "scoreRules": [],
      "scoreData": [{
@@ -5170,7 +5168,7 @@
    },
    {
      "name": "威廉斯创造力倾向量表",
      "title": "<p>这是一份帮助你了解自己创造力的表单。如果你发现下列某些句子描述的情形很适合你,就选择“完全符合”,计3分;如果某些句子只是在部分时候适合你,则选择“部分符合”,计2分;如果某些句子对你来说根本是不可能的,则选择“完全不符”,计1分。</p><p>注意事项:每一题都要做,不要花太多时间去思考;所有题目都没有正确答案,凭你读完每一句的第一印象作答;虽然没有时间限制,但尽可能以较快的速度完成,越快越好;凭自己的真实感受作答。</p>",
      "title": "<p>这是一份帮助你了解自己创造力的表单。每一题都要做,不要花太多时间去思考;所有题目都没有正确答案,凭你读完每一句的第一印象作答;虽然没有时间限制,但尽可能以较快的速度完成,越快越好;凭自己的真实感受作答。(答案仅自己可见)</p>",
      "fromType": "json",
      "scoreRules": [],
      "scoreData": [{
packageCourse/components/baseClass/index.js
@@ -37,7 +37,7 @@
    if (data) {
      this.setData({
        userData: JSON.parse(data),
        defaultCmsPath: this.properties.bookRefCode
        defaultCmsPath: this.properties.bookRefCode != 'null' ? 'jsek_digitalTextbooks' : 'defaultGoodsStore3'
      })
    }
    this.getData()
packageCourse/components/teaching/index.wxml
@@ -10,9 +10,7 @@
      <view class="questionInfo">
        <view class="questionCount">
          <text style="color: #ff6d00">{{ item.subList.length }}</text>
          <text> /</text>
          <text style="color: #67c23a"> {{ currentClass.memberCount }}</text>
          <text style="margin-left: 20rpx;color: #999;font-size:24rpx">(已答/全部)</text>
          <text style="margin-left: 20rpx;color: #999;font-size:24rpx">(已答人数)</text>
        </view>
        <view class="questionDate">
          {{item.updateDate}}
packageCourse/pages/course/detail/index.js
@@ -15,6 +15,7 @@
    startTime: '',
    endTime: '',
    className: '',
    isShow: "",
    count: null,
    classList: [],
    searchKey: '',
@@ -179,13 +180,15 @@
  // 打开选择日期
  openDateStart() {
    this.setData({
      visibleStart: true
      visibleStart: true,
      isShow: 'none',
    })
  },
  openDateEnd() {
    this.setData({
      visibleEnd: true
      visibleEnd: true,
      isShow: 'none'
    })
  },
@@ -197,6 +200,7 @@
    const dateStr = moment(value).format('YYYY-MM-DD')
    this.setData({
      startTime: dateStr,
      isShow: ''
    });
  },
@@ -207,6 +211,7 @@
    const dateStr = moment(value).format('YYYY-MM-DD')
    this.setData({
      endTime: dateStr,
      isShow: ''
    });
  },
@@ -219,6 +224,8 @@
  // 申请提交班级
  submitClass() {
    const bTime = moment(this.data.startTime).valueOf()
    const eTime = moment(this.data.endTime).valueOf()
    if (!this.data.className) {
      wx.showToast({
        title: '请填写课程名称',
@@ -238,6 +245,14 @@
    if (!this.data.startTime || !this.data.endTime) {
      wx.showToast({
        title: '请选择班级有效期',
        duration: 1000,
        icon: 'none',
      })
      return false
    }
    if (bTime && eTime && eTime < bTime) {
      wx.showToast({
        title: '请选择班正确的班级有效期',
        duration: 1000,
        icon: 'none',
      })
@@ -273,7 +288,7 @@
        wx.showToast({
          title: '申请开班出错',
          duration: 1000,
          icon: 'err',
          icon: 'none',
        })
        this.setData({
          visible: false
packageCourse/pages/course/detail/index.wxml
@@ -6,9 +6,30 @@
      <view wx:if="{{!courseLoading}}">
        <view class="ID-State">
          <text class="ID">ID: {{detail.id}}</text>
          <t-tag class="margin-16" size='large' wx:if="{{detail.applyState == 'WaitAudit'}}" variant="light" theme="warning">审核中</t-tag>
          <t-tag class="margin-16" size='large' wx:if="{{detail.applyState == 'Reject'}}" variant="light" theme="danger">未通过</t-tag>
          <t-tag class="margin-16" size='large' wx:if="{{detail.applyState == 'Normal'}}" variant="light" theme="success">使用中</t-tag>
          <t-tag
            class="margin-16"
            size="large"
            wx:if="{{detail.applyState == 'WaitAudit'}}"
            variant="light"
            theme="warning"
            >审核中</t-tag
          >
          <t-tag
            class="margin-16"
            size="large"
            wx:if="{{detail.applyState == 'Reject'}}"
            variant="light"
            theme="danger"
            >未通过</t-tag
          >
          <t-tag
            class="margin-16"
            size="large"
            wx:if="{{detail.applyState == 'Normal'}}"
            variant="light"
            theme="success"
            >使用中</t-tag
          >
        </view>
        <view class="statics">
          <view class="classCout">
@@ -29,8 +50,18 @@
                <text>作者:{{bookData.author}}</text>
                <text>ISBN:{{bookData.isbn}}</text>
              </view>
              <image wx:if="{{bookData.icon}}" class="bookIcon" src="{{bookData.icon}}" mode="" />
              <image wx:else class="bookIcon" src="/static/images/default-book-img.png" mode="" />
              <image
                wx:if="{{bookData.icon}}"
                class="bookIcon"
                src="{{bookData.icon}}"
                mode=""
              />
              <image
                wx:else
                class="bookIcon"
                src="/static/images/default-book-img.png"
                mode=""
              />
            </view>
          </view>
        </view>
@@ -47,39 +78,123 @@
    <!-- 班级管理 -->
    <view class="classBox" wx:else>
      <view class="header">
        <t-search style="flex:1" value="{{searchKey}}" bind:clear="changeHandle" bind:submit="changeHandle" placeholder="搜索班级名称" clearable />
        <t-button bindtap="newClass" size="small" style="margin-left: 15rpx;">开班</t-button>
        <t-search
          style="flex: 1"
          value="{{searchKey}}"
          bind:clear="changeHandle"
          bind:submit="changeHandle"
          placeholder="搜索班级名称"
          clearable
        />
        <t-button bindtap="newClass" size="small" style="margin-left: 15rpx"
          >开班</t-button
        >
      </view>
      <view class="contentList" wx:if="{{classList.length > 0 && !classLoading}}">
        <scroll-view class="scroll" class="content" bind:scroll="onPageScroll" model:scroll-top="{{setScrollValue}}" scroll-y refresher-enabled="{{true}}" lower-threshold="{{80}}" refresher-threshold="{{80}}" refresher-default-style="none" refresher-triggered="{{triggered}}" bindrefresherpulling="{{refresh.onPulling}}" bindrefresherrefresh="onPullDownRefresh" bindscrolltolower="onReachBottom">
      <view
        class="contentList"
        wx:if="{{classList.length > 0 && !classLoading}}"
      >
        <scroll-view
          class="scroll"
          class="content"
          bind:scroll="onPageScroll"
          model:scroll-top="{{setScrollValue}}"
          scroll-y
          refresher-enabled="{{true}}"
          lower-threshold="{{80}}"
          refresher-threshold="{{80}}"
          refresher-default-style="none"
          refresher-triggered="{{triggered}}"
          bindrefresherpulling="{{refresh.onPulling}}"
          bindrefresherrefresh="onPullDownRefresh"
          bindscrolltolower="onReachBottom"
        >
          <view slot="refresher" class="refresh-container">
            <view class="loading">
              <t-loading theme="circular" size="40rpx" text="正在刷新..." class="wrapper" />
              <t-loading
                theme="circular"
                size="40rpx"
                text="正在刷新..."
                class="wrapper"
              />
            </view>
          </view>
          <view class="listClass" wx:for="{{classList}}" wx:key="index" data-class-id="{{item.id}}" data-item="{{item}}" bindtap="todetail">
          <view
            class="listClass"
            wx:for="{{classList}}"
            wx:key="index"
            data-class-id="{{item.id}}"
            data-item="{{item}}"
            bindtap="todetail"
          >
            <view class="titleBox">
              <text class="className">{{item.name}}</text>
              <text class="classId" style="color: #999; font-size: 12px;"> ID: {{item.id}}</text>
              <text class="classId" style="color: #999; font-size: 12px">
                ID: {{item.id}}</text
              >
            </view>
            <view class="infoBox">
              <text class="classTag" wx:if="{{item.applyState == 'WaitAudit'}}" style="color: #ef9f29">状态: 审核中</text>
              <text class="classTag" wx:if="{{item.applyState == 'Normal'}}" style="color: #1dbd11">状态: 进行中</text>
              <text class="classTag" wx:if="{{item.applyState == 'Reject'}}" style="color: red">状态: 未通过</text>
              <t-icon bindtap="delClass" data-del-id="{{item.id}}" class="delete" wx:if="{{item.applyState == 'Reject'}}" name="delete" color="red" size='18px' />
              <text
                class="classTag"
                wx:if="{{item.applyState == 'WaitAudit'}}"
                style="color: #ef9f29"
                >状态: 审核中</text
              >
              <text
                class="classTag"
                wx:if="{{item.applyState == 'Normal'}}"
                style="color: #1dbd11"
                >状态: 进行中</text
              >
              <text
                class="classTag"
                wx:if="{{item.applyState == 'Reject'}}"
                style="color: red"
                >状态: 未通过</text
              >
              <t-icon
                bindtap="delClass"
                data-del-id="{{item.id}}"
                class="delete"
                wx:if="{{item.applyState == 'Reject'}}"
                name="delete"
                color="red"
                size="18px"
              />
              <view wx:if="{{item.applyState == 'Reject'}}" class="reason">
                <text> 拒绝原因:</text>
                <t-tag style="margin-left: 0;" bind:tap="showDialog" data-item="{{item}}" class="margin-16 replay" theme="danger">点击查看</t-tag>
                <t-tag
                  style="margin-left: 0"
                  bind:tap="showDialog"
                  data-item="{{item}}"
                  class="margin-16 replay"
                  theme="danger"
                  >点击查看</t-tag
                >
              </view>
              <!-- <text class="classTag" wx:if="{{item.applyState == 'Reject'}}" style="color: red">拒绝原因:{{ item.reason != '' ? item.reason : '-' }}</text> -->
              <text class="classTag">班级人数: {{ item.memberCount }} / {{ item.maxUserCount }}</text>
              <text class="classTag">有效期:{{ item.beginDate }} - {{ item.endDate }}</text>
              <text class="classTag"
                >班级人数: {{ item.memberCount }} / {{ item.maxUserCount
                }}</text
              >
              <text class="classTag"
                >有效期:{{ item.beginDate }} - {{ item.endDate }}</text
              >
            </view>
          </view>
          <view class="bottom-loading" wx:if="{{bottomLoading}}">
            <t-loading theme="circular" size="40rpx" text="加载中..." class="wrapper" />
            <t-loading
              theme="circular"
              size="40rpx"
              text="加载中..."
              class="wrapper"
            />
          </view>
          <view class="bottom-loading" style="color: #ccc;font-size: 28rpx;" wx:if="{{isMoreData}}">
          <view
            class="bottom-loading"
            style="color: #ccc; font-size: 28rpx"
            wx:if="{{isMoreData}}"
          >
            <text>没有更多了</text>
          </view>
        </scroll-view>
@@ -101,49 +216,110 @@
          <view class="classInfo">
            <view class="c-name">
              <text>班级名称</text>
              <t-input value="{{className}}" bindchange="onCourseNameInput" borderless clearable placeholder="请输入班级名称" />
              <t-input
                value="{{className}}"
                bindchange="onCourseNameInput"
                borderless
                clearable
                placeholder="请输入班级名称"
              />
            </view>
            <view class="c-desc">
              <text>班级人数</text>
              <t-input value="{{count}}" bindchange="onCourseDescInput" borderless placeholder="请输入班级人数" />
              <t-input
                value="{{count}}"
                type="number"
                bindchange="onCourseDescInput"
                borderless
                placeholder="请输入班级人数"
              />
            </view>
            <view class="c-date">
              <text>班级有效期</text>
              <view class="dateBox">
                <view>
                  <t-input value="{{startTime}}" readonly borderless bindtap="openDateStart" placeholder="请选择开始时间" />
                  <t-calendar visible="{{visibleStart}}" bind:confirm="handleConfirmStart" />
                  <t-input
                    style="display:{{isShow}}"
                    value="{{startTime}}"
                    readonly
                    borderless
                    bindtap="openDateStart"
                    placeholder="请选择开始时间"
                  />
                  <t-calendar
                    visible="{{visibleStart}}"
                    bind:confirm="handleConfirmStart"
                  />
                </view>
                <view>~</view>
                <view>
                  <t-input value="{{endTime}}" readonly borderless bindtap="openDateEnd" placeholder="请选择结束时间" />
                  <t-calendar visible="{{visibleEnd}}" bind:confirm="handleConfirmEnd" />
                  <t-input
                    value="{{endTime}}"
                    style="display:{{isShow}}"
                    readonly
                    borderless
                    bindtap="openDateEnd"
                    placeholder="请选择结束时间"
                  />
                  <t-calendar
                    visible="{{visibleEnd}}"
                    bind:confirm="handleConfirmEnd"
                  />
                </view>
              </view>
            </view>
          </view>
          <view class="classSubmit">
            <t-button style="padding: 0 25px; margin:0 15px;" size="small" bindtap="cancle" variant="outline">取消</t-button>
            <t-button style="padding: 0 25px; margin:0;" size="small" bindtap="submitClass">确认</t-button>
            <t-button
              style="padding: 0 25px; margin: 0 15px"
              size="small"
              bindtap="cancle"
              variant="outline"
              >取消</t-button
            >
            <t-button
              style="padding: 0 25px; margin: 0"
              size="small"
              bindtap="submitClass"
              >确认</t-button
            >
          </view>
        </view>
      </t-popup>
      <t-dialog visible="{{showContentOnly}}" bind:confirm="closeDialog" close-on-overlay-click>
        <view slot="content" class="reasonContent">
          {{reason}}
        </view>
        <view slot="confirm-btn" style="width: 100%;">
          <t-button style="color: #ff6d00;border-top: 1px solid #eee ;" variant="text" bindtap="closeDialog" size="large" block t-class="external-class">知道了</t-button>
      <t-dialog
        visible="{{showContentOnly}}"
        bind:confirm="closeDialog"
        close-on-overlay-click
      >
        <view slot="content" class="reasonContent"> {{reason}} </view>
        <view slot="confirm-btn" style="width: 100%">
          <t-button
            style="color: #ff6d00; border-top: 1px solid #eee"
            variant="text"
            bindtap="closeDialog"
            size="large"
            block
            t-class="external-class"
            >知道了</t-button
          >
        </view>
      </t-dialog>
    </view>
  </view>
  <view class="tabbar-bottom">
    <view class="{{tabVal == 'base'?'tab-pubItem activeTab':'tab-pubItem'}}" data-str="base" bindtap="tabActive">
    <view
      class="{{tabVal == 'base'?'tab-pubItem activeTab':'tab-pubItem'}}"
      data-str="base"
      bindtap="tabActive"
    >
      <t-icon class="tabIcon" name="home" size="24px" />
      <text class="text">基本信息</text>
    </view>
    <view class="{{tabVal == 'class'?'tab-pubItem activeTab':'tab-pubItem'}}" data-str="class" bindtap="tabActive">
    <view
      class="{{tabVal == 'class'?'tab-pubItem activeTab':'tab-pubItem'}}"
      data-str="class"
      bindtap="tabActive"
    >
      <t-icon class="tabIcon" name="file-setting" size="24px" />
      <text class="text">班级管理</text>
    </view>
packageCourse/pages/course/index.js
@@ -289,8 +289,8 @@
      app.MG.edu
        .updateCourse({
          courseId: this.data.currentCourse.id,
          name: this.data.currentCourse.name,
          description: this.data.currentCourse.desc
          name: this.data.courseName,
          description: this.data.courseDesc,
        })
        .then((res) => {
          app.MG.edu
packageCourse/pages/course/index.wxss
packageCourse/pages/studentClass/index.js
@@ -169,12 +169,12 @@
  },
  // 获取教材详情
  async getBookDetail(shopId) {
  async getBookDetail(shopId, path) {
    let query = {
      path: 'jsek_digitalTextbooks',
      path,
      queryType: '*',
      productId: String(shopId),
      storeInfo: 'jsek_digitalTextbooks',
      storeInfo: path,
      coverSize: {
        height: 300,
        width: 210
@@ -194,7 +194,9 @@
      classId,
      item
    } = e.currentTarget.dataset
    const bookData = await this.getBookDetail(item.linkProductDto?.product?.id)
    const bookRefCode = item.linkProductDto?.product?.refCode
    const path = bookRefCode ? 'jsek_digitalTextbooks' : 'defaultGoodsStore3'
    const bookData = await this.getBookDetail(item.linkProductDto?.product?.id, path)
    if (item.userState == 'WaitValid' || item.userState == 'Reject') {
      wx.showToast({
        title: item.userState == 'WaitValid' ? '审核中' : '未通过',
@@ -204,7 +206,7 @@
      return false
    }
    wx.navigateTo({
      url: '/packageCourse/pages/teachClass/index?classId=' + classId + '&bookId=' + bookData.id + '&author=' + bookData.author + '&isbn=' + bookData.isbn + '&rootCmsItemId=' + bookData.rootCmsItemId,
      url: '/packageCourse/pages/teachClass/index?classId=' + classId + '&bookId=' + bookData.id + '&author=' + bookData.author + '&isbn=' + bookData.isbn + '&rootCmsItemId=' + bookData.rootCmsItemId + '&bookRefCode=' + bookRefCode,
    })
  },
packageCourse/pages/teachClass/index.wxml
@@ -10,7 +10,7 @@
      <studentManage classId="{{classId}}" bookRefCode="{{defaultCmsPath}}" />
    </view>
    <!-- 教学互动 -->
    <view class="teachBox" wx:if="{{tabVal == 'teach'&& userData.role == 'Teacher'}}">
    <view class="teachBox" wx:if="{{tabVal == 'teach'}}">
      <Teach classId="{{classId}}" bookId="{{bookId}}" rootCmsItemId="{{rootCmsItemId}}" />
    </view>
  </view>
@@ -23,7 +23,7 @@
      <t-icon class="tabIcon" name="file-setting" size="24px" />
      <text class="text">学生管理</text>
    </view>
    <view wx:if="{{ userData.role == 'Teacher'}}" class="{{tabVal == 'teach'?'tab-pubItem activeTab':'tab-pubItem'}}" data-str="teach" bindtap="tabActive">
    <view class="{{tabVal == 'teach'?'tab-pubItem activeTab':'tab-pubItem'}}" data-str="teach" bindtap="tabActive">
      <t-icon class="tabIcon" name="system-setting" size="24px" />
      <text class="text">教学互动</text>
    </view>
pages/cart/index.js
@@ -131,7 +131,7 @@
          if (item.saleMethod.type == 'createProductItemSaleMethod' || item.saleMethod.type == 'createProductFolderSaleMethod') {
            if (item.linkCmsItems[0].refCode == 'questionBank') {
              item.type = '云测试'
              item.typeTxt = '云测试'
              item.productType = '图书服务-云测试'
            } else {
              item.typeTxt = '云学习'