| | |
| | | import java.io.FileWriter;
|
| | | import java.io.IOException;
|
| | | import java.math.BigDecimal;
|
| | | import java.util.ArrayList;
|
| | | import java.util.Date;
|
| | | import java.util.List;
|
| | |
|
| | | import javax.annotation.Resource;
|
| | | import javax.servlet.http.HttpServletRequest;
|
| | | import javax.servlet.http.HttpSession;
|
| | |
|
| | | import org.springframework.stereotype.Service;
|
| | | import org.springframework.transaction.annotation.Transactional;
|
| | | import org.yeshi.utils.JsonUtil;
|
| | | import org.yeshi.utils.tencentcloud.COSManager;
|
| | |
|
| | | import com.google.gson.Gson;
|
| | | import com.qcloud.cos.model.COSObjectSummary;
|
| | |
| | | import com.yeshi.fanli.dao.mybatis.BindingAccountMapper;
|
| | | import com.yeshi.fanli.dao.mybatis.MoneyRecordMapper;
|
| | | import com.yeshi.fanli.dao.mybatis.PidOrderMapper;
|
| | | import com.yeshi.fanli.dao.mybatis.ThreeSaleMapper;
|
| | | import com.yeshi.fanli.dao.mybatis.UserConnectHistoryMapper;
|
| | | import com.yeshi.fanli.dao.mybatis.UserInfoMapper;
|
| | | import com.yeshi.fanli.dao.mybatis.hongbao.HongBaoMapper;
|
| | |
| | | import com.yeshi.fanli.entity.bus.user.AccountDetails;
|
| | | import com.yeshi.fanli.entity.bus.user.AccountMessage;
|
| | | import com.yeshi.fanli.entity.bus.user.BindingAccount;
|
| | | import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode;
|
| | | import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode.ForbiddenUserIdentifyCodeTypeEnum;
|
| | | import com.yeshi.fanli.entity.bus.user.HongBao;
|
| | | import com.yeshi.fanli.entity.bus.user.LoginResult;
|
| | | import com.yeshi.fanli.entity.bus.user.MoneyRecord;
|
| | |
| | | import com.yeshi.fanli.exception.UserAccountException;
|
| | | import com.yeshi.fanli.log.LogHelper;
|
| | | import com.yeshi.fanli.service.inter.hongbao.HongBaoService;
|
| | | import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce;
|
| | | import com.yeshi.fanli.service.inter.msg.UserAccountMsgNotificationService;
|
| | | import com.yeshi.fanli.service.inter.user.ForbiddenUserIdentifyCodeService;
|
| | | import com.yeshi.fanli.service.inter.user.SpreadUserImgService;
|
| | | import com.yeshi.fanli.service.inter.user.UserAccountService;
|
| | | import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
|
| | | import com.yeshi.fanli.util.Constant;
|
| | | import com.yeshi.fanli.util.FileUtil;
|
| | | import com.yeshi.fanli.util.StringUtil;
|
| | | import com.yeshi.fanli.util.TimeUtil;
|
| | | import com.yeshi.fanli.util.factory.AccountDetailsFactory;
|
| | | import com.yeshi.fanli.util.factory.msg.MsgAccountDetailFactory;
|
| | | import com.yeshi.fanli.util.wx.WXLoginUtil;
|
| | | import org.yeshi.utils.JsonUtil;
|
| | | import org.yeshi.utils.tencentcloud.COSManager;
|
| | |
|
| | | import net.sf.json.JSONObject;
|
| | |
|
| | | @Service
|
| | | public class UserAccountServiceImpl implements UserAccountService {
|
| | |
| | | private OrderItemMapper orderItemMapper;
|
| | |
|
| | | @Resource
|
| | | private ThreeSaleMapper threeSaleMapper;
|
| | | private ThreeSaleSerivce threeSaleSerivce;
|
| | |
|
| | | @Resource
|
| | | private PidOrderMapper pidOrderMapper;
|
| | |
| | | @Resource
|
| | | private SpreadUserImgService spreadUserImgService;
|
| | |
|
| | | @Resource
|
| | | private UserAccountMsgNotificationService userAccountMsgNotificationService;
|
| | |
|
| | | @Resource
|
| | | private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
|
| | |
|
| | | @Resource
|
| | | private ForbiddenUserIdentifyCodeService forbiddenUserIdentifyCodeService;
|
| | |
|
| | | @Transactional
|
| | | @Override
|
| | | public LoginResult login(HttpSession session, Boolean first, String appId, String code, String phone,
|
| | | public LoginResult login(HttpServletRequest request, Boolean first, String appId, String code, String phone,
|
| | | UserInfo tbUserInfo, boolean wxinstall, int loginType) throws UserAccountException {
|
| | |
|
| | | JSONObject logInfo = new JSONObject();
|
| | | logInfo.put("appId", appId);
|
| | | logInfo.put("code", code);
|
| | | logInfo.put("phone", phone);
|
| | | if (tbUserInfo != null)
|
| | | logInfo.put("tbUserInfo", tbUserInfo.getId());
|
| | | logInfo.put("loginType", loginType);
|
| | | LogHelper.lgoinInfo(logInfo.toString());
|
| | |
|
| | | HttpSession session = request.getSession();
|
| | | if (first != null && first == true)
|
| | | session.removeAttribute("LAST_LOGIN_USER");
|
| | | // 会话中上次登录的用户
|
| | |
| | | WeiXinUser weiXinUser = null;
|
| | | switch (loginType) {
|
| | | case 1:// 淘宝
|
| | | // 判断淘宝是否被封禁
|
| | | if (!StringUtil.isNullOrEmpty(tbUserInfo.getTaoBaoUid())) {
|
| | | ForbiddenUserIdentifyCode identifyCode = forbiddenUserIdentifyCodeService.listByTypeAndIdentifyCode(
|
| | | ForbiddenUserIdentifyCodeTypeEnum.taobaoUid, tbUserInfo.getTaoBaoUid());
|
| | | if (identifyCode != null && identifyCode.getEffective() != null && identifyCode.getEffective())
|
| | | throw new UserAccountException(Constant.CODE_FORBIDDEN_USER,
|
| | | Constant.FORBIDDEN_USER_REASON_DESC);
|
| | | }
|
| | | userInfo = getUserInfoByTaoBaoOpenId(appId, tbUserInfo.getOpenid());
|
| | | // 判断用户是否被删除
|
| | | if (userInfo != null && userInfo.getState() != null
|
| | | && (userInfo.getState() == UserInfo.STATE_DELETE_OUT_OF_DATE
|
| | | || userInfo.getState() == UserInfo.STATE_DELETE))
|
| | | userInfo = null;
|
| | | if (userInfo == null) {// 原先的账号不存在
|
| | | userInfo = new UserInfo();
|
| | | userInfo.setAppId(appId);
|
| | |
| | | if (weiXinUser == null)
|
| | | throw new UserAccountException(1001, "无法获取到微信个人信息");
|
| | | LogHelper.test("微信授权用户信息:" + new Gson().toJson(weiXinUser));
|
| | | // 判断微信unionid是否被封禁
|
| | | ForbiddenUserIdentifyCode identifyCode = forbiddenUserIdentifyCodeService.listByTypeAndIdentifyCode(
|
| | | ForbiddenUserIdentifyCodeTypeEnum.wxUnionId, weiXinUser.getUnionid());
|
| | | if (identifyCode != null && identifyCode.getEffective() != null && identifyCode.getEffective())
|
| | | throw new UserAccountException(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC);
|
| | |
|
| | | userInfo = getUserInfoByWXUnionId(appId, weiXinUser.getUnionid());
|
| | | // 判断用户是否被删除
|
| | | if (userInfo != null && userInfo.getState() != null
|
| | | && (userInfo.getState() == UserInfo.STATE_DELETE_OUT_OF_DATE
|
| | | || userInfo.getState() == UserInfo.STATE_DELETE))
|
| | | userInfo = null;
|
| | | // 直接用的微信登录
|
| | | if (lastUser == null) {
|
| | | if (userInfo != null) {
|
| | | // 使分销关系生效
|
| | | threeSaleMapper.effectThreeSale(userInfo.getId());
|
| | | threeSaleSerivce.effective(userInfo);
|
| | | // 更新头像与昵称
|
| | | UserInfo updateUserInfo = new UserInfo(userInfo.getId());
|
| | | updateUserInfo.setNickName(weiXinUser.getNickname());
|
| | |
| | | updateUserInfo.setPortrait(weiXinUser.getHeadimgurl());
|
| | | updateUserInfo.setWxPic(weiXinUser.getHeadimgurl());
|
| | | updateUserInfo.setWxName(weiXinUser.getNickname());
|
| | | // 设置登录时间与登录类型
|
| | | updateUserInfo.setLastLoginTime(System.currentTimeMillis());
|
| | | updateUserInfo.setLoginType(loginType);
|
| | | updateUserInfo.setLastLoginIp(request.getRemoteHost());
|
| | |
|
| | | userInfoMapper.updateByPrimaryKeySelective(updateUserInfo);
|
| | | // 删除邀请图片
|
| | | spreadUserImgService.deleteImgUrl(userInfo.getId());
|
| | |
| | | userInfo.setWxOpenId(weiXinUser.getOpenid());
|
| | | userInfo.setWxUnionId(weiXinUser.getUnionid());
|
| | | userInfo.setWxPic(weiXinUser.getHeadimgurl());
|
| | | userInfo.setLastLoginTime(System.currentTimeMillis());
|
| | | userInfo.setLoginType(loginType);
|
| | | userInfo.setLastLoginIp(request.getRemoteHost());
|
| | | addUser(userInfo);
|
| | |
|
| | | return new LoginResult(LoginResult.TYPE_NORMAL, userInfo);
|
| | |
| | | // 绑定关系
|
| | | UserInfo updateUserInfo = new UserInfo(userInfo.getId());
|
| | |
|
| | | if (!StringUtil.isNullOrEmpty(lastUser.getPhone()))
|
| | | if (!StringUtil.isNullOrEmpty(lastUser.getPhone())) {
|
| | | updateUserInfo.setPhone(lastUser.getPhone());
|
| | |
|
| | | userAccountMsgNotificationService.bindingSuccess(userInfo.getId(),
|
| | | MsgAccountDetailFactory.TYPE_PHONE);
|
| | | }
|
| | | if (!StringUtil.isNullOrEmpty(lastUser.getOpenid())) {
|
| | | updateUserInfo.setOpenid(lastUser.getOpenid());
|
| | | updateUserInfo.setTbName(lastUser.getTbName());
|
| | | updateUserInfo.setTbPic(lastUser.getTbPic());
|
| | | userAccountMsgNotificationService.bindingSuccess(userInfo.getId(),
|
| | | MsgAccountDetailFactory.TYPE_TB);
|
| | | }
|
| | | updateUserInfo.setLastLoginTime(System.currentTimeMillis());
|
| | | userInfoMapper.updateByPrimaryKeySelective(updateUserInfo);
|
| | | session.removeAttribute("LAST_LOGIN_USER");
|
| | |
|
| | | // 使分销关系生效
|
| | | threeSaleMapper.effectThreeSale(userInfo.getId());
|
| | | threeSaleSerivce.effective(userInfo);
|
| | |
|
| | | return new LoginResult(LoginResult.TYPE_NORMAL, userInfo);
|
| | | } else {// 两个账号拥有不同的UID
|
| | |
| | | result.setLessUser(lastUser);
|
| | |
|
| | | // 使分销关系生效
|
| | | threeSaleMapper.effectThreeSale(userInfo.getId());
|
| | | threeSaleSerivce.effective(userInfo);
|
| | | return result;
|
| | | }
|
| | |
|
| | |
| | | userInfo.setTbPic(lastUser.getTbPic());
|
| | | }
|
| | | userInfo.setLastLoginTime(System.currentTimeMillis());
|
| | | userInfo.setLoginType(loginType);
|
| | | userInfo.setLastLoginIp(request.getRemoteHost());
|
| | | addUser(userInfo);
|
| | | session.removeAttribute("LAST_LOGIN_USER");
|
| | | return new LoginResult(LoginResult.TYPE_NORMAL, userInfo);
|
| | | }
|
| | | }
|
| | | case 3:// 手机号码
|
| | | // 判断手机号码是否被封禁
|
| | | ForbiddenUserIdentifyCode identifyCode1 = forbiddenUserIdentifyCodeService
|
| | | .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.phone, phone);
|
| | | if (identifyCode1 != null && identifyCode1.getEffective() != null && identifyCode1.getEffective())
|
| | | throw new UserAccountException(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC);
|
| | |
|
| | | userInfo = getUserInfoByPhone(appId, phone);
|
| | | // 判断用户是否被删除
|
| | | if (userInfo != null && userInfo.getState() != null
|
| | | && (userInfo.getState() == UserInfo.STATE_DELETE_OUT_OF_DATE
|
| | | || userInfo.getState() == UserInfo.STATE_DELETE))
|
| | | userInfo = null;
|
| | |
|
| | | if (userInfo == null) {// 原先的账号不存在
|
| | | userInfo = new UserInfo();
|
| | | userInfo.setAppId(appId);
|
| | |
| | | @Override
|
| | | public LoginResult loginNoInstallWX(String appId, String code, String phone, UserInfo tbUserInfo, int loginType)
|
| | | throws UserAccountException {
|
| | | JSONObject logInfo = new JSONObject();
|
| | | logInfo.put("appId", appId);
|
| | | logInfo.put("code", code);
|
| | | logInfo.put("phone", phone);
|
| | | if (tbUserInfo != null)
|
| | | logInfo.put("tbUserInfo", tbUserInfo.getId());
|
| | | logInfo.put("loginType", loginType);
|
| | | LogHelper.lgoinInfo(logInfo.toString());
|
| | |
|
| | | UserInfo userInfo = null;
|
| | | WeiXinUser weiXinUser = null;
|
| | | switch (loginType) {
|
| | | case 1:// 淘宝
|
| | | if (!StringUtil.isNullOrEmpty(tbUserInfo.getTaoBaoUid())) {
|
| | | ForbiddenUserIdentifyCode identifyCode = forbiddenUserIdentifyCodeService.listByTypeAndIdentifyCode(
|
| | | ForbiddenUserIdentifyCodeTypeEnum.taobaoUid, tbUserInfo.getTaoBaoUid());
|
| | | if (identifyCode != null && identifyCode.getEffective() != null && identifyCode.getEffective())
|
| | | throw new UserAccountException(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC);
|
| | | }
|
| | | userInfo = getUserInfoByTaoBaoOpenId(appId, tbUserInfo.getOpenid());
|
| | | break;
|
| | | case 2:// 微信
|
| | |
| | | weiXinUser = WXLoginUtil.getWeiXinUserWithSavePortrait(code);
|
| | | if (weiXinUser == null)
|
| | | throw new UserAccountException(1001, "无法获取到微信个人信息");
|
| | |
|
| | | // 判断是否被封禁
|
| | | ForbiddenUserIdentifyCode identifyCode = forbiddenUserIdentifyCodeService
|
| | | .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.phone, phone);
|
| | | if (identifyCode != null && identifyCode.getEffective() != null && identifyCode.getEffective())
|
| | | throw new UserAccountException(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC);
|
| | |
|
| | | userInfo = getUserInfoByWXUnionId(appId, weiXinUser.getUnionid());
|
| | | break;
|
| | | case 3:// 手机号码
|
| | | // 判断是否被封禁
|
| | | ForbiddenUserIdentifyCode identifyCode1 = forbiddenUserIdentifyCodeService
|
| | | .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.phone, phone);
|
| | | if (identifyCode1 != null && identifyCode1.getEffective() != null && identifyCode1.getEffective())
|
| | | throw new UserAccountException(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC);
|
| | | userInfo = getUserInfoByPhone(appId, phone);
|
| | | break;
|
| | | }
|
| | |
|
| | | // 判断用户是否被删除
|
| | | if (userInfo != null && userInfo.getState() != null && (userInfo.getState() == UserInfo.STATE_DELETE_OUT_OF_DATE
|
| | | || userInfo.getState() == UserInfo.STATE_DELETE))
|
| | | userInfo = null;
|
| | |
|
| | | if (userInfo != null) {
|
| | | UserInfo updateUserInfo = new UserInfo(userInfo.getId());
|
| | |
| | | if (!StringUtil.isNullOrEmpty(mainUser.getPhone()) && !StringUtil.isNullOrEmpty(lessUser.getPhone()))
|
| | | throw new UserAccountException(9, "两个账号都绑定了手机号码,请解绑其中一个");
|
| | |
|
| | | if (lessUser.getMyHongBao().compareTo(new BigDecimal("20")) >= 0
|
| | | && mainUser.getMyHongBao().compareTo(new BigDecimal("20")) > 0)
|
| | | throw new UserAccountException(10, String.format("账户ID:%s 的资金超过20元,为保证资金安全请联系客服打通", lessUser.getId() + ""));
|
| | | if (lessUser.getMyHongBao().compareTo(new BigDecimal("10")) >= 0
|
| | | && mainUser.getMyHongBao().compareTo(new BigDecimal("10")) > 0)
|
| | | throw new UserAccountException(10, String.format("账户ID:%s 的资金超过10元,为保证资金安全请联系客服打通", lessUser.getId() + ""));
|
| | |
|
| | | // 判定是否绑定了同一支付宝
|
| | | List<BindingAccount> mainUserAccountList = bindingAccountMapper.selectByUid(mainUser.getId());
|
| | |
| | | moneyRecordMapper.insertSelective(moneyRecord);
|
| | | }
|
| | |
|
| | | userAccountMsgNotificationService.connectSuccess(mainUser.getId(), lessUser.getId());
|
| | | }
|
| | |
|
| | | /**
|
| | |
| | | * @param unionId
|
| | | * @return
|
| | | */
|
| | | public UserInfo getUserInfoByWXUnionId(String appId, String unionId) {
|
| | | return userInfoMapper.getUserInfoByAppIdAndWXUnionId(appId, unionId);
|
| | | public UserInfo getUserInfoByWXUnionId(String appId, String unionId) throws UserAccountException {
|
| | | if (StringUtil.isNullOrEmpty(appId))
|
| | | throw new UserAccountException(1, "appId为空");
|
| | | if (StringUtil.isNullOrEmpty(unionId))
|
| | | throw new UserAccountException(2, "unionId为空");
|
| | |
|
| | | List<UserInfo> list = userInfoMapper.listByAppIdAndWXUnionId(appId, unionId);
|
| | | // 剔除被删除掉的用户
|
| | | for (int i = 0; i < list.size(); i++) {
|
| | | if (list.get(i).getState() == UserInfo.STATE_DELETE
|
| | | || list.get(i).getState() == UserInfo.STATE_DELETE_OUT_OF_DATE) {
|
| | | list.remove(i);
|
| | | i--;
|
| | | }
|
| | | }
|
| | | if (list.size() > 0)
|
| | | return list.get(list.size() - 1);
|
| | | else
|
| | | return null;
|
| | | }
|
| | |
|
| | | /**
|
| | |
| | | * @param openId
|
| | | * @return
|
| | | */
|
| | | public UserInfo getUserInfoByTaoBaoOpenId(String appId, String openId) {
|
| | | public UserInfo getUserInfoByTaoBaoOpenId(String appId, String openId) throws UserAccountException {
|
| | | if (StringUtil.isNullOrEmpty(appId))
|
| | | throw new UserAccountException(1, "appId为空");
|
| | | if (StringUtil.isNullOrEmpty(openId))
|
| | | throw new UserAccountException(2, "openId为空");
|
| | | List<UserInfo> list = userInfoMapper.listByAppIdAndTaoBaoOpenId(appId, openId);
|
| | |
|
| | | return userInfoMapper.getUserInfoByAppIdAndTaoBaoOpenId(appId, openId);
|
| | | // 剔除被删除掉的用户
|
| | | for (int i = 0; i < list.size(); i++) {
|
| | | if (list.get(i).getState() == UserInfo.STATE_DELETE
|
| | | || list.get(i).getState() == UserInfo.STATE_DELETE_OUT_OF_DATE) {
|
| | | list.remove(i);
|
| | | i--;
|
| | | }
|
| | | }
|
| | | if (list.size() > 0)
|
| | | return list.get(list.size() - 1);
|
| | | else
|
| | | return null;
|
| | |
|
| | | }
|
| | |
|
| | | /**
|
| | |
| | | * @param phone
|
| | | * @return
|
| | | */
|
| | | public UserInfo getUserInfoByPhone(String appId, String phone) {
|
| | | public UserInfo getUserInfoByPhone(String appId, String phone) throws UserAccountException {
|
| | | if (StringUtil.isNullOrEmpty(appId))
|
| | | throw new UserAccountException(1, "appId为空");
|
| | | if (StringUtil.isNullOrEmpty(phone))
|
| | | throw new UserAccountException(2, "phone为空");
|
| | | List<UserInfo> list = userInfoMapper.listByAppIdAndPhone(appId, phone);
|
| | |
|
| | | return userInfoMapper.getUserInfoByAppIdAndPhone(appId, phone);
|
| | | // 剔除被删除掉的用户
|
| | | for (int i = 0; i < list.size(); i++) {
|
| | | if (list.get(i).getState() == UserInfo.STATE_DELETE
|
| | | || list.get(i).getState() == UserInfo.STATE_DELETE_OUT_OF_DATE) {
|
| | | list.remove(i);
|
| | | i--;
|
| | | }
|
| | | }
|
| | | if (list.size() > 0)
|
| | | return list.get(list.size() - 1);
|
| | | else
|
| | | return null;
|
| | |
|
| | | }
|
| | |
|
| | | private void updateLatestLoginTime(Long uid) {
|
| | |
| | | UserInfo update = new UserInfo(user.getId());
|
| | | update.setPhone(phone);
|
| | | userInfoMapper.updateByPrimaryKeySelective(update);
|
| | | userAccountMsgNotificationService.bindingSuccess(uid, MsgAccountDetailFactory.TYPE_PHONE);
|
| | | }
|
| | |
|
| | | @Override
|
| | |
| | | UserInfo updateUserInfo = new UserInfo(uid);
|
| | | updateUserInfo.setPhone("");
|
| | | userInfoMapper.updateByPrimaryKeySelective(updateUserInfo);
|
| | | userAccountMsgNotificationService.unBindingSuccess(uid, MsgAccountDetailFactory.TYPE_PHONE);
|
| | | }
|
| | |
|
| | | @Override
|
| | |
| | | if (user == null)
|
| | | throw new UserAccountException(4, "用户不存在");
|
| | |
|
| | | if (!StringUtil.isNullOrEmpty(user.getOpenid()))
|
| | | if (!StringUtil.isNullOrEmpty(user.getOpenid()) && !user.getOpenid().equalsIgnoreCase(tbOpenId))
|
| | | throw new UserAccountException(5, "当前账号已经绑定了淘宝,请先解绑");
|
| | |
|
| | | // 绑定同一个淘宝号
|
| | | if (!StringUtil.isNullOrEmpty(user.getOpenid()) && user.getOpenid().equalsIgnoreCase(tbOpenId))
|
| | | return;
|
| | |
|
| | | UserInfo taoBaoUser = getUserInfoByTaoBaoOpenId(user.getAppId(), tbOpenId);
|
| | | if (taoBaoUser != null)
|
| | |
| | | update.setPortrait(tbPortrait);
|
| | | }
|
| | | userInfoMapper.updateByPrimaryKeySelective(update);
|
| | |
|
| | | userAccountMsgNotificationService.bindingSuccess(uid, MsgAccountDetailFactory.TYPE_TB);
|
| | | }
|
| | |
|
| | | @Override
|
| | |
| | | }
|
| | |
|
| | | userInfoMapper.updateByPrimaryKeySelective(update);
|
| | |
|
| | | userExtraTaoBaoInfoService.unBindUid(uid);
|
| | |
|
| | | userAccountMsgNotificationService.unBindingSuccess(uid, MsgAccountDetailFactory.TYPE_TB);
|
| | | }
|
| | |
|
| | | @Override
|
| | |
| | | updateUserInfo.setPortrait(Constant.systemCommonConfig.getDefaultPortrait());
|
| | | }
|
| | | userInfoMapper.updateByPrimaryKeySelective(updateUserInfo);
|
| | |
|
| | | userAccountMsgNotificationService.changeBindingSuccess(uid, MsgAccountDetailFactory.TYPE_WX);
|
| | | }
|
| | |
|
| | | @Override
|
| | |
| | | List<OrderItem> orderItemList = orderItemMapper.selectByUid(uid);
|
| | |
|
| | | // 备份邀请关系
|
| | | List<ThreeSale> threeSaleList = threeSaleMapper.selectByUid(uid);
|
| | | List<ThreeSale> threeSaleList = new ArrayList<>();
|
| | |
|
| | | // 备份分享赚
|
| | | List<PidOrder> pidOrderList = pidOrderMapper.selectByUid(uid);
|