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

export default class SystemStore extends BaseStore {
  listManager(params) {
    return this.apiGet('/manager/list', params);
  }

  addManager(params) {
    return this.apiPost('/manager/add', params);
  }

  getManager(params) {
    return this.apiGet('/manager/detail', params);
  }

  putManager(params) {
    return this.apiPut('/manager/edit', params);
  }

  delManager(params) {
    return this.apiDel('/manager/delete', params);
  }

  getIndex() {
    return this.apiGet('/setting/index');
  }

  setIndex(params) {
    return this.apiPut('/setting/index', params);
  }

  getMessageTemplate() {
    return this.apiGet('/setting/message_template');
  }

  setMessageTemplate(params) {
    return this.apiPut('/setting/message_template', params);
  }

  getPlace() {
    return this.apiGet('/setting/place');
  }

  setPlace(params) {
    return this.apiPut('/setting/place', params);
  }

  getSentence() {
    return this.apiGet('/setting/sentence');
  }

  setSentence(params) {
    return this.apiPut('/setting/sentence', params);
  }

  getFilterTime() {
    return this.apiGet('/setting/filter_time');
  }

  setFilterTime(params) {
    return this.apiPut('/setting/filter_time', params);
  }

  getExerciseTime() {
    return this.apiGet('/setting/exercise_time');
  }

  setExerciseTime(params) {
    return this.apiPut('/setting/exercise_time', params);
  }

  getSentenceTime() {
    return this.apiGet('/setting/sentence_time');
  }

  setSentenceTime(params) {
    return this.apiPut('/setting/sentence_time', params);
  }

  getTextbookTime() {
    return this.apiGet('/setting/textbook_time');
  }

  setTextbookTime(params) {
    return this.apiPut('/setting/textbook_time', params);
  }

  getExaminationTime() {
    return this.apiGet('/setting/examination_time');
  }

  setExaminationTime(params) {
    return this.apiPut('/setting/examination_time', params);
  }

  getScoreSwitch() {
    return this.apiGet('/setting/score_switch');
  }

  setScoreSwitch(params) {
    return this.apiPut('/setting/score_switch', params);
  }

  getServiceVip() {
    return this.apiGet('/setting/service_vip');
  }

  setServiceVip(params) {
    return this.apiPut('/setting/service_vip', params);
  }

  getServiceTextbook() {
    return this.apiGet('/setting/service_textbook');
  }

  setServiceTextbook(params) {
    return this.apiPut('/setting/service_textbook', params);
  }

  getServiceQxCat() {
    return this.apiGet('/setting/service_qx_cat');
  }

  setServiceQxCat(params) {
    return this.apiPut('/setting/service_qx_cat', params);
  }

  getCourseIndex() {
    return this.apiGet('/setting/course_index');
  }

  setCourseIndex(params) {
    return this.apiPut('/setting/course_index', params);
  }

  getPromote() {
    return this.apiGet('/setting/promote');
  }

  setPromote(params) {
    return this.apiPut('/setting/promote', params);
  }

  getExperienceInfo() {
    return this.apiGet('/setting/experience_info');
  }

  setExperienceInfo(params) {
    return this.apiPut('/setting/experience_info', params);
  }

  getTips() {
    return this.apiGet('/setting/tips');
  }

  setTips(params) {
    return this.apiPut('/setting/tips', params);
  }

  listRank(params) {
    return this.apiGet('/setting/rank/list', params);
  }

  addRank(params) {
    return this.apiPost('/setting/rank/add', params);
  }

  editRank(params) {
    return this.apiPut('/setting/rank/edit', params);
  }

  delRank(params) {
    return this.apiDel('/setting/rank/delete', params);
  }

  importRank(params) {
    return this.apiForm('/setting/rank/import', params);
  }

  listComment(params) {
    return this.apiGet('/setting/comment/list', params);
  }

  addComment(params) {
    return this.apiPost('/setting/comment/add', params);
  }

  editComment(params) {
    return this.apiPut('/setting/comment/edit', params);
  }

  delComment(params) {
    return this.apiDel('/setting/comment/delete', params);
  }

  listFAQ(params) {
    return this.apiGet('/setting/faq/list', params);
  }

  addFAQ(params) {
    return this.apiPost('/setting/faq/add', params);
  }

  editFAQ(params) {
    return this.apiPut('/setting/faq/edit', params);
  }

  delFAQ(params) {
    return this.apiDel('/setting/faq/delete', params);
  }

  listMessage(params) {
    return this.apiGet('/setting/message/list', params);
  }

  addMessage(params) {
    return this.apiPost('/setting/message/add', params);
  }

  editMessage(params) {
    return this.apiPut('/setting/message/edit', params);
  }

  delMessage(params) {
    return this.apiDel('/setting/message/delete', params);
  }

  listArticle(params) {
    return this.apiGet('/setting/article/list', params);
  }

  addArticle(params) {
    return this.apiPost('/setting/article/add', params);
  }

  editArticle(params) {
    return this.apiPut('/setting/article/edit', params);
  }

  delArticle(params) {
    return this.apiDel('/setting/article/delete', params);
  }

  getArticle(params) {
    return this.apiGet('/setting/article/detail', params);
  }

  listAd(params) {
    return this.apiGet('/setting/ad/list', params);
  }

  addAd(params) {
    return this.apiPost('/setting/ad/add', params);
  }

  editAd(params) {
    return this.apiPut('/setting/ad/edit', params);
  }

  delAd(params) {
    return this.apiDel('/setting/ad/delete', params);
  }

  getAd(params) {
    return this.apiGet('/setting/ad/detail', params);
  }

  uploadImage(file) {
    return this.apiForm('/common/upload/image', { file });
  }

  uploadVideo(file) {
    return this.apiForm('/common/upload/video', { file });
  }
}

export const System = new SystemStore({ key: 'system' });