import BaseStore from '@src/stores/base';

export default class TextbookStore extends BaseStore {
  /**
   * 所有机经信息
   */
  getInfo() {
    return this.apiGet('/textbook/info');
  }

  /**
   * 获取机经进度
   */
  progress() {
    return this.apiGet('/textbook/progress');
  }

  /**
   * 机经组卷列表
   */
  listPaper({ page, size, latest, logic, finish }) {
    return this.apiGet('/textbook/paper/list', { page, size, latest: !!latest, logic, times: finish });
  }

  listYear(year) {
    return this.apiGet('/textbook/year', { year });
  }

  listHistory(subject) {
    return this.apiGet('/textbook/history/list', { subject });
  }

  listTopic(page, size, latest, qualitys, isOld, order, direction) {
    return this.apiGet('/textbook/topic/list', { page, size, latest, qualitys, isOld, order, direction });
  }

  subscribe(subscribe) {
    return this.apiPost('/textbook/subscribe', { subscribe });
  }

  enroll(month) {
    return this.apiPost('/textbook/enroll', { month });
  }

  listEnroll(year) {
    return this.apiGet('/textbook/enroll/list', { year });
  }
}

export const Textbook = new TextbookStore({ key: 'textbook' });