From 53f83462c6b0b5cbf366a1a8eb2243d2927b300b Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 27 May 2025 10:05:04 +0800
Subject: [PATCH] feat(mall): 添加会员标识设置功能

---
 src/main/java/cc/mrbird/febs/mall/service/impl/AdminMemberLevelServiceImpl.java |   68 ++++++++++++++++++++++++++++++++--
 1 files changed, 64 insertions(+), 4 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMemberLevelServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMemberLevelServiceImpl.java
index 3022675..c3f5e98 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMemberLevelServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMemberLevelServiceImpl.java
@@ -4,13 +4,15 @@
 import cc.mrbird.febs.common.entity.QueryRequest;
 import cc.mrbird.febs.common.enumerates.StateUpDownEnum;
 import cc.mrbird.febs.mall.dto.memberLevel.*;
-import cc.mrbird.febs.mall.entity.HappyActivityCategory;
-import cc.mrbird.febs.mall.entity.HappyMemberLevel;
-import cc.mrbird.febs.mall.entity.HappySaleLevel;
+import cc.mrbird.febs.mall.entity.*;
+import cc.mrbird.febs.mall.mapper.HappyMemberLabelMapper;
+import cc.mrbird.febs.mall.mapper.HappyMemberLabelRecordMapper;
 import cc.mrbird.febs.mall.mapper.HappyMemberLevelMapper;
 import cc.mrbird.febs.mall.mapper.HappySaleLevelMapper;
 import cc.mrbird.febs.mall.service.AdminMemberLevelService;
+import cc.mrbird.febs.mall.vo.memberLevel.AdminMemberLabelSetDto;
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -28,10 +30,13 @@
 @Service
 @RequiredArgsConstructor
 @Transactional
-public class AdminMemberLevelServiceImpl extends ServiceImpl<HappyMemberLevelMapper, HappyMemberLevel> implements AdminMemberLevelService {
+public class
+AdminMemberLevelServiceImpl extends ServiceImpl<HappyMemberLevelMapper, HappyMemberLevel> implements AdminMemberLevelService {
 
     private final HappyMemberLevelMapper happyMemberLevelMapper;
     private final HappySaleLevelMapper happySaleLevelMapper;
+    private final HappyMemberLabelMapper happyMemberLabelMapper;
+    private final HappyMemberLabelRecordMapper happyMemberLabelRecordMapper;
     @Override
     public IPage<HappyMemberLevel> getLevelListInPage(AdminMemberLevelDto dto, QueryRequest request) {
 
@@ -39,6 +44,16 @@
         LambdaQueryWrapper<HappyMemberLevel> lambdaQueryWrapper = new LambdaQueryWrapper<>();
         lambdaQueryWrapper.orderByAsc(HappyMemberLevel::getId);
         Page<HappyMemberLevel>  happyMemberLevelPage = happyMemberLevelMapper.selectPage(page, lambdaQueryWrapper);
+        return happyMemberLevelPage;
+    }
+
+    @Override
+    public IPage<HappyMemberLabel> getLabelListInPage(AdminMemberLabelDto dto, QueryRequest request) {
+
+        Page<HappyMemberLabel> page = new Page<>(request.getPageNum(), request.getPageSize());
+        LambdaQueryWrapper<HappyMemberLabel> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.orderByAsc(HappyMemberLabel::getId);
+        Page<HappyMemberLabel>  happyMemberLevelPage = happyMemberLabelMapper.selectPage(page, lambdaQueryWrapper);
         return happyMemberLevelPage;
     }
 
@@ -51,6 +66,14 @@
     }
 
     @Override
+    public FebsResponse labelAdd(AdminMemberLabelAddDto dto) {
+        HappyMemberLabel happyMemberLabel = new HappyMemberLabel();
+        BeanUtil.copyProperties(dto, happyMemberLabel);
+        happyMemberLabelMapper.insert(happyMemberLabel);
+        return new FebsResponse().success().message("操作成功");
+    }
+
+    @Override
     public FebsResponse levelUpdate(AdminMemberLevelUpdateDto dto) {
         HappyMemberLevel happyMemberLevel = happyMemberLevelMapper.selectById(dto.getId());
         if (ObjectUtil.isNotNull(happyMemberLevel)) {
@@ -61,6 +84,43 @@
     }
 
     @Override
+    public FebsResponse labelUpdate(AdminMemberLabelUpdateDto dto) {
+        HappyMemberLabel happyMemberLabel = happyMemberLabelMapper.selectById(dto.getId());
+        if (ObjectUtil.isNotNull(happyMemberLabel)) {
+            BeanUtil.copyProperties(dto, happyMemberLabel);
+            happyMemberLabelMapper.updateById(happyMemberLabel);
+        }
+        return new FebsResponse().success().message("操作成功");
+    }
+
+    @Override
+    public FebsResponse labelMemberSet(AdminMemberLabelSetDto dto) {
+        Long labelId = dto.getLabelId();
+        List<Long> memberIdList = dto.getMemberIdList();
+        HappyMemberLabel happyMemberLabel = happyMemberLabelMapper.selectById(labelId);
+        if (ObjectUtil.isNotEmpty(happyMemberLabel)) {
+            if(CollUtil.isNotEmpty(memberIdList)){
+                LambdaQueryWrapper<HappyMemberLabelRecord> happyMemberLabelRecordLambdaQueryWrapper = new LambdaQueryWrapper<>();
+                happyMemberLabelRecordLambdaQueryWrapper.eq(HappyMemberLabelRecord::getLabelId,labelId);
+                happyMemberLabelRecordLambdaQueryWrapper.in(HappyMemberLabelRecord::getMemberId,memberIdList);
+                happyMemberLabelRecordMapper.delete(happyMemberLabelRecordLambdaQueryWrapper);
+
+                for (Long memberId:memberIdList){
+                    HappyMemberLabelRecord happyMemberLabelRecord = new HappyMemberLabelRecord();
+                    happyMemberLabelRecord.setMemberId(memberId);
+                    happyMemberLabelRecord.setLabelId(labelId);
+                    happyMemberLabelRecordMapper.insert(happyMemberLabelRecord);
+                }
+            }else{
+                LambdaQueryWrapper<HappyMemberLabelRecord> happyMemberLabelRecordLambdaQueryWrapper = new LambdaQueryWrapper<>();
+                happyMemberLabelRecordLambdaQueryWrapper.eq(HappyMemberLabelRecord::getLabelId,labelId);
+                happyMemberLabelRecordMapper.delete(happyMemberLabelRecordLambdaQueryWrapper);
+            }
+        }
+        return new FebsResponse().success().message("操作成功");
+    }
+
+    @Override
     public FebsResponse levelAll() {
         List<HappyMemberLevel> happyMemberLevels = happyMemberLevelMapper.selectList(
                 new LambdaQueryWrapper<HappyMemberLevel>()

--
Gitblit v1.9.1