|
@@ -1,5 +1,6 @@
|
|
|
package com.fs.course.service.impl;
|
|
|
|
|
|
+import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult;
|
|
|
import cn.hutool.core.util.NumberUtil;
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
@@ -828,11 +829,15 @@ public class FsUserCourseVideoServiceImpl implements IFsUserCourseVideoService
|
|
|
// }
|
|
|
if (param.getSource() == 2) {
|
|
|
FsUserWx fsUserWx = fsUserWxService.selectByAppIdAndUserId(param.getAppId(),user.getUserId(),1);
|
|
|
- if (fsUserWx ==null || fsUserWx.getOpenId()==null){
|
|
|
- return R.error("小程序openId参数缺失");
|
|
|
+ if (fsUserWx ==null){
|
|
|
+ packetParam.setOpenId(user.getMaOpenId());
|
|
|
+ handleFsUserWx(user,param.getAppId());
|
|
|
+ }else {
|
|
|
+ //查出openid并赋值
|
|
|
+ packetParam.setOpenId(fsUserWx.getOpenId());
|
|
|
}
|
|
|
- //查出公司绑定openid并赋值
|
|
|
- packetParam.setOpenId(fsUserWx.getOpenId());
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
packetParam.setAmount(amount);
|
|
|
packetParam.setSource(param.getSource());
|
|
@@ -912,6 +917,31 @@ public class FsUserCourseVideoServiceImpl implements IFsUserCourseVideoService
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ private void handleFsUserWx(FsUser user, String appId) {
|
|
|
+ // 尝试更新
|
|
|
+ boolean updated = fsUserWxService.lambdaUpdate()
|
|
|
+ .eq(FsUserWx::getFsUserId, user.getUserId())
|
|
|
+ .eq(FsUserWx::getAppId,appId )
|
|
|
+ .eq(FsUserWx::getOpenId, user.getMaOpenId())
|
|
|
+// .set(FsUserWx::getUnionId, session.getUnionid() == null ? "" : session.getUnionid())
|
|
|
+ .set(FsUserWx::getUpdateTime, new Date())
|
|
|
+ .update();
|
|
|
+
|
|
|
+ // 如果更新失败(记录不存在),则插入
|
|
|
+ if (!updated) {
|
|
|
+ FsUserWx fsUserWx = new FsUserWx();
|
|
|
+ fsUserWx.setType(1);
|
|
|
+ fsUserWx.setFsUserId(user.getUserId());
|
|
|
+ fsUserWx.setAppId(appId);
|
|
|
+ fsUserWx.setOpenId(user.getMaOpenId());
|
|
|
+// fsUserWx.setUnionId(session.getUnionid() == null ? "" : session.getUnionid());
|
|
|
+ fsUserWx.setCreateTime(new Date());
|
|
|
+ fsUserWx.setUpdateTime(new Date());
|
|
|
+ fsUserWxService.save(fsUserWx);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 发放红包奖励
|
|
|
*
|