Commit 102e89c6 by chongli

修改手机号,如果新手机号存在账号,则对调手机号

parent 6d6da9cd
......@@ -121,16 +121,16 @@ public class UserExtService extends GenericService<UserExtDao, UserExt, Integer,
public Integer updateMobilePhone(String opertorUid,UserExtBean bean) {
/*a) 新手机号码未注册, usr_basicuser表的mobilePhone字段 , bsc_userext表中mobilePhone,bindedMobilePhone 数据更改为新的手机号码, 并且提示变更之后旧手机号码将无法登录
b) 新手机号码已注册, bsc_userext旧手机号码数据中如下字段转到新手机号码(prePayCardAmount,HistoryIntegral, CurrentIntegral,vipGrade,communeTime,currentWorkPoint,
communeAgainTime,communeYears), 旧手机号码对应数据置空或者置0. 并且提示更改手机号码之后将无法看到旧手机号码的订单,记分等信息, 但在记住密码的情况下, 新旧手机号码都可以登录
b) 新手机号码已注册,直接对调手机号
*/
UserPhoneChangeLog userPhoneChangeLog = new UserPhoneChangeLog();
userPhoneChangeLog.setChangeTime(new Date());
userPhoneChangeLog.setUid(bean.getUid());
userPhoneChangeLog.setOperateUid(opertorUid);
userPhoneChangeLog.setPhone(bean.getMobilePhone());
BasicUser basicUser = basicUserDao.getBasicUserByUid(bean.getMobilePhone());
if(basicUser==null){
//新手机号对应的基础账号
BasicUser basicUser_newphone = basicUserDao.getBasicUserByUid(bean.getMobilePhone());
if(basicUser_newphone==null){
userPhoneChangeLog.setNewphoneexist(0);
basicUserDao.updateMobilePhoneByUid(bean.getUid(), bean.getMobilePhone());
userExtDao.updateMobilePhoneByUid(bean);
......@@ -139,38 +139,18 @@ public class UserExtService extends GenericService<UserExtDao, UserExt, Integer,
userPhoneChangeLog.setNewphoneexist(1);
//保存修改手机号日志
userPhoneChangeLogDao.save(userPhoneChangeLog);
//旧的手机号的扩展用户信息
//旧手机号对应的基础账号
BasicUser basicUser_oldPhone = basicUserDao.getBasicUserByUid(bean.getUid());
UserExt userExtOld = userExtDao.getByUid(bean.getUid());
//新的手机号对应的用户扩展信息
UserExt userExtNew = userExtDao.GetUserExtInfoByPhone(bean.getMobilePhone());
//旧的手机号的权益转移到新的手机号
userExtNew.setPrePayCardAmount(userExtOld.getPrePayCardAmount().add(userExtNew.getPrePayCardAmount()));
userExtNew.setHistoryIntegral(userExtOld.getHistoryIntegral()+userExtNew.getHistoryIntegral());
userExtNew.setCurrentIntegral(userExtOld.getCurrentIntegral()+userExtNew.getCurrentIntegral());
userExtNew.setVipGrade(userExtOld.getVipGrade()|userExtNew.getVipGrade());
userExtNew.setCommuneTime(userExtOld.getCommuneTime());
userExtNew.setCurrentWorkPoint(userExtOld.getCurrentWorkPoint());
userExtNew.setCommuneAgainTime(userExtOld.getCommuneAgainTime());
userExtNew.setCommuneYears(userExtOld.getCommuneYears());
//旧的手机号的权益回收
userExtOld.setPrePayCardAmount(new BigDecimal(0));
userExtOld.setHistoryIntegral(0);
userExtOld.setCurrentIntegral(0);
userExtOld.setVipGrade(0);
userExtOld.setCommuneTime(null);
userExtOld.setCurrentWorkPoint(0);
userExtOld.setCommuneAgainTime(null);
userExtOld.setCommuneYears(0);
userExtDao.update(userExtNew);
userExtDao.update(userExtOld);
VoucherQueryRequestDTO request = new VoucherQueryRequestDTO();
request.setUserId(bean.getUid());
request.setSortType("d");
//查询旧的用户的优惠券权益
for(VoucherItemDTO voucher: voucherDao.queryUnusedListForOp(request).getResult()){
voucherDao.updateVoucherUid(voucher.getId(), basicUser.getUid());
}
//对调基础手机号
basicUserDao.updateMobilePhoneByUid(basicUser_oldPhone.getUid(),basicUser_newphone.getMobilePhone());
basicUserDao.updateMobilePhoneByUid(basicUser_newphone.getUid(), basicUser_oldPhone.getMobilePhone());
//对调扩展手机号
userExtDao.updateMobilePhoneByUid(bean);
UserExtBean bean_new = new UserExtBean();
bean_new.setUid(basicUser_newphone.getUid());
bean_new.setMobilePhone(userExtOld.getBindedMobilePhone());
userExtDao.updateMobilePhoneByUid(bean_new);
}
return 1;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment