import BaseStore from '@src/stores/base'; export default class MyStore extends BaseStore { /** * 绑定邮箱 * @param {*} email 邮箱 */ bindEmail(email) { return this.apiPost('/my/email', { email }); } /** * 修改用户信息 * @param {*} info nickname avatar */ editInfo(info) { return this.apiPost('/my/info', { ...info }); } /** * 用户站内信 * @param {*} page * @param {*} size * @param {*} type * @param {*} read */ message(page, size, type, read) { return this.apiGet('/my/message', { page, size, type, read }); } /** * 读取用户消息/全部 */ readAllMessage() { return this.apiPut('/my/message/read', { all: true }); } /** * 读取用户消息 */ readMessage(id) { return this.apiPut('/my/message/read', { all: false, id }); } /** * 清除最后一次练习记录 */ clearLatestExercise() { return this.apiPut('/my/clear/exercise/latest').then(() => { this.setState({ info: { latestExercise: 0 } }); }); } /** * 清除最后一次错误组卷记录 */ clearLatestError() { return this.apiPut('/my/clear/error/latest').then(() => { this.setState({ info: { latestError: 0 } }); }); } /** * 修改备考信息 * @param {*} info prepareStatus: 身份 prepareGoal: 目标分数 prepareExaminationTime: 考试时间 prepareScoreTime: 出分时间 */ editPrepare(info) { return this.apiPut('/my/prepare', { ...info }); } /** * 获取备考信息 */ getPrepare() { return this.apiGet('/my/prepare'); } /** * 获取学习记录 * @param {*} date 时间 */ getStudy(date) { return this.apiGet('/my/study', { date }); } /** * 获取总学习记录 */ getStudyTotal() { return this.apiGet('/my/study/total'); } /** * 添加收藏 * @param {*} questionModule * @param {*} questionNoId */ addQuestionCollect(questionModule, questionNoId) { return this.apiPut('/my/collect/question/add', { questionModule, questionNoId }); } /** * 删除收藏 * @param {*} questionModule * @param {*} questionNoId */ delQuestionCollect(questionModule, questionNoId) { return this.apiDel('/my/collect/question/delete', { questionModule, questionNoId }); } /** * 收藏卷组 * @param {*} questionModule * @param {*} questionNoIds * @param {*} filterTimes */ bindQuestionCollect(questionModule, questionNoIds, filterTimes) { return this.apiPost('/my/collect/question/bind', { questionModule, questionNoIds, filterTimes }); } /** * 获取收藏题目列表 * @param {*} questionModule * @param {*} questionType * @param {*} page * @param {*} size * @param {*} startTime * @param {*} endTime * @param {*} order * @param {*} direction */ listQuestionCollect(questionModule, questionType, page, size, startTime, endTime, order, direction) { return this.apiGet('/my/collect/question/list', { questionModule, questionType, page, size, startTime, endTime, order, direction }); } /** * 获取错题列表 * @param {*} questionModule * @param {*} page * @param {*} size */ listError(questionModule, page, size) { return this.apiGet('/my/error/list', { questionModule, page, size }); } /** * 错题组卷 * @param {*} questionModule * @param {*} questionNoIds * @param {*} filterTimes */ bindError(questionModule, questionNoIds, filterTimes) { return this.apiPost('/my/error/bind', { questionModule, questionNoIds, filterTimes }); } /** * 错题移除 * @param {*} ids */ clearError(ids) { return this.apiPost('/my/error/clear', { questionNoIds: ids }); } /** * 移除正确题 * @param {*} userReportId */ removeError(userReportId) { return this.apiPost('/my/error/remove', { userReportId }); } /** * 更新笔记 * @param {*} questionModule * @param {*} questionNoId * @param {*} content * @param {*} qxContent * @param {*} officialContent * @param {*} associationContent * @param {*} qaContent */ updateQuestionNote(questionModule, questionNoId, { content, qxContent, officialContent, associationContent, qaContent }) { return this.apiPut('/my/note/question', { questionModule, questionNoId, content, qxContent, officialContent, associationContent, qaContent }); } /** * 获取笔记列表 * @param {*} questionModule * @param {*} questionType * @param {*} page * @param {*} size * @param {*} startTime * @param {*} endTime * @param {*} order * @param {*} direction */ questionNoteList(questionModule, questionType, page, size, startTime, endTime, order, direction) { return this.apiGet('/my/note/question/list', { questionModule, questionType, page, size, startTime, endTime, order, direction }); } /** * 获取报告列表 * @param {*} origin * @param {*} structId * @param {*} page * @param {*} size * @param {*} startTime * @param {*} endTime * @param {*} order * @param {*} direction */ reportList(origin, structId, page, size, startTime, endTime, order, direction) { return this.apiGet('/my/report/list', { origin, structId, page, size, startTime, endTime, order, direction }); } /** * 添加提问 * @param {*} target * @param {*} questionModule * @param {*} questionNoId * @param {*} content */ addQuestionAsk(userQuestionId, target, questionModule, questionNoId, originContent, content) { return this.apiPost('/my/ask/question', { userQuestionId, target, questionModule, questionNoId, originContent, content }); } /** * 添加题目勘误 * @param {*} moduleId * @param {*} title * @param {*} position * @param {*} originContent * @param {*} content */ addFeedbackErrorQuestion(moduleId, title, position, originContent, content) { return this.apiPost('/my/feedback/error/question', { moduleId, title, position, originContent, content }); } /** * 添加数据勘误 * @param {*} moduleId * @param {*} title * @param {*} position * @param {*} originContent * @param {*} content */ addErrorData(moduleId, title, position, originContent, content) { return this.apiPost('/my/feedback/error/question', { moduleId, title, position, originContent, content }); } } export const My = new MyStore({ key: 'my' });