From 27e82423f0ee0a0693a462dac731a0532c29edaa Mon Sep 17 00:00:00 2001 From: paulGao Date: Fri, 21 Jan 2022 19:00:20 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=89=8B=E6=9C=BA?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E5=90=8E=EF=BC=8C=E6=89=8B=E6=9C=BA=E5=8F=B7?= =?UTF-8?q?=E4=B8=BA=E8=84=B1=E6=95=8F=E5=90=8E=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/lili/event/impl/MemberExecute.java | 2 +- .../modules/member/service/MemberService.java | 8 ++++++++ .../member/serviceimpl/MemberServiceImpl.java | 16 +++++++++++++++- 3 files changed, 24 insertions(+), 2 deletions(-) diff --git a/consumer/src/main/java/cn/lili/event/impl/MemberExecute.java b/consumer/src/main/java/cn/lili/event/impl/MemberExecute.java index 5411002f..57e4c2fb 100644 --- a/consumer/src/main/java/cn/lili/event/impl/MemberExecute.java +++ b/consumer/src/main/java/cn/lili/event/impl/MemberExecute.java @@ -20,6 +20,6 @@ public class MemberExecute implements MemberLoginEvent { @Override public void memberLogin(Member member) { - memberService.updateById(member); + memberService.updateMemberLoginTime(member.getId()); } } diff --git a/framework/src/main/java/cn/lili/modules/member/service/MemberService.java b/framework/src/main/java/cn/lili/modules/member/service/MemberService.java index a93c18ad..e83b670f 100644 --- a/framework/src/main/java/cn/lili/modules/member/service/MemberService.java +++ b/framework/src/main/java/cn/lili/modules/member/service/MemberService.java @@ -227,4 +227,12 @@ public interface MemberService extends IService { * @return 所有会员的手机号 */ List getAllMemberMobile(); + + /** + * 更新会员登录时间为最新时间 + * + * @param memberId 会员id + * @return 是否更新成功 + */ + boolean updateMemberLoginTime(String memberId); } \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java b/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java index bc280dcd..52bd1052 100644 --- a/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java @@ -50,8 +50,8 @@ import org.apache.rocketmq.spring.core.RocketMQTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.Objects; @@ -595,6 +595,20 @@ public class MemberServiceImpl extends ServiceImpl impleme return this.baseMapper.getAllMemberMobile(); } + /** + * 更新会员登录时间为最新时间 + * + * @param memberId 会员id + * @return 是否更新成功 + */ + @Override + public boolean updateMemberLoginTime(String memberId) { + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(Member::getId, memberId); + updateWrapper.set(Member::getLastLoginDate, new Date()); + return this.update(updateWrapper); + } + /** * 检测会员 * From d5fdc47936f871db9cff11cefef341c4429ff9cc Mon Sep 17 00:00:00 2001 From: paulGao Date: Fri, 21 Jan 2022 19:01:02 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BF=83=E9=94=80?= =?UTF-8?q?=E4=BC=98=E6=83=A0=E5=88=B8=E8=8E=B7=E5=8F=96=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E4=BC=98=E6=83=A0=E5=88=B8=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../search/BasePromotionsSearchParams.java | 20 +++++---- .../entity/dto/search/CouponSearchParams.java | 42 ++++++++++--------- .../dto/search/MemberCouponSearchParams.java | 9 ++-- .../java/cn/lili/ManagerApiApplication.java | 3 +- 4 files changed, 40 insertions(+), 34 deletions(-) diff --git a/framework/src/main/java/cn/lili/modules/promotion/entity/dto/search/BasePromotionsSearchParams.java b/framework/src/main/java/cn/lili/modules/promotion/entity/dto/search/BasePromotionsSearchParams.java index b07aea26..0131aa3e 100644 --- a/framework/src/main/java/cn/lili/modules/promotion/entity/dto/search/BasePromotionsSearchParams.java +++ b/framework/src/main/java/cn/lili/modules/promotion/entity/dto/search/BasePromotionsSearchParams.java @@ -43,6 +43,19 @@ public class BasePromotionsSearchParams { private String storeId; public QueryWrapper queryWrapper() { + QueryWrapper queryWrapper = this.baseQueryWrapper(); + + if (CharSequenceUtil.isNotEmpty(promotionStatus)) { + queryWrapper.and(i -> { + for (String status : promotionStatus.split(",")) { + i.or(PromotionTools.queryPromotionStatus(PromotionsStatusEnum.valueOf(status))); + } + }); + } + return queryWrapper; + } + + public QueryWrapper baseQueryWrapper() { QueryWrapper queryWrapper = new QueryWrapper<>(); if (CharSequenceUtil.isNotEmpty(id)) { @@ -54,13 +67,6 @@ public class BasePromotionsSearchParams { if (endTime != null) { queryWrapper.le("end_time", new Date(endTime)); } - if (CharSequenceUtil.isNotEmpty(promotionStatus)) { - queryWrapper.and(i -> { - for (String status : promotionStatus.split(",")) { - i.or(PromotionTools.queryPromotionStatus(PromotionsStatusEnum.valueOf(status))); - } - }); - } if (CharSequenceUtil.isNotEmpty(scopeType)) { queryWrapper.eq("scope_type", scopeType); } diff --git a/framework/src/main/java/cn/lili/modules/promotion/entity/dto/search/CouponSearchParams.java b/framework/src/main/java/cn/lili/modules/promotion/entity/dto/search/CouponSearchParams.java index f71a198c..eddecde6 100644 --- a/framework/src/main/java/cn/lili/modules/promotion/entity/dto/search/CouponSearchParams.java +++ b/framework/src/main/java/cn/lili/modules/promotion/entity/dto/search/CouponSearchParams.java @@ -60,7 +60,7 @@ public class CouponSearchParams extends BasePromotionsSearchParams implements Se @Override public QueryWrapper queryWrapper() { - QueryWrapper queryWrapper = super.queryWrapper(); + QueryWrapper queryWrapper = super.baseQueryWrapper(); if (CharSequenceUtil.isNotEmpty(couponName)) { queryWrapper.like("coupon_name", couponName); } @@ -80,24 +80,27 @@ public class CouponSearchParams extends BasePromotionsSearchParams implements Se queryWrapper.eq("get_type", CouponGetEnum.valueOf(getType).name()); } if (CharSequenceUtil.isNotEmpty(this.getPromotionStatus())) { - switch (PromotionsStatusEnum.valueOf(this.getPromotionStatus())) { - case NEW: - queryWrapper.nested(i -> i.gt(PromotionTools.START_TIME_COLUMN, new Date()).gt(PromotionTools.END_TIME_COLUMN, new Date())); - break; - case START: - queryWrapper.nested(i -> i.le(PromotionTools.START_TIME_COLUMN, new Date()).ge(PromotionTools.END_TIME_COLUMN, new Date())) - .or(i -> i.gt("effective_days", 0).eq(RANGE_DAY_TYPE_COLUMN, CouponRangeDayEnum.DYNAMICTIME.name())); - break; - case END: - queryWrapper.nested(i -> i.lt(PromotionTools.START_TIME_COLUMN, new Date()).lt(PromotionTools.END_TIME_COLUMN, new Date())); - break; - case CLOSE: - queryWrapper.nested(n -> n.nested(i -> i.isNull(PromotionTools.START_TIME_COLUMN).isNull(PromotionTools.END_TIME_COLUMN) - .eq(RANGE_DAY_TYPE_COLUMN, CouponRangeDayEnum.FIXEDTIME.name())). - or(i -> i.le("effective_days", 0).eq(RANGE_DAY_TYPE_COLUMN, CouponRangeDayEnum.DYNAMICTIME.name()))); - break; - default: - } + queryWrapper.and(p -> { + switch (PromotionsStatusEnum.valueOf(this.getPromotionStatus())) { + case NEW: + p.nested(i -> i.gt(PromotionTools.START_TIME_COLUMN, new Date()).gt(PromotionTools.END_TIME_COLUMN, new Date())); + break; + case START: + p.nested(i -> i.le(PromotionTools.START_TIME_COLUMN, new Date()).ge(PromotionTools.END_TIME_COLUMN, new Date())) + .or(i -> i.gt("effective_days", 0).eq(RANGE_DAY_TYPE_COLUMN, CouponRangeDayEnum.DYNAMICTIME.name())); + break; + case END: + p.nested(i -> i.lt(PromotionTools.START_TIME_COLUMN, new Date()).lt(PromotionTools.END_TIME_COLUMN, new Date())); + break; + case CLOSE: + p.nested(n -> n.nested(i -> i.isNull(PromotionTools.START_TIME_COLUMN).isNull(PromotionTools.END_TIME_COLUMN) + .eq(RANGE_DAY_TYPE_COLUMN, CouponRangeDayEnum.FIXEDTIME.name())). + or(i -> i.le("effective_days", 0).eq(RANGE_DAY_TYPE_COLUMN, CouponRangeDayEnum.DYNAMICTIME.name()))); + break; + default: + } + }); + } if (this.getStartTime() != null) { queryWrapper.ge("start_time", new Date(this.getEndTime())); @@ -105,7 +108,6 @@ public class CouponSearchParams extends BasePromotionsSearchParams implements Se if (this.getEndTime() != null) { queryWrapper.le("end_time", new Date(this.getEndTime())); } - queryWrapper.eq("delete_flag", false); this.betweenWrapper(queryWrapper); queryWrapper.orderByDesc("create_time"); return queryWrapper; diff --git a/framework/src/main/java/cn/lili/modules/promotion/entity/dto/search/MemberCouponSearchParams.java b/framework/src/main/java/cn/lili/modules/promotion/entity/dto/search/MemberCouponSearchParams.java index f666646c..02f1b8f0 100644 --- a/framework/src/main/java/cn/lili/modules/promotion/entity/dto/search/MemberCouponSearchParams.java +++ b/framework/src/main/java/cn/lili/modules/promotion/entity/dto/search/MemberCouponSearchParams.java @@ -1,8 +1,10 @@ package cn.lili.modules.promotion.entity.dto.search; import cn.hutool.core.text.CharSequenceUtil; -import cn.lili.modules.promotion.entity.enums.*; -import cn.lili.modules.promotion.tools.PromotionTools; +import cn.lili.modules.promotion.entity.enums.CouponGetEnum; +import cn.lili.modules.promotion.entity.enums.CouponTypeEnum; +import cn.lili.modules.promotion.entity.enums.MemberCouponStatusEnum; +import cn.lili.modules.promotion.entity.enums.PromotionsScopeTypeEnum; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -78,9 +80,6 @@ public class MemberCouponSearchParams extends BasePromotionsSearchParams impleme if (CharSequenceUtil.isNotEmpty(memberCouponStatus)) { queryWrapper.eq("member_coupon_status", MemberCouponStatusEnum.valueOf(memberCouponStatus).name()); } - if (CharSequenceUtil.isNotEmpty(this.getPromotionStatus())) { - queryWrapper.and(PromotionTools.queryPromotionStatus(PromotionsStatusEnum.valueOf(getPromotionStatus()))); - } if (CharSequenceUtil.isNotEmpty(price)) { String[] s = price.split("_"); if (s.length > 1) { diff --git a/manager-api/src/main/java/cn/lili/ManagerApiApplication.java b/manager-api/src/main/java/cn/lili/ManagerApiApplication.java index b8a5b384..838bda79 100644 --- a/manager-api/src/main/java/cn/lili/ManagerApiApplication.java +++ b/manager-api/src/main/java/cn/lili/ManagerApiApplication.java @@ -23,8 +23,7 @@ public class ManagerApiApplication { @Primary @Bean public TaskExecutor primaryTask() { - ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); - return executor; + return new ThreadPoolTaskExecutor(); } public static void main(String[] args) { From 696bfe0a2cd414e4eec05eb53e41a140e173657e Mon Sep 17 00:00:00 2001 From: paulGao Date: Fri, 21 Jan 2022 19:03:43 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E4=B8=8D=E8=84=B1=E6=95=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lili/common/security/sensitive/SensitiveJsonSerializer.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/src/main/java/cn/lili/common/security/sensitive/SensitiveJsonSerializer.java b/framework/src/main/java/cn/lili/common/security/sensitive/SensitiveJsonSerializer.java index 506e8c41..86ebd462 100644 --- a/framework/src/main/java/cn/lili/common/security/sensitive/SensitiveJsonSerializer.java +++ b/framework/src/main/java/cn/lili/common/security/sensitive/SensitiveJsonSerializer.java @@ -72,7 +72,7 @@ public class SensitiveJsonSerializer extends JsonSerializer AuthUser authUser = UserContext.getCurrentUser(); //默认脱敏 if (authUser == null) { - return true; + return false; } //如果是店铺