import {
  optionTypeList,
  stemTypeList,
  scoreTypeList,
  questionNumberTypeList,
  switchOption,
  fontSizeList,
} from './common';
import { getRandomNumber } from '@/utils/index';

export function getOption(content = '') {
  return { content, character: '', mark: getRandomNumber(), audio_file_id: '' };
}
// 音频生成方式类型
export const audioGenerationMethodList = [
  {
    value: 'upload',
    label: '上传',
  },
  {
    value: 'auto',
    label: '自动生成',
  },
  {
    value: 'record',
    label: '录音',
  },
];

/**
 * 解析智能识别数据
 * @param {array} arr 智能识别数据
 * @returns object
 */
export function analysisRecognitionRepeatData(arr) {
  const option_list = arr.map(getOption);
  return { 'data.option_list': option_list };
}

// 听说训练数据模板
export const repeatData = {
  type: 'repeat', // 题型
  stem: '', // 题干
  option_number_show_mode: optionTypeList[0].value, // 选项类型
  description: '', // 描述
  option_list: [
    { content: '', character: '', mark: getRandomNumber(), audio_file_id: '' },
    { content: '', character: '', mark: getRandomNumber(), audio_file_id: '' },
    { content: '', character: '', mark: getRandomNumber(), audio_file_id: '' },
  ], // 选项
  file_id_list: [],
  answer: { score: 1, score_type: scoreTypeList[0].value }, // 答案
  // 题型属性
  property: {
    stem_type: stemTypeList[1].value, // 题干类型
    question_number: '1', // 题号
    stem_question_number_font_size: fontSizeList[6], // 题干题号
    is_enable_description: switchOption[1].value, // 描述
    score: 1, // 分值
    score_type: scoreTypeList[0].value, // 分值类型
  },
  // 其他属性
  other: {
    question_number_type: questionNumberTypeList[1].value, // 题号类型
    audio_generation_method: audioGenerationMethodList[0].value, // 音频生成方式
  },
};
