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

export function getOption(content = '') {
  return { content, mark: getRandomNumber() };
}
export const sortTypeList = [
  { value: 'horizontal', label: '连词成句' },
  { value: 'vertical', label: '连句成段' },
];

/**
 * 解析智能识别数据
 * @param {array} arr 智能识别数据
 * @returns object
 */
export function analysisRecognitionSortData(arr) {
  const option_list = arr.map((item) => ({
    mark: getRandomNumber(),
    data_list: item.split(' ').map(getOption),
  }));

  return {
    'data.option_list': option_list,
  };
}

// 选择题数据模板
export function getSortDataTemplate() {
  let option_list = [
    {
      mark: getRandomNumber(),
      data_list: [getOption(), getOption(), getOption(), getOption(), getOption(), getOption()],
    },
    {
      mark: getRandomNumber(),
      data_list: [getOption(), getOption(), getOption(), getOption(), getOption(), getOption()],
    },
    {
      mark: getRandomNumber(),
      data_list: [getOption(), getOption(), getOption(), getOption(), getOption(), getOption()],
    },
  ];
  let answer_list = option_list.map((item) => {
    let value_list = item.data_list.map((items) => {
      return items.mark;
    });
    let answer_item = {
      mark: item.mark,
      value_list,
    };
    return answer_item;
  });

  return {
    type: 'sort', // 题型
    stem: '', // 题干
    description: '', // 描述
    analysis: '', // 解析，富文本
    option_list, // 选项
    file_id_list: [], // 文件 id 列表
    answer: { answer_list, score: 1, score_type: scoreTypeList[0].value }, // 答案
    option_number_show_mode: optionTypeList[0].value, // 选项类型
    // 题型属性
    property: {
      stem_type: stemTypeList[1].value, // 题干类型
      question_number: '1', // 题号
      stem_question_number_font_size: fontSizeList[6], // 题干题号
      option_question_number_font_size: fontSizeList[5], // 选项题号
      is_enable_description: switchOption[1].value, // 描述
      is_enable_analysis: switchOption[1].value, // 是否开启解析
      score: 1, // 分值
      score_type: scoreTypeList[0].value, // 分值类型
      layout_type: sortTypeList[0].value,
    },
    // 其他属性
    other: {
      question_number_type: questionNumberTypeList[1].value, // 题号类型
    },
  };
}
