
let state = {
  scrollTop: 0,
  barMaxWidth: 40, //分析报告柱子最大宽度
  barMinWidth: 20, //分析报告柱子最小宽度
  examId: localStorage.getItem('reportExamId') || '',//分析报告考试分析表主id
  examCourseCode: localStorage.getItem('reportExamCourseCode') || '',//分析报告考试分析表选择的科目
  examSelectItem: localStorage.getItem('reportExamItem') || {},//考试分析首页选择的考试item数据
  examSelectCourseItem: localStorage.getItem('reportExamCourseItem') || {},//考试分析首页选择的科目item数据
  filterData: [],//筛选数据
  filterObject: {
    examLevel: '',//1-联考 2-单校
    contrastExamIds: [],//多次考试任务对比ID，不包含当前任务ID	
    examId: '',//考试id	
    subjectCode: '', //科目code
    subjectGroupType: '', //是否为组合科目 1为组合科目 0为非组合科目
    subjectName: '',//科目名称
    isTotal: '' //是否为总分科目 1为总分 0为非总分
  },//分析报告顶部筛选数据对象  需要更多数据可以追加user_menuList
  isTotalScore: localStorage.getItem('reportIsTotalScore') || false,//考试分析选择的科目是否是总分
  filterDataObject: {
    graduatesList: [],//届别列表
    levelsList: [],//学段列表
    gradeList: [],//年级列表
    examTypeList: [],//考试类型列表
  },//分析报告考试筛选数据对象存储
  isShowFilter: false,//是否显示顶部筛选数据
  rateName: '四率',//考试的多率名称  三率还是四率还是五率  默认四率
  student: {//学生分析
    examWeight: [],//考试权重占比
    StudentRules: {
      topNumber: 10, //大幅上升名次
      bottomNumber: 10, //大幅下降名次
      upNumber: 3, //平稳上升名次
      lowNumber: 3, //平稳下降名次
    },//需关注学生->学生判断规则设置
  },
  lastExamIdList: [],// 考试综述或成绩单同步对比考试选择,保存最后选择的对比考试id
  updateScrollTop: 0,//更新分析报告页面滚动条位置 使其回到顶部
  lastExamRadioId: '', // 对标考试单选考试id
  lastExamRadioName: '', // 对标考试单选考试name
  lastExamSelectIds: [], // 历次对比考试list
  examLevel: 2, // 任务级别 单校还是联考 1-联考 2-单校
  showTotalScore: false, //是否显示总分（进入举一反三页面的时候，不显示总分）
};
// 同步
let mutations = {
  //设置筛选数据
  SetFilterData(state, data) {

    state.filterObject = data;
    // state.filterObject[data.key] = data.value;
    // if (data.key == "subjectInfo") {
    //   state.isTotalScore = data.value.isTotalScore;
    // }
  },

  SetShowTotalScore(state, data) {
    state.showTotalScore = data;
  },

  //设置分析报告store数据
  set_state(state, data) {

    state[data.key] = data.value;

  },

  // 设置读取本地存储的筛选数据
  SetLocalFilterDataObject() {
    if (localStorage.getItem('filterDataObject') != null) {
      state.filterDataObject = JSON.parse(localStorage.getItem('filterDataObject'));
    }
  },
  //设置 学生分析考试占比
  SetExamWeight(state, data) {
    state.student.examWeight = data;
  },
  //设置 需关注学生->学生判断规则设置
  SetStudentRules(state, data) {
    state.student.StudentRules = data;
  },
  //设置 同步对比考试id
  SetLastExamIdList(state, data) {
    state.lastExamIdList = data;
  },

  //回到顶部
  GotoTop(state) {
    state.updateScrollTop++;
  },
  //设置 同步对比考试id单选
  SetLastExamRadioId(state, data) {
    state.lastExamRadioId = data;
  },
  //设置 同步对比考试id单选
  SetLastExamRadioName(state, data) {
    state.lastExamRadioName = data;
  },
  //设置 同步对比考试id集合
  SetLastExamSelectIds(state, data) {
    state.lastExamSelectIds = data;
  },
  //设置任务级别
  SetExamLevel(state, data) {
    state.examLevel = data;
  },
};
// 异步
let actions = {
  // 更新筛选数据
  UpdateFilterObject({ commit }, data) {
    commit("SetFilterData", data);
  },

  SET_STATE({ commit }, data) {
    commit("set_state", data);
  },
};

export default {
  namespaced: true,
  state,
  mutations,
  actions,
};
