From 392b42c4891cf2e6beda57ab32c51598f290f4b7 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期五, 14 三月 2025 20:56:27 +0800 Subject: [PATCH] bug修改 --- ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberLevelServiceImpl.java | 39 +++++++++++++++++++++++++++++++++------ 1 files changed, 33 insertions(+), 6 deletions(-) diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberLevelServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberLevelServiceImpl.java index 7ebc575..b0f1e51 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberLevelServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberLevelServiceImpl.java @@ -1,19 +1,24 @@ package com.ruoyi.member.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.utils.page.BeanUtils; +import com.ruoyi.member.controller.management.dto.MgtMemberLevelDTO; import com.ruoyi.member.controller.management.vo.MgtMemberLevelVO; import com.ruoyi.member.domain.MemberLevel; import com.ruoyi.member.mapper.MemberLevelMapper; +import com.ruoyi.member.mapper.MemberMapper; import com.ruoyi.member.service.IMemberLevelService; -import com.ruoyi.member.service.IMemberService; +import com.ruoyi.member.service.async.AsyncMethodService; import com.ruoyi.system.api.domain.Member; import java.util.List; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; /** * <p> @@ -28,8 +33,8 @@ @RequiredArgsConstructor public class MemberLevelServiceImpl extends ServiceImpl<MemberLevelMapper, MemberLevel> implements IMemberLevelService { - private final IMemberService memberService; - + private final MemberMapper memberMapper; + private final AsyncMethodService asyncMethodService; /** * 获取会员等级管理列表 * @@ -39,13 +44,35 @@ public List<MgtMemberLevelVO> getMemberLevelList() { List<MemberLevel> list = this.lambdaQuery().orderByAsc(MemberLevel::getLevel).list(); List<MgtMemberLevelVO> mgtMemberLevelVOS = BeanUtils.copyList(list, MgtMemberLevelVO.class); + LambdaQueryWrapper<Member> wrapper= Wrappers.lambdaQuery(); + List<Member> memberList = memberMapper.selectList(wrapper); + Integer level = 0; + if (StringUtils.isNotEmpty(mgtMemberLevelVOS)) { + for (MgtMemberLevelVO vo : mgtMemberLevelVOS) { - long count = memberService.count( - Wrappers.<Member>lambdaQuery().eq(Member::getLevel, vo.getLevel())); - vo.setCurrentNumber((int) count); + + vo.setCurrentNumber(getMemberCountByLevel(memberList, vo.getLevel())); } } return mgtMemberLevelVOS; } + + private static int getMemberCountByLevel(List<Member> memberList, Integer level) { + return (int) memberList.stream().filter(member -> member.getLevel().equals(level)).count(); + } + + /** + * 保存会员等级配置 + * + * @param dto 会员等级配置列表 + */ + @Override + @Transactional(propagation = Propagation.REQUIRES_NEW) + public void saveOrUpdateMemberLevel(MgtMemberLevelDTO dto) { + List<MemberLevel> memberLevels = BeanUtils.copyList(dto.getMemberLevelDTOList(), + MemberLevel.class); + this.saveOrUpdateBatch(memberLevels); + asyncMethodService.handleMemberLevel(memberLevels); + } } -- Gitblit v1.7.1