From f4f2891ac617aca6e2a5f1dc8f86ba3f054e3392 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期四, 01 八月 2024 08:52:35 +0800
Subject: [PATCH] aa
---
server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 163 ++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 128 insertions(+), 35 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 0d0b8a6..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
@@ -277,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);
}
@@ -300,14 +301,13 @@
member.setToken(ztUserGetTokenResponse.getToken());
}
memberMapper.insert(member);
- MemberServiceImpl.saveCustomerUser(zbomZhongTaiService,customerUserMapper,users,member.getId(),member.getOpenid());
+ 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(zbomZhongTaiService,customerUserMapper,users,member.getId(),member.getOpenid());
+ MemberServiceImpl.saveCustomerUser(zbomZhongTaiService,customerUserMapper,users,member);
member = this.getMemberInfo(member.getId());
}
String token = JwtTokenUtil.generateTokenForZb(member.getId(),ZTConstants.CUSTOMER, JSONObject.toJSON(member).toString(),redisTemplate);
@@ -322,32 +322,94 @@
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"寰俊鐧诲綍寮傚父锛佽鑱旂郴绠$悊鍛�");
}
- public static void saveCustomerUser(ZbomZhongTaiService zbomZhongTaiService,CustomerUserMapper customerUserMapper,Users users,Long memberId,String openId){
- 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);
- //绛夊緟璋冭捣涓彴鎺ュ彛
- ZTCustomerBindingUsersRequest ztCustomerBindingUsersRequest = new ZTCustomerBindingUsersRequest();
- ztCustomerBindingUsersRequest.setOpenId(openId);
- ztCustomerBindingUsersRequest.setSourceCustomerId(memberId.toString());
- ztCustomerBindingUsersRequest.setDaoGouUserId(users.getId().toString());
- ztCustomerBindingUsersRequest.setDaoGouAccount(users.getIamUsername());
- ztCustomerBindingUsersRequest.setDaoGouType(users.getUserTypes());
- ztCustomerBindingUsersRequest.setUserName(users.getIamId());
- ztCustomerBindingUsersRequest.setPlatSource(ZTConstants.PLATFORM_MP_WX);
- zbomZhongTaiService.customerBinDingUsers(ztCustomerBindingUsersRequest);
}
}
}
@@ -380,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);
@@ -425,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() +
@@ -455,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())){
@@ -487,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