Commit e166011b e166011b6814a33d312da8344820af8c859092af by xianghan

1.兼容历史数据无unionid和memberId的情况

1 parent b7c88b81
......@@ -19,6 +19,9 @@ public class UserWeixinDTO implements Serializable {
// ID
private Long id;
// memberCode
private String memberCode;
// 用户ID
private Long memberId;
......
......@@ -419,6 +419,14 @@ public class UserOperationController {
// 保存大小屏信息到redis同时返回小屏信息
UserWeixinDTO userWeixinDTO = this.userTvOperationService.saveUserInfo(data);
if (Objects.isNull(userWeixinDTO.getId())) {
result = UNSUBSCRIBE;
resultList.add(result);
resultList.add(platformAccount1);
log.info("saveUserInfo ==>> result ==>> [{}]",resultList);
return ResultInfo.success(resultList);
}
// 小屏会员
MemberDTO memberDTO = this.memberService.findById(userWeixinDTO.getMemberId());
// 小屏用户不存在或者关注状态为未关注(0),返回未关注
......
......@@ -157,7 +157,8 @@ public class UserOperationServiceImpl implements UserOperationService {
String headImgUrl = resources.getHeadimgurl();
// 小屏账户
UserWeixinDTO userWeixinDTO = this.findFirstByUnionIdAndAppIdAndOpenId(unionId,appId, openId);
// UserWeixinDTO userWeixinDTO = this.findFirstByUnionIdAndAppIdAndOpenId(unionId, appId, openId);
UserWeixinDTO userWeixinDTO = this.findUserWeiXinByOpenIdAndAppId(appId, openId);
if (Objects.isNull(userWeixinDTO.getId())) {
......@@ -172,8 +173,19 @@ public class UserOperationServiceImpl implements UserOperationService {
} else {
if (Objects.isNull(userWeixinDTO.getUnionid()) && Objects.isNull(userWeixinDTO.getMemberId())) {
userWeixinDTO.setUnionid(unionId);
Long memberId = this.doCreateMember(userWeixinDTO, 0);
userWeixinDTO.setMemberId(memberId);
MemberDTO memberDTO = this.memberService.findById(memberId);
userWeixinDTO.setMemberCode(memberDTO.getCode());
this.doUpdateUserWeiXinStatus(userWeixinDTO, 1);
} else {
// 修改账户和会员信息
this.doUpdateUserWeiXinAndMember(userWeixinDTO,appId,openId,headImgUrl,nickname);
}
}
......@@ -440,13 +452,11 @@ public class UserOperationServiceImpl implements UserOperationService {
userWeixinDTO.setStatus(status);
UserWeixin userWeixin = new UserWeixin();
BeanUtils.copyProperties(userWeixinDTO,userWeixin);
BeanUtils.copyProperties(userWeixinDTO, userWeixin);
userWeixin.setUpdateTime(TimestampUtil.now());
this.userWeixinService.update(userWeixin);
return userWeixinDTO;
}
/**
......