Переглянути джерело

Merge branch 'master' into gcj

guanchunjie 3 роки тому
батько
коміт
adff5afb9c

+ 2 - 2
src/components/Adult/Preview.vue

@@ -805,7 +805,7 @@ export default {
   .NNPE-Book-content-inner {
     padding: 0 40px;
     > div {
-      padding-top: 24px;
+      padding-top: 32px;
       > h2 {
         color: #e35454;
         font-size: 16px;
@@ -839,7 +839,7 @@ export default {
     .NNPE-tableList {
       background: #fff;
       border-radius: 8px;
-      margin-top: 16px;
+      margin-top: 24px;
       //   padding: 12px 8px;
       &.NNPE-tableList-hasBg {
         background: #f7f7f7;

+ 16 - 0
src/components/Adult/inputModules/PurePreview.vue

@@ -135,6 +135,13 @@
                 />
               </div>
             </template>
+            <div class="adult-book-input-item">
+              <span class="adult-book-lable">配置:</span>
+              <el-radio-group v-model="item.type" @change="forupdata">
+                <el-radio label="mh">描红</el-radio>
+                <el-radio label="lm">临摹</el-radio>
+              </el-radio-group>
+            </div>
           </template>
         </div>
       </template>
@@ -278,6 +285,7 @@ export default {
             con: "", //生字
             en: "",
             pinyin: "", //拼音
+            type: "lm",
           },
         ],
         numberList: {
@@ -337,6 +345,9 @@ export default {
   watch: {},
   //方法集合
   methods: {
+    forupdata() {
+      this.$forceUpdate();
+    },
     // 添加音节
     addyinjie(index) {
       let obj = JSON.parse(JSON.stringify(this.data_structure3[0].option[0]));
@@ -507,6 +518,11 @@ export default {
           ],
         };
         this.$set(this.curQue, "numberList", obj);
+        this.curQue.option.forEach((item) => {
+          if (!item.type) {
+            item.type = "lm";
+          }
+        });
       }
     }
   },

+ 1 - 1
src/components/Adult/preview/ArticleViewChs/index.vue

@@ -191,7 +191,7 @@ export default {
 .NPC-ArticleView {
   width: 100%;
   &.NPC-ArticleView-container {
-    margin-bottom: 16px;
+    margin-bottom: 24px;
   }
   .ArticleView-header {
     display: flex;

+ 1 - 1
src/components/Adult/preview/DialogueArticleViewChs/DialogueAnswerViewChs.vue

@@ -182,7 +182,7 @@ export default {
 //@import url(); 引入公共css类
 .dialogue-answer-view {
   width: 100%;
-  margin-bottom: 16px;
+  margin-bottom: 24px;
   .guide {
     width: 100%;
     font-size: 16px;

+ 9 - 2
src/components/Adult/preview/DialogueArticleViewChs/index.vue

@@ -236,15 +236,22 @@ export default {
 }
 </style>
 <style lang="scss">
+.NNPE-tableList-item-noMargin{
+    .NPC-ArticleView {
+        &.NPC-ArticleView-container {
+            margin-bottom: 0;
+        }
+    }
+}
 .NPC-ArticleView {
   &.NPC-ArticleView-container {
-    margin-bottom: 16px;
+    margin-bottom: 24px;
   }
   .notice {
     font-weight: normal;
     font-size: 14px;
     line-height: 150%;
-    margin-bottom: 16px;
+    margin-bottom: 24px;
     color: #000000;
     padding: 0 24px 8px;
     margin: 0;

+ 65 - 0
src/components/Adult/preview/InputHasRecord.vue

@@ -61,6 +61,7 @@
                       <div class="synthesis-box">
                         <div>
                           <span
+                            v-if="items.detail.pyPosition == 'top'"
                             class="pinyin"
                             :class="[
                               noFont.indexOf(itemCon.pinyin) > -1
@@ -72,9 +73,19 @@
                           <span class="hanzi content-con">{{
                             itemCon.chs
                           }}</span>
+                          <span
+                            v-if="items.detail.pyPosition == 'bottom'"
+                            class="pinyin"
+                            :class="[
+                              noFont.indexOf(itemCon.pinyin) > -1
+                                ? 'noFont'
+                                : '',
+                            ]"
+                            >{{ itemCon.pinyin }}</span>
                         </div>
                         <div style="text-align: left">
                           <span
+                            v-if="items.detail.pyPosition == 'top'"
                             class="pinyin"
                             :class="[
                               noFont.indexOf(
@@ -90,11 +101,26 @@
                           <span class="hanzi content-con">{{
                             items.detail.wordsList[indexCon + 1].chs
                           }}</span>
+                          <span
+                            v-if="items.detail.pyPosition == 'bottom'"
+                            class="pinyin"
+                            :class="[
+                              noFont.indexOf(
+                                items.detail.wordsList[indexCon + 1].pinyin
+                              ) > -1
+                                ? 'noFont'
+                                : '',
+                            ]"
+                            >{{
+                              items.detail.wordsList[indexCon + 1].pinyin
+                            }}</span
+                          >
                         </div>
                       </div>
                     </template>
                     <template v-else>
                       <span
+                        v-if="items.detail.pyPosition == 'top'"
                         class="pinyin"
                         :class="[
                           noFont.indexOf(itemCon.pinyin) > -1 ? 'noFont' : '',
@@ -102,6 +128,14 @@
                         >{{ itemCon.pinyin }}</span
                       >
                       <span class="hanzi content-con">{{ itemCon.chs }}</span>
+                      <span
+                        v-if="items.detail.pyPosition == 'bottom'"
+                        class="pinyin"
+                        :class="[
+                          noFont.indexOf(itemCon.pinyin) > -1 ? 'noFont' : '',
+                        ]"
+                        >{{ itemCon.pinyin }}</span
+                      >
                     </template>
                   </div>
                 </div>
@@ -159,6 +193,7 @@
                   <div class="synthesis-box">
                     <div>
                       <span
+                        v-if="items.detail.pyPosition == 'top'"
                         class="pinyin"
                         :class="[
                           noFont.indexOf(itemCon.pinyin) > -1 ? 'noFont' : '',
@@ -166,9 +201,18 @@
                         >{{ itemCon.pinyin }}</span
                       >
                       <span class="hanzi content-con">{{ itemCon.chs }}</span>
+                      <span
+                        v-if="items.detail.pyPosition == 'bottom'"
+                        class="pinyin"
+                        :class="[
+                          noFont.indexOf(itemCon.pinyin) > -1 ? 'noFont' : '',
+                        ]"
+                        >{{ itemCon.pinyin }}</span
+                      >
                     </div>
                     <div style="text-align: left">
                       <span
+                        v-if="items.detail.pyPosition == 'top'"
                         class="pinyin"
                         :class="[
                           noFont.indexOf(
@@ -182,11 +226,24 @@
                       <span class="hanzi content-con">{{
                         items.detail.wordsList[indexCon + 1].chs
                       }}</span>
+                      <span
+                        v-if="items.detail.pyPosition == 'bottom'"
+                        class="pinyin"
+                        :class="[
+                          noFont.indexOf(
+                            items.detail.wordsList[indexCon + 1].pinyin
+                          ) > -1
+                            ? 'noFont'
+                            : '',
+                        ]"
+                        >{{ items.detail.wordsList[indexCon + 1].pinyin }}</span
+                      >
                     </div>
                   </div>
                 </template>
                 <template v-else>
                   <span
+                    v-if="items.detail.pyPosition == 'top'"
                     class="pinyin"
                     :class="[
                       noFont.indexOf(itemCon.pinyin) > -1 ? 'noFont' : '',
@@ -194,6 +251,14 @@
                     >{{ itemCon.pinyin }}</span
                   >
                   <span class="hanzi content-con">{{ itemCon.chs }}</span>
+                  <span
+                    v-if="items.detail.pyPosition == 'bottom'"
+                    class="pinyin"
+                    :class="[
+                      noFont.indexOf(itemCon.pinyin) > -1 ? 'noFont' : '',
+                    ]"
+                    >{{ itemCon.pinyin }}</span
+                  >
                 </template>
               </div>
             </div>

+ 11 - 11
src/components/Adult/preview/NewWordShow.vue

@@ -20,7 +20,7 @@
             <template v-if="item.con">
               <div
                 :key="conindex"
-                class="strockplay"
+                class="strockplay-newWord"
                 v-for="(conItem, conindex) in item.con"
                 @click="writeWord(conItem, item.pinyin)"
               >
@@ -155,7 +155,7 @@ export default {
 //@import url(); 引入公共css类
 .NewWordShow {
   width: 100%;
-  margin-bottom: 16px;
+  margin-bottom: 24px;
   h2 {
     margin: 0 0 8px 0;
     font-weight: 500;
@@ -309,10 +309,10 @@ export default {
 </style>
 <style lang="scss">
 .NPC-Big-Book-preview-red {
-  .NewWordShow {
+  .strockplay-newWord {
     .strock-play-box {
-      width: 22px;
-      height: 22px;
+      width: 16px !important;
+      height: 16px !important;
       right: -1px;
       top: 0;
       background: url("../../../assets/NPC/strock-play-red-click.png") center
@@ -325,10 +325,10 @@ export default {
   }
 }
 .NPC-Big-Book-preview-green {
-  .NewWordShow {
+  .strockplay-newWord {
     .strock-play-box {
-      width: 22px;
-      height: 22px;
+      width: 16px !important;
+      height: 16px !important;
       right: -1px;
       top: 0;
       background: url("../../../assets/NPC/strock-play-green-click.png") center
@@ -341,10 +341,10 @@ export default {
   }
 }
 .NPC-Big-Book-preview-brown {
-  .NewWordShow {
+  .strockplay-newWord {
     .strock-play-box {
-      width: 22px;
-      height: 22px;
+      width: 16px !important;
+      height: 16px !important;
       right: -1px;
       top: 0;
       background: url("../../../assets/NPC/strock-play-yellow-click.png") center

+ 1 - 1
src/components/Adult/preview/Notes.vue

@@ -92,7 +92,7 @@ export default {
 /* @import url(); 引入css类 */
 .NPC-zhedie {
   width: 780px;
-  margin-bottom: 16px;
+  margin-bottom: 24px;
   .topTitle {
     width: 100%;
     display: flex;

+ 1 - 1
src/components/Adult/preview/Picture.vue

@@ -222,7 +222,7 @@ export default {
 //@import url(); 引入公共css类
 .Big-Book-PictureBox{
     width: 100%;
-    margin-bottom: 16px;
+    margin-bottom: 24px;
     // &.PictureBoxFlex{
     //     display: flex;
     //     justify-content: space-between;

+ 1 - 1
src/components/Adult/preview/Single.vue

@@ -136,7 +136,7 @@ ul {
     padding: 24px;
     border-radius: 8px;
     >div{
-        margin-bottom: 16px;
+        margin-bottom: 24px;
     }
     .stem-box{
         display: flex;

+ 1 - 1
src/components/Adult/preview/TextProblem.vue

@@ -113,7 +113,7 @@ export default {
     background: #F7F7F7;
     border: 1px solid rgba(0, 0, 0, 0.1);
     border-radius: 8px;
-    margin-bottom: 16px;
+    margin-bottom: 24px;
     h2{
         margin: 16px 0 0;
         font-weight: 500;

+ 1 - 1
src/components/Adult/preview/TinyModule.vue

@@ -34,7 +34,7 @@ export default {
 //@import url(); 引入公共css类
 .Big-Book-prev-Tiny{
     width: 100%;
-    margin-bottom: 16px;
+    margin-bottom: 24px;
     h2{
         margin: 16px 0 0;
         font-weight: 500;

+ 1 - 1
src/components/Adult/preview/VideoControl.vue

@@ -151,7 +151,7 @@ export default {
   box-sizing: border-box;
   border-radius: 8px;
   position: relative;
-  margin-bottom: 16px;
+  margin-bottom: 24px;
   video {
     width: 100%;
     height: 100%;

+ 1 - 1
src/components/Adult/preview/VoiceMatrix.vue

@@ -697,7 +697,7 @@ $select-color-brown-active: #a37557;
 .voice-matrix {
   height: 100%;
   width: 100%;
-  padding-bottom: 16px;
+  padding-bottom: 24px;
   color: #262626;
 
   &-audio {

+ 1 - 1
src/components/Adult/preview/WordPhrase.vue

@@ -337,7 +337,7 @@ export default {
 /* @import url(); 引入css类 */
 .NPC-zhedie {
   width: 780px;
-  margin-bottom: 16px;
+  margin-bottom: 24px;
   .practiceBox {
     position: fixed;
     left: 0;

+ 1 - 1
src/components/Adult/preview/components/WordPhraseDetail.vue

@@ -571,7 +571,7 @@ export default {
       width: 100%;
       margin: 0 auto;
       > div {
-        margin-bottom: 16px;
+        margin-bottom: 24px;
       }
       .topTitle {
         width: 100%;