Browse Source

audinput无法添加模板的问题

秦鹏 3 years ago
parent
commit
6dcd2a9ed7
2 changed files with 970 additions and 799 deletions
  1. 769 769
      src/components/Adult/common/data.js
  2. 201 30
      src/views/adultInput.vue

+ 769 - 769
src/components/Adult/common/data.js

@@ -1,798 +1,798 @@
 let fnData = [{
-  type: "article_chs",
-  name: "课文",
-}, {
-  type: "dialogue_article_chs",
-  name: "对话课文",
-},
-{
-  type: "sentence_segword_chs",
-  name: "句子分词",
-},
-{
-  type: "NewWord_chs",
-  name: "生词",
-},
-{
-  type: "notes_chs",
-  name: "注释",
-
-}, {
-  type: "dialogue_answer_chs",
-  name: "对话题模板"
-}, {
-  type: "sentence_chs",
-  name: "句子模板",
-  list: [{
-    type: "sentence_input_chs",
-    name: "句子填空",
-  },
-  {
-    type: "sentence_judge_chs",
-    name: "句子判断",
-  },
-  {
-    type: "sentence_record_chs",
-    name: "句子录音",
-  },
-  {
-    type: "sentence_input_record_chs",
-    name: "句子填空+录音",
-  }
-  ],
-
-}, {
-  type: "image_question",
-  name: "看图模板",
-  list: [{
-    type: "image_question_input",
-    name: "看图填空",
-  }, {
-    type: "image_question_record",
-    name: "看图录入",
-  }, {
-    type: "image_question_input_record",
-    name: "看图填空+录入",
-  }]
-}, {
-  type: "voice_matrix",
-  name: "语音矩阵",
-}, {
-  type: "divider",
-  name: "分割线",
-  data_structure: {
-    type: 'divider',
-    name: "分割线",
-  }
-},
-{
-  type: "text",
-  name: "文本描述",
-  data_structure: {
-    type: 'text',
-    name: "文本描述",
-    con: '',
-    pinyin: '',
-    english: '',
-    img_list: [],
-    mp3_list: []
-  }
-},
-{
-  type: "single_chs",
-  name: "单选题",
-},
-{
-  type: "listen_record_single_chs",
-  name: "听录音选答案",
-},
-{
-  type: "checkbox_chs",
-  name: "多选题",
-},
-{
-  type: "judge",
-  name: "判断题",
-  data_structure: {
-    type: 'judge',
-    name: "判断题",
-    title: "",
-    con: '',
-    pinyin: '',
-    img_list: [],
-    mp3_list: [],
-    judge: ''
-  }
-},
-{
-  type: "multiRowInput",
-  name: "多行文本题",
-  data_structure: {
-    type: 'multiRowInput',
-    name: "多行文本题",
-    title: "",
-    con: [{
-      con: '',
-      annotation: "", //注释
-    }],
-    pinyin: '',
-    img_list: [],
-    mp3_list: [],
-    fn_list: [{
-      type: 'astrictNumber',
-      name: '限制字数',
-      isFn: false,
-    },],
-  }
-},
-{
-  type: "singleRowInput",
-  name: "单行文本题",
-  data_structure: {
-    type: 'singleRowInput',
-    name: "单行文本题",
-    title: "",
+        type: "article_chs",
+        name: "课文",
+    }, {
+        type: "dialogue_article_chs",
+        name: "对话课文",
+    },
+    {
+        type: "sentence_segword_chs",
+        name: "句子分词",
+    },
+    {
+        type: "NewWord_chs",
+        name: "生词",
+    },
+    {
+        type: "notes_chs",
+        name: "注释",
 
-    con: [{
-      con: '',
-      annotation: "", //注释
-    }],
-    pinyin: '',
-    img_list: [],
-    mp3_list: [],
-    fn_list: [{
-      type: 'astrictNumber',
-      name: '限制字数',
-      isFn: false,
-    },],
-  }
-},
-{
-  type: "hanzi",
-  name: "汉字模版",
-  data_structure: {
-    type: 'hanzi',
-    name: "汉字模版",
-    title: "",
-    option: [{
-      hanzi: '',
-      pinyin: '',
-      mp3_list: [],
-      img_list: [],
-      definition_list: [''],
-      isAnswer: '',
-      isChecked: '',
-      isJudge: '',
-      correctInput: ''
-    }],
+    }, {
+        type: "dialogue_answer_chs",
+        name: "对话题模板"
+    }, {
+        type: "sentence_chs",
+        name: "句子模板",
+        list: [{
+                type: "sentence_input_chs",
+                name: "句子填空",
+            },
+            {
+                type: "sentence_judge_chs",
+                name: "句子判断",
+            },
+            {
+                type: "sentence_record_chs",
+                name: "句子录音",
+            },
+            {
+                type: "sentence_input_record_chs",
+                name: "句子填空+录音",
+            }
+        ],
 
-    correct: [{
-      single: [],
-      checkBox: [],
-      judge: [],
-      input: [],
-      spell: []
-    }],
-    fn_list: [{
-      type: 'def',
-      name: '更多释义',
-      isFn: false,
-      isDisable: false,
+    }, {
+        type: "image_question",
+        name: "看图模板",
+        list: [{
+            type: "image_question_input",
+            name: "看图填空",
+        }, {
+            type: "image_question_record",
+            name: "看图录入",
+        }, {
+            type: "image_question_input_record",
+            name: "看图填空+录入",
+        }]
+    }, {
+        type: "voice_matrix",
+        name: "语音矩阵",
+    }, {
+        type: "divider",
+        name: "分割线",
+        data_structure: {
+            type: 'divider',
+            name: "分割线",
+        }
     },
     {
-      type: 'record',
-      name: '跟读',
-      isFn: false,
-      isDisable: false,
+        type: "text",
+        name: "文本描述",
+        data_structure: {
+            type: 'text',
+            name: "文本描述",
+            con: '',
+            pinyin: '',
+            english: '',
+            img_list: [],
+            mp3_list: []
+        }
     },
     {
-      type: 'spell',
-      name: '拼写',
-      isFn: false,
-      isDisable: false,
+        type: "single_chs",
+        name: "单选题",
     },
     {
-      type: 'input',
-      name: '输入',
-      isFn: false,
-      isDisable: false,
+        type: "listen_record_single_chs",
+        name: "听录音选答案",
     },
     {
-      type: 'copy',
-      name: '摹写',
-      isFn: false,
-      isDisable: false,
+        type: "checkbox_chs",
+        name: "多选题",
     },
     {
-      type: 'single',
-      name: '单选',
-      isFn: false,
-      isDisable: false,
-    }, {
-      type: 'checkBox',
-      name: '多选',
-      isFn: false,
-      isDisable: false,
-    }, {
-      type: 'judge',
-      name: '判断',
-      isFn: false,
-      isDisable: false,
-    },
-    ]
-  },
-},
-{
-  type: "image",
-  name: "图片控件",
-  list: [{
-    type: 'image_checkBox',
-    name: "图片多选",
-  },
-  {
-    type: 'image_judge',
-    name: "图片判断",
-  },
-  {
-    type: 'image_single',
-    name: "图片单选",
-  },
-  {
-    type: 'image_dobleinput',
-    name: "双输入",
-  },
-  {
-    type: 'image_gdcy',
-    name: "固定词语",
-  },
-  {
-    type: 'image_input',
-    name: "单行输入",
-  },
-  {
-    type: "imgage_image",
-    name: "纯图片",
-  },
-  ],
-  data_structure: {
-    type: 'image',
-    name: "图片控件",
-    title: "",
-    option: [{
-      hanzi: '',
-      pinyin: '',
-      mp3_list: [],
-      img_list: [],
-      isAnswer: '',
-      isChecked: '',
-      isJudge: '',
-      correctInput: '',
-    }],
-    correct: [{
-      single: [],
-      checkBox: [],
-      judge: [],
-      input: [],
-      spell: []
-    }],
-    fn_list: [{
-      type: 'image_record',
-      name: '跟读',
-      isFn: false,
-      isDisable: false,
-    },
-    {
-      type: 'image_spell',
-      name: '拼写',
-      isFn: false,
-      isDisable: false,
-    },
-    {
-      type: 'image_input',
-      name: '输入',
-      isFn: false,
-      isDisable: false,
-    },
-    {
-      type: 'image_dobleinput',
-      name: '双输入',
-      isFn: false,
-      isDisable: false,
-    },
-    {
-      type: 'image_single',
-      name: '单选',
-      isFn: false,
-      isDisable: false,
-    }, {
-      type: 'image_checkBox',
-      name: '多选',
-      isFn: false,
-      isDisable: false,
-    }, {
-      type: 'image_judge',
-      name: '判断',
-      isFn: false,
-      isDisable: false,
-    },
-    ],
-    numberList: {
-      type: "number",
-      name: "每行几个",
-      con: "2",
-      arr: [{
-        id: 1,
-        value: 1,
-      }, {
-        id: 2,
-        value: 2,
-
-      }, {
-        id: 3,
-        value: 3,
-      },
-      {
-        id: 4,
-        value: 4,
-      },
-      ]
-    }
-  },
-},
-
-{
-  type: "audio_control",
-  name: "音频控制条",
-  data_structure: {
-    type: 'audio_control',
-    name: "音频控制条",
-    option: [{
-      xuhao: '',
-      yinbiao: '',
-      img_list: [],
-      mp3_list: [],
-      isAnswer: ''
-    },],
-  }
-},
-{
-  type: "audio_control_easy",
-  name: "音频控制条-简易",
-  data_structure: {
-    type: 'audio_control_easy',
-    name: "音频控制条-简易",
-    option: [{
-      xuhao: '',
-      yinbiao: '',
-      img_list: [],
-      mp3_list: [],
-      isAnswer: ''
-    },],
-  }
-},
-{
-  type: "input_record_chs",
-  name: "输入+录音",
-},
-{
-  type: "recordHZ_inputPY_chs",
-  name: "读汉字写拼音",
-},
-{
-  type: "inputItem_chs",
-  name: "输入选项",
-},
-{
-  type: "upload_control_chs",
-  name: "上传控件",
-},
-{
-  type: "upload_control_preview_chs",
-  name: "上传控件预览查看",
-},
-// {
-//     type: "inputItem_chs",
-//     name: "输入选项",
-// },
-{
-  type: "switch_control",
-  name: "开关控件",
-  data_structure: {
-    type: 'switch_control',
-    name: "开关控件",
-    con: "",
-    option: [{
-      con: "", //标题
-      answer: "", //答案
-      record: false, //需要录音
-      mp3_list: [],
-    },],
-  }
-},
-{
-  type: "record_control",
-  name: "录音控件",
-  list: [{
-    type: 'record_control_mini',
-    name: "录音控件-mini",
-  },
-  {
-    type: 'record_control_normal',
-    name: "录音控件-normal",
-  },
-  {
-    type: 'record_control_pro',
-    name: "录音控件-pro",
-  },
-  {
-    type: 'record_control_promax',
-    name: "录音控件-promax",
-  },
-  ],
-  data_structure: {
-    type: 'record_control',
-    name: "录音控件",
-    option: [{
-      hanzi: '',
-      pinyin: '',
-      mp3_list: [],
-      img_list: [],
-      isAnswer: '',
-      isChecked: '',
-      isJudge: '',
-      correctInput: '',
-    }],
-  },
-},
-{
-  type: "pure_input",
-  name: "纯输入",
-  data_structure: {
-    type: 'pure_input',
-    name: "纯输入",
-    option: [{
-      answer: "",
-    },],
-    answer: "",
-    record: false, //需要录音
-    mp3_list: [],
-  }
-},
-{
-  type: "matrixSingle",
-  name: "矩阵单选",
-  data_structure: {
-    type: 'matrixSingle',
-    name: "矩阵单选",
-    title: "",
-    con: [{
-      con: "",
-      Answer: "",
-    },
-    {
-      con: "",
-      Answer: "",
-    },
-    ],
-    option: [{
-      con: '',
-      pinyin: '',
-      img_list: [],
-      mp3_list: [],
-      isAnswer: ''
-    },
-    {
-      con: '',
-      pinyin: '',
-      img_list: [],
-      mp3_list: [],
-      isAnswer: ''
-    }
-    ],
-    correct: ["", ""]
-  }
-},
-{
-  type: "matrixChckbox",
-  name: "矩阵多选",
-  data_structure: {
-    type: 'matrixChckbox',
-    name: "矩阵多选",
-    title: "",
+        type: "judge",
+        name: "判断题",
+        data_structure: {
+            type: 'judge',
+            name: "判断题",
+            title: "",
+            con: '',
+            pinyin: '',
+            img_list: [],
+            mp3_list: [],
+            judge: ''
+        }
+    },
+    {
+        type: "multiRowInput",
+        name: "多行文本题",
+        data_structure: {
+            type: 'multiRowInput',
+            name: "多行文本题",
+            title: "",
+            con: [{
+                con: '',
+                annotation: "", //注释
+            }],
+            pinyin: '',
+            img_list: [],
+            mp3_list: [],
+            fn_list: [{
+                type: 'astrictNumber',
+                name: '限制字数',
+                isFn: false,
+            }, ],
+        }
+    },
+    {
+        type: "singleRowInput",
+        name: "单行文本题",
+        data_structure: {
+            type: 'singleRowInput',
+            name: "单行文本题",
+            title: "",
 
-    con: [{
-      con: "",
-      AnswerList: [],
+            con: [{
+                con: '',
+                annotation: "", //注释
+            }],
+            pinyin: '',
+            img_list: [],
+            mp3_list: [],
+            fn_list: [{
+                type: 'astrictNumber',
+                name: '限制字数',
+                isFn: false,
+            }, ],
+        }
     },
     {
-      type: "matrixChekbox",
-      name: "矩阵多选",
-      data_structure: {
-        type: 'matrixChekbox',
-        name: "矩阵多选",
-        con: [{
-          con: "",
-          AnswerList: [],
-        },
-        {
-          con: "",
-          AnswerList: [],
+        type: "hanzi",
+        name: "汉字模版",
+        data_structure: {
+            type: 'hanzi',
+            name: "汉字模版",
+            title: "",
+            option: [{
+                hanzi: '',
+                pinyin: '',
+                mp3_list: [],
+                img_list: [],
+                definition_list: [''],
+                isAnswer: '',
+                isChecked: '',
+                isJudge: '',
+                correctInput: ''
+            }],
+
+            correct: [{
+                single: [],
+                checkBox: [],
+                judge: [],
+                input: [],
+                spell: []
+            }],
+            fn_list: [{
+                    type: 'def',
+                    name: '更多释义',
+                    isFn: false,
+                    isDisable: false,
+                },
+                {
+                    type: 'record',
+                    name: '跟读',
+                    isFn: false,
+                    isDisable: false,
+                },
+                {
+                    type: 'spell',
+                    name: '拼写',
+                    isFn: false,
+                    isDisable: false,
+                },
+                {
+                    type: 'input',
+                    name: '输入',
+                    isFn: false,
+                    isDisable: false,
+                },
+                {
+                    type: 'copy',
+                    name: '摹写',
+                    isFn: false,
+                    isDisable: false,
+                },
+                {
+                    type: 'single',
+                    name: '单选',
+                    isFn: false,
+                    isDisable: false,
+                }, {
+                    type: 'checkBox',
+                    name: '多选',
+                    isFn: false,
+                    isDisable: false,
+                }, {
+                    type: 'judge',
+                    name: '判断',
+                    isFn: false,
+                    isDisable: false,
+                },
+            ]
         },
+    },
+    {
+        type: "image",
+        name: "图片控件",
+        list: [{
+                type: 'image_checkBox',
+                name: "图片多选",
+            },
+            {
+                type: 'image_judge',
+                name: "图片判断",
+            },
+            {
+                type: 'image_single',
+                name: "图片单选",
+            },
+            {
+                type: 'image_dobleinput',
+                name: "双输入",
+            },
+            {
+                type: 'image_gdcy',
+                name: "固定词语",
+            },
+            {
+                type: 'image_input',
+                name: "单行输入",
+            },
+            {
+                type: "imgage_image",
+                name: "纯图片",
+            },
         ],
-        option: [{
-          con: '',
-          pinyin: '',
-          img_list: [],
-          mp3_list: [],
-          isAnswer: ''
+        data_structure: {
+            type: 'image',
+            name: "图片控件",
+            title: "",
+            option: [{
+                hanzi: '',
+                pinyin: '',
+                mp3_list: [],
+                img_list: [],
+                isAnswer: '',
+                isChecked: '',
+                isJudge: '',
+                correctInput: '',
+            }],
+            correct: [{
+                single: [],
+                checkBox: [],
+                judge: [],
+                input: [],
+                spell: []
+            }],
+            fn_list: [{
+                    type: 'image_record',
+                    name: '跟读',
+                    isFn: false,
+                    isDisable: false,
+                },
+                {
+                    type: 'image_spell',
+                    name: '拼写',
+                    isFn: false,
+                    isDisable: false,
+                },
+                {
+                    type: 'image_input',
+                    name: '输入',
+                    isFn: false,
+                    isDisable: false,
+                },
+                {
+                    type: 'image_dobleinput',
+                    name: '双输入',
+                    isFn: false,
+                    isDisable: false,
+                },
+                {
+                    type: 'image_single',
+                    name: '单选',
+                    isFn: false,
+                    isDisable: false,
+                }, {
+                    type: 'image_checkBox',
+                    name: '多选',
+                    isFn: false,
+                    isDisable: false,
+                }, {
+                    type: 'image_judge',
+                    name: '判断',
+                    isFn: false,
+                    isDisable: false,
+                },
+            ],
+            numberList: {
+                type: "number",
+                name: "每行几个",
+                con: "2",
+                arr: [{
+                        id: 1,
+                        value: 1,
+                    }, {
+                        id: 2,
+                        value: 2,
+
+                    }, {
+                        id: 3,
+                        value: 3,
+                    },
+                    {
+                        id: 4,
+                        value: 4,
+                    },
+                ]
+            }
         },
-        {
-          con: '',
-          pinyin: '',
-          img_list: [],
-          mp3_list: [],
-          isAnswer: ''
+    },
+
+    {
+        type: "audio_control",
+        name: "音频控制条",
+        data_structure: {
+            type: 'audio_control',
+            name: "音频控制条",
+            option: [{
+                xuhao: '',
+                yinbiao: '',
+                img_list: [],
+                mp3_list: [],
+                isAnswer: ''
+            }, ],
+        }
+    },
+    {
+        type: "audio_control_easy",
+        name: "音频控制条-简易",
+        data_structure: {
+            type: 'audio_control_easy',
+            name: "音频控制条-简易",
+            option: [{
+                xuhao: '',
+                yinbiao: '',
+                img_list: [],
+                mp3_list: [],
+                isAnswer: ''
+            }, ],
         }
+    },
+    {
+        type: "input_record_chs",
+        name: "输入+录音",
+    },
+    {
+        type: "recordHZ_inputPY_chs",
+        name: "读汉字写拼音",
+    },
+    {
+        type: "inputItem_chs",
+        name: "输入选项",
+    },
+    {
+        type: "upload_control_chs",
+        name: "上传控件",
+    },
+    {
+        type: "upload_control_preview_chs",
+        name: "上传控件预览查看",
+    },
+    // {
+    //     type: "inputItem_chs",
+    //     name: "输入选项",
+    // },
+    {
+        type: "switch_control",
+        name: "开关控件",
+        data_structure: {
+            type: 'switch_control',
+            name: "开关控件",
+            con: "",
+            option: [{
+                con: "", //标题
+                answer: "", //答案
+                record: false, //需要录音
+                mp3_list: [],
+            }, ],
+        }
+    },
+    {
+        type: "record_control",
+        name: "录音控件",
+        list: [{
+                type: 'record_control_mini',
+                name: "录音控件-mini",
+            },
+            {
+                type: 'record_control_normal',
+                name: "录音控件-normal",
+            },
+            {
+                type: 'record_control_pro',
+                name: "录音控件-pro",
+            },
+            {
+                type: 'record_control_promax',
+                name: "录音控件-promax",
+            },
         ],
-        correct: [
-          [],
-          []
-        ]
-      }
+        data_structure: {
+            type: 'record_control',
+            name: "录音控件",
+            option: [{
+                hanzi: '',
+                pinyin: '',
+                mp3_list: [],
+                img_list: [],
+                isAnswer: '',
+                isChecked: '',
+                isJudge: '',
+                correctInput: '',
+            }],
+        },
+    },
+    {
+        type: "pure_input",
+        name: "纯输入",
+        data_structure: {
+            type: 'pure_input',
+            name: "纯输入",
+            option: [{
+                answer: "",
+            }, ],
+            answer: "",
+            record: false, //需要录音
+            mp3_list: [],
+        }
+    },
+    {
+        type: "matrixSingle",
+        name: "矩阵单选",
+        data_structure: {
+            type: 'matrixSingle',
+            name: "矩阵单选",
+            title: "",
+            con: [{
+                    con: "",
+                    Answer: "",
+                },
+                {
+                    con: "",
+                    Answer: "",
+                },
+            ],
+            option: [{
+                    con: '',
+                    pinyin: '',
+                    img_list: [],
+                    mp3_list: [],
+                    isAnswer: ''
+                },
+                {
+                    con: '',
+                    pinyin: '',
+                    img_list: [],
+                    mp3_list: [],
+                    isAnswer: ''
+                }
+            ],
+            correct: ["", ""]
+        }
     },
-
     {
-      con: '',
-      pinyin: '',
-      img_list: [],
-      mp3_list: [],
-      isAnswer: ''
-    }
-    ],
-    correct: [
-      [],
-      []
-    ]
-  }
-},
+        type: "matrixChckbox",
+        name: "矩阵多选",
+        data_structure: {
+            type: 'matrixChckbox',
+            name: "矩阵多选",
+            title: "",
+
+            con: [{
+                    con: "",
+                    AnswerList: [],
+                },
+                {
+                    type: "matrixChekbox",
+                    name: "矩阵多选",
+                    data_structure: {
+                        type: 'matrixChekbox',
+                        name: "矩阵多选",
+                        con: [{
+                                con: "",
+                                AnswerList: [],
+                            },
+                            {
+                                con: "",
+                                AnswerList: [],
+                            },
+                        ],
+                        option: [{
+                                con: '',
+                                pinyin: '',
+                                img_list: [],
+                                mp3_list: [],
+                                isAnswer: ''
+                            },
+                            {
+                                con: '',
+                                pinyin: '',
+                                img_list: [],
+                                mp3_list: [],
+                                isAnswer: ''
+                            }
+                        ],
+                        correct: [
+                            [],
+                            []
+                        ]
+                    }
+                },
+
+                {
+                    con: '',
+                    pinyin: '',
+                    img_list: [],
+                    mp3_list: [],
+                    isAnswer: ''
+                }
+            ],
+            correct: [
+                [],
+                []
+            ]
+        }
+    },
 
-{
-  type: "text_input_RecoedItem",
-  name: "文字+录入+录音条",
-  data_structure: {
-    type: "text_input_RecoedItem",
-    name: "文字+录入+录音条",
-    title: "",
-    option: [{
-      number: "",
-      con: "",
-      answer: "",
-    },]
-  },
-},
-{
-  type: "dialogue",
-  name: "对话题",
-  data_structure: {
-    type: 'dialogue',
-    name: "对话题",
-    title: "",
-    option: [{
-      roleName: "",
-      site: "left",
-      con: '',
-      number: "",
-      isRecord: "", //是否需要录音
-      mp3_list: [],
-      img_list: [],
-      definition_list: [],
-      AnswerList: [""],
-      isAnswer: '',
-      isChecked: '',
-      judge: '',
-      correctInput: ''
-    },
-    {
-      roleName: "",
-      site: "left",
-      con: '',
-      number: "",
-      isRecord: "", //是否需要录音
-      mp3_list: [],
-      img_list: [],
-      definition_list: [],
-      AnswerList: [""],
-      isAnswer: '',
-      isChecked: '',
-      judge: '',
-      correctInput: ''
-    },
-    ],
-    fn_list: [
-      // {
-      //       type: 'def',
-      //       name: '更多释义',
-      //       isFn: false,
-      //   },
-      {
-        type: 'record',
-        name: '跟读',
-        isFn: false,
-      },
-      // {
-      //     type: 'spell',
-      //     name: '拼写',
-      //     isFn: false,
-      // },
-      {
-        type: 'input',
-        name: '输入',
-        isFn: false,
-      },
-      // {
-      //     type: 'copy',
-      //     name: '摹写',
-      //     isFn: false,
-      // },
-      // {
-      //     type: 'single',
-      //     name: '单选',
-      //     isFn: false,
-      // }, {
-      //     type: 'checkout',
-      //     name: '多选',
-      //     isFn: false,
-      // }, {
-      //     type: 'judge',
-      //     name: '判断',
-      //     isFn: false,
-      // },
-    ],
-    correct: [{
-      input: ["", ""],
-    }]
-  },
-},
-{
-  type: "ligature_chs",
-  name: "连线",
-},
-{
-  type: "record",
-  name: "录音题",
-  data_structure: {
-    type: "record",
-    name: "录音题",
-    title: "",
-    option: [{
-      mp3_list: [],
-      con: "",
-      value: "",
-    },]
-  }
-},
-{
-  type: "hearRecord",
-  name: "听录音题",
-  data_structure: {
-    type: "hearRecord",
-    name: "听录音题",
+    {
+        type: "text_input_RecoedItem",
+        name: "文字+录入+录音条",
+        data_structure: {
+            type: "text_input_RecoedItem",
+            name: "文字+录入+录音条",
+            title: "",
+            option: [{
+                number: "",
+                con: "",
+                answer: "",
+            }, ]
+        },
+    },
+    {
+        type: "dialogue",
+        name: "对话题",
+        data_structure: {
+            type: 'dialogue',
+            name: "对话题",
+            title: "",
+            option: [{
+                    roleName: "",
+                    site: "left",
+                    con: '',
+                    number: "",
+                    isRecord: "", //是否需要录音
+                    mp3_list: [],
+                    img_list: [],
+                    definition_list: [],
+                    AnswerList: [""],
+                    isAnswer: '',
+                    isChecked: '',
+                    judge: '',
+                    correctInput: ''
+                },
+                {
+                    roleName: "",
+                    site: "left",
+                    con: '',
+                    number: "",
+                    isRecord: "", //是否需要录音
+                    mp3_list: [],
+                    img_list: [],
+                    definition_list: [],
+                    AnswerList: [""],
+                    isAnswer: '',
+                    isChecked: '',
+                    judge: '',
+                    correctInput: ''
+                },
+            ],
+            fn_list: [
+                // {
+                //       type: 'def',
+                //       name: '更多释义',
+                //       isFn: false,
+                //   },
+                {
+                    type: 'record',
+                    name: '跟读',
+                    isFn: false,
+                },
+                // {
+                //     type: 'spell',
+                //     name: '拼写',
+                //     isFn: false,
+                // },
+                {
+                    type: 'input',
+                    name: '输入',
+                    isFn: false,
+                },
+                // {
+                //     type: 'copy',
+                //     name: '摹写',
+                //     isFn: false,
+                // },
+                // {
+                //     type: 'single',
+                //     name: '单选',
+                //     isFn: false,
+                // }, {
+                //     type: 'checkout',
+                //     name: '多选',
+                //     isFn: false,
+                // }, {
+                //     type: 'judge',
+                //     name: '判断',
+                //     isFn: false,
+                // },
+            ],
+            correct: [{
+                input: ["", ""],
+            }]
+        },
+    },
+    {
+        type: "ligature_chs",
+        name: "连线",
+    },
+    {
+        type: "record",
+        name: "录音题",
+        data_structure: {
+            type: "record",
+            name: "录音题",
+            title: "",
+            option: [{
+                mp3_list: [],
+                con: "",
+                value: "",
+            }, ]
+        }
+    },
+    {
+        type: "hearRecord",
+        name: "听录音题",
+        data_structure: {
+            type: "hearRecord",
+            name: "听录音题",
 
-    title: "",
-    option: [{
-      mp3_list: [],
-      con: "",
-      value: "",
-    },]
-  }
-},
-// {
-//     type: "sort",
-//     name: "排序题",
-// },
-// {
-//     type: "blank",
-//     name: "填空题",
-// },
-// {
-//     type: "annex",
-//     name: "附件题",
-// },
-// {
-//     type: "dropdown",
-//     name: "下拉题",
-// },
-// {
-//     type: "drawing",
-//     name: "画图题",
-// },
-{
-  type: "text_item",
-  name: "文本条",
-  data_structure: {
-    type: "text_item",
-    name: "文本条",
-    title: "",
-    option: [{
-      number: "",
-      con: "",
-    }],
-    numberList: {
-      type: "number",
-      name: "每行几个",
-      con: "2",
-      arr: [{
-        id: 1,
-        value: 1,
-      }, {
-        id: 2,
-        value: 2,
+            title: "",
+            option: [{
+                mp3_list: [],
+                con: "",
+                value: "",
+            }, ]
+        }
+    },
+    // {
+    //     type: "sort",
+    //     name: "排序题",
+    // },
+    // {
+    //     type: "blank",
+    //     name: "填空题",
+    // },
+    // {
+    //     type: "annex",
+    //     name: "附件题",
+    // },
+    // {
+    //     type: "dropdown",
+    //     name: "下拉题",
+    // },
+    // {
+    //     type: "drawing",
+    //     name: "画图题",
+    // },
+    {
+        type: "text_item",
+        name: "文本条",
+        data_structure: {
+            type: "text_item",
+            name: "文本条",
+            title: "",
+            option: [{
+                number: "",
+                con: "",
+            }],
+            numberList: {
+                type: "number",
+                name: "每行几个",
+                con: "2",
+                arr: [{
+                        id: 1,
+                        value: 1,
+                    }, {
+                        id: 2,
+                        value: 2,
 
-      }, {
-        id: 3,
-        value: 3,
-      },
-      {
-        id: 4,
-        value: 4,
-      },
-      ]
-    }
-  }
-},
-{
-  type: "bg_control",
-  name: "背景图控件",
-  data_structure: {
-    type: 'bg_control',
-    name: "背景图控件",
-    img_list: [],
-  }
-},
-{
-  type: "NumberCombination_chs",
-  name: "数字组合",
-},
-{
-  type: "toneSelect_chs",
-  name: "音调选择",
-},
-{
-  type: "sudoku_chs",
-  name: "数独",
-},
-{
-  type: "text_problem_chs",
-  name: "课文上方的问题",
-},
-{
-  type: "newWord_preview_chs",
-  name: "生字展示",
-},
-{
-  type: "listen_record_single_syllable_chs",
-  name: "听录音选音节",
-},
-{
-  type: "zi_transverse_line_chs",
-  name: "字+横线",
-},
-{
-  type: "select_input_chs",
-  name: "选择填空控件",
-},
-{
-  type: "play_input_record_chs",
-  name: "播放+输入+录音",
-},
-{
-  type: "drag_chs",
-  name: "拖拽",
-},
-{
-  type: "sort_chs",
-  name: "排序"
-},
+                    }, {
+                        id: 3,
+                        value: 3,
+                    },
+                    {
+                        id: 4,
+                        value: 4,
+                    },
+                ]
+            }
+        }
+    },
+    {
+        type: "bg_control",
+        name: "背景图控件",
+        data_structure: {
+            type: 'bg_control',
+            name: "背景图控件",
+            img_list: [],
+        }
+    },
+    {
+        type: "NumberCombination_chs",
+        name: "数字组合",
+    },
+    {
+        type: "toneSelect_chs",
+        name: "音调选择",
+    },
+    {
+        type: "sudoku_chs",
+        name: "数独",
+    },
+    {
+        type: "text_problem_chs",
+        name: "课文上方的问题",
+    },
+    {
+        type: "newWord_preview_chs",
+        name: "生字展示",
+    },
+    {
+        type: "listen_record_single_syllable_chs",
+        name: "听录音选音节",
+    },
+    {
+        type: "zi_transverse_line_chs",
+        name: "字+横线",
+    },
+    {
+        type: "select_input_chs",
+        name: "选择填空控件",
+    },
+    {
+        type: "play_input_record_chs",
+        name: "播放+输入+录音",
+    },
+    {
+        type: "drag_chs",
+        name: "拖拽",
+    },
+    {
+        type: "sort_chs",
+        name: "排序"
+    },
 ]
 
 

+ 201 - 30
src/views/adultInput.vue

@@ -47,7 +47,8 @@
                 style="margin-left: 10px"
                 type="primary"
                 @click="createTable"
-              >增加题</el-button>
+                >增加题</el-button
+              >
             </div>
             <div
               v-for="(topic, toindex) in item.cur_fn_data"
@@ -99,8 +100,8 @@
                     <template
                       v-if="
                         topicIitem.type == 'article_chs' ||
-                          (topicIitem.data &&
-                            topicIitem.data.type == 'article_chs')
+                        (topicIitem.data &&
+                          topicIitem.data.type == 'article_chs')
                       "
                     >
                       <template v-if="topicIitem.is_edit">
@@ -181,11 +182,11 @@
                     <template
                       v-if="
                         topicIitem.type == 'recordHZ_inputPY_chs' ||
-                          topicIitem.type == 'inputItem_chs' ||
-                          topicIitem.type == 'sentence_input_chs' ||
-                          topicIitem.type == 'sentence_judge_chs' ||
-                          topicIitem.type == 'sentence_record_chs' ||
-                          topicIitem.type == 'sentence_input_record_chs'
+                        topicIitem.type == 'inputItem_chs' ||
+                        topicIitem.type == 'sentence_input_chs' ||
+                        topicIitem.type == 'sentence_judge_chs' ||
+                        topicIitem.type == 'sentence_record_chs' ||
+                        topicIitem.type == 'sentence_input_record_chs'
                       "
                     >
                       <template v-if="topicIitem.is_edit">
@@ -255,6 +256,157 @@
                         />
                       </template>
                     </template>
+                                        <template v-if="topicIitem.type == 'ligature_chs'">
+                      <template v-if="topicIitem.is_edit">
+                        <Ligature
+                          :curQue="topicIitem.data"
+                          :fn_data="fn_data"
+                          :changeCurQue="changeCurQue"
+                        />
+                      </template>
+                      <template v-else>
+                        <Ligatureview :curQue="topicIitem.data" />
+                      </template>
+                    </template>
+                    <template
+                      v-if="topicIitem.type == 'image_question_input_record'"
+                    >
+                      <template v-if="topicIitem.is_edit">
+                        <ImageQuestion
+                          :curQue="topicIitem.data"
+                          :type="topicIitem.type"
+                          :fn_data="fn_data"
+                          :changeCurQue="changeCurQue"
+                        />
+                      </template>
+                      <template v-else> </template>
+                    </template>
+                    <template
+                      v-if="
+                        topicIitem.type == 'single_chs' ||
+                        topicIitem.type == 'checkbox_chs' ||
+                        topicIitem.type == 'listen_record_single_chs'
+                      "
+                    >
+                      <template v-if="topicIitem.is_edit">
+                        <Single
+                          :curQue="topicIitem.data"
+                          :type="topicIitem.type"
+                          :fn_data="fn_data"
+                          :changeCurQue="changeCurQue"
+                        />
+                      </template>
+                      <template v-else> </template>
+                    </template>
+
+                    <template
+                      v-if="
+                        topicIitem.type == 'text_problem_chs' ||
+                        topicIitem.type == 'newWord_preview_chs' ||
+                        topicIitem.type == 'listen_record_single_syllable_chs'
+                      "
+                    >
+                      <template v-if="topicIitem.is_edit">
+                        <PurePreview
+                          :curQue="topicIitem.data"
+                          :type="topicIitem.type"
+                          :fn_data="fn_data"
+                          :changeCurQue="changeCurQue"
+                        />
+                      </template>
+                      <template v-else> </template>
+                    </template>
+                    <template
+                      v-if="topicIitem.type == 'zi_transverse_line_chs'"
+                    >
+                      <template v-if="topicIitem.is_edit">
+                        <ZiLine
+                          :curQue="topicIitem.data"
+                          :type="topicIitem.type"
+                          :fn_data="fn_data"
+                          :changeCurQue="changeCurQue"
+                        />
+                      </template>
+                      <template v-else> </template>
+                    </template>
+                    <template v-if="topicIitem.type == 'select_input_chs'">
+                      <template v-if="topicIitem.is_edit">
+                        <SelectInpue
+                          :curQue="topicIitem.data"
+                          :type="topicIitem.type"
+                          :fn_data="fn_data"
+                          :changeCurQue="changeCurQue"
+                        />
+                      </template>
+                      <template v-else> </template>
+                    </template>
+                    <template v-if="topicIitem.type == 'play_input_record_chs'">
+                      <template v-if="topicIitem.is_edit">
+                        <PlayInputReacord
+                          :curQue="topicIitem.data"
+                          :type="topicIitem.type"
+                          :fn_data="fn_data"
+                          :changeCurQue="changeCurQue"
+                        />
+                      </template>
+                      <template v-else> </template>
+                    </template>
+                    <template
+                      v-if="
+                        topicIitem.type == 'imgage_image' ||
+                        topicIitem.type == 'image_checkBox' ||
+                        topicIitem.type == 'image_judge' ||
+                        topicIitem.type == 'image_single' ||
+                        topicIitem.type == 'image_dobleinput' ||
+                        topicIitem.type == 'image_gdcy' ||
+                        topicIitem.type == 'image_input'
+                      "
+                    >
+                      <template v-if="topicIitem.is_edit">
+                        <Picture
+                          :curQue="topicIitem.data"
+                          :type="topicIitem.type"
+                          :fn_data="fn_data"
+                          :changeCurQue="changeCurQue"
+                        />
+                      </template>
+                      <template v-else> </template>
+                    </template>
+                    <template v-if="topicIitem.type == 'drag_chs'">
+                      <template v-if="topicIitem.is_edit">
+                        <Drag
+                          :curQue="topicIitem.data"
+                          :type="topicIitem.type"
+                          :fn_data="fn_data"
+                          :changeCurQue="changeCurQue"
+                        />
+                      </template>
+                      <template v-else> </template>
+                    </template>
+                    <template
+                      v-if="topicIitem.type == 'checkbox_self_assessment_chs'"
+                    >
+                      <template v-if="topicIitem.is_edit">
+                        <SelfAssessment
+                          :curQue="topicIitem.data"
+                          :type="topicIitem.type"
+                          :fn_data="fn_data"
+                          :changeCurQue="changeCurQue"
+                        />
+                      </template>
+                      <template v-else> </template>
+                    </template>
+                    <template v-if="topicIitem.type == 'sort_chs'">
+                      <template v-if="topicIitem.is_edit">
+                        <Sort
+                          :curQue="topicIitem.data"
+                          :type="topicIitem.type"
+                          :fn_data="fn_data"
+                          :changeCurQue="changeCurQue"
+                        />
+                      </template>
+                      <template v-else> </template>
+                    </template>
                   </div>
                   <div
                     v-if="topicIitem.data && topicIitem.is_edit"
@@ -268,8 +420,8 @@
                   <div
                     v-else-if="
                       TopicIndex == toindex &&
-                        RowIndex == rowIndex &&
-                        lineIndex == LineIndex
+                      RowIndex == rowIndex &&
+                      lineIndex == LineIndex
                     "
                     class="addoption"
                   >
@@ -288,14 +440,16 @@
                         type="success"
                         size="small"
                         @click="onSure(topicIitem)"
-                      >确定</el-button>
+                        >确定</el-button
+                      >
                     </div>
                     <div v-else class="Big-Book-save">
                       <el-button
                         type="primary"
                         size="small"
                         @click.stop="editCurQue(topicIitem)"
-                      >编辑</el-button>
+                        >编辑</el-button
+                      >
                     </div>
                   </template>
                 </div>
@@ -320,7 +474,8 @@
                   v-for="(child, i) in item.list"
                   :key="i"
                   @click.native="selectSmallModule(item, child, index, i)"
-                >{{ child.name }}</el-dropdown-item>
+                  >{{ child.name }}</el-dropdown-item
+                >
               </el-dropdown-menu>
             </el-dropdown>
             <span v-else class="fn-name">{{ item.name }}</span>
@@ -375,6 +530,14 @@ import ToneSelect from "@/components/Adult/inputModules/ToneSelect.vue";
 import NumberCombination from "@/components/Adult/inputModules/NumberCombination.vue";
 import DialogueAnswerChs from "@/components/Adult/inputModules/DialogueAnswerChs";
 import VoiceMatrix from "@/components/Adult/inputModules/VoiceMatrix.vue";
+import ImageQuestion from "@/components/Adult/inputModules/ImageQuestion.vue";
+import PurePreview from "@/components/Adult/inputModules/PurePreview.vue";
+import ZiLine from "@/components/Adult/inputModules/ZiLine.vue";
+import SelectInpue from "@/components/Adult/inputModules/SelectInpue.vue";
+import PlayInputReacord from "@/components/Adult/inputModules/PlayInputReacord.vue";
+import Drag from "@/components/Adult/inputModules/Drag.vue";
+import SelfAssessment from "@/components/Adult/inputModules/SelfAssessment.vue";
+import Sort from "@/components/Adult/inputModules/Sort.vue";
 
 import Textdes from "@/components/Adult/inputModules/Textdes.vue";
 import Record from "@/components/Adult/inputModules/Record.vue";
@@ -443,7 +606,15 @@ export default {
     NumberCombination,
     ToneSelect,
     DialogueAnswerChs,
-    VoiceMatrix
+    VoiceMatrix,
+    ImageQuestion,
+    PurePreview,
+    ZiLine,
+    SelectInpue,
+    PlayInputReacord,
+    Drag,
+    SelfAssessment,
+    Sort,
   },
   data() {
     return {
@@ -575,10 +746,10 @@ export default {
       this.TopicIndex = topicIndex;
       this.RowIndex = rowindex;
       this.LineIndex = lineIndex;
-      this.question_list.forEach(page => {
-        page.cur_fn_data.forEach(pic => {
-          pic.table_list.forEach(row => {
-            row.forEach(col => {
+      this.question_list.forEach((page) => {
+        page.cur_fn_data.forEach((pic) => {
+          pic.table_list.forEach((row) => {
+            row.forEach((col) => {
               col.is_add_module = true;
             });
           });
@@ -628,14 +799,14 @@ export default {
       };
       console.log(this.question_list);
       getContent(MethodName, data)
-        .then(res => {
+        .then((res) => {
           this.question_list = res.content
             ? JSON.parse(res.content)
             : JSON.parse(JSON.stringify(this.org_question_list));
           this.cur_page_que_index =
             this.question_list[this.tabIndex].cur_fn_data.length - 1;
         })
-        .catch(error => {});
+        .catch((error) => {});
     },
     handleTabsEdit(targetName, action) {
       if (action === "add") {
@@ -661,7 +832,7 @@ export default {
           });
         }
         this.editableTabsValue = activeName;
-        let question_list = tabs.filter(tab => tab.name !== targetName);
+        let question_list = tabs.filter((tab) => tab.name !== targetName);
         question_list.map((item, index) => {
           item.name = `tab${index + 1}`;
           item.title = `第${index + 1}页`;
@@ -761,12 +932,12 @@ export default {
       let question_list = this.question_list;
       let sentence_list = [];
       let new_word_list = [];
-      question_list.forEach(item => {
-        item.cur_fn_data.forEach(curItem => {
-          curItem.table_list.forEach(tabItem => {
-            tabItem.forEach(topicIitem => {
+      question_list.forEach((item) => {
+        item.cur_fn_data.forEach((curItem) => {
+          curItem.table_list.forEach((tabItem) => {
+            tabItem.forEach((topicIitem) => {
               if (topicIitem.type == "article_chs") {
-                topicIitem.data.detail.forEach(item => {
+                topicIitem.data.detail.forEach((item) => {
                   sentence_list = sentence_list.concat(item.sentences);
                 });
               } else if (topicIitem.type == "NewWord_chs") {
@@ -796,10 +967,10 @@ export default {
         ui_type: "NPC",
       };
       getContent(MethodName, data)
-        .then(res => {
+        .then((res) => {
           this.$message.success("保存成功!");
         })
-        .catch(error => {});
+        .catch((error) => {});
     },
     async onPreview() {
       let _this = this;
@@ -824,7 +995,7 @@ export default {
         regConArr = questionStr.match(reg);
       }
       if (regConArr.length > 0) {
-        regConArr = regConArr.map(item => {
+        regConArr = regConArr.map((item) => {
           item = item.replace("[FID##", "").replace("##FID]", "");
           return item;
         });
@@ -834,7 +1005,7 @@ export default {
         const data = {
           file_id_list: regConArr,
         };
-        getStaticContent(MethodName, data).then(res => {
+        getStaticContent(MethodName, data).then((res) => {
           const backData = res.url_map;
           for (const key in backData) {
             const url = backData[key];