From 2d9cfa55f0f839ff464b445a259839ab6490d135 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期三, 17 七月 2024 22:22:41 +0800 Subject: [PATCH] 提交 --- server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 83 +++++++++++++++++++++-------------------- 1 files changed, 42 insertions(+), 41 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 9caf811..e6beb7b 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 @@ -6,9 +6,11 @@ import com.doumee.biz.system.SystemDictDataBiz; import com.doumee.biz.zbom.ZbomZhongTaiService; import com.doumee.biz.zbom.model.zhongtai.ZTBaseRequst; +import com.doumee.biz.zbom.model.zhongtai.ZTConstants; 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.ZTSysuserGetTokenResponse; import com.doumee.biz.zbom.model.zhongtai.response.ZTUserGetTokenResponse; import com.doumee.config.Jwt.JwtPayLoad; import com.doumee.config.Jwt.JwtTokenUtil; @@ -278,14 +280,14 @@ @Override public AccountResponse wxLogin(String code){ try { - //鑾峰彇寰俊鏁忔劅鏁版嵁 +// 鑾峰彇寰俊鏁忔劅鏁版嵁 WxMaJscode2SessionResult session = WxMiniConfig.wxCustomerService.getUserService().getSessionInfo(code); String openId = session.getOpenid(); if (com.baomidou.mybatisplus.core.toolkit.StringUtils.isBlank(openId)) { throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鑾峰彇openid澶辫触锛佽鑱旂郴绠$悊鍛�"); } +// String openId = code; Member member = memberMapper.selectOne(new QueryWrapper<Member>().eq("OPENID", openId)); - String appId = systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG,Constants.WX_APPID_CUSTOMER).getCode(); if (member == null) { member = new Member(); member.setNickname("寰俊鐢ㄦ埛"+ CodeVerifyUtils.createVerificationCode(4)); @@ -294,21 +296,21 @@ member.setOpenid(openId); member.setType(Constants.ZERO); member.setAuthStatus(Constants.ZERO); - // 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(member); + if(Objects.isNull(ztUserGetTokenResponse)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"涓彴鏈嶅姟璋冭捣澶辫触!"); + }else{ + member.setToken(ztUserGetTokenResponse.getToken()); + } memberMapper.insert(member); member = this.getMemberInfo(member.getId()); }else{ - // 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(member); + if(Objects.isNull(ztUserGetTokenResponse)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"涓彴鏈嶅姟璋冭捣澶辫触!"); + }else{ + member.setToken(ztUserGetTokenResponse.getToken()); + } member = this.getMemberInfo(member.getId()); } //鍒涘缓token @@ -398,7 +400,7 @@ ztUserInfoUpdateRequest.setPlatform(Constants.PLATFORM); ztUserInfoUpdateRequest.setPhone(member.getPhone()); ztUserInfoUpdateRequest.setName(member.getNickname()); - ztUserInfoUpdateRequest.setAddress(member.getProvinceName()+member.getCityName()+member.getAreaName()); +// 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(); @@ -438,12 +440,12 @@ public static ZTBaseInfoResponse getZTToken(ZbomZhongTaiService zbomZhongTaiService, MemberMapper memberMapper, UsersMapper usersMapper, SystemDictDataBiz systemDictDataBiz, Long id, String userType){ ZTBaseInfoResponse ztBaseInfoResponse = new ZTBaseInfoResponse(); - if(userType.equals(Constants.CUSTOMER)){ + if(userType.equals(ZTConstants.CUSTOMER)){ Member member = memberMapper.selectById(id); if(Objects.isNull(member)){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } - ztBaseInfoResponse.setUserType(Constants.CUSTOMER); + ztBaseInfoResponse.setUserType(ZTConstants.CUSTOMER); ztBaseInfoResponse.setOpenId(member.getOpenid()); //濡傛灉鏃犳湁鏁堟湡/宸茶繃鏈� 閲嶆柊鑾峰彇 if(Objects.isNull(member.getTokenDate()) || member.getTokenDate().getTime()<=System.currentTimeMillis() ){ @@ -454,24 +456,25 @@ param.setOpenId(member.getOpenid()); 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()); - //TODO 鏆傛棤杩囨湡鏃ユ湡 - memberMapper.update(new UpdateWrapper<Member>().lambda().set(Member::getToken,ztUserGetTokenResponse.getToken()) + memberMapper.update(new UpdateWrapper<Member>().lambda() + .set(Member::getToken,ztUserGetTokenResponse.getToken()) + .set(Member::getTokenDate,date)//榛樿鏈夋晥鏈熶负涓ゅ皬鏃� .eq(Member::getId,member.getId())); ztBaseInfoResponse.setToken(ztUserGetTokenResponse.getToken()); - return ztBaseInfoResponse; }else{ - throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"涓彴TOKEN鑾峰彇澶辫触锛岃鑱旂郴绠$悊鍛�"); +// throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"涓彴TOKEN鑾峰彇澶辫触锛岃鑱旂郴绠$悊鍛�"); } } ztBaseInfoResponse.setToken(member.getToken()); return ztBaseInfoResponse; - }else if(userType.equals(Constants.BUSINESS)){ + }else if(userType.equals(ZTConstants.BUSINESS)){ Users users = usersMapper.selectById(id); if(Objects.isNull(users)){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } - ztBaseInfoResponse.setUserType(Constants.BUSINESS); + ztBaseInfoResponse.setUserType(ZTConstants.BUSINESS); ztBaseInfoResponse.setOpenId(users.getOpenid()); if(Objects.isNull(users.getTokenDate()) || users.getTokenDate().getTime()<=System.currentTimeMillis() ){ ZTUserGetTokenRequest param = new ZTUserGetTokenRequest(); @@ -479,30 +482,32 @@ String appId = systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG,Constants.WX_APPID_CUSTOMER).getCode(); param.setAppId(appId); param.setOpenId(users.getOpenid()); - ZTUserGetTokenResponse ztUserGetTokenResponse = zbomZhongTaiService.getUserToken(param); + ZTSysuserGetTokenResponse ztUserGetTokenResponse = zbomZhongTaiService.getSysuserToken(users.getPhone()); if(Objects.nonNull(ztUserGetTokenResponse)){ users.setToken(ztUserGetTokenResponse.getToken()); - //TODO 鏆傛棤杩囨湡鏃ユ湡 + Date date =new Date(System.currentTimeMillis()+(Constants.formatLongNum(ztUserGetTokenResponse.getExpire())<=0?2*60*60*1000:ztUserGetTokenResponse.getExpire()*1000)); usersMapper.update(new UpdateWrapper<Users>().lambda().set(Users::getToken,ztUserGetTokenResponse.getToken()) + .set(Users::getTokenDate,date)//榛樿鏈夋晥鏈熶负涓ゅ皬鏃� .eq(Users::getId,users.getId())); ztBaseInfoResponse.setToken(ztUserGetTokenResponse.getToken()); return ztBaseInfoResponse; }else{ - throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"涓彴TOKEN鑾峰彇澶辫触锛岃鑱旂郴绠$悊鍛�"); +// throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"涓彴TOKEN鑾峰彇澶辫触锛岃鑱旂郴绠$悊鍛�"); } } ztBaseInfoResponse.setToken(users.getToken()); - return ztBaseInfoResponse; +// return ztBaseInfoResponse; }else{ - throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鍙傛暟閿欒"); +// throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鍙傛暟閿欒"); } + return ztBaseInfoResponse; } @Override - public void logOff(Long memberId){ + public ZTBaseRequst logOff(Long memberId){ Member member = memberMapper.selectById(memberId); if(Objects.isNull(member)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); @@ -511,22 +516,18 @@ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛宸叉敞閿�"); } //鏍¢獙鐢ㄦ埛token淇℃伅 - MemberServiceImpl.getZTToken(zbomZhongTaiService,memberMapper,usersMapper,systemDictDataBiz,member.getId(),Constants.CUSTOMER); + MemberServiceImpl.getZTToken(zbomZhongTaiService,memberMapper,usersMapper,systemDictDataBiz,member.getId(),ZTConstants.CUSTOMER); //璋冭捣涓彴娉ㄩ攢鎺ュ彛 ZTBaseRequst ztBaseRequst = new ZTBaseRequst(); - ztBaseRequst.setUserType(Constants.CUSTOMER); + ztBaseRequst.setUserType(ZTConstants.CUSTOMER); ztBaseRequst.setOpenId(member.getOpenid()); ztBaseRequst.setToken(member.getToken()); - Boolean logoutFlag = zbomZhongTaiService.userLogout(ztBaseRequst); - if(logoutFlag){ - memberMapper.update(new UpdateWrapper<Member>().lambda() - .set(Member::getPhone,null) - .set(Member::getEditDate,new Date()) - .eq(Member::getId,member.getId()) - ); - return; - } - throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"涓彴娉ㄩ攢澶辫触锛岃鑱旂郴绠$悊鍛�"); + memberMapper.update(new UpdateWrapper<Member>().lambda() + .set(Member::getPhone,null) + .set(Member::getEditDate,new Date()) + .eq(Member::getId,member.getId()) + ); + return ztBaseRequst; } -- Gitblit v1.9.3