|
|
@ -89,6 +89,17 @@ public class MentalTestService implements IMentalTestService { |
|
|
|
|
|
|
|
@Override |
|
|
|
public Long generateMentalTest(Long keyUserId, String userId) { |
|
|
|
|
|
|
|
DateTime today = DateUtil.beginOfDay(new Date()); |
|
|
|
// 判断用户今天有没有脑力测评,有则不重复生成
|
|
|
|
MentalTestExample todayMentalTestExample = new MentalTestExample(); |
|
|
|
todayMentalTestExample.createCriteria().andKeyUserIdEqualTo(keyUserId).andTestAtEqualTo(today); |
|
|
|
todayMentalTestExample.setOrderByClause("key_id desc limit 1"); |
|
|
|
List<MentalTest> mentalTests = mentalTestDao.selectByExample(todayMentalTestExample); |
|
|
|
log.info("已经有的脑力测评:{}", mentalTests); |
|
|
|
if (CollectionUtil.isNotEmpty(mentalTests)) { |
|
|
|
return mentalTests.get(0).getKeyId(); |
|
|
|
} |
|
|
|
// 将未完成的设置为过时
|
|
|
|
MentalTestExample mentalTestExample = new MentalTestExample(); |
|
|
|
mentalTestExample.createCriteria().andKeyUserIdEqualTo(keyUserId).andFinishStatusEqualTo(YanYuanConstant.MentalTest.FINISH_STATUS_NO); |
|
|
@ -101,7 +112,7 @@ public class MentalTestService implements IMentalTestService { |
|
|
|
mentalTest.setKeyId(snowflake.nextId()); |
|
|
|
mentalTest.setKeyUserId(keyUserId); |
|
|
|
mentalTest.setUserId(userId); |
|
|
|
mentalTest.setTestAt(DateUtil.beginOfDay(new Date())); |
|
|
|
mentalTest.setTestAt(today); |
|
|
|
mentalTestDao.insertSelective(mentalTest); |
|
|
|
// 随机获取题目ID
|
|
|
|
List<Long> numIds = evaluationNumDao.queryRandomIds(YanYuanConstant.Evaluation.TYPE_NLCP, YanYuanConstant.Evaluation.TYPE_NLCP_TOTAL); |
|
|
|