From 0f8c640b671fa8596715fe3f7573acc4f40dab69 Mon Sep 17 00:00:00 2001 From: fengshuonan Date: Tue, 20 Jul 2021 11:00:13 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=907.0.4=E3=80=91=E3=80=90c=E3=80=91?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=80=9A=E8=BF=87secretKey=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E4=BF=A1=E6=81=AF=E7=9A=84=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../kernel/customer/api/CustomerApi.java | 8 +++++++ .../service/impl/CustomerServiceImpl.java | 23 +++++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/kernel-s-customer/customer-api/src/main/java/cn/stylefeng/roses/kernel/customer/api/CustomerApi.java b/kernel-s-customer/customer-api/src/main/java/cn/stylefeng/roses/kernel/customer/api/CustomerApi.java index 6be03cca5..0a8e32847 100644 --- a/kernel-s-customer/customer-api/src/main/java/cn/stylefeng/roses/kernel/customer/api/CustomerApi.java +++ b/kernel-s-customer/customer-api/src/main/java/cn/stylefeng/roses/kernel/customer/api/CustomerApi.java @@ -44,6 +44,14 @@ public interface CustomerApi { */ CustomerInfo getCustomerInfoById(Long customerId); + /** + * 获取用户信息,通过用户的secretKey字段 + * + * @author fengshuonan + * @date 2021/7/20 10:51 + */ + CustomerInfo getCustomerInfoBySecretKey(String secretKey); + /** * 更新用户会员时间 * diff --git a/kernel-s-customer/customer-business/src/main/java/cn/stylefeng/roses/kernel/customer/modular/service/impl/CustomerServiceImpl.java b/kernel-s-customer/customer-business/src/main/java/cn/stylefeng/roses/kernel/customer/modular/service/impl/CustomerServiceImpl.java index 4efbadc1d..82b9fd5ee 100644 --- a/kernel-s-customer/customer-business/src/main/java/cn/stylefeng/roses/kernel/customer/modular/service/impl/CustomerServiceImpl.java +++ b/kernel-s-customer/customer-business/src/main/java/cn/stylefeng/roses/kernel/customer/modular/service/impl/CustomerServiceImpl.java @@ -373,6 +373,9 @@ public class CustomerServiceImpl extends ServiceImpl i wrapper.eq(Customer::getCustomerId, userId); this.update(wrapper); + // 清除缓存中的用户信息 + customerInfoCacheOperatorApi.remove(String.valueOf(userId)); + return uuid; } @@ -418,6 +421,26 @@ public class CustomerServiceImpl extends ServiceImpl i return result; } + @Override + public CustomerInfo getCustomerInfoBySecretKey(String secretKey) { + + if (StrUtil.isEmpty(secretKey)) { + return null; + } + + // 先通过secretKey获取用户id + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(Customer::getSecretKey, secretKey); + wrapper.select(Customer::getCustomerId); + Customer customer = this.getOne(wrapper, false); + if (customer == null) { + return null; + } + + // 再通过用户id,获取用户的信息 + return this.getCustomerInfoById(customer.getCustomerId()); + } + @Override public void updateMemberExpiryDate(Long customerId, Date expiryDate) { LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>();