|
@@ -959,23 +959,6 @@ public class FsUserCourseVideoServiceImpl implements IFsUserCourseVideoService
|
|
|
* @return 处理结果
|
|
|
*/
|
|
|
private R sendRedPacketReward(FsCourseSendRewardUParam param, FsUser user, FsCourseWatchLog log, FsUserCourseVideo video, CourseConfig config) {
|
|
|
- // 判断是否属于领取红包时间(会员看课发放红包)
|
|
|
- if (param.getPeriodId()!=null && param.getPeriodId()>0) {
|
|
|
- FsUserCoursePeriodDays periodDays = new FsUserCoursePeriodDays();
|
|
|
- periodDays.setVideoId(param.getVideoId());
|
|
|
- periodDays.setPeriodId(param.getPeriodId());
|
|
|
- //正常情况是只能查询到一条,之前可能存在重复的脏数据,暂使用查询list的方式
|
|
|
- List<FsUserCoursePeriodDays> fsUserCoursePeriodDays = fsUserCoursePeriodDaysMapper.selectFsUserCoursePeriodDaysList(periodDays);
|
|
|
- if(fsUserCoursePeriodDays != null && !fsUserCoursePeriodDays.isEmpty()){
|
|
|
- periodDays = fsUserCoursePeriodDays.get(0);
|
|
|
- }
|
|
|
- if(periodDays != null && periodDays.getLastJoinTime() !=null && LocalDateTime.now().isAfter(periodDays.getLastJoinTime())) {
|
|
|
- return R.error(403,"已超过领取红包时间");
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
|
|
|
// 确定红包金额
|
|
|
BigDecimal amount = BigDecimal.ZERO;
|
|
@@ -989,12 +972,16 @@ public class FsUserCourseVideoServiceImpl implements IFsUserCourseVideoService
|
|
|
|
|
|
// 准备发送红包参数
|
|
|
WxSendRedPacketParam packetParam = new WxSendRedPacketParam();
|
|
|
-// packetParam.setOpenId(getOpenId(user.getUserId(), param.getCompanyId(), param.getSource()));
|
|
|
packetParam.setOpenId(user.getMpOpenId());
|
|
|
// 来源是小程序切换openId
|
|
|
if (param.getSource() == 2) {
|
|
|
- System.out.println("小程序id"+user.getCourseMaOpenId());
|
|
|
- packetParam.setOpenId(user.getCourseMaOpenId());
|
|
|
+ //处理多小程序问题
|
|
|
+ FsUserWx fsUserWx = fsUserWxService.selectByAppIdAndUserId(param.getAppId(),user.getUserId(),1);
|
|
|
+ if (fsUserWx ==null || fsUserWx.getOpenId()==null){
|
|
|
+ return R.error("小程序openId参数缺失");
|
|
|
+ }
|
|
|
+ //查出公司绑定openid并赋值
|
|
|
+ packetParam.setOpenId(fsUserWx.getOpenId());
|
|
|
}
|
|
|
packetParam.setAmount(amount);
|
|
|
packetParam.setSource(param.getSource());
|