From b51189ed0e9b05fe01c4bb410394c73f3bdcfd66 Mon Sep 17 00:00:00 2001 From: xhxu Date: Thu, 9 Dec 2021 11:46:11 +0800 Subject: [PATCH] =?UTF-8?q?/=E3=80=81b=20=E6=8E=88=E6=9D=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iformall/controller/WxInfoController.java | 20 +++++++++++++++---- .../service/cuser/CUserServiceApapter.java | 2 ++ .../cuser/tt/TtBUserServiceAdapter.java | 8 ++++++++ .../cuser/tt/TtCUserServiceAdapter.java | 8 ++++++++ .../cuser/wx/WxBUserServiceAdapter.java | 8 ++++++++ .../cuser/wx/WxCUserServiceAdapter.java | 8 ++++++++ .../main/resources/mapper/TtBuserMapper.xml | 5 ++++- .../main/resources/mapper/WxBuserMapper.xml | 5 ++++- 8 files changed, 58 insertions(+), 6 deletions(-) diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java index 9bde82e34..7f460703d 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java @@ -249,6 +249,9 @@ public class WxInfoController extends BaseController { if (StringUtils.isBlank(iv)) { return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "iv 不能为空"); } + if (StringUtils.isBlank(openId)) { + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "openId 不能为空"); + } WxAppinfo wxAppinfo = getAppInfo(appId); if (wxAppinfo == null) { @@ -261,7 +264,8 @@ public class WxInfoController extends BaseController { TenantEntity tenantEntity = new TenantEntity(); tenantEntity.setTenantId(wxAppinfo.getTenantId()); - CUser buser = getCUser(); + CUser buser = cuserFactory.getBUserService(appPlat).getByOpenId(openId,tenantEntity.getTenantId()); + try { // 解密 String phone = cuserFactory.getBUserService(appPlat).decryptPhoneNoInfo(encryptedData, iv, buser, wxAppinfo, isFmOpen); @@ -316,14 +320,22 @@ public class WxInfoController extends BaseController { if (StringUtils.isBlank(iv)) { return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "iv 不能为空"); } + if (StringUtils.isBlank(openId)) { + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "openId 不能为空"); + } - CUser buser = getCUser(); - WxAppinfo wxAppinfo = wxAppinfoService.getByAppId(buser.getAppId()); + WxAppinfo wxAppinfo = getAppInfo(appId); if(wxAppinfo == null){ return new ResultData(ErrorCode.APP_ID_NOT_FOUND); } + EnumAppPlat appPlat = EnumAppPlat.getByCode(wxAppinfo.getPlat()); + if(appPlat == null){ + return new ResultData(ErrorCode.APP_PLAT_ERROR); + } + CUser buser = cuserFactory.getBUserService(appPlat).getByOpenId(openId,wxAppinfo.getTenantId()); + try { - String phone = cuserFactory.getBUserService(buser.getAppPlat()).decryptPhoneNoInfo(encryptedData, iv, buser, wxAppinfo, isFmOpen); + String phone = cuserFactory.getBUserService(appPlat).decryptPhoneNoInfo(encryptedData, iv, buser, wxAppinfo, isFmOpen); resultMap.put("msg", "授权手机成功!"); resultMap.put("phone", phone); return new ResultData(resultMap); diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/CUserServiceApapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/CUserServiceApapter.java index 8afdc0d2f..27dacedad 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/CUserServiceApapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/CUserServiceApapter.java @@ -32,6 +32,7 @@ public interface CUserServiceApapter { CUser handleLoginUser(CUser cUser, WxCUserFrom wxCUserFrom); CUser getById(Long id, String tenantId); + CUser getByOpenId(String openId, String tenantId); void updateScene(CUser user); @@ -46,4 +47,5 @@ public interface CUserServiceApapter { List findCountHistory(WxCUserBasicInfoDto dto, List tenantEntitys); void actionAfterLogin(CUser user); + } diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtBUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtBUserServiceAdapter.java index f91f1f495..2c176e759 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtBUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtBUserServiceAdapter.java @@ -197,6 +197,14 @@ public class TtBUserServiceAdapter extends BasicCUserService implements CUserSer return ttBuserMapper.selectById(id); } + @Override + public CUser getByOpenId(String openId, String tenantId) { + TtBuser buser = new TtBuser(); + buser.setTenantId(tenantId); + buser.setOpenId(openId); + return ttBuserMapper.findByOpenId(buser); + } + @Override public void updateScene(CUser user) { TtBuser userL = new TtBuser(); diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java index d963295c1..d5fec283d 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java @@ -246,6 +246,14 @@ public class TtCUserServiceAdapter extends BasicCUserService implements CUserSer return ttCUserMapper.selectById(id,tenantId); } + @Override + public CUser getByOpenId(String openId, String tenantId) { + TtCUser cUser = new TtCUser(); + cUser.setTenantId(tenantId); + cUser.setOpenId(openId); + return ttCUserMapper.findByOpenId(cUser); + } + @Override public void updateScene(CUser user) { TtCUser userL = new TtCUser(); diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxBUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxBUserServiceAdapter.java index 4a3883da2..7e2a390b5 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxBUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxBUserServiceAdapter.java @@ -197,6 +197,14 @@ public class WxBUserServiceAdapter extends BasicCUserService implements CUserSer return wxBuserMapper.selectById(id); } + @Override + public CUser getByOpenId(String openId, String tenantId) { + WxBuser buser = new WxBuser(); + buser.setTenantId(tenantId); + buser.setOpenId(openId); + return wxBuserMapper.findByOpenId(buser); + } + @Override public void updateScene(CUser user) { WxBuser userL = new WxBuser(); diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java index 401e3e091..851978565 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java @@ -253,6 +253,14 @@ public class WxCUserServiceAdapter extends BasicCUserService implements CUserSer return wxCUserMapper.selectById(id,tenantId); } + @Override + public CUser getByOpenId(String openId, String tenantId) { + WxCUser wxCUser = new WxCUser(); + wxCUser.setTenantId(tenantId); + wxCUser.setOpenId(openId); + return wxCUserMapper.findByOpenId(wxCUser); + } + @Override public void updateScene(CUser user) { WxCUser userL = new WxCUser(); diff --git a/mallinkService/src/main/resources/mapper/TtBuserMapper.xml b/mallinkService/src/main/resources/mapper/TtBuserMapper.xml index 1b911ae0f..904a3caa3 100644 --- a/mallinkService/src/main/resources/mapper/TtBuserMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtBuserMapper.xml @@ -231,7 +231,10 @@ select * from wx_buser - where `app_id` = #{appId} and `open_id` = #{openId} + where `open_id` = #{openId} + + and `app_id` = #{appId} +