Commit ea595e3b ea595e3bf7a5bb77eb2db8ddc6e2ae54a9c7f1e4 by xianghan

1.修复app账号兼容海南历史数据

1 parent f82147af
......@@ -31,6 +31,9 @@ public class UserAppIdManual implements Serializable {
@Transient
private String account;
@Transient
private String memberCode;
// ID
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
......
......@@ -50,6 +50,11 @@ public interface UserAppRepository extends JpaRepository<UserApp, Long>, JpaSpec
Integer updateAppLastActiveTimeAndNicknameAndHeadImg(String username, String nickname, String headimgurl);
@Modifying
@Query(value = "UPDATE `uc_user_app` SET `cellphone`= :#{#resources.cellphone}, `username`= :#{#resources.username},`last_active_time` = now(), `nickname` = :#{#resources.nickname}, `headimgurl` = :#{#resources.headimgurl} " +
" WHERE `id` = :#{#resources.id} and `status` = 1 ", nativeQuery = true)
Integer updateAppLastActiveTimeAndNicknameAndHeadImgById(@Param("resources") UserApp userApp);
@Modifying
@Query(value = "INSERT INTO `uc_user_app`(`id`, `member_id`, `username`, `password`, `type`, `status`, `nickname`, `headimgurl`, `email`, `cellphone`, `gender`, `birthday`, `last_active_time`, `delete_time`, `tags`, `description`, `create_time`, `update_time`) " +
" VALUES (:#{#resources.id}, :#{#resources.memberId}, :#{#resources.username}, :#{#resources.password}, :#{#resources.type}," +
" 1, :#{#resources.nickname}, :#{#resources.headimgurl}, :#{#resources.email}, :#{#resources.cellphone}, " +
......
......@@ -6,6 +6,7 @@ import com.topdraw.business.module.user.app.domain.UserAppBind;
import com.topdraw.business.module.user.app.service.UserAppBindService;
import com.topdraw.business.module.user.app.service.dto.UserAppBindDTO;
import com.topdraw.business.module.user.app.service.dto.UserAppDTO;
import com.topdraw.business.module.vis.hainan.apple.domain.VisUserApple;
import com.topdraw.business.module.vis.hainan.qq.domain.VisUserQq;
import com.topdraw.business.module.vis.hainan.weibo.domain.VisUserWeibo;
import com.topdraw.business.module.vis.hainan.weixin.domain.VisUserWeixin;
......@@ -37,6 +38,22 @@ public class UserAppController {
private UserAppBindService userAppBindService;
@Log
@PostMapping(value = "/saveAppAndBindApple4Vis")
@ApiOperation("兼容海南app苹果数据")
@AnonymousAccess
public ResultInfo saveAppAndBindApple4Vis(@Validated @RequestBody VisUserApple resources) {
log.info("兼容海南app苹果数据,参数 ==>> [saveAppAndBindApple4Vis#{}]", resources);
String user = resources.getUser();
if (StringUtils.isBlank(user)) {
log.error("兼容海南app苹果数据,参数错误,app账号不得为空,[saveAppAndBindApple4Vis#{}]", resources);
return ResultInfo.failure("兼容海南app苹果数据,参数错误,app账号不得为空");
}
return this.userAppService.saveAppAndBindApple4Vis(resources);
}
@Log
@PostMapping(value = "/saveAppAndBindWeibo4Vis")
@ApiOperation("兼容海南app原微博数据")
@AnonymousAccess
......@@ -46,7 +63,7 @@ public class UserAppController {
if (StringUtils.isBlank(userId)) {
log.error("兼容海南app原weibo数据,参数错误,app账号不得为空,[saveAppAndBindWeibo4Vis#{}]", resources);
return ResultInfo.failure("修改app账号密码失败,参数错误,app账号不得为空");
return ResultInfo.failure("兼容海南app原weibo数据,参数错误,app账号不得为空");
}
return this.userAppService.saveAppAndBindWeibo4Vis(resources);
......@@ -61,7 +78,7 @@ public class UserAppController {
String openid = resources.getOpenid();
if (StringUtils.isBlank(openid)) {
log.error("兼容海南app原QQ数据,参数错误,app账号不得为空,[saveAppAndBindWeibo4Vis#{}]", resources);
return ResultInfo.failure("修改app账号密码失败,参数错误,无openid");
return ResultInfo.failure("兼容海南app原QQ数据,参数错误,无openid");
}
return this.userAppService.saveAppAndBindQq4Vis(resources);
......@@ -77,14 +94,14 @@ public class UserAppController {
String openid = resources.getOpenid();
if (StringUtils.isBlank(openid)) {
log.error("兼容海南app原微信数据,参数错误,app账号不得为空,[saveAppAndBindWeixin4Vis#{}]", resources);
return ResultInfo.failure("兼容海南app原微信数据失败,参数错误,无openid");
return ResultInfo.failure("兼容海南app原微信数据,参数错误,无openid");
}
String username = resources.getUsername();
/*String username = resources.getUsername();
if (StringUtils.isBlank(username)) {
log.error("兼容海南app原微信数据,参数错误,app账号不得为空,[saveAppAndBindWeixin4Vis#{}]", resources);
return ResultInfo.failure("兼容海南app原微信数据失败,参数错误,无username");
}
}*/
return this.userAppService.saveAppAndBindWeixin4Vis(resources);
......@@ -92,14 +109,37 @@ public class UserAppController {
@Log
@PostMapping(value = "/updateAppLastActiveTimeAndNicknameAndHeadImgById")
@ApiOperation("修改app账号最后登录时间、昵称和头像和用户名")
@AnonymousAccess
public ResultInfo updateAppLastActiveTimeAndNicknameAndHeadImgById(@Validated @RequestBody UserApp resources) {
log.info("修改app账号最后登录时间、昵称和头像和用户名,参数 ==>> [updatePassword#{}]", resources);
Long id = resources.getId();
if (Objects.isNull(id)) {
log.error("修改app账号最后登录时间、昵称和头像和用户名,参数错误,id不存在,[updateAppLastActiveTimeAndNicknameAndHeadImgById#{}]", resources);
return ResultInfo.failure("修改app账号密码失败,参数错误,app账号不得为空");
}
String username = resources.getUsername();
if (StringUtils.isBlank(username)) {
log.error("修改app账号最后登录时间、昵称和头像和用户名,参数错误,app账号不得为空,[updateAppLastActiveTimeAndNicknameAndHeadImgById#{}]", resources);
return ResultInfo.failure("修改app账号最后登录时间、昵称和头像和用户名失败,参数错误,app账号不得为空");
}
boolean result = this.userAppService.updateAppLastActiveTimeAndNicknameAndHeadImgById(resources);
return ResultInfo.success(result);
}
@Log
@PostMapping(value = "/updateAppLastActiveTimeAndNicknameAndHeadImg")
@ApiOperation("修改app账号最后登录时间、昵称和头像")
@AnonymousAccess
public ResultInfo updateAppLastActiveTimeAndNicknameAndHeadImg(@Validated @RequestBody UserApp resources) {
log.info("修改app账号密码,参数 ==>> [updatePassword#{}]", resources);
log.info("修改app账号密码,参数 ==>> [updateAppLastActiveTimeAndNicknameAndHeadImg#{}]", resources);
String username = resources.getUsername();
if (StringUtils.isBlank(username)) {
log.error("修改app账号密码,参数错误,app账号不得为空,[updateLastActiveTime#{}]", resources);
log.error("修改app账号密码,参数错误,app账号不得为空,[updateAppLastActiveTimeAndNicknameAndHeadImg#{}]", resources);
return ResultInfo.failure("修改app账号密码失败,参数错误,app账号不得为空");
}
......@@ -140,7 +180,7 @@ public class UserAppController {
@ApiOperation("修改app账号最新登录时间")
@AnonymousAccess
public ResultInfo updateLastActiveTime(@Validated @RequestBody UserAppBind resources) {
log.info("保存第三方账号 ==>> param ==>> [updateLastActiveTime#{}]", resources);
log.info("修改app账号最新登录时间 ==>> param ==>> [updateLastActiveTime#{}]", resources);
String username = resources.getUsername();
if (StringUtils.isBlank(username)) {
log.error("修改app账号最新登录时间失败,参数错误,app账号不得为空,[updateLastActiveTime#{}]", resources);
......
......@@ -4,6 +4,7 @@ import com.topdraw.business.module.user.app.domain.UserApp;
import com.topdraw.business.module.user.app.domain.UserAppBind;
import com.topdraw.business.module.user.app.service.dto.UserAppDTO;
import com.topdraw.business.module.user.app.service.dto.UserAppSimpleDTO;
import com.topdraw.business.module.vis.hainan.apple.domain.VisUserApple;
import com.topdraw.business.module.vis.hainan.qq.domain.VisUserQq;
import com.topdraw.business.module.vis.hainan.weibo.domain.VisUserWeibo;
import com.topdraw.business.module.vis.hainan.weixin.domain.VisUserWeixin;
......@@ -82,6 +83,10 @@ public interface UserAppService {
boolean updateAppLastActiveTimeAndNicknameAndHeadImg(UserApp resources);
boolean updateAppLastActiveTimeAndNicknameAndHeadImgById(UserApp resources);
ResultInfo saveAppAndBindApple4Vis(VisUserApple resources);
ResultInfo saveAppAndBindWeibo4Vis(VisUserWeibo resources);
ResultInfo saveAppAndBindWeixin4Vis(VisUserWeixin resources);
......
package com.topdraw.business.module.user.app.service.impl;
import com.topdraw.aspect.AsyncMqSend;
import com.topdraw.business.module.member.domain.Member;
import com.topdraw.business.module.member.domain.MemberBuilder;
import com.topdraw.business.module.member.domain.MemberTypeConstant;
......@@ -16,10 +17,11 @@ import com.topdraw.business.module.user.app.service.dto.UserAppBindDTO;
import com.topdraw.business.module.user.app.service.dto.UserAppSimpleDTO;
import com.topdraw.business.module.vis.hainan.app.service.VisUserService;
import com.topdraw.business.module.vis.hainan.app.service.dto.VisUserDTO;
import com.topdraw.business.module.vis.hainan.apple.domain.VisUserApple;
import com.topdraw.business.module.vis.hainan.apple.service.VisUserAppleService;
import com.topdraw.business.module.vis.hainan.qq.domain.VisUserQq;
import com.topdraw.business.module.vis.hainan.weibo.domain.VisUserWeibo;
import com.topdraw.business.module.vis.hainan.weixin.domain.VisUserWeixin;
import com.topdraw.business.module.vis.hainan.weixin.repository.VisUserWeixinRepository;
import com.topdraw.common.ResultInfo;
import com.topdraw.util.TimestampUtil;
import com.topdraw.utils.StringUtils;
......@@ -29,6 +31,7 @@ import com.topdraw.business.module.user.app.service.UserAppService;
import com.topdraw.business.module.user.app.service.dto.UserAppDTO;
import com.topdraw.business.module.user.app.service.mapper.UserAppMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.aop.framework.AopContext;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -61,6 +64,8 @@ public class UserAppServiceImpl implements UserAppService {
private VisUserService visUserService;
@Autowired
private UserAppBindService userAppBindService;
@Autowired
private VisUserAppleService visUserAppleService;
@Override
......@@ -165,6 +170,103 @@ public class UserAppServiceImpl implements UserAppService {
}
@Override
@Transactional(rollbackFor = Exception.class)
public boolean updateAppLastActiveTimeAndNicknameAndHeadImgById(UserApp resources) {
Integer count = this.userAppRepository.updateAppLastActiveTimeAndNicknameAndHeadImgById(resources);
if (count > 0) {
((UserAppServiceImpl) AopContext.currentProxy()).asyncUpdateAppLastActiveTimeAndNicknameAndHeadImgById(resources);
return true;
}
return false;
}
@Override
@Transactional(rollbackFor = Exception.class)
public ResultInfo saveAppAndBindApple4Vis(VisUserApple resources) {
String username = resources.getUsername();
UserAppDTO userAppDTO = this.findByUsername(username);
if (Objects.nonNull(userAppDTO.getId()) && StringUtils.isNotBlank(userAppDTO.getHeadimgurl())) {
UserAppBindDTO userAppBindDTO = this.userAppBindService.findFirstByAccountAndAccountType(resources.getUser(), 6);
if (Objects.nonNull(userAppBindDTO.getId())) {
UserAppBind userAppBind = new UserAppBind();
userAppBind.setAccount(resources.getUser());
userAppBind.setAccountType(6);
userAppBind.setUserAppId(userAppDTO.getId());
userAppBind.setStatus(1);
userAppBind.setNickname(resources.getNickname());
userAppBind.setHeadimgurl(resources.getIcon());
this.userAppBindService.create(userAppBind);
}
return ResultInfo.success(userAppDTO);
}
Long visUserId = resources.getVisUserId();
VisUserDTO visUserDTO = this.visUserService.findById(visUserId);
if (Objects.nonNull(visUserDTO.getId())) {
UserAppIdManual userAppIdManual = new UserAppIdManual();
Long id = visUserDTO.getId();
userAppIdManual.setId(id);
userAppIdManual.setUsername(StringUtils.isBlank(username) ? resources.getUsername() : username);
String cellphone = visUserDTO.getCellphone();
userAppIdManual.setCellphone(StringUtils.isBlank(cellphone) ? resources.getUsername() : cellphone);
String nickname = visUserDTO.getNickname();
userAppIdManual.setNickname(StringUtils.isBlank(nickname) ? resources.getNickname() : nickname);
Integer gender = visUserDTO.getGender();
userAppIdManual.setGender(Objects.isNull(gender) ? -1 : gender);
userAppIdManual.setHeadimgurl(resources.getIcon());
String email = visUserDTO.getEmail();
userAppIdManual.setEmail(StringUtils.isBlank(email) ? null : email);
String tags = visUserDTO.getTags();
userAppIdManual.setTags(StringUtils.isBlank(tags) ? null : tags);
Timestamp createTime = visUserDTO.getCreateTime();
userAppIdManual.setCreateTime(Objects.isNull(createTime) ? TimestampUtil.now() : createTime);
Member member = MemberBuilder.build(MemberTypeConstant.app, resources.getIcon(), userAppIdManual.getNickname(), 0);
MemberDTO memberDTO = this.memberService.create(member);
userAppIdManual.setMemberCode(memberDTO.getCode());
userAppIdManual.setMemberId(memberDTO.getId());
userAppIdManual.setType(resources.getType());
this.userAppRepository.saveByIdManual(userAppIdManual);
UserAppBindDTO userAppBindDTO = this.userAppBindService.findFirstByAccountAndAccountType(resources.getUser(), 6);
if (Objects.isNull(userAppBindDTO.getId())) {
UserAppBind userAppBind = new UserAppBind();
userAppBind.setAccount(resources.getUser());
userAppBind.setAccountType(6);
userAppBind.setUserAppId(visUserId);
userAppBind.setStatus(1);
userAppBind.setNickname(resources.getNickname());
userAppBind.setHeadimgurl(resources.getIcon());
this.userAppBindService.create(userAppBind);
}
((UserAppServiceImpl) AopContext.currentProxy()).asyncSaveByIdManual(userAppIdManual);
return ResultInfo.success(userAppIdManual);
}
return ResultInfo.failure(null);
}
@Override
@Transactional(rollbackFor = Exception.class)
public ResultInfo saveAppAndBindWeibo4Vis(VisUserWeibo resources) {
String username1 = resources.getUsername();
......@@ -221,8 +323,9 @@ public class UserAppServiceImpl implements UserAppService {
Member member = MemberBuilder.build(MemberTypeConstant.app, resources.getIcon(), userAppIdManual.getNickname(), 0);
MemberDTO memberDTO = this.memberService.create(member);
userAppIdManual.setMemberId(memberDTO.getId());
userAppIdManual.setMemberCode(memberDTO.getCode());
userAppIdManual.setMemberId(memberDTO.getId());
userAppIdManual.setType(resources.getType());
this.userAppRepository.saveByIdManual(userAppIdManual);
......@@ -241,15 +344,17 @@ public class UserAppServiceImpl implements UserAppService {
this.userAppBindService.create(userAppBind);
}
((UserAppServiceImpl) AopContext.currentProxy()).asyncSaveByIdManual(userAppIdManual);
return ResultInfo.success(userAppIdManual);
}
return ResultInfo.failure(null);
}
@Override
@Transactional
@Transactional(rollbackFor = Exception.class)
public ResultInfo saveAppAndBindWeixin4Vis(VisUserWeixin resources) {
String username1 = resources.getUsername();
UserAppDTO userAppDTO = this.findByUsername(username1);
......@@ -305,8 +410,9 @@ public class UserAppServiceImpl implements UserAppService {
Member member = MemberBuilder.build(MemberTypeConstant.app, resources.getHeadimgurl(), userAppIdManual.getNickname(), 0);
MemberDTO memberDTO = this.memberService.create(member);
userAppIdManual.setMemberId(memberDTO.getId());
userAppIdManual.setMemberCode(memberDTO.getCode());
userAppIdManual.setMemberId(memberDTO.getId());
userAppIdManual.setType(resources.getType());
this.userAppRepository.saveByIdManual(userAppIdManual);
......@@ -325,14 +431,17 @@ public class UserAppServiceImpl implements UserAppService {
this.userAppBindService.create(userAppBind);
}
((UserAppServiceImpl) AopContext.currentProxy()).asyncSaveByIdManual(userAppIdManual);
return ResultInfo.success(userAppIdManual);
}
return ResultInfo.failure(null);
}
@Override
@Transactional(rollbackFor = Exception.class)
public ResultInfo saveAppAndBindQq4Vis(VisUserQq resources) {
String username1 = resources.getUsername();
UserAppDTO userAppDTO = this.findByUsername(username1);
......@@ -388,13 +497,14 @@ public class UserAppServiceImpl implements UserAppService {
Member member = MemberBuilder.build(MemberTypeConstant.app, resources.getIcon(), userAppIdManual.getNickname(), 0);
MemberDTO memberDTO = this.memberService.create(member);
userAppIdManual.setMemberCode(memberDTO.getCode());
userAppIdManual.setMemberId(memberDTO.getId());
userAppIdManual.setType(resources.getType());
this.userAppRepository.saveByIdManual(userAppIdManual);
UserAppBindDTO userAppBindDTO = this.userAppBindService.findFirstByAccountAndAccountType(resources.getOpenid(), 4);
if (Objects.isNull(userAppBindDTO.getId())) {
......@@ -408,6 +518,7 @@ public class UserAppServiceImpl implements UserAppService {
this.userAppBindService.create(userAppBind);
}
((UserAppServiceImpl) AopContext.currentProxy()).asyncSaveByIdManual(userAppIdManual);
return ResultInfo.success(userAppIdManual);
}
......@@ -415,11 +526,16 @@ public class UserAppServiceImpl implements UserAppService {
return ResultInfo.failure(null);
}
@Override
@Transactional(rollbackFor = Exception.class)
public boolean updatePasswordById(UserApp resources) {
return this.userAppRepository.updatePasswordById(resources.getId(), resources.getPassword()) > 0;
}
@AsyncMqSend
public void asyncUpdateAppLastActiveTimeAndNicknameAndHeadImgById(UserApp resources) {}
@AsyncMqSend
public void asyncSaveByIdManual(UserAppIdManual userAppIdManual) {}
}
......
......@@ -23,6 +23,12 @@ import java.io.Serializable;
@Table(name="vis_user_apple")
public class VisUserApple implements Serializable {
@Transient
private String username;
@Transient
private Integer type;
// ID
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
......
......@@ -219,7 +219,7 @@ public class UserOperationController {
@ApiOperation("取消关联第三方账号")
@AnonymousAccess
public ResultInfo cancelUserAppBind(@Validated @RequestBody UserAppBind resources) {
log.info("取消关联第三方账号, 参数 ==>> [updateUserApp#{}]", resources);
log.info("取消关联第三方账号, 参数 ==>> [cancelUserAppBind#{}]", resources);
String account = resources.getAccount();
if (StringUtils.isBlank(account)) {
......@@ -234,8 +234,7 @@ public class UserOperationController {
return ResultInfo.failure("取消关联第三方账号失败,参数错误,第三方账号类型不得为空");
}
boolean result =this.userOperationService.cancelUserAppBind(resources);
return ResultInfo.success(result);
return this.userOperationService.cancelUserAppBind(resources);
}
......
......@@ -187,7 +187,7 @@ public interface UserOperationService {
* @param resources
* @return
*/
boolean cancelUserAppBind(UserAppBind resources);
ResultInfo cancelUserAppBind(UserAppBind resources);
/**
*
......
......@@ -168,14 +168,24 @@ public class UserOperationServiceImpl implements UserOperationService {
}
@Override
public boolean cancelUserAppBind(UserAppBind resources) {
public ResultInfo cancelUserAppBind(UserAppBind resources) {
String account = resources.getAccount();
Integer accountType = resources.getAccountType();
UserAppBindDTO userAppBindDTO = this.userAppBindService.findFirstByAccountAndAccountType(account, accountType);
if (Objects.nonNull(userAppBindDTO.getId())) {
return this.userAppBindService.cancelUserAppBind(account, accountType);
if (Objects.nonNull(userAppBindDTO.getUserAppId())) {
UserAppDTO userAppDTO = this.userAppService.findById(userAppBindDTO.getUserAppId());
if (Objects.isNull(userAppDTO.getId())) {
return ResultInfo.failure("app账号不存在");
}
}
boolean b = this.userAppBindService.cancelUserAppBind(account, accountType);
if (b) {
return ResultInfo.success(true);
}
return false;
}
return ResultInfo.failure("取消绑定失败");
}
......@@ -189,7 +199,7 @@ public class UserOperationServiceImpl implements UserOperationService {
UserAppDTO userAppDTO = this.userAppService.findByUsername(username);
log.info("通过app账号查询app信息是否存在,[appBindThirdAccount#{}]", userAppDTO);
if (Objects.isNull(userAppDTO.getId())) {
return ResultInfo.failure("绑定第三方账号失败,app账号不存在[appBindThirdAccount#{}]");
return ResultInfo.failure("app账号不存在");
}
String account = resources.getAccount();
......@@ -245,7 +255,7 @@ public class UserOperationServiceImpl implements UserOperationService {
userAppDTO1.setHeadimgurl(headImgUrl);
((UserOperationServiceImpl) AopContext.currentProxy()).asyncUpdateAppLastActiveTimeAndNicknameAndHeadImg(userAppDTO1);
}
return ResultInfo.failure("绑定第三方账号失败,app账号不存在[appBindThirdAccount#{}]");
} else {
resources.setUserAppId(userAppDTO.getId());
resources.setStatus(1);
......@@ -256,8 +266,9 @@ public class UserOperationServiceImpl implements UserOperationService {
BeanUtils.copyProperties(resources, userAppDTO1);
userAppDTO1.setUsername(username);
((UserOperationServiceImpl) AopContext.currentProxy()).asyncCreateUserAppBindThirdAccount(userAppDTO1);
return ResultInfo.success("操作成功");
}
return ResultInfo.success(true);
}
@Override
......@@ -715,6 +726,7 @@ public class UserOperationServiceImpl implements UserOperationService {
// 保存关注记录
JSONObject sourceInfo = resources.getSourceInfo();
log.info("保存关注记录,数据 [subscribe#{}]", sourceInfo);
this.saveWechatSubscribeRecord(memberDTO, sourceInfo, 1);
return true;
......@@ -737,37 +749,38 @@ public class UserOperationServiceImpl implements UserOperationService {
// 内容ID,entityId:实体ID
Object entityId = sourceInfo.get("entityId");
if (Objects.nonNull(entityId)) {
if (Objects.nonNull(entityId) && StringUtils.isNotBlank(entityId.toString())) {
wechatSubscribeRecord.setEntityId(Long.parseLong(entityId.toString()));
}
// 内容Code, entityCode: 实体Code
Object entityCode = sourceInfo.get("entityCode");
if (Objects.nonNull(entityCode)) {
if (Objects.nonNull(entityCode) && StringUtils.isNotBlank(entityCode.toString())) {
wechatSubscribeRecord.setEntityCode(entityCode.toString());
}
// 内容类型,entityType:不填/空:首页;1:分类列表;2:商品;3:活动;4:投票对象;5:证书;6:用户上传内容;99:其他;
Object entityType = sourceInfo.get("entityType");
if (Objects.nonNull(entityType)) {
if (Objects.nonNull(entityType) && StringUtils.isNotBlank(entityType.toString())) {
wechatSubscribeRecord.setEntityType(Integer.parseInt(entityType.toString()));
}
// 微信场景类型,sourceType
Object sourceType = sourceInfo.get("sourceType");
if (Objects.nonNull(sourceType)) {
if (Objects.nonNull(sourceType) && StringUtils.isNotBlank(sourceType.toString())) {
wechatSubscribeRecord.setWxScence(Integer.parseInt(sourceType.toString()));
}
// 来源描述,sourceDesc:系统/运营手动维护
Object sourceDesc = sourceInfo.get("sourceDesc");
if (Objects.nonNull(sourceType)) {
if (Objects.nonNull(sourceType) && StringUtils.isNotBlank(sourceDesc.toString())) {
wechatSubscribeRecord.setSourceDesc(sourceDesc.toString());
}
// 业务场景,0-分享 1-大屏扫码免费看 2-大屏线上活动扫码引导关注 3-小屏线上活动长按二维码引导关注 4-线下活动海报 5-线下机构/渠道引流 99-其他
Object sourceScence = sourceInfo.get("sourceScence");
if (Objects.nonNull(sourceScence)) {
if (Objects.nonNull(sourceScence) && StringUtils.isNotBlank(sourceScence.toString())) {
wechatSubscribeRecord.setSourceScence(Integer.parseInt(sourceScence.toString()));
}
}
log.info("保存关注记录,落库对象 [subscribe# wechatSubscribeRecord ==>> {}]", wechatSubscribeRecord);
this.wechatSubscribeRecordService.create(wechatSubscribeRecord);
}
......