|
@@ -1,5 +1,6 @@
|
|
|
package com.fs.course.service.impl;
|
|
|
|
|
|
+import java.math.BigDecimal;
|
|
|
import java.util.*;
|
|
|
import java.util.function.Function;
|
|
|
import java.util.stream.Collectors;
|
|
@@ -142,26 +143,42 @@ public class FsUserWatchCourseStatisticsServiceImpl extends ServiceImpl<FsUserWa
|
|
|
FsUserWatchCourseStatistics answerLogData = answerLogMap.get(key);
|
|
|
FsUserWatchCourseStatistics userTotalData = userTotalMap.get(data.getCompanyUserId());
|
|
|
BeanUtils.copyProperties(data, vo);
|
|
|
+
|
|
|
+ // 单独一个一个set,不用copy,避免copy出来的结果被前面的覆盖
|
|
|
if(userTotalData != null){
|
|
|
vo.setUserNum(userTotalData.getUserNum());
|
|
|
vo.setNewUserNum(userTotalData.getNewUserNum());
|
|
|
+ } else {
|
|
|
+ vo.setUserNum(0);
|
|
|
+ vo.setNewUserNum(0);
|
|
|
}
|
|
|
|
|
|
if(watchLogData != null) {
|
|
|
vo.setWatchNum(watchLogData.getWatchNum());
|
|
|
vo.setCompleteWatchNum(watchLogData.getCompleteWatchNum());
|
|
|
vo.setCompleteWatchRate(watchLogData.getCompleteWatchRate());
|
|
|
+ } else {
|
|
|
+ vo.setWatchNum(0);
|
|
|
+ vo.setCompleteWatchNum(0);
|
|
|
+ vo.setCompleteWatchRate(BigDecimal.ZERO);
|
|
|
}
|
|
|
|
|
|
if(redPacketLogData != null) {
|
|
|
vo.setRedPacketNum(redPacketLogData.getRedPacketNum());
|
|
|
vo.setRedPacketAmount(redPacketLogData.getRedPacketAmount());
|
|
|
+ } else {
|
|
|
+ vo.setRedPacketNum(0);
|
|
|
+ vo.setRedPacketAmount(BigDecimal.ZERO);
|
|
|
}
|
|
|
|
|
|
if(answerLogData != null) {
|
|
|
vo.setAnswerNum(answerLogData.getAnswerNum());
|
|
|
vo.setAnswerRightNum(answerLogData.getAnswerRightNum());
|
|
|
vo.setAnswerRightRate(answerLogData.getAnswerRightRate());
|
|
|
+ } else {
|
|
|
+ vo.setAnswerNum(0);
|
|
|
+ vo.setAnswerRightNum(0);
|
|
|
+ vo.setAnswerRightRate(BigDecimal.ZERO);
|
|
|
}
|
|
|
|
|
|
vo.setCreateTime(new Date());
|