hjl
2024-07-19 13fce7e5526de855f36e62fa0abb6864a15ef818
ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITStudyService.java
@@ -22,18 +22,19 @@
     *
     * @param type    所属类型
     * @param quarter 季度
     * @param userId  用户id
     * @return 列表
     */
    List<StudyWeekDTO> weekList(Integer type, Integer quarter);
    List<StudyWeekDTO> weekList(Integer type, Integer quarter, Integer userId);
    /**
     * 获取学习进度及学习时长等信息
     *
     * @param userId 用户id
     * @param week   周目
     * @param studyRecord 学习进度
     * @param week        所属周目
     * @return 学习信息
     */
    TUserStudy studySchedule(String userId, Integer week);
    TUserStudy studySchedule(TUserStudy studyRecord, Integer week);
    /**
     * 自主学习1-听音选图
@@ -51,8 +52,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 +69,8 @@
    /**
     * 自主学习3-归纳排除
     *
     * @param week 周目
     * @param day  所属day
     * @param week          周目
     * @param day           所属day
     * @param inductionList 归纳排除
     * @return 题目信息
     */
@@ -77,8 +79,8 @@
    /**
     * 自主学习4-有问有答
     *
     * @param week 周目
     * @param day  所属day
     * @param week       周目
     * @param day        所属day
     * @param answerList 有问有答
     * @return 题目信息
     */
@@ -94,4 +96,48 @@
     */
    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 studyRecord 学习进度信息
     * @param studyList   学习配置列表
     * @return 剩余周目
     */
    int residueWeek(TUserStudy studyRecord, List<TStudy> studyList);
    /**
     * 校验超级听力是否通过
     *
     * @param game   游戏信息
     * @param userid 用户信息
     */
    void checkClearance(TGame game, Integer userid);
    /**
     * 获取当前周目游戏难度
     *
     * @param studyRecord 学习进度
     * @param week        周目
     * @return 难度
     */
    Integer userGameDifficulty(TUserStudy studyRecord, Integer week);
}