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/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; } //如果是店铺 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); + } + /** * 检测会员 * 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) {