From b4661b438355fe760beafe9604f24a907a81a42d Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期四, 01 八月 2024 08:54:10 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/zbomyoujia
---
server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 155 +++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 129 insertions(+), 26 deletions(-)
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index c6c0fa3..4884ee5 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -14,6 +14,7 @@
import com.doumee.biz.zbom.model.zhongtai.ZTUserGetTokenRequest;
import com.doumee.biz.zbom.model.zhongtai.ZTUserInfoUpdateRequest;
import com.doumee.biz.zbom.model.zhongtai.response.ZTBaseResponse;
+import com.doumee.biz.zbom.model.zhongtai.response.ZTCustomerBindingUsersRequest;
import com.doumee.biz.zbom.model.zhongtai.response.ZTSysuserGetTokenResponse;
import com.doumee.biz.zbom.model.zhongtai.response.ZTUserGetTokenResponse;
import com.doumee.config.Jwt.JwtPayLoad;
@@ -276,8 +277,9 @@
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鑾峰彇openid澶辫触锛佽鑱旂郴绠$悊鍛�");
}
// String openId = code;
- Member member = memberMapper.selectOne(new QueryWrapper<Member>().eq("OPENID", openId).isNotNull("phone"));
- Users users = new Users();
+ Member member = memberMapper.selectOne(new QueryWrapper<Member>().eq("OPENID", openId)
+ .last(" limit 1 "));
+ Users users = null;
if(StringUtils.isNotBlank(userId)){
users = usersMapper.selectById(userId);
}
@@ -299,14 +301,13 @@
member.setToken(ztUserGetTokenResponse.getToken());
}
memberMapper.insert(member);
- MemberServiceImpl.saveCustomerUser(customerUserMapper,users,member.getId());
+ MemberServiceImpl.saveCustomerUser(zbomZhongTaiService,customerUserMapper,users,member);
}else{
ZTUserGetTokenResponse ztUserGetTokenResponse = this.syncZhongTaiUser(member);
if(!Objects.isNull(ztUserGetTokenResponse)){
member.setToken(ztUserGetTokenResponse.getToken());
- memberMapper.updateById(member);
}
- MemberServiceImpl.saveCustomerUser(customerUserMapper,users,member.getId());
+ MemberServiceImpl.saveCustomerUser(zbomZhongTaiService,customerUserMapper,users,member);
member = this.getMemberInfo(member.getId());
}
String token = JwtTokenUtil.generateTokenForZb(member.getId(),ZTConstants.CUSTOMER, JSONObject.toJSON(member).toString(),redisTemplate);
@@ -321,23 +322,94 @@
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"寰俊鐧诲綍寮傚父锛佽鑱旂郴绠$悊鍛�");
}
- public static void saveCustomerUser(CustomerUserMapper customerUserMapper,Users users,Long memberId){
- if(Objects.nonNull(users)&&Objects.nonNull(memberId)) {
+
+ @Override
+ public AccountResponse testLogin(String openid){
+ String openId = openid;
+ Member member = memberMapper.selectOne(new QueryWrapper<Member>().eq("OPENID", openId));
+
+ if (member == null) {
+ member = new Member();
+ member.setNickname("寰俊鐢ㄦ埛"+ CodeVerifyUtils.createVerificationCode(4));
+ member.setCreateDate(new Date());
+ member.setIsdeleted(Constants.ZERO);
+ member.setOpenid(openId);
+ member.setType(Constants.ZERO);
+ //濡傛灉缁戝畾浜嗗璐� 鍒欑洿鎺ヤ娇鐢ㄥ凡缁戝畾瀵艰喘淇℃伅 璺宠繃鎵嬫満鍙风粦瀹氱殑鐘舵��
+ member.setAuthStatus(Constants.ZERO);
+ ZTUserGetTokenResponse ztUserGetTokenResponse = this.syncZhongTaiUser(member);
+ if(!Objects.isNull(ztUserGetTokenResponse)){
+ member.setToken(ztUserGetTokenResponse.getToken());
+ }
+ memberMapper.insert(member);
+ }else{
+ ZTUserGetTokenResponse ztUserGetTokenResponse = this.syncZhongTaiUser(member);
+ if(!Objects.isNull(ztUserGetTokenResponse)){
+ member.setToken(ztUserGetTokenResponse.getToken());
+ memberMapper.updateById(member);
+ }
+ member = this.getMemberInfo(member.getId());
+ }
+ String token = JwtTokenUtil.generateTokenForZb(member.getId(),ZTConstants.CUSTOMER, JSONObject.toJSON(member).toString(),redisTemplate);
+ AccountResponse accountResponse = new AccountResponse();
+ accountResponse.setToken(token);
+ accountResponse.setMember(member);
+ return accountResponse;
+ }
+
+ public static void saveCustomerUser(ZbomZhongTaiService zbomZhongTaiService,CustomerUserMapper customerUserMapper,Users users,Member member){
+ if(Objects.nonNull(users)&&Objects.nonNull(member.getId())) {
+ CustomerUser customerUser = null;
if (customerUserMapper.selectCount(new QueryWrapper<CustomerUser>().lambda()
.eq(CustomerUser::getIsdeleted, Constants.ZERO)
.eq(CustomerUser::getUserId, users.getId())
- .eq(CustomerUser::getMemberId, memberId)) <= Constants.ZERO) {
- CustomerUser customerUser = new CustomerUser();
+ .eq(CustomerUser::getMemberId, member.getId())) <= Constants.ZERO) {
+ customerUser = new CustomerUser();
+ customerUser.setIsdeleted(Constants.ZERO);
customerUser.setUserId(users.getId());
customerUser.setCreateDate(new Date());
- customerUser.setMemberId(memberId);
+ customerUser.setMemberId(member.getId());
customerUser.setPhone(users.getPhone());
customerUser.setIamUserId(users.getIamId());
customerUser.setName(users.getName());
customerUser.setUsername(users.getIamUsername());
customerUser.setAddr(users.getShopAddress());
+ }
+ //绛夊緟璋冭捣涓彴鎺ュ彛
+ ZTCustomerBindingUsersRequest ztCustomerBindingUsersRequest = new ZTCustomerBindingUsersRequest();
+ ztCustomerBindingUsersRequest.setName(member.getName());
+ ztCustomerBindingUsersRequest.setNickName(member.getNickname());
+ ztCustomerBindingUsersRequest.setPhone(member.getPhone());
+ ztCustomerBindingUsersRequest.setAvatarUrl(member.getImgurl());
+ ztCustomerBindingUsersRequest.setUptown(member.getDistrict());
+ ztCustomerBindingUsersRequest.setFullAddress(member.getAddress());
+ if(Objects.nonNull(member.getHousearea())){
+ ztCustomerBindingUsersRequest.setHouseArea(member.getHousearea().toString());
+ }
+ ztCustomerBindingUsersRequest.setOpenId(member.getOpenid());
+ ztCustomerBindingUsersRequest.setToken(member.getToken());
+ ztCustomerBindingUsersRequest.setUserType(ZTConstants.CUSTOMER);
+ ztCustomerBindingUsersRequest.setSourceCustomerId(member.getId().toString());
+ ztCustomerBindingUsersRequest.setDaoGouUserId(users.getIamId());
+ ztCustomerBindingUsersRequest.setDaoGouAccount(users.getIamUsername());
+ ztCustomerBindingUsersRequest.setPlatSource("2");
+ ZTBaseResponse ztBaseResponse = zbomZhongTaiService.customerBinDingUsers(ztCustomerBindingUsersRequest);
+ if(Objects.nonNull(customerUser)){
+ if(Objects.nonNull(ztBaseResponse)){
+ if(ztBaseResponse.getSuccess()){
+ customerUser.setZtStatus(1);
+ customerUser.setZtDate(new Date());
+ }else{
+ customerUser.setZtStatus(2);
+ customerUser.setZtDate(new Date());
+ customerUser.setZtInfo(JSONObject.toJSONString(ztBaseResponse));
+ }
+ } else{
+ customerUser.setZtStatus(2);
+ customerUser.setZtDate(new Date());
+ customerUser.setZtInfo(JSONObject.toJSONString(ztBaseResponse));
+ }
customerUserMapper.insert(customerUser);
- //TODO 绛夊緟璋冭捣涓彴鎺ュ彛
}
}
}
@@ -370,26 +442,26 @@
if(Objects.isNull(editMemberRequest)){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
- Member memberDto = new Member();
- BeanUtils.copyProperties(editMemberRequest,memberDto);
- memberDto.setOpenid(member.getOpenid());
-// ZTUserGetTokenResponse ztUserGetTokenResponse = this.syncZhongTaiUser(memberDto);
-// if(Objects.isNull(ztUserGetTokenResponse)){
-// throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"涓彴鏈嶅姟璋冭捣澶辫触!");
-// }else{
-// member.setToken(ztUserGetTokenResponse.getToken());
-// }
- memberMapper.updateById(memberDto);
+ BeanUtils.copyProperties(editMemberRequest,member);
+ memberMapper.updateById(member);
+ //鍚屾涓彴鐢ㄦ埛淇℃伅
+ ZTUserGetTokenResponse ztUserGetTokenResponse = this.syncZhongTaiUser(member);
+ if(!Objects.isNull(ztUserGetTokenResponse)){
+ member.setToken(ztUserGetTokenResponse.getToken());
+ }
return this.getMemberInfo(member.getId());
}
-
-
@Override
public Member updMemberPhone(EditMemberRequest editMemberRequest){
if(Objects.isNull(editMemberRequest)||StringUtils.isBlank(editMemberRequest.getPhone())){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
+ memberMapper.update(null,new UpdateWrapper<Member>().lambda().set(Member::getPhone,null)
+ .set(Member::getEditDate,new Date())
+ .ne(Member::getId,editMemberRequest.getId())
+ .eq(Member::getPhone,editMemberRequest.getPhone()));
+
Member member = memberMapper.selectById(editMemberRequest.getId());
if(Objects.isNull(member)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
@@ -415,7 +487,36 @@
ztUserInfoUpdateRequest.setAppId(appId);
ztUserInfoUpdateRequest.setPlatform(Constants.PLATFORM);
ztUserInfoUpdateRequest.setPhone(member.getPhone());
- ztUserInfoUpdateRequest.setName(member.getNickname());
+ ztUserInfoUpdateRequest.setName(member.getName());
+ ztUserInfoUpdateRequest.setNickname(member.getNickname());
+// ztUserInfoUpdateRequest.setAddress(member.getProvinceName()+member.getCityName()+member.getAreaName());
+ ztUserInfoUpdateRequest.setFullAddress(member.getAddress());
+ String prefix = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.RESOURCE_PATH).getCode() +
+ systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.MEMBER).getCode();
+ if(StringUtils.isNotBlank(member.getImgurl())){
+ ztUserInfoUpdateRequest.setAvatarUrl(prefix + member.getImgurl());
+ }
+ ztUserInfoUpdateRequest.setUptown(member.getDistrict());
+ if(Objects.nonNull(member.getHousearea())){
+ ztUserInfoUpdateRequest.setHouseArea(member.getHousearea().toString());
+ }
+ ztUserInfoUpdateRequest.setHouseLayout(Constants.getHouseLayout(member.getHousetype()));
+ ZTBaseResponse userUpdateInfo = zbomZhongTaiService.userUpdateInfo(ztUserInfoUpdateRequest);
+ if(Objects.isNull(userUpdateInfo)||userUpdateInfo.getCode()!=200){
+ return null;
+ }
+ ZTUserGetTokenResponse ztUserGetTokenResponse = (ZTUserGetTokenResponse) userUpdateInfo.getData();
+ return ztUserGetTokenResponse;
+ }
+ public static ZTUserGetTokenResponse syncZhongTaiUserNew(Member member,SystemDictDataBiz systemDictDataBiz,ZbomZhongTaiService zbomZhongTaiService){
+ ZTUserInfoUpdateRequest ztUserInfoUpdateRequest = new ZTUserInfoUpdateRequest();
+ ztUserInfoUpdateRequest.setOpenId(member.getOpenid());
+ String appId = systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG,Constants.WX_APPID_CUSTOMER).getCode();
+ ztUserInfoUpdateRequest.setAppId(appId);
+ ztUserInfoUpdateRequest.setPlatform(Constants.PLATFORM);
+ ztUserInfoUpdateRequest.setPhone(member.getPhone());
+ ztUserInfoUpdateRequest.setName(member.getName());
+ ztUserInfoUpdateRequest.setNickname(member.getNickname());
// ztUserInfoUpdateRequest.setAddress(member.getProvinceName()+member.getCityName()+member.getAreaName());
ztUserInfoUpdateRequest.setFullAddress(member.getAddress());
String prefix = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.RESOURCE_PATH).getCode() +
@@ -445,7 +546,8 @@
String prefix = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.RESOURCE_PATH).getCode() +
systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.MEMBER).getCode();
member.setPrefix(prefix);
- if( customerUserMapper.selectCount(new QueryWrapper<CustomerUser>().lambda().eq(CustomerUser::getIsdeleted,Constants.ZERO).eq(CustomerUser::getMemberId,member.getId()))>0){
+ if( customerUserMapper.selectCount(new QueryWrapper<CustomerUser>()
+ .lambda().eq(CustomerUser::getIsdeleted,Constants.ZERO).eq(CustomerUser::getZtStatus,Constants.ONE).eq(CustomerUser::getMemberId,member.getId()))>0){
member.setAuthStatus(Constants.TWO);
}else{
if(StringUtils.isBlank(member.getPhone())){
@@ -477,7 +579,8 @@
String appId = systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG,Constants.WX_APPID_CUSTOMER).getCode();
param.setAppId(appId);
param.setOpenId(member.getOpenid());
- ZTUserGetTokenResponse ztUserGetTokenResponse = zbomZhongTaiService.getUserToken(param);
+ ZTUserGetTokenResponse ztUserGetTokenResponse = syncZhongTaiUserNew(member,systemDictDataBiz,zbomZhongTaiService);
+// ZTUserGetTokenResponse ztUserGetTokenResponse = zbomZhongTaiService.getUserToken(param);
if(Objects.nonNull(ztUserGetTokenResponse)){
// Date date =new Date(System.currentTimeMillis()+(Constants.formatLongNum(ztUserGetTokenResponse.getExpire())<=0?2*60*60*1000:ztUserGetTokenResponse.getExpire()*1000));
member.setToken(ztUserGetTokenResponse.getToken());
--
Gitblit v1.9.3