hjl
2024-06-18 a7d177dd48ca8c8a7e154573f7306e2b86dd1a77
ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITStudyService.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.study.domain.*;
import com.ruoyi.study.dto.CompleteGameDTO;
import com.ruoyi.study.dto.StudyWeekDTO;
import com.ruoyi.study.vo.*;
@@ -30,10 +31,9 @@
     * 获取学习进度及学习时长等信息
     *
     * @param userId 用户id
     * @param week   周目
     * @return 学习信息
     */
    TUserStudy studySchedule(String userId, Integer week);
    TUserStudy studySchedule(String userId);
    /**
     * 自主学习1-听音选图
@@ -51,8 +51,9 @@
     * @param difficulty 难度(0入门、1中级、2高级)
     * @param week       所属周目
     * @param game       游戏信息
     * @param userid     用户id
     */
    void checkDifficulty(Integer difficulty, Integer week, TGame game);
    void checkDifficulty(Integer difficulty, Integer week, TGame game, Integer userid);
    /**
     * 自主学习2-看图选音
@@ -67,8 +68,8 @@
    /**
     * 自主学习3-归纳排除
     *
     * @param week 周目
     * @param day  所属day
     * @param week          周目
     * @param day           所属day
     * @param inductionList 归纳排除
     * @return 题目信息
     */
@@ -77,8 +78,8 @@
    /**
     * 自主学习4-有问有答
     *
     * @param week 周目
     * @param day  所属day
     * @param week       周目
     * @param day        所属day
     * @param answerList 有问有答
     * @return 题目信息
     */
@@ -94,4 +95,31 @@
     */
    StudyPairResultVO pictureMateVoice(Integer week, Integer day, List<TStudyPair> pair);
    /**
     * 计算用户当前week的学习进度
     *
     * @param result 用户学习信息
     * @param week   周目
     * @return 当前week学习进度
     */
    int computeSchedule(TUserStudy result, Integer week);
    /**
     * 获取本次学习可获得总积分
     *
     * @param studyIds 题组id
     * @param type     类型
     * @param accuracy 正确率
     * @return 积分
     */
    int computeTotalIntegral(List<String> studyIds, Integer type, Integer accuracy);
    /**
     * 超级记忆正确率达到通关率标准,才能进入下一周目学习
     *
     * @param game          游戏信息
     * @param userid        用户id
     * @param completeStudy 游戏完成信息
     */
    void checkRate(TGame game, Integer userid, CompleteGameDTO completeStudy);
}