Compare commits

..

3 Commits

@ -137,10 +137,11 @@ public class StuConceptBlockServiceImpl implements StuConceptBlockService {
*/
@Override
public void hashLearningAssessmentScore(StuLearningAssessmentScoreDTO stuLearningAssessmentScoreDTO) {
//查询做题记录
StuAssessmentQuestionDetailsExample detailsExample = new StuAssessmentQuestionDetailsExample();
detailsExample.createCriteria().andUserIdEqualTo(stuLearningAssessmentScoreDTO.getUserId());
List<StuAssessmentQuestionDetails> stuAssessmentQuestionDetails = stuAssessmentQuestionDetailsMapper.selectByExample(detailsExample);
if (stuAssessmentQuestionDetails.size() != 0) {
if (!stuAssessmentQuestionDetails.isEmpty()) {
StuLearningAssessmentExample example1 = new StuLearningAssessmentExample();
StuLearningAssessmentExample.Criteria criteria1 = example1.createCriteria();
criteria1.andModuleEqualTo(stuLearningAssessmentScoreDTO.getModule());
@ -226,9 +227,9 @@ public class StuConceptBlockServiceImpl implements StuConceptBlockService {
details.setModule(stuLearningAssessmentScoreDTO.getModule());
if (saw.equals(string)) {
details.setRightOrWrong("正确");
count++;
} else {
details.setRightOrWrong("错误");
count++;
}
stuAssessmentQuestionDetailsMapper.insert(details);
}

@ -8,6 +8,7 @@ import cn.hutool.core.util.IdUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.sztzjy.marketing.config.Constant;
import com.sztzjy.marketing.config.exception.handler.ServiceException;
import com.sztzjy.marketing.entity.*;
import com.sztzjy.marketing.entity.dto.StuMachineLearningInfoDTO;
import com.sztzjy.marketing.mapper.*;
@ -52,6 +53,8 @@ public class UserBehaviorProfilingAnaServiceImpl implements UserBehaviorProfilin
ScoringUtil scoringUtil;
@Resource
StuScoreDetailsMapper stuScoreDetailsMapper;
@Resource
StuLearningAssessmentMapper learningAssessmentMapper;
/**
*
@ -367,7 +370,21 @@ public class UserBehaviorProfilingAnaServiceImpl implements UserBehaviorProfilin
scoreDetailsList.get(i).setScoringCriteria(String.valueOf(learningAssessmentScore));
scoreDetailsList.get(i).setScoreWeight(Double.parseDouble(String.valueOf(learningAssessmentWeight)));
String completionStatus = scoreDetailsList.get(i).getCompletionStatus();
double stuLearningAssessmentScoring = scoringUtil.getStuLearningAssessmentScoring(Integer.parseInt(completionStatus), Double.parseDouble(String.valueOf(learningAssessmentScore)));
//查询题目个数
StuLearningAssessmentExample assessmentExample=new StuLearningAssessmentExample();
assessmentExample.createCriteria().andModuleEqualTo("数字营销");
List<StuLearningAssessment> stuLearningAssessments = learningAssessmentMapper.selectByExample(assessmentExample);
if(stuLearningAssessments.isEmpty()){
throw new ServiceException(HttpStatus.ACCEPTED,"题库未导入");
}
//计算用户对了几道题
Double sub = bigDecimalUtils.sub(Double.parseDouble(String.valueOf(stuLearningAssessments.size())), Double.parseDouble(completionStatus));
double stuLearningAssessmentScoring = scoringUtil.getStuLearningAssessmentScoring(sub, Double.parseDouble(String.valueOf(learningAssessmentScore)));
scoreDetailsList.get(i).setScoreProject(stuLearningAssessmentScoring);
//设置完成状态
scoreDetailsList.get(i).setSchedule(100.0);
@ -377,7 +394,7 @@ public class UserBehaviorProfilingAnaServiceImpl implements UserBehaviorProfilin
scoreDetailsList.get(i).setScoringCriteria(String.valueOf(experimentalTrainingScore));
scoreDetailsList.get(i).setScoreWeight(Double.parseDouble(String.valueOf(experimentalTrainingWeight)));
String completionStatus = scoreDetailsList.get(i).getCompletionStatus();
double stuLearningAssessmentScoring = scoringUtil.getStuLearningAssessmentScoring(Integer.parseInt(completionStatus), Double.parseDouble(String.valueOf(experimentalTrainingScore)));
double stuLearningAssessmentScoring = scoringUtil.getStuTrainingScoring(Integer.parseInt(completionStatus), Double.parseDouble(String.valueOf(experimentalTrainingScore)));
scoreDetailsList.get(i).setScoreProject(stuLearningAssessmentScoring);

@ -61,18 +61,17 @@ public class ScoringUtil {
/**
*
* @param v1
* @param v2
* @param v1
* @param v2
* @return
*/
public double getStuLearningAssessmentScoring(int v1,double v2){
Double fraction=0.00;
public double getStuLearningAssessmentScoring(double v1,double v2){
double mul = bigDecimalUtils.mul(v1, v2, 1);
fraction=100-mul;
if(fraction<0){
return 0;
if(mul>100){
return 100;
}
return fraction;
return mul;
}
public double getStuTrainingScoring(int v1,double v2){

Loading…
Cancel
Save