From 79be3113b28c745c2f773983c2074690ae896a0a Mon Sep 17 00:00:00 2001
From: rentaiming <806181062@qq.com>
Date: 星期三, 17 七月 2024 19:13:17 +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