| | |
| | | @Resource |
| | | private ITUserPresentRecordService userPresentRecordService; |
| | | |
| | | @PostMapping("/testAddData") |
| | | @ApiOperation(value = "测试分片", tags = {"测试分片"}) |
| | | public R<Object> testAddData() { |
| | | TIntegralRecord tIntegralRecord = new TIntegralRecord(); |
| | | tIntegralRecord.setIntegral("1"); |
| | | tIntegralRecord.setMethod("1"); |
| | | tIntegralRecord.setUserId(23); |
| | | tIntegralRecord.setGameId(1); |
| | | tIntegralRecord.setGameDifficulty(1); |
| | | tIntegralRecord.setStoryId(1); |
| | | tIntegralRecord.setStoryType(1); |
| | | integralRecordService.save(tIntegralRecord); |
| | | TGameRecord tGameRecord = new TGameRecord(); |
| | | tGameRecord.setUserId(33); |
| | | tGameRecord.setAccuracy(0); |
| | | tGameRecord.setGameName(""); |
| | | tGameRecord.setUseTime(0); |
| | | tGameRecord.setUseTime1(""); |
| | | tGameRecord.setGameId(0); |
| | | tGameRecord.setGameDifficulty(0); |
| | | tGameRecord.setTime(""); |
| | | tGameRecord.setDisabled(false); |
| | | tGameRecord.setCreateBy(""); |
| | | tGameRecord.setCreateTime(new Date()); |
| | | tGameRecord.setUpdateBy(""); |
| | | tGameRecord.setUpdateTime(new Date()); |
| | | gameRecordService.save(tGameRecord); |
| | | TSubjectRecord tSubjectRecord = new TSubjectRecord(); |
| | | tSubjectRecord.setUserId(22); |
| | | tSubjectRecord.setWeek(0); |
| | | tSubjectRecord.setDay(0); |
| | | tSubjectRecord.setBeforeSubject(""); |
| | | tSubjectRecord.setType(0); |
| | | tSubjectRecord.setCompleteSubject(""); |
| | | tSubjectRecord.setAnswerNumber(0); |
| | | tSubjectRecord.setCorrectNumber(0); |
| | | tSubjectRecord.setDisabled(false); |
| | | tSubjectRecord.setCreateBy(""); |
| | | tSubjectRecord.setCreateTime(new Date()); |
| | | tSubjectRecord.setUpdateBy(""); |
| | | tSubjectRecord.setUpdateTime(new Date()); |
| | | subjectRecordService.save(tSubjectRecord); |
| | | TUserPresentRecord tUserPresentRecord = new TUserPresentRecord(); |
| | | tUserPresentRecord.setUserId(44); |
| | | tUserPresentRecord.setPresentTime(new Date()); |
| | | tUserPresentRecord.setIsDelete(0); |
| | | userPresentRecordService.save(tUserPresentRecord); |
| | | |
| | | TUserStudyRecord tUserStudyRecord = new TUserStudyRecord(); |
| | | tUserStudyRecord.setUserId(17); |
| | | tUserStudyRecord.setQuarter(0); |
| | | tUserStudyRecord.setWeek(0); |
| | | tUserStudyRecord.setDay(0); |
| | | tUserStudyRecord.setObtainedIntegral(0); |
| | | tUserStudyRecord.setType(0); |
| | | tUserStudyRecord.setStudyType(0); |
| | | tUserStudyRecord.setStoryId(0); |
| | | studyRecordService.save(tUserStudyRecord); |
| | | |
| | | return R.ok(); |
| | | } |
| | | |
| | | @PostMapping("/storyList") |
| | | // @ApiOperation(value = "配置学习类型选择故事", tags = {"题目管理"}) |
| | | public R<PageInfo<TStory>> storyList(@RequestBody ChoiceStory query) { |
| | |
| | | } |
| | | |
| | | /** |
| | | * 获取当前季度游戏难度 |
| | | */ |
| | | @GetMapping("/userGameDifficulty") |
| | | @ApiOperation(value = "获取当前季度游戏难度", tags = {"学习端-首页"}) |
| | | public R<Integer> userGameDifficulty(@RequestParam Integer week) { |
| | | LoginUserParent loginStudy = tokenService.getLoginUserStudy(); |
| | | if (null == loginStudy) { |
| | | return R.tokenError("登录失效!"); |
| | | } |
| | | Integer userid = loginStudy.getUserid(); |
| | | TUserStudy studyRecord = userStudyService.lambdaQuery().eq(TUserStudy::getUserId, userid) |
| | | .eq(TUserStudy::getDisabled, 0).one(); |
| | | return R.ok(studyService.userGameDifficulty(studyRecord, week)); |
| | | } |
| | | |
| | | /** |
| | | * 首次页面加载时调用,获取学习进度及学习时长等信息 |
| | | * |
| | | * @param week 周目 |
| | |
| | | Integer type = exitLearn.getType(); |
| | | // 更新用户学习完成率 |
| | | if (Constants.ONE.equals(type)) { |
| | | if (1 == exitLearn.getSchedule()) { |
| | | userStudy.setListen(Constants.BURDEN_ONE); |
| | | } else { |
| | | // 听音选图 |
| | | List<TStudyListen> studyListens = studyListenService.listenSelectPicture(quarter, week, day); |
| | | int item = 0; |
| | | for (TStudyListen studyListen : studyListens) { |
| | | item += studyListen.getSubject().split(",").length; |
| | | } |
| | | int i = (int) (((double) schedule / item) * 100); |
| | | if (i > userStudy.getListen()) { |
| | | if (userStudy.getListen() != 100) { |
| | | if (1 == exitLearn.getSchedule()) { |
| | | userStudy.setListen(Constants.BURDEN_ONE); |
| | | } else { |
| | | // 听音选图 |
| | | List<TStudyListen> studyListens = studyListenService.listenSelectPicture(quarter, week, day); |
| | | int item = 0; |
| | | for (TStudyListen studyListen : studyListens) { |
| | | item += studyListen.getSubject().split(",").length; |
| | | } |
| | | int i = (int) (((double) schedule / item) * 100); |
| | | userStudy.setListen(i); |
| | | } |
| | | } |
| | | } else if (Constants.TWO.equals(type)) { |
| | | if (1 == exitLearn.getSchedule()) { |
| | | userStudy.setLook(Constants.BURDEN_ONE); |
| | | } else { |
| | | // 看图选音 |
| | | List<TStudyLook> lookList = studyLookService.pictureSelectVoice(quarter, week, day); |
| | | if (!lookList.isEmpty()) { |
| | | int item = lookList.size(); |
| | | int i = (int) (((double) schedule / item) * 100); |
| | | if (i > userStudy.getLook()) { |
| | | if (userStudy.getLook() != 100) { |
| | | if (1 == exitLearn.getSchedule()) { |
| | | userStudy.setLook(Constants.BURDEN_ONE); |
| | | } else { |
| | | // 看图选音 |
| | | List<TStudyLook> lookList = studyLookService.pictureSelectVoice(quarter, week, day); |
| | | if (!lookList.isEmpty()) { |
| | | int item = lookList.size(); |
| | | int i = (int) (((double) schedule / item) * 100); |
| | | userStudy.setLook(i); |
| | | } |
| | | } |
| | | } |
| | | } else if (Constants.THREE.equals(type)) { |
| | | if (1 == exitLearn.getSchedule()) { |
| | | userStudy.setInduction(Constants.BURDEN_ONE); |
| | | } else { |
| | | // 归纳排除 |
| | | List<TStudyInduction> inductionList = studyInductionService.induceExclude(quarter, week, day); |
| | | if (!inductionList.isEmpty()) { |
| | | int item = inductionList.size(); |
| | | int i = (int) (((double) schedule / item) * 100); |
| | | if (i > userStudy.getInduction()) { |
| | | if (userStudy.getInduction() != 100) { |
| | | if (1 == exitLearn.getSchedule()) { |
| | | userStudy.setInduction(Constants.BURDEN_ONE); |
| | | } else { |
| | | // 归纳排除 |
| | | List<TStudyInduction> inductionList = studyInductionService.induceExclude(quarter, week, day); |
| | | if (!inductionList.isEmpty()) { |
| | | int item = inductionList.size(); |
| | | int i = (int) (((double) schedule / item) * 100); |
| | | userStudy.setInduction(i); |
| | | } |
| | | } |
| | | } |
| | | } else if (Constants.FOUR.equals(type)) { |
| | | if (1 == exitLearn.getSchedule()) { |
| | | userStudy.setAnswer(Constants.BURDEN_ONE); |
| | | } else { |
| | | // 有问有答 |
| | | List<TStudyAnswer> answerList = studyAnswerService.questionsAndAnswers(quarter, week, day); |
| | | if (answerList.size() % Constants.TWO == Constants.ZERO) { |
| | | int i = (int) (((double) schedule / (answerList.size() / 2)) * 100); |
| | | if (i > userStudy.getAnswer()) { |
| | | if (userStudy.getAnswer() != 100) { |
| | | if (1 == exitLearn.getSchedule()) { |
| | | userStudy.setAnswer(Constants.BURDEN_ONE); |
| | | } else { |
| | | // 有问有答 |
| | | List<TStudyAnswer> answerList = studyAnswerService.questionsAndAnswers(quarter, week, day); |
| | | if (answerList.size() % Constants.TWO == Constants.ZERO) { |
| | | int i = (int) (((double) schedule / (answerList.size() / 2)) * 100); |
| | | userStudy.setAnswer(i); |
| | | } |
| | | } |
| | | } |
| | | } else if (Constants.FIVE.equals(type)) { |
| | | if (1 == exitLearn.getSchedule()) { |
| | | userStudy.setPair(Constants.BURDEN_ONE); |
| | | } else { |
| | | // 音图相配 |
| | | List<TStudyPair> pairList = studyPairService.pictureMateVoice(quarter, week, day); |
| | | if (!pairList.isEmpty()) { |
| | | int item = pairList.size(); |
| | | int i = (int) (((double) schedule / item) * 100); |
| | | if (i > userStudy.getPair()) { |
| | | if (userStudy.getPair() != 100) { |
| | | if (1 == exitLearn.getSchedule()) { |
| | | userStudy.setPair(Constants.BURDEN_ONE); |
| | | } else { |
| | | // 音图相配 |
| | | List<TStudyPair> pairList = studyPairService.pictureMateVoice(quarter, week, day); |
| | | if (!pairList.isEmpty()) { |
| | | int item = pairList.size(); |
| | | int i = (int) (((double) schedule / item) * 100); |
| | | userStudy.setPair(i); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |
| | | // 学习时长更新 |
| | |
| | | .eq(TGameRecord::getDisabled, 0) |
| | | .orderByDesc(TGameRecord::getCreateTime) |
| | | .list(); |
| | | SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy.MM.dd HH:mm"); |
| | | if (null != studyRecord) { |
| | | // 学习时长格式转换 |
| | | Integer todayStudy = studyRecord.getTodayStudy(); |
| | |
| | | int sum = gameRecordList.stream().map(TGameRecord::getUseTime).mapToInt(Integer::intValue).sum(); |
| | | Integer totalStudy = studyRecord.getTotalStudy(); |
| | | studyRecord.setTotalStudy(Math.round((float) (totalStudy) / 3600)); |
| | | for (TGameRecord tGameRecord : gameRecordList) { |
| | | tGameRecord.setTime(simpleDateFormat.format(tGameRecord.getCreateTime())); |
| | | } |
| | | // 剩余周目 |
| | | List<TStudy> studyList = studyService.lambdaQuery().eq(TStudy::getDisabled, 0) |
| | | .eq(TStudy::getType, Constants.ONE) |
| | |
| | | @GetMapping("/getIntegral") |
| | | @ApiOperation(value = "获取剩余积分", tags = {"家长端-获取剩余积分"}) |
| | | public R<Integer> getIntegral() { |
| | | if (tokenService.getLoginUser1() == null) { |
| | | return R.tokenError("登录失效"); |
| | | } |
| | | Integer userId = tokenService.getLoginUser1().getUserid(); |
| | | return R.ok(userService.getById(userId).getIntegral()); |
| | | } |