From 70dce9538c41c0ac547655c56af46d2fa70ba052 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 07 八月 2024 10:21:13 +0800
Subject: [PATCH] aa
---
server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 169 ++++++++++++++++++++++++++++++++++----------------------
1 files changed, 103 insertions(+), 66 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 e512566..9c643d6 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
@@ -276,7 +276,7 @@
if (com.baomidou.mybatisplus.core.toolkit.StringUtils.isBlank(openId)) {
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鑾峰彇openid澶辫触锛佽鑱旂郴绠$悊鍛�");
}
-// String openId = code;
+// String openId = code;
Member member = memberMapper.selectOne(new QueryWrapper<Member>().eq("OPENID", openId)
.last(" limit 1 "));
Users users = null;
@@ -290,24 +290,31 @@
member.setIsdeleted(Constants.ZERO);
member.setOpenid(openId);
member.setType(Constants.ZERO);
+ member.setAuthStatus(Constants.ZERO);
+ member.setStatus(Constants.ZERO);
//濡傛灉缁戝畾浜嗗璐� 鍒欑洿鎺ヤ娇鐢ㄥ凡缁戝畾瀵艰喘淇℃伅 璺宠繃鎵嬫満鍙风粦瀹氱殑鐘舵��
- if(Objects.nonNull(users)){
- member.setAuthStatus(Constants.TWO);
- }else{
- member.setAuthStatus(Constants.ZERO);
- }
ZTUserGetTokenResponse ztUserGetTokenResponse = this.syncZhongTaiUser(member);
if(!Objects.isNull(ztUserGetTokenResponse)){
member.setToken(ztUserGetTokenResponse.getToken());
+ member.setZtUserId(StringUtils.defaultString(ztUserGetTokenResponse.getZtUserId(),ztUserGetTokenResponse.getToken()));
+ MemberServiceImpl.saveCustomerUser(zbomZhongTaiService,customerUserMapper,null,users,member);
}
memberMapper.insert(member);
- MemberServiceImpl.saveCustomerUser(zbomZhongTaiService,customerUserMapper,users,member);
}else{
- ZTUserGetTokenResponse ztUserGetTokenResponse = this.syncZhongTaiUser(member);
- if(!Objects.isNull(ztUserGetTokenResponse)){
- member.setToken(ztUserGetTokenResponse.getToken());
+ ZTBaseInfoResponse ztBaseInfoResponse = MemberServiceImpl.getZTToken(zbomZhongTaiService,memberMapper,usersMapper,systemDictDataBiz,
+ member.getId(),ZTConstants.CUSTOMER);
+ if(!Objects.isNull(ztBaseInfoResponse)){
+ member.setToken(ztBaseInfoResponse.getToken());
+ member.setZtUserId(StringUtils.defaultString(ztBaseInfoResponse.getZtUserId(),ztBaseInfoResponse.getToken()));
+ Member update = new Member();
+ update.setZtUserId(StringUtils.defaultString(ztBaseInfoResponse.getZtUserId(),ztBaseInfoResponse.getToken()));
+ update.setToken(member.getToken());
+ update.setToken(member.getToken());
+ update.setId(member.getId());
+ update.setAuthStatus(member.getAuthStatus());
+ MemberServiceImpl.saveCustomerUser(zbomZhongTaiService,customerUserMapper,null,users,member);
+ memberMapper.updateById(update);//缂撳瓨涓彴token淇℃伅
}
- MemberServiceImpl.saveCustomerUser(zbomZhongTaiService,customerUserMapper,users,member);
member = this.getMemberInfo(member.getId());
}
String token = JwtTokenUtil.generateTokenForZb(member.getId(),ZTConstants.CUSTOMER, JSONObject.toJSON(member).toString(),redisTemplate);
@@ -327,7 +334,6 @@
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));
@@ -340,12 +346,14 @@
ZTUserGetTokenResponse ztUserGetTokenResponse = this.syncZhongTaiUser(member);
if(!Objects.isNull(ztUserGetTokenResponse)){
member.setToken(ztUserGetTokenResponse.getToken());
+ member.setZtUserId(StringUtils.defaultString(ztUserGetTokenResponse.getZtUserId(),ztUserGetTokenResponse.getToken()));
}
memberMapper.insert(member);
}else{
ZTUserGetTokenResponse ztUserGetTokenResponse = this.syncZhongTaiUser(member);
if(!Objects.isNull(ztUserGetTokenResponse)){
member.setToken(ztUserGetTokenResponse.getToken());
+ member.setZtUserId(StringUtils.defaultString(ztUserGetTokenResponse.getZtUserId(),ztUserGetTokenResponse.getToken()));
memberMapper.updateById(member);
}
member = this.getMemberInfo(member.getId());
@@ -416,7 +424,7 @@
// }
- public static void saveCustomerUser(ZbomZhongTaiService zbomZhongTaiService, CustomerUserMapper customerUserMapper, Users users, Member member) {
+ public static void saveCustomerUser(ZbomZhongTaiService zbomZhongTaiService, CustomerUserMapper customerUserMapper, MemberMapper memberMapper,Users users, Member member) {
if (Objects.nonNull(users) && Objects.nonNull(member.getId())) {
CustomerUser customerUser = customerUserMapper.selectOne(new QueryWrapper<CustomerUser>().lambda()
.eq(CustomerUser::getIsdeleted, Constants.ZERO)
@@ -437,45 +445,39 @@
customerUser.setUsername(users.getIamUsername());
customerUser.setAddr(users.getShopAddress());
}
+ ZTBaseResponse ztBaseResponse = null;
+ if ( !Constants.equalsInteger(customerUser.getZtStatus(),Constants.ONE)) {
+ ztBaseResponse = syncZtCustomerUserSendRequest(zbomZhongTaiService,memberMapper,member, users,customerUser);
+ }
//鏈粦瀹氳繃
if (Objects.isNull(customerUser.getId())) {
- ZTBaseResponse ztBaseResponse = MemberServiceImpl.syncZtCustomerUser(zbomZhongTaiService,member, users);
- 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);
- } else {
- if (!Constants.equalsInteger(customerUser.getZtStatus(),Constants.ONE)) {
- ZTBaseResponse ztBaseResponse = MemberServiceImpl.syncZtCustomerUser(zbomZhongTaiService,member, users);
- 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.updateById(customerUser);
- }
+ member.setAuthStatus(Constants.TWO);
+ } else if(ztBaseResponse !=null) {
+ member.setAuthStatus(Constants.TWO);
+ customerUserMapper.updateById(customerUser);
}
}
+ }
+
+ private static ZTBaseResponse syncZtCustomerUserSendRequest(ZbomZhongTaiService zbomZhongTaiService,MemberMapper memberMapper, Member member, Users users,CustomerUser customerUser) {
+ ZTBaseResponse ztBaseResponse = MemberServiceImpl.syncZtCustomerUser(zbomZhongTaiService,member, users);
+ customerUser.setZtStatus(2);
+ customerUser.setZtInfo(JSONObject.toJSONString(ztBaseResponse));
+ if (Objects.nonNull(ztBaseResponse) && ztBaseResponse.getSuccess()) {
+ customerUser.setZtStatus(1);//鍚屾鎴愬姛
+ member.setAuthStatus(Constants.TWO);//鐢ㄦ埛瀵艰喘缁戝畾鐘舵��
+ if(memberMapper!=null){
+ //濡傛灉闇�瑕佹洿鏂扮敤鎴风粦瀹氬璐姸鎬�
+ Member update = new Member();
+ update.setAuthStatus(Constants.TWO);
+ update.setEditDate(new Date());
+ update.setId(member.getId());
+ memberMapper.updateById(update);//鏇存柊鐢ㄦ埛鍚屾鐘舵��
+ }
+
+ }
+ return ztBaseResponse;
}
@@ -516,7 +518,7 @@
} catch (Exception e) {
e.printStackTrace();
}
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏇存柊鎵嬫満鍙峰け璐�");
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鑾峰彇鎵嬫満鍙峰け璐�");
}
@@ -530,12 +532,21 @@
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
BeanUtils.copyProperties(editMemberRequest,member);
- memberMapper.updateById(member);
//鍚屾涓彴鐢ㄦ埛淇℃伅
ZTUserGetTokenResponse ztUserGetTokenResponse = this.syncZhongTaiUser(member);
if(!Objects.isNull(ztUserGetTokenResponse)){
member.setToken(ztUserGetTokenResponse.getToken());
+ member.setZtUserId(StringUtils.defaultString(ztUserGetTokenResponse.getZtUserId(),ztUserGetTokenResponse.getToken()));
}
+ if(StringUtils.isNotBlank(member.getPhone())){
+ if(!Constants.equalsInteger(member.getPhone().length(),11)){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鎵嬫満鍙烽敊璇�!");
+ }
+ if(Constants.equalsInteger(member.getAuthStatus(),Constants.ZERO)){
+ member.setAuthStatus(Constants.ONE);
+ }
+ }
+ memberMapper.updateById(member);
return this.getMemberInfo(member.getId());
}
@@ -556,18 +567,20 @@
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());
-// }
+ ZTUserGetTokenResponse ztUserGetTokenResponse = this.syncZhongTaiUser(memberDto);
+ if(!Objects.isNull(ztUserGetTokenResponse)){
+ member.setToken(ztUserGetTokenResponse.getToken());
+ member.setZtUserId(StringUtils.defaultString(ztUserGetTokenResponse.getZtUserId(),ztUserGetTokenResponse.getToken()));
+ }
+ if(Constants.equalsInteger(member.getAuthStatus(),Constants.ZERO)){
+ memberDto.setAuthStatus(Constants.ONE);
+ }
memberMapper.updateById(memberDto);
return this.getMemberInfo(member.getId());
}
- public ZTUserGetTokenResponse syncZhongTaiUser(Member member){
+ 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();
@@ -575,8 +588,15 @@
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.setNickName(member.getNickname());
+ if(StringUtils.isNotBlank(member.getProvinceName())
+ && StringUtils.isNotBlank(member.getCityName())
+ && StringUtils.isNotBlank(member.getAreaName())){
+ ztUserInfoUpdateRequest.setAddress(member.getProvinceName()+member.getCityName()+member.getAreaName());
+ }
+ ztUserInfoUpdateRequest.setProvince(member.getProvinceCode());
+ ztUserInfoUpdateRequest.setCity(member.getCityCode());
+ ztUserInfoUpdateRequest.setCounty(member.getAreaCode());
ztUserInfoUpdateRequest.setFullAddress(member.getAddress());
String prefix = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.RESOURCE_PATH).getCode() +
systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.MEMBER).getCode();
@@ -595,7 +615,7 @@
ZTUserGetTokenResponse ztUserGetTokenResponse = (ZTUserGetTokenResponse) userUpdateInfo.getData();
return ztUserGetTokenResponse;
}
- public static ZTUserGetTokenResponse syncZhongTaiUserNew(Member member,SystemDictDataBiz systemDictDataBiz,ZbomZhongTaiService zbomZhongTaiService){
+ public ZTUserGetTokenResponse syncZhongTaiUser(Member member){
ZTUserInfoUpdateRequest ztUserInfoUpdateRequest = new ZTUserInfoUpdateRequest();
ztUserInfoUpdateRequest.setOpenId(member.getOpenid());
String appId = systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG,Constants.WX_APPID_CUSTOMER).getCode();
@@ -603,8 +623,17 @@
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.setNickName(member.getNickname());
+
+ if(StringUtils.isNotBlank(member.getProvinceName())
+ && StringUtils.isNotBlank(member.getCityName())
+ && StringUtils.isNotBlank(member.getAreaName())){
+ ztUserInfoUpdateRequest.setAddress(member.getProvinceName()+member.getCityName()+member.getAreaName());
+ }
+ ztUserInfoUpdateRequest.setProvince(member.getProvinceCode());
+ ztUserInfoUpdateRequest.setCity(member.getCityCode());
+ ztUserInfoUpdateRequest.setCounty(member.getAreaCode());
+
ztUserInfoUpdateRequest.setFullAddress(member.getAddress());
String prefix = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.RESOURCE_PATH).getCode() +
systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.MEMBER).getCode();
@@ -633,7 +662,7 @@
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>()
+ /* 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{
@@ -642,7 +671,7 @@
}else{
member.setAuthStatus(Constants.ONE);
}
- }
+ }*/
return member;
}
@@ -660,19 +689,27 @@
ztBaseInfoResponse.setUserType(ZTConstants.CUSTOMER);
ztBaseInfoResponse.setOpenId(member.getOpenid());
//濡傛灉鏃犳湁鏁堟湡/宸茶繃鏈� 閲嶆柊鑾峰彇
- if(Objects.isNull(member.getTokenDate()) || member.getTokenDate().getTime()<=System.currentTimeMillis() ){
+ if(Objects.isNull(member.getZtUserId()) ||Objects.isNull(member.getTokenDate()) || member.getTokenDate().getTime()<=System.currentTimeMillis() ){
ZTUserGetTokenRequest param = new ZTUserGetTokenRequest();
//鏌ヨAPPID
String appId = systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG,Constants.WX_APPID_CUSTOMER).getCode();
param.setAppId(appId);
param.setOpenId(member.getOpenid());
- ZTUserGetTokenResponse ztUserGetTokenResponse = syncZhongTaiUserNew(member,systemDictDataBiz,zbomZhongTaiService);
-// ZTUserGetTokenResponse ztUserGetTokenResponse = zbomZhongTaiService.getUserToken(param);
+ ZTUserGetTokenResponse ztUserGetTokenResponse =null;
+ if(StringUtils.isNotBlank(member.getZtUserId())){
+ //濡傛灉鏄凡鍚屾鐨勭敤鎴�
+ ztUserGetTokenResponse = zbomZhongTaiService.getUserToken(param);
+ }
+ if(ztUserGetTokenResponse == null){
+ //濡傛灉鑾峰彇澶辫触锛屽皾璇曢噸鏂板悓姝ラ噸鏂拌幏鍙�
+ ztUserGetTokenResponse = syncZhongTaiUserNew(member,systemDictDataBiz,zbomZhongTaiService);
+ }
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());
memberMapper.update(new UpdateWrapper<Member>().lambda()
.set(Member::getToken,ztUserGetTokenResponse.getToken())
+ .set(Member::getZtUserId,StringUtils.defaultString(ztUserGetTokenResponse.getZtUserId(),ztUserGetTokenResponse.getToken()))
// .set(Member::getTokenDate,date)//榛樿鏈夋晥鏈熶负涓ゅ皬鏃�
.eq(Member::getId,member.getId()));
ztBaseInfoResponse.setToken(ztUserGetTokenResponse.getToken());
--
Gitblit v1.9.3