From f04452951cdbd9978aa95041d3328a90c7de75a4 Mon Sep 17 00:00:00 2001 From: yk Date: Thu, 4 Jan 2024 15:29:17 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E5=B0=8F=E7=A8=8B=E5=BA=8Fsi?= =?UTF-8?q?gnup=E6=8E=A5=E5=8F=A3=E4=BF=AE=E6=94=B99=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E8=AF=B7=E6=B1=82=E8=BF=94=E5=9B=9E=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tenant/api/tenant/feign/RemoteTenantService.java | 7 +++++-- .../feign/factory/RemoteTenantFallbackFactory.java | 10 ++++++++-- .../com/xueyi/auth/controller/TokenController.java | 2 +- .../system/staff/controller/DmStaffController.java | 3 ++- .../system/wechat/controller/WeappController.java | 12 +++++++++--- .../resources/mapper/SysEnterpriseStaffMapper.xml | 4 ++++ 6 files changed, 29 insertions(+), 9 deletions(-) diff --git a/xueyi-api/xueyi-api-tenant/src/main/java/com/xueyi/tenant/api/tenant/feign/RemoteTenantService.java b/xueyi-api/xueyi-api-tenant/src/main/java/com/xueyi/tenant/api/tenant/feign/RemoteTenantService.java index a420bacd..3daf4903 100644 --- a/xueyi-api/xueyi-api-tenant/src/main/java/com/xueyi/tenant/api/tenant/feign/RemoteTenantService.java +++ b/xueyi-api/xueyi-api-tenant/src/main/java/com/xueyi/tenant/api/tenant/feign/RemoteTenantService.java @@ -42,8 +42,11 @@ public interface RemoteTenantService { R tenant(@RequestParam ("phone") String phone, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); - @GetMapping("/tenant/staff") - R existStaff(@RequestParam ("phone") String phone, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); + @GetMapping("/tenant/query-tenant-by-staff-phone") + R queryTenantByStaffPhone(@RequestParam ("phone") String phone, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); + + @GetMapping("/tenant/query-staff-by-phone") + R queryStaff(@RequestParam ("phone") String phone, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); @PostMapping("/tenant/save-staff") diff --git a/xueyi-api/xueyi-api-tenant/src/main/java/com/xueyi/tenant/api/tenant/feign/factory/RemoteTenantFallbackFactory.java b/xueyi-api/xueyi-api-tenant/src/main/java/com/xueyi/tenant/api/tenant/feign/factory/RemoteTenantFallbackFactory.java index 7d65e2ee..e05144aa 100644 --- a/xueyi-api/xueyi-api-tenant/src/main/java/com/xueyi/tenant/api/tenant/feign/factory/RemoteTenantFallbackFactory.java +++ b/xueyi-api/xueyi-api-tenant/src/main/java/com/xueyi/tenant/api/tenant/feign/factory/RemoteTenantFallbackFactory.java @@ -44,13 +44,19 @@ public class RemoteTenantFallbackFactory implements FallbackFactory existStaff(String phone, String source) { + public R queryTenantByStaffPhone(String phone, String source) { + return null; + } + + + @Override + public R queryStaff(String phone, String source) { return R.fail("验证用户手机号失败:" + throwable.getMessage()); } @Override public R saveEnterpriseStaff(SysEnterpriseStaff staff, String source) { - return null; + return R.fail("保存员工失败:" + throwable.getMessage()); } }; } diff --git a/xueyi-auth/src/main/java/com/xueyi/auth/controller/TokenController.java b/xueyi-auth/src/main/java/com/xueyi/auth/controller/TokenController.java index ffe5655f..4ea96133 100644 --- a/xueyi-auth/src/main/java/com/xueyi/auth/controller/TokenController.java +++ b/xueyi-auth/src/main/java/com/xueyi/auth/controller/TokenController.java @@ -140,7 +140,7 @@ public class TokenController { @GetMapping("validCode") public R validCode(@RequestParam String phone) { - R staff = tenantService.existStaff(phone, SecurityConstants.INNER); + R staff = tenantService.queryStaff(phone, SecurityConstants.INNER); if (staff.getData() == null) { return R.fail("手机号不存在,请查验"); } diff --git a/xueyi-modules/xueyi-system/src/main/java/com/xueyi/system/staff/controller/DmStaffController.java b/xueyi-modules/xueyi-system/src/main/java/com/xueyi/system/staff/controller/DmStaffController.java index cf29270a..299489e9 100644 --- a/xueyi-modules/xueyi-system/src/main/java/com/xueyi/system/staff/controller/DmStaffController.java +++ b/xueyi-modules/xueyi-system/src/main/java/com/xueyi/system/staff/controller/DmStaffController.java @@ -138,10 +138,11 @@ public class DmStaffController extends BaseController staff = tenantService.existStaff(weChatUserInfo.getOpenid(), SecurityConstants.INNER); + R staffR = tenantService.queryStaff(weChatUserInfo.getOpenid(), SecurityConstants.INNER); Map map = new HashMap<>(); try { map.put("weappAuth", CryptoUtil.encrypt(weChatUserInfo.toString())); - if (staff.getData() != null) { - R loginInfoResult = remoteLoginService.getLoginInfoInnerByPhone(staff.getData().getPhone(), SecurityConstants.INNER); + SysEnterpriseStaff staff = staffR.getData(); + if (staff != null) { + R loginInfoResult = remoteLoginService.getLoginInfoInnerByPhone(staff.getPhone(), SecurityConstants.INNER); map.putAll(tokenService.createToken(loginInfoResult.getData())); + String token = (String)map.get("access_token"); + log.info("信息,token:{}, enterpriseName:{}, source:{}", token, JwtUtil.getEnterpriseName(token),JwtUtil.getSourceName(token)); + JSONObject json = staffService.fetchStaffByPhone(staff.getPhone(), Long.valueOf(JwtUtil.getEnterpriseId(token)), JwtUtil.getSourceName(token), SecurityConstants.INNER); + map.put("enterpriseName", loginInfoResult.getData().getEnterpriseName()); + map.put("staff", json.get("data")); return AjaxResult.success(map); } return AjaxResult.success(map); diff --git a/xueyi-modules/xueyi-tenant/src/main/resources/mapper/SysEnterpriseStaffMapper.xml b/xueyi-modules/xueyi-tenant/src/main/resources/mapper/SysEnterpriseStaffMapper.xml index 3d7fe2fa..8d05a52e 100644 --- a/xueyi-modules/xueyi-tenant/src/main/resources/mapper/SysEnterpriseStaffMapper.xml +++ b/xueyi-modules/xueyi-tenant/src/main/resources/mapper/SysEnterpriseStaffMapper.xml @@ -8,6 +8,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select * from te_tenant where id = (select tenant_id from sys_enterprise_staff where (phone = #{phone} or openid = #{phone}) and del_flag = 0 limit 1) + + update sys_enterprise_staff