Quellcode durchsuchen

思维导图数据

natasha vor 3 Tagen
Ursprung
Commit
c0348a24a7

+ 14 - 1
src/views/book/courseware/create/components/base/h5_games/H5Games.vue

@@ -37,12 +37,25 @@ export default {
       iconClass: 'zip',
     };
   },
-  watch: {},
+  watch: {
+    'data.games_list': 'handleMindMap',
+  },
   methods: {
     updateFileList({ file_list, file_id_list }) {
       this.data.games_list = file_list;
       this.data.games_id_list = file_id_list;
     },
+    handleMindMap() {
+      // 思维导图数据
+      let node_list = [];
+      this.data.games_list.forEach((item) => {
+        node_list.push({
+          name: item.file_name ?? item.name,
+          id: Math.random().toString(36).substring(2, 12),
+        });
+      });
+      this.data.mind_map.node_list = node_list;
+    },
   },
 };
 </script>

+ 9 - 0
src/views/book/courseware/create/components/base/upload_preview/UploadPreview.vue

@@ -45,6 +45,15 @@ export default {
       this.data.file_list = file_list;
       this.data.file_id_list = file_id_list;
       this.data.file_info_list = file_info_list;
+      // 思维导图数据
+      let node_list = [];
+      file_list.forEach((item) => {
+        node_list.push({
+          name: item.file_name,
+          id: Math.random().toString(36).substring(2, 12),
+        });
+      });
+      this.data.mind_map.node_list = node_list;
     },
   },
 };

+ 15 - 0
src/views/book/courseware/create/components/question/character/Character.vue

@@ -51,6 +51,9 @@ export default {
       paragraph_index: 0,
     };
   },
+  watch: {
+    'data.content': 'handleMindMap',
+  },
   methods: {
     // 解析输入内容
     handleChangeContent() {
@@ -94,6 +97,7 @@ export default {
       } else {
         this.data.content_list = [];
       }
+      this.handleMindMap();
     },
     // 自动生成音频
     handleMatic(con, index) {
@@ -130,6 +134,17 @@ export default {
         })
         .catch(() => {});
     },
+    handleMindMap() {
+      // 思维导图数据
+      let node_list = [];
+      this.data.content_list.forEach((item) => {
+        node_list.push({
+          name: item.con,
+          id: Math.random().toString(36).substring(2, 12),
+        });
+      });
+      this.data.mind_map.node_list = node_list;
+    },
   },
 };
 </script>

+ 14 - 2
src/views/book/courseware/create/components/question/image_text/ImageText.vue

@@ -143,6 +143,7 @@
                 placeholder="请输入"
                 maxlength="500"
                 show-word-limit
+                @blur="handleMindMap"
               />
               <p v-else>{{ itemh.text }}</p>
             </div>
@@ -175,8 +176,7 @@
               />
               <p v-else>{{ itemh.text }}</p>
             </div>
-            <el-button v-if="inputActiveIndex !== indexh" type="primary" size="small"
-@click="inputActiveIndex = indexh"
+            <el-button v-if="inputActiveIndex !== indexh" type="primary" size="small" @click="inputActiveIndex = indexh"
               >编辑</el-button
             >
             <el-button v-else type="primary" size="small" @click="inputActiveIndex = null">保存</el-button>
@@ -225,6 +225,7 @@ export default {
       },
       immediate: true,
     },
+    'data.text_list': 'handleMindMap',
   },
   methods: {
     updateFileList({ file_list, file_id_list, file_info_list }) {
@@ -312,6 +313,17 @@ export default {
         this.inputActiveIndex = null;
       }
     },
+    handleMindMap() {
+      // 思维导图数据
+      let node_list = [];
+      this.data.text_list.forEach((item) => {
+        node_list.push({
+          name: item.text,
+          id: Math.random().toString(36).substring(2, 12),
+        });
+      });
+      this.data.mind_map.node_list = node_list;
+    },
   },
 };
 </script>

+ 15 - 0
src/views/book/courseware/create/components/question/new_word/NewWord.vue

@@ -172,6 +172,9 @@ export default {
       data: getNewWordData(),
     };
   },
+  watch: {
+    'data.new_word_list': 'handleMindMap',
+  },
   methods: {
     /**
      * 解析lrc文件
@@ -324,6 +327,18 @@ export default {
         });
 
       row.pinyin = cnchar.spell(cons, 'array', 'low', 'tone').join(' ');
+      this.handleMindMap();
+    },
+    handleMindMap() {
+      // 思维导图数据
+      let node_list = [];
+      this.data.new_word_list.forEach((item) => {
+        node_list.push({
+          name: item.new_word,
+          id: Math.random().toString(36).substring(2, 12),
+        });
+      });
+      this.data.mind_map.node_list = node_list;
     },
   },
 };

+ 18 - 0
src/views/book/courseware/create/components/question/notes/Notes.vue

@@ -20,6 +20,7 @@
               v-model="scope.row.con"
               :inline="true"
               toolbar="fontselect fontsizeselect forecolor backcolor | underline | bold italic strikethrough alignleft aligncenter alignright"
+              @handleRichTextBlur="handleBlurCon"
             />
           </template>
         </el-table-column>
@@ -68,6 +69,9 @@ export default {
       data: getNotesData(),
     };
   },
+  watch: {
+    'data.option': 'handleMindMap',
+  },
   methods: {
     // 删除行
     handleDelete(index) {
@@ -88,6 +92,20 @@ export default {
     addElement() {
       this.data.option.push(getOption());
     },
+    handleMindMap() {
+      // 思维导图数据
+      let node_list = [];
+      this.data.option.forEach((item) => {
+        node_list.push({
+          name: item.con,
+          id: Math.random().toString(36).substring(2, 12),
+        });
+      });
+      this.data.mind_map.node_list = node_list;
+    },
+    handleBlurCon() {
+      this.handleMindMap();
+    },
   },
 };
 </script>

+ 11 - 0
src/views/book/courseware/create/components/question/pinyin_base/PinyinBase.vue

@@ -114,6 +114,7 @@ export default {
       },
       deep: true,
     },
+    'data.content': 'handleMindMap',
   },
   methods: {
     uploads(file_id) {
@@ -170,6 +171,7 @@ export default {
         this.matically_pinyin_str[mark] = '';
         this.data.content = '';
       }
+      this.handleMindMap();
     },
     handleValue(valItem) {
       let numList = [];
@@ -300,6 +302,15 @@ export default {
         .filter((item) => item.length > 0)
         .join(' ');
     },
+    handleMindMap() {
+      // 思维导图数据
+      let node_list = [];
+      node_list.push({
+        name: this.matically_pinyin_str[this.data.mark],
+        id: Math.random().toString(36).substring(2, 12),
+      });
+      this.data.mind_map.node_list = node_list;
+    },
   },
 };
 </script>

+ 16 - 1
src/views/book/courseware/create/components/question/write/Write.vue

@@ -10,7 +10,6 @@
         <template v-else>
           <UploadFile
             :courseware-id="courseware_id"
-            :component-id="id"
             :type="'picture'"
             :single-size="data.single_size"
             :total-size="data.total_size"
@@ -78,6 +77,9 @@ export default {
       paragraph_index: 0,
     };
   },
+  watch: {
+    'data.content': 'handleMindMap',
+  },
   methods: {
     // 解析输入内容
     handleChangeContent() {
@@ -122,6 +124,8 @@ export default {
       } else {
         this.data.content_list = [];
       }
+
+      this.handleMindMap();
     },
     // 自动生成音频
     handleMatic(con, index) {
@@ -166,6 +170,17 @@ export default {
         })
         .catch(() => {});
     },
+    handleMindMap() {
+      // 思维导图数据
+      let node_list = [];
+      this.data.content_list.forEach((item) => {
+        node_list.push({
+          name: item.con,
+          id: Math.random().toString(36).substring(2, 12),
+        });
+      });
+      this.data.mind_map.node_list = node_list;
+    },
   },
 };
 </script>

+ 5 - 0
src/views/book/courseware/data/article.js

@@ -64,5 +64,10 @@ export function getArticleData() {
     word_time: [], // 字幕时间
     new_word_list: [], // 生词列表
     sentence_list_mp: [], // 句子+分词数组
+    mind_map: {
+      node_list: [
+        { name: '课文组件' }
+      ], // 思维导图数据
+    },
   };
 }

+ 5 - 0
src/views/book/courseware/data/character.js

@@ -59,6 +59,11 @@ export function getCharacterData() {
     property: getCharacterProperty(),
     content: '',
     content_list: [],
+    mind_map: {
+      node_list: [
+        { name: '汉字' }
+      ], // 思维导图数据
+    },
     answer: {
       answer_list: [],
     },

+ 4 - 0
src/views/book/courseware/data/characterBase.js

@@ -104,6 +104,10 @@ export function getCharacterBaseData() {
     hz_strokes_list: [],
     mark: getRandomNumber(),
     record_list: [],
+    mind_map: {
+      node_list: [
+      ], // 思维导图数据
+    },
     answer: {
       answer_list: [],
     },

+ 6 - 1
src/views/book/courseware/data/h5Games.js

@@ -22,7 +22,12 @@ export function getH5GamesData() {
     title: 'H5游戏',
     property: getH5GamesProperty(),
     games_list: [],
-    games_id_list:[],
+    games_id_list: [],
+    mind_map: {
+      node_list: [
+        { name: 'H5游戏' }
+      ], // 思维导图数据
+    },
     answer: {
       answer_list: [],
     },

+ 4 - 0
src/views/book/courseware/data/imageText.js

@@ -35,6 +35,10 @@ export function getImageTextData() {
     image_height: 500, // 图片高度px
     text_list: [], // 文字框列表
     input_list: [], // 输入框列表
+    mind_map: {
+      node_list: [
+      ], // 思维导图数据
+    },
     answer: {
       answer_list: [],
     },

+ 5 - 0
src/views/book/courseware/data/newWord.js

@@ -95,6 +95,11 @@ export function getNewWordData() {
       url: '',
       file_id: '',
     },
+    mind_map: {
+      node_list: [
+        { name: '生词组件' }
+      ], // 思维导图数据
+    },
     answer: {
       answer_list: [],
     },

+ 5 - 0
src/views/book/courseware/data/notes.js

@@ -40,5 +40,10 @@ export function getNotesData() {
     property: getNotesProperty(),
     title_con: '',
     option: [getOption()],
+    mind_map: {
+      node_list: [
+        { name: '注释组件' }
+      ], // 思维导图数据
+    },
   };
 }

+ 5 - 0
src/views/book/courseware/data/otherWord.js

@@ -78,5 +78,10 @@ export function getOtherWordData() {
       url: '',
       file_id: '',
     },
+    mind_map: {
+      node_list: [
+        { name: '其他词汇' }
+      ], // 思维导图数据
+    },
   };
 }

+ 5 - 0
src/views/book/courseware/data/pinyinBase.js

@@ -87,6 +87,11 @@ export function getPinyinBaseData() {
     audio_file_id: '',
     mark: getRandomNumber(),
     record_list: [],
+    mind_map: {
+      node_list: [
+        { name: '拼音' }
+      ], // 思维导图数据
+    },
     answer: {
       answer_list: [],
     },

+ 7 - 2
src/views/book/courseware/data/uploadPreview.js

@@ -27,7 +27,12 @@ export function getUploadPreviewData() {
     property: getUploadPreviewProperty(),
     file_info_list: [],
     file_id_list: [], // 文件 id['20032-121212', '20032-121216']
-    // 内容中包含的文件列表,
-    file_list: [],
+    file_info:{}, // 存放文件序号
+    file_list: [],// 内容中包含的文件列表,
+    mind_map: {
+      node_list: [
+        { name: '上传组件' }
+      ], // 思维导图数据
+    }
   };
 }

+ 4 - 0
src/views/book/courseware/data/write.js

@@ -80,6 +80,10 @@ export function getWriteData() {
     file_id_list: [], // 文件 id['20032-121212', '20032-121216']
     // 内容中包含的文件列表,
     file_list: [],
+    mind_map: {
+      node_list: [
+      ], // 思维导图数据
+    },
     answer: {
       answer_list: [],
     },

+ 4 - 0
src/views/book/courseware/data/writeBase.js

@@ -88,6 +88,10 @@ export function getWriteBaseData() {
     property: getWriteBaseProperty(),
     mark: getRandomNumber(),
     write_base64: [''],
+    mind_map: {
+      node_list: [
+      ], // 思维导图数据
+    },
     answer: {
       answer_list: [],
     },