|
|
@@ -25,6 +25,8 @@ import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
+import java.math.BigDecimal;
|
|
|
+import java.math.RoundingMode;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.time.DayOfWeek;
|
|
|
import java.time.LocalDate;
|
|
|
@@ -100,33 +102,42 @@ public class ReviewServiceImpl extends ServiceImpl<ReviewMapper, Review> impleme
|
|
|
reviewTask.setStatus("1");
|
|
|
reviewTask.setReviewTime(DateUtils.getTime());
|
|
|
reviewTaskMapper.update(reviewTask,reviewTaskQueryWrapper);
|
|
|
- //更新脑力值
|
|
|
- int i = getI(list);
|
|
|
- AppUser appUserUpdate = new AppUser();
|
|
|
- AppUser appUser = appUserMapper.selectById(appCurrentLoginUser.getId());
|
|
|
- appUserUpdate.setId(appUser.getId());
|
|
|
- if(appUser.getTestFlag().equals("2")){
|
|
|
-
|
|
|
- appUserUpdate.setMentalEnergy(i+appUser.getMentalEnergy());
|
|
|
- appUserUpdate.setTestFlag("0");
|
|
|
- appUserMapper.updateById(appUserUpdate);
|
|
|
-
|
|
|
- // 完成测评任务,推荐专属任务
|
|
|
- List<Game> gameList = recommendFacade.recommendationA(appUser);
|
|
|
- GameRecommendRule ruleA = recommendFacade.getRule("A");
|
|
|
- List<GameUser> gameUsers = recommendFacade.buildGameUsers(gameList, appUser, ruleA);
|
|
|
-
|
|
|
- gameTaskService.generateTask(gameUsers, ruleA.getOrgCode(), ruleA.getOrgName());
|
|
|
- log.info("<<<<<<<<<<<<保存推荐游戏记录>>>>>>>>>>>>>>");
|
|
|
- boolean gameRecommend = gameRecommendRecordService.saveBatch(gameUsers, ruleA.getOrgCode(), ruleA.getOrgName(), ruleA.getRecommendPlayClass());
|
|
|
- log.info("<<<<<<<<<<<<保存推荐游戏记录响应:{}>>>>>>>>>>>>>>",gameRecommend);
|
|
|
- }else{
|
|
|
- appUserUpdate.setMentalEnergy(i);
|
|
|
- appUserUpdate.setTestFlag("2");
|
|
|
- appUserMapper.updateById(appUserUpdate);
|
|
|
+ ReviewTask reviewTask1 = reviewTaskMapper.selectById(list.get(0).getReviewTaskId());
|
|
|
+ if (reviewTask1.getType().equals("MMSE") || reviewTask1.getType().equals("MOCA")){
|
|
|
+ //更新脑力值
|
|
|
+ int i = getI(list);
|
|
|
+ int synthesisScore = (new BigDecimal(i).divide(new BigDecimal("30"))).multiply(new BigDecimal("500")).setScale(0, RoundingMode.DOWN).intValue();
|
|
|
+
|
|
|
+
|
|
|
+ AppUser appUserUpdate = new AppUser();
|
|
|
+ AppUser appUser = appUserMapper.selectById(appCurrentLoginUser.getId());
|
|
|
+ appUserUpdate.setId(appUser.getId());
|
|
|
+ if(appUser.getTestFlag().equals("2")){
|
|
|
+
|
|
|
+ appUserUpdate.setMentalEnergy(synthesisScore+appUser.getMentalEnergy());
|
|
|
+ appUserUpdate.setTestFlag("0");
|
|
|
+ appUserMapper.updateById(appUserUpdate);
|
|
|
+
|
|
|
+ // 完成测评任务,推荐专属任务
|
|
|
+ List<Game> gameList = recommendFacade.recommendationA(appUser);
|
|
|
+ GameRecommendRule ruleA = recommendFacade.getRule("A");
|
|
|
+ List<GameUser> gameUsers = recommendFacade.buildGameUsers(gameList, appUser, ruleA);
|
|
|
+
|
|
|
+ gameTaskService.generateTask(gameUsers, ruleA.getOrgCode(), ruleA.getOrgName());
|
|
|
+ log.info("<<<<<<<<<<<<保存推荐游戏记录>>>>>>>>>>>>>>");
|
|
|
+ boolean gameRecommend = gameRecommendRecordService.saveBatch(gameUsers, ruleA.getOrgCode(), ruleA.getOrgName(), ruleA.getRecommendPlayClass());
|
|
|
+ log.info("<<<<<<<<<<<<保存推荐游戏记录响应:{}>>>>>>>>>>>>>>",gameRecommend);
|
|
|
+ }else{
|
|
|
+ appUserUpdate.setMentalEnergy(synthesisScore);
|
|
|
+ appUserUpdate.setTestFlag("2");
|
|
|
+ appUserMapper.updateById(appUserUpdate);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
@Override
|
|
|
public Map<String, Object> findReviewResult(ReviewRecord reviewRecord) {
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
@@ -228,19 +239,11 @@ public class ReviewServiceImpl extends ServiceImpl<ReviewMapper, Review> impleme
|
|
|
|
|
|
|
|
|
|
|
|
- if(re.getReviewId() == 33 || re.getReviewId() == 34|| re.getReviewId() == 35|| re.getReviewId() == 36|| re.getReviewId() == 37){
|
|
|
- if(re.getCorrect().equals("1")){//如果正确
|
|
|
- j++;
|
|
|
- }
|
|
|
- g=25;
|
|
|
- if(j==5){
|
|
|
- i += Integer.parseInt(re.getScore());
|
|
|
- }
|
|
|
- }else if(re.getReviewId() == 52 || re.getReviewId() == 53 || re.getReviewId() == 54|| re.getReviewId() == 55|| re.getReviewId() == 56){
|
|
|
+ if(re.getReviewId() == 52 || re.getReviewId() == 53 || re.getReviewId() == 54|| re.getReviewId() == 55|| re.getReviewId() == 56){
|
|
|
if(re.getCorrect().equals("1")){
|
|
|
h++;
|
|
|
}
|
|
|
- g=45;
|
|
|
+ g=3;
|
|
|
|
|
|
}else{
|
|
|
i += Integer.parseInt(re.getScore());
|
|
|
@@ -249,11 +252,11 @@ public class ReviewServiceImpl extends ServiceImpl<ReviewMapper, Review> impleme
|
|
|
}
|
|
|
|
|
|
if(h == 1){
|
|
|
- i = 15;
|
|
|
+ i = 1;
|
|
|
}else if(h == 2 || h == 3){
|
|
|
- i = 30;
|
|
|
+ i = 2;
|
|
|
} else if (h==4 || h==5) {
|
|
|
- i=45;
|
|
|
+ i=3;
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -342,14 +345,7 @@ public class ReviewServiceImpl extends ServiceImpl<ReviewMapper, Review> impleme
|
|
|
int j = 0;
|
|
|
int h = 0;
|
|
|
for (ReviewRecord record : reviewRecords) {
|
|
|
- if(record.getReviewId() == 33 || record.getReviewId() == 34|| record.getReviewId() == 35|| record.getReviewId() == 36|| record.getReviewId() == 37){
|
|
|
- if(record.getCorrect().equals("1")){//如果正确
|
|
|
- j++;
|
|
|
- }
|
|
|
- if(j==5){
|
|
|
- i += Integer.parseInt(record.getScore());
|
|
|
- }
|
|
|
- }else if(record.getReviewId() == 52 || record.getReviewId() == 53 || record.getReviewId() == 54|| record.getReviewId() == 55|| record.getReviewId() == 56){
|
|
|
+ if (record.getReviewId() == 52 || record.getReviewId() == 53 || record.getReviewId() == 54|| record.getReviewId() == 55|| record.getReviewId() == 56){
|
|
|
if(record.getCorrect().equals("1")){
|
|
|
h++;
|
|
|
}
|
|
|
@@ -361,11 +357,11 @@ public class ReviewServiceImpl extends ServiceImpl<ReviewMapper, Review> impleme
|
|
|
}
|
|
|
}
|
|
|
if(h == 1){
|
|
|
- i += 15;
|
|
|
+ i += 1;
|
|
|
}else if(h == 2 || h == 3){
|
|
|
- i += 30;
|
|
|
+ i += 2;
|
|
|
} else if (h==4 || h==5) {
|
|
|
- i+=45;
|
|
|
+ i+=3;
|
|
|
}
|
|
|
return i;
|
|
|
}
|