|
|
|
@ -65,6 +65,9 @@ public class StuRateServiceImpl implements StuRateService {
|
|
|
|
|
@Autowired
|
|
|
|
|
StuUserMapper userMapper;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private StuScoreCenterMapper stuScoreCenterMapper;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -358,6 +361,14 @@ public class StuRateServiceImpl implements StuRateService {
|
|
|
|
|
|
|
|
|
|
creditEnhanceMeasureMapper.updateByPrimaryKeySelective(creditEnhanceMeasureList.get(0));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//先将成绩写入stu_score_center 根据重新实训次数(最多两次) 累加到对应成绩,求取平均分,然后再写入用户表对应的总成绩 累加总分
|
|
|
|
|
|
|
|
|
|
enhanceMeasureWriteInByAutoRating(creditEnhanceMeasureList.get(0));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return new ResultEntity<>(HttpStatus.OK,"保存成功",scoreByAuto);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -376,10 +387,98 @@ public class StuRateServiceImpl implements StuRateService {
|
|
|
|
|
enhanceMeasure.setErrorNumber(20-scoreByAuto);
|
|
|
|
|
|
|
|
|
|
creditEnhanceMeasureMapper.insertSelective(enhanceMeasure);
|
|
|
|
|
|
|
|
|
|
enhanceMeasureWriteInByAutoRating(enhanceMeasure);
|
|
|
|
|
|
|
|
|
|
return new ResultEntity<>(HttpStatus.OK,"保存成功!",scoreByAuto);
|
|
|
|
|
}
|
|
|
|
|
//先将成绩写入stu_score_center 根据重新实训次数(最多两次) 累加到对应成绩,求取平均分,然后再写入用户表对应的总成绩 累加总分
|
|
|
|
|
private void enhanceMeasureWriteInByAutoRating(StuCreditEnhanceMeasure enhanceMeasure) {
|
|
|
|
|
StuScoreCenterExample stuScoreCenterExample = new StuScoreCenterExample();
|
|
|
|
|
stuScoreCenterExample.createCriteria().andUserIdEqualTo(enhanceMeasure.getUserId()).andModuleEqualTo(enhanceMeasure.getModule());
|
|
|
|
|
List<StuScoreCenter> stuScoreCenterList = stuScoreCenterMapper.selectByExample(stuScoreCenterExample);
|
|
|
|
|
if (stuScoreCenterList.isEmpty()){
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
Integer numberOfTraining = stuScoreCenterList.get(0).getNumberOfTraining();
|
|
|
|
|
if (numberOfTraining == 0)
|
|
|
|
|
{
|
|
|
|
|
if (stuScoreCenterList.get(0).getTrainingScoreOne() == null)
|
|
|
|
|
{
|
|
|
|
|
stuScoreCenterList.get(0).setTrainingScoreOne(BigDecimal.valueOf(0.00)) ;
|
|
|
|
|
}
|
|
|
|
|
//第一次得分
|
|
|
|
|
stuScoreCenterList.get(0).setTrainingScore(stuScoreCenterList.get(0).getTrainingScoreOne().add(Convert.toBigDecimal(enhanceMeasure.getSysScore())));
|
|
|
|
|
stuScoreCenterList.get(0).setTrainingScoreOne(stuScoreCenterList.get(0).getTrainingScoreOne().add(Convert.toBigDecimal(enhanceMeasure.getSysScore())));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
if (numberOfTraining == 1)
|
|
|
|
|
{
|
|
|
|
|
if (stuScoreCenterList.get(0).getTrainingScoreTwo() == null)
|
|
|
|
|
{
|
|
|
|
|
stuScoreCenterList.get(0).setTrainingScoreTwo(BigDecimal.valueOf(0.00)) ;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//第2次得分
|
|
|
|
|
BigDecimal info = stuScoreCenterList.get(0).getTrainingScoreTwo().add(Convert.toBigDecimal(enhanceMeasure.getSysScore()));
|
|
|
|
|
//求2次平均分写入成绩
|
|
|
|
|
|
|
|
|
|
BigDecimal avg = (stuScoreCenterList.get(0).getTrainingScoreOne().add(info)).divide(BigDecimal.valueOf(2), 2, BigDecimal.ROUND_HALF_UP);
|
|
|
|
|
stuScoreCenterList.get(0).setTrainingScore(avg);
|
|
|
|
|
stuScoreCenterList.get(0).setTrainingScoreTwo(avg);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
if (numberOfTraining == 2)
|
|
|
|
|
{
|
|
|
|
|
if (stuScoreCenterList.get(0).getTrainingScoreThree() == null)
|
|
|
|
|
{
|
|
|
|
|
stuScoreCenterList.get(0).setTrainingScoreThree(BigDecimal.valueOf(0.00)) ;
|
|
|
|
|
}
|
|
|
|
|
//第3次得分
|
|
|
|
|
BigDecimal info = stuScoreCenterList.get(0).getTrainingScoreThree().add(Convert.toBigDecimal(enhanceMeasure.getSysScore()));
|
|
|
|
|
BigDecimal scoreTwo = stuScoreCenterList.get(0).getTrainingScoreTwo();
|
|
|
|
|
//求3次平均分写入成绩
|
|
|
|
|
BigDecimal avg = (stuScoreCenterList.get(0).getTrainingScoreOne().add(info).add(scoreTwo)).divide(BigDecimal.valueOf(3), 2, BigDecimal.ROUND_HALF_UP);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
stuScoreCenterList.get(0).setTrainingScore(avg);
|
|
|
|
|
stuScoreCenterList.get(0).setTrainingScoreThree(avg);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
stuScoreCenterMapper.updateByPrimaryKeySelective(stuScoreCenterList.get(0));
|
|
|
|
|
|
|
|
|
|
StuUser stuUser = userMapper.selectByPrimaryKey(enhanceMeasure.getUserId());
|
|
|
|
|
|
|
|
|
|
if ("个人征信".equals(enhanceMeasure.getModule()))
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
//个人征信客观成绩
|
|
|
|
|
stuUser.setCasePersonalCreditSubScore(BigDecimal.valueOf(enhanceMeasure.getSysScore()));
|
|
|
|
|
//个人征信总成绩
|
|
|
|
|
stuUser.setCasePersonalCreditScore(stuScoreCenterList.get(0).getTrainingScore());
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
if ("企业征信".equals(enhanceMeasure.getModule()))
|
|
|
|
|
{
|
|
|
|
|
//企业征信客观成绩
|
|
|
|
|
stuUser.setCaseCorporateCreditObjScore(BigDecimal.valueOf(enhanceMeasure.getSysScore()));
|
|
|
|
|
//企业征信总成绩
|
|
|
|
|
stuUser.setCaseCorporateCreditScore(stuScoreCenterList.get(0).getTrainingScore());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//获取用户画像总成绩 企业征信总成绩 个人征信总成绩 累加 写入实训案例总成绩
|
|
|
|
|
|
|
|
|
|
BigDecimal allScore = stuUser.getCasePersonalCreditScore().add(stuUser.getCaseCorporateCreditScore()).add(stuUser.getCaseUserProfileSocre());
|
|
|
|
|
//综合案例总成绩
|
|
|
|
|
stuUser.setComprehensiveCaseScore(allScore);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
userMapper.updateByPrimaryKeySelective(stuUser);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 企业征信:重新实训
|
|
|
|
|