Browse Source

Merge branch 'lhd'

natasha 2 days ago
parent
commit
4b1a8621ac

+ 2 - 2
src/views/book/courseware/create/components/question/article/Article.vue

@@ -82,7 +82,7 @@
           <a @click="handleChangeContent">生成分词</a>
           <a @click="checkArticle">文章校对</a>
           <a @click="picArticle">添加图片</a>
-          <a @click="editWordsFlag = !editWordsFlag">编辑生词短语注释</a>
+          <a @click="editWordsFlag = !editWordsFlag">编辑生词短语气泡</a>
           <template v-if="data.wordTime && data.wordTime.length > 0">
             <!-- <span>已有字幕时间节点</span> -->
             <a type="text" @click="againWordTime">重新生成字幕时间</a>
@@ -185,7 +185,7 @@
         <div class="tabs-box">
           <a :class="[editWordIndex === 0 ? 'active' : '']" @click="editWordIndex = 0">生词</a>
           <a :class="[editWordIndex === 2 ? 'active' : '']" @click="editWordIndex = 2">其他词汇</a>
-          <a :class="[editWordIndex === 1 ? 'active' : '']" @click="editWordIndex = 1">注释</a>
+          <a :class="[editWordIndex === 1 ? 'active' : '']" @click="editWordIndex = 1">气泡</a>
         </div>
         <NewWord
           v-if="editWordIndex === 0"

+ 7 - 0
src/views/book/courseware/create/components/question/article/NewWord.vue

@@ -232,6 +232,7 @@
         <div class="table-item" style="width: 150px"></div>
       </div>
     </div>
+    <p class="tips">如果要预览宽度自动调整,请把列宽设置为0。</p>
     <el-button icon="el-icon-plus" style="margin: 24px 0" @click="addElement">增加一行</el-button>
     <el-button icon="el-icon-plus" style="margin: 24px 10px" @click="addElementCol">增加一列</el-button>
 
@@ -925,6 +926,12 @@ export default {
   flex-flow: wrap;
   gap: 10px;
 }
+
+.tips {
+  margin: 0;
+  font-size: 12px;
+  color: #999;
+}
 </style>
 <style lang="scss">
 .tox .tox-editor-header {

+ 6 - 6
src/views/book/courseware/create/components/question/article/Notes.vue

@@ -30,7 +30,7 @@
             :font-size="unifiedAttrib?.font_size"
             :font-family="unifiedAttrib?.font"
             :font-color="unifiedAttrib?.text_color"
-            toolbar="fontselect fontsizeselect forecolor backcolor | underline | bold italic strikethrough alignleft aligncenter alignright"
+            toolbar="fontselect fontsizeselect forecolor backcolor | underline | bold italic strikethrough alignleft aligncenter alignright image media link"
             @handleRichTextBlur="handleBlurCon"
           />
         </template>
@@ -45,7 +45,7 @@
             :font-size="unifiedAttrib?.pinyin_size"
             :font-color="unifiedAttrib?.text_color"
             :font-family="'League'"
-            toolbar="fontselect fontsizeselect forecolor backcolor | underline | bold italic strikethrough alignleft aligncenter alignright"
+            toolbar="fontselect fontsizeselect forecolor backcolor | underline | bold italic strikethrough alignleft aligncenter alignright image media link"
           />
         </template>
       </el-table-column>
@@ -56,7 +56,7 @@
             ref="richText"
             v-model="scope.row.interpret"
             :inline="true"
-            toolbar="fontselect fontsizeselect forecolor backcolor | underline | bold italic strikethrough alignleft aligncenter alignright"
+            toolbar="fontselect fontsizeselect forecolor backcolor | underline | bold italic strikethrough alignleft aligncenter alignright image media link"
             :font-size="unifiedAttrib?.font_size"
             :font-family="unifiedAttrib?.font"
             :font-color="unifiedAttrib?.text_color"
@@ -70,7 +70,7 @@
             ref="richText"
             v-model="scope.row.note"
             :inline="true"
-            toolbar="fontselect fontsizeselect forecolor backcolor | underline | bold italic strikethrough alignleft aligncenter alignright"
+            toolbar="fontselect fontsizeselect forecolor backcolor | underline | bold italic strikethrough alignleft aligncenter alignright image media link"
             :font-size="unifiedAttrib?.font_size"
             :font-family="unifiedAttrib?.font"
             :font-color="unifiedAttrib?.text_color"
@@ -101,8 +101,8 @@
         </template>
       </el-table-column>
     </el-table>
-    <el-button icon="el-icon-plus" style="margin: 24px 0" @click="addElement">增加一个</el-button>
-    <el-form :model="data.property" label-width="72px" label-position="left">
+    <!-- <el-button icon="el-icon-plus" style="margin: 24px 0" @click="addElement">增加一个</el-button> -->
+    <el-form :model="data.property" label-width="72px" label-position="left" style="margin: 24px 0">
       <el-form-item label="拼音">
         <el-switch v-model="data.property.view_pinyin" active-value="true" inactive-value="false" />
       </el-form-item>

+ 2 - 2
src/views/book/courseware/create/components/question/dialogue_article/Article.vue

@@ -232,7 +232,7 @@
         <div v-if="data.detail.length > 0" class="btn-box">
           <a @click="handleChangeContent">生成分词</a>
           <a @click="checkArticle">文章校对</a>
-          <a @click="editWordsFlag = !editWordsFlag">编辑生词短语注释</a>
+          <a @click="editWordsFlag = !editWordsFlag">编辑生词短语气泡</a>
           <template v-if="data.wordTime && data.wordTime.length > 0">
             <!-- <span>已有字幕时间节点</span> -->
             <a type="text" @click="againWordTime">重新生成字幕时间</a>
@@ -443,7 +443,7 @@
         <div class="tabs-box">
           <a :class="[editWordIndex === 0 ? 'active' : '']" @click="editWordIndex = 0">生词</a>
           <a :class="[editWordIndex === 2 ? 'active' : '']" @click="editWordIndex = 2">其他词汇</a>
-          <a :class="[editWordIndex === 1 ? 'active' : '']" @click="editWordIndex = 1">注释</a>
+          <a :class="[editWordIndex === 1 ? 'active' : '']" @click="editWordIndex = 1">气泡</a>
         </div>
         <NewWord
           v-if="editWordIndex === 0"

+ 7 - 1
src/views/book/courseware/create/components/question/new_word/NewWord.vue

@@ -372,7 +372,7 @@
           <div class="table-item" style="width: 150px"></div>
         </div>
       </div>
-
+      <p class="tips">如果要预览宽度自动调整,请把列宽设置为0。</p>
       <el-button icon="el-icon-plus" style="margin: 24px 0" @click="addElement">增加一行</el-button>
       <el-button icon="el-icon-plus" style="margin: 24px 10px" @click="addElementCol">增加一列</el-button>
       <div class="btn-box">
@@ -1069,6 +1069,12 @@ export default {
   flex-flow: wrap;
   gap: 10px;
 }
+
+.tips {
+  margin: 0;
+  font-size: 12px;
+  color: #999;
+}
 </style>
 <style lang="scss">
 .tox .tox-editor-header {

+ 39 - 37
src/views/book/courseware/preview/components/new_word/NewWordPreview.vue

@@ -45,7 +45,7 @@
           <div class="NPC-top-right">
             <el-popover placement="right-start" width="60" trigger="click">
               <ul class="show-obj-list">
-                <li @click="handleShow('pinyin')">
+                <li @click="handleShow('pinyin')" v-if="colHasContent[0]">
                   <span>拼音</span
                   ><i
                     slot="suffix"
@@ -75,7 +75,7 @@
                     <svg-icon size="16" icon-class="eye-invisible"></svg-icon>
                   </i>
                 </li>
-                <li @click="handleShow('newWord')">
+                <li @click="handleShow('newWord')" v-if="colHasContent[1]">
                   <span>生词</span
                   ><i
                     slot="suffix"
@@ -105,7 +105,7 @@
                     <svg-icon size="16" icon-class="eye-invisible"></svg-icon>
                   </i>
                 </li>
-                <li @click="handleShow('cixing')">
+                <li @click="handleShow('cixing')" v-if="colHasContent[2]">
                   <span>词性</span
                   ><i
                     slot="suffix"
@@ -135,7 +135,7 @@
                     <svg-icon size="16" icon-class="eye-invisible"></svg-icon>
                   </i>
                 </li>
-                <li @click="handleShow('shiyi')">
+                <li @click="handleShow('shiyi')" v-if="colHasContent[3]">
                   <span>释义</span
                   ><i
                     slot="suffix"
@@ -165,7 +165,7 @@
                     <svg-icon size="16" icon-class="eye-invisible"></svg-icon>
                   </i>
                 </li>
-                <li @click="handleShow('collocation')">
+                <li @click="handleShow('collocation')" v-if="colHasContent[4]">
                   <span>搭配</span
                   ><i
                     slot="suffix"
@@ -195,7 +195,7 @@
                     <svg-icon size="16" icon-class="eye-invisible"></svg-icon>
                   </i>
                 </li>
-                <li @click="handleShow('liju')">
+                <li @click="handleShow('liju')" v-if="colHasContent[5]">
                   <span>例句</span
                   ><i
                     slot="suffix"
@@ -225,36 +225,38 @@
                     <svg-icon size="16" icon-class="eye-invisible"></svg-icon>
                   </i>
                 </li>
-                <li @click="handleShow(item.key)" v-for="(item, index) in data.addCol" :key="index">
-                  <span>{{ item.label }}</span
-                  ><i
-                    slot="suffix"
-                    class="el-icon-view show-icon"
-                    v-if="showObj[item.key]"
-                    size="16"
-                    :style="{
-                      color:
-                        data.unified_attrib && data.unified_attrib.topic_color
-                          ? data.unified_attrib.topic_color
-                          : '#de4444',
-                      marginLeft: '5px',
-                    }"
-                  ></i>
-                  <i
-                    slot="suffix"
-                    class="show-icon"
-                    v-else
-                    :style="{
-                      color:
-                        data.unified_attrib && data.unified_attrib.topic_color
-                          ? data.unified_attrib.topic_color
-                          : '#de4444',
-                      marginLeft: '5px',
-                    }"
-                  >
-                    <svg-icon size="16" icon-class="eye-invisible"></svg-icon>
-                  </i>
-                </li>
+                <template v-for="(item, index) in data.addCol">
+                  <li @click="handleShow(item.key)" :key="index" v-if="colHasContent[6 + index]">
+                    <span>{{ item.label }}</span
+                    ><i
+                      slot="suffix"
+                      class="el-icon-view show-icon"
+                      v-if="showObj[item.key]"
+                      size="16"
+                      :style="{
+                        color:
+                          data.unified_attrib && data.unified_attrib.topic_color
+                            ? data.unified_attrib.topic_color
+                            : '#de4444',
+                        marginLeft: '5px',
+                      }"
+                    ></i>
+                    <i
+                      slot="suffix"
+                      class="show-icon"
+                      v-else
+                      :style="{
+                        color:
+                          data.unified_attrib && data.unified_attrib.topic_color
+                            ? data.unified_attrib.topic_color
+                            : '#de4444',
+                        marginLeft: '5px',
+                      }"
+                    >
+                      <svg-icon size="16" icon-class="eye-invisible"></svg-icon>
+                    </i>
+                  </li>
+                </template>
               </ul>
               <SvgIcon
                 slot="reference"
@@ -1836,7 +1838,7 @@ export default {
       let pinyin_col = this.data.new_word_list.reduce((acc, itemss) => `${acc + itemss.pinyin}`, '');
       let new_word_col = this.data.new_word_list.reduce((acc, itemss) => `${acc + itemss.new_word}`, '');
       let cixing_col = this.data.new_word_list.reduce((acc, itemss) => `${acc + itemss.cixing}`, '');
-      let def_str_col = this.data.new_word_list.reduce((acc, itemss) => `${acc + itemss.def_str}`, '');
+      let def_str_col = this.data.new_word_list.reduce((acc, itemss) => `${acc + itemss.definition_list}`, '');
       let collocation_col = this.data.new_word_list.reduce((acc, itemss) => `${acc + itemss.collocation}`, '');
       let liju_list_col = this.data.new_word_list.reduce((acc, itemss) => `${acc + itemss.liju_list}`, '');
       this.colHasContent = [