|
@@ -992,26 +992,31 @@ public class FsUserCourseVideoServiceImpl implements IFsUserCourseVideoService
|
|
// if (StringUtils.isEmpty(user.getMpOpenId())){
|
|
// if (StringUtils.isEmpty(user.getMpOpenId())){
|
|
// return R.error("未识别到领取信息");
|
|
// return R.error("未识别到领取信息");
|
|
// }
|
|
// }
|
|
|
|
+ log.info("查询会员信息:{}", user);
|
|
if (user.getStatus()==0){
|
|
if (user.getStatus()==0){
|
|
return R.error("会员被停用,无权限,请联系客服!");
|
|
return R.error("会员被停用,无权限,请联系客服!");
|
|
}
|
|
}
|
|
- FsCourseWatchLog log = new FsCourseWatchLog();
|
|
|
|
|
|
+ FsCourseWatchLog watchLog = new FsCourseWatchLog();
|
|
|
|
|
|
// 根据链接类型判断是否已发放奖励
|
|
// 根据链接类型判断是否已发放奖励
|
|
- log = courseWatchLogMapper.getWatchCourseVideo(param.getUserId(), param.getVideoId(), param.getQwUserId(), param.getQwExternalId());
|
|
|
|
- if (log == null) {
|
|
|
|
|
|
+ watchLog = courseWatchLogMapper.getWatchCourseVideo(param.getUserId(), param.getVideoId(), param.getQwUserId(), param.getQwExternalId());
|
|
|
|
+ log.info("看课记录:{}", watchLog);
|
|
|
|
+ if (watchLog == null) {
|
|
return R.error("无记录");
|
|
return R.error("无记录");
|
|
}
|
|
}
|
|
- if (log.getLogType() != 2) {
|
|
|
|
|
|
+ if (watchLog.getLogType() != 2) {
|
|
return R.error("未完课");
|
|
return R.error("未完课");
|
|
}
|
|
}
|
|
- if (log.getRewardType() != null) {
|
|
|
|
|
|
+ if (watchLog.getRewardType() != null) {
|
|
FsCourseRedPacketLog packetLog = redPacketLogMapper.selectFsCourseRedPacketLogByTemporary(param.getVideoId(), param.getUserId());
|
|
FsCourseRedPacketLog packetLog = redPacketLogMapper.selectFsCourseRedPacketLogByTemporary(param.getVideoId(), param.getUserId());
|
|
|
|
+ log.info("课程红包:{}", packetLog);
|
|
if(packetLog != null && packetLog.getStatus() == 1) {
|
|
if(packetLog != null && packetLog.getStatus() == 1) {
|
|
return R.error("已领取该课程奖励,不可重复领取!");
|
|
return R.error("已领取该课程奖励,不可重复领取!");
|
|
}
|
|
}
|
|
if(packetLog != null && packetLog.getStatus() == 0) {
|
|
if(packetLog != null && packetLog.getStatus() == 0) {
|
|
|
|
+ log.info("判断领取记录");
|
|
if(StringUtils.isNotEmpty(packetLog.getResult())){
|
|
if(StringUtils.isNotEmpty(packetLog.getResult())){
|
|
|
|
+ log.info("是否有结果");
|
|
R r = JSON.parseObject(packetLog.getResult(), R.class);
|
|
R r = JSON.parseObject(packetLog.getResult(), R.class);
|
|
return r;
|
|
return r;
|
|
} else {
|
|
} else {
|
|
@@ -1029,22 +1034,22 @@ public class FsUserCourseVideoServiceImpl implements IFsUserCourseVideoService
|
|
// 获取配置信息
|
|
// 获取配置信息
|
|
String json = configService.selectConfigByKey("course.config");
|
|
String json = configService.selectConfigByKey("course.config");
|
|
CourseConfig config = JSONUtil.toBean(json, CourseConfig.class);
|
|
CourseConfig config = JSONUtil.toBean(json, CourseConfig.class);
|
|
-
|
|
|
|
|
|
+ log.info("奖励类型:{}", config.getRewardType());
|
|
// 根据奖励类型发放不同奖励
|
|
// 根据奖励类型发放不同奖励
|
|
switch (config.getRewardType()) {
|
|
switch (config.getRewardType()) {
|
|
// 红包奖励
|
|
// 红包奖励
|
|
case 1:
|
|
case 1:
|
|
- return sendRedPacketReward(param, user, log, video, config);
|
|
|
|
|
|
+ return sendRedPacketReward(param, user, watchLog, video, config);
|
|
// 积分奖励
|
|
// 积分奖励
|
|
case 2:
|
|
case 2:
|
|
- return sendIntegralReward(param,user, log, config);
|
|
|
|
|
|
+ return sendIntegralReward(param,user, watchLog, config);
|
|
// 红包+积分
|
|
// 红包+积分
|
|
case 3:
|
|
case 3:
|
|
- R sendRed = sendRedPacketReward(param, user, log, video, config);
|
|
|
|
|
|
+ R sendRed = sendRedPacketReward(param, user, watchLog, video, config);
|
|
if (!Objects.equals(sendRed.get("code"), 200)) {
|
|
if (!Objects.equals(sendRed.get("code"), 200)) {
|
|
return sendRed;
|
|
return sendRed;
|
|
}
|
|
}
|
|
- return sendIntegralReward(param,user, log, config);
|
|
|
|
|
|
+ return sendIntegralReward(param,user, watchLog, config);
|
|
default:
|
|
default:
|
|
return R.error("参数错误!");
|
|
return R.error("参数错误!");
|
|
}
|
|
}
|
|
@@ -1052,6 +1057,7 @@ public class FsUserCourseVideoServiceImpl implements IFsUserCourseVideoService
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public R sendRewardByFsUser(FsCourseSendRewardUParam param) {
|
|
public R sendRewardByFsUser(FsCourseSendRewardUParam param) {
|
|
|
|
+ log.info("进入用户判断");
|
|
FsUser user = fsUserMapper.selectFsUserByUserId(param.getUserId());
|
|
FsUser user = fsUserMapper.selectFsUserByUserId(param.getUserId());
|
|
if (user == null){
|
|
if (user == null){
|
|
return R.error("未识别到用户信息");
|
|
return R.error("未识别到用户信息");
|
|
@@ -1127,7 +1133,7 @@ public class FsUserCourseVideoServiceImpl implements IFsUserCourseVideoService
|
|
* @return 处理结果
|
|
* @return 处理结果
|
|
*/
|
|
*/
|
|
private R sendRedPacketReward(FsCourseSendRewardUParam param, FsUser user, FsCourseWatchLog log, FsUserCourseVideo video, CourseConfig config) {
|
|
private R sendRedPacketReward(FsCourseSendRewardUParam param, FsUser user, FsCourseWatchLog log, FsUserCourseVideo video, CourseConfig config) {
|
|
-
|
|
|
|
|
|
+ logger.info("进入发放红包");
|
|
// 确定红包金额
|
|
// 确定红包金额
|
|
BigDecimal amount = BigDecimal.ZERO;
|
|
BigDecimal amount = BigDecimal.ZERO;
|
|
FsUserCourseVideoRedPackage redPackage = fsUserCourseVideoRedPackageMapper.selectRedPacketByCompanyId(param.getVideoId(), param.getCompanyId(), param.getPeriodId());
|
|
FsUserCourseVideoRedPackage redPackage = fsUserCourseVideoRedPackageMapper.selectRedPacketByCompanyId(param.getVideoId(), param.getCompanyId(), param.getPeriodId());
|