无关风月
2025-04-11 75942ecc2e438012c5ea876715966ace593565a0
ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITUserStudyService.java
@@ -1,8 +1,10 @@
package com.ruoyi.study.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.study.domain.TGame;
import com.ruoyi.study.domain.TStudy;
import com.ruoyi.study.domain.TUserStudy;
import com.ruoyi.study.dto.CompleteGameDTO;
import com.ruoyi.study.dto.CompleteStudyDTO;
import java.util.List;
@@ -18,15 +20,6 @@
public interface ITUserStudyService extends IService<TUserStudy> {
    /**
     * 获取学习进度及学习时长等信息
     *
     * @param userId 用户id
     * @param week   周目
     * @return 学习信息
     */
    TUserStudy studySchedule(String userId, Integer week);
    /**
     * 定时任务 清空用户学习时长
     *
     * @param time 今日/本周/本月
@@ -36,10 +29,30 @@
    /**
     * 更改学习进度
     *
     * @param studyList     学习配置列表
     * @param userId        用户id
     * @param completeStudy 学习情况
     * @param userId          用户id
     * @param completeStudy   学习情况
     * @param userStudyRecord 学习进度
     * @return 更改结果
     */
    Boolean exchangeStudyRecord(List<TStudy> studyList, Integer userId, CompleteStudyDTO completeStudy);
    Boolean exchangeStudyRecord(TUserStudy userStudyRecord, Integer userId, CompleteStudyDTO completeStudy);
    /**
     * 超级记忆正确率达到通关率标准,才能进入下一周目学习
     *
     * @param game          游戏信息
     * @param userid        用户id
     * @param completeStudy 游戏完成信息
     * @param studyList     学习配置列表
     */
    void checkRate(TGame game, Integer userid, CompleteGameDTO completeStudy, List<TStudy> studyList);
    /**
     * 超级听力需根据正确率判断是否允许进入下一难度
     *
     * @param game          游戏信息
     * @param userid        用户id
     * @param completeStudy 游戏完成信息
     * @param studyList     学习列表
     */
    void gameHearing(TGame game, Integer userid, CompleteGameDTO completeStudy, List<TStudy> studyList);
}