From ccbd86bc5f747b748b5bde257a789d748b8cefbb Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Thu, 11 Sep 2025 17:41:35 +0800
Subject: [PATCH] ``` refactor(service): 在设置活动类别名称前增加非空检查在AdminHappyActivityServiceImpl.java中,对happyActivity的categoryId进行了非空检查,并且确认categoryMap中包含该categoryId后,再设置其categoryName。这样可以避免因为空值或不存在的键导致的潜在异常。 ```
---
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMemberLevelServiceImpl.java | 87 ++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 84 insertions(+), 3 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..39d383b 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,17 +4,20 @@
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;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
@@ -32,6 +35,8 @@
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,31 @@
}
@Override
+ public FebsResponse labelAdd(AdminMemberLabelAddDto dto) {
+ HappyMemberLabel happyMemberLabel = new HappyMemberLabel();
+ BeanUtil.copyProperties(dto, happyMemberLabel);
+ Integer code = 0;
+ if(ObjectUtil.isEmpty(dto.getParentId())){
+ code = dto.getCode();
+ }
+ happyMemberLabel.setCode(code);
+ happyMemberLabelMapper.insert(happyMemberLabel);
+ return new FebsResponse().success().message("操作成功");
+ }
+
+ @Override
+ public FebsResponse parentAll() {
+
+ List<HappyMemberLabel> happyMemberLabels = happyMemberLabelMapper.selectList(
+ Wrappers.lambdaQuery(HappyMemberLabel.class)
+ .select(HappyMemberLabel::getId, HappyMemberLabel::getName)
+ .eq(HappyMemberLabel::getParentId, 0)
+ .eq(HappyMemberLabel::getCode,1)
+ );
+ return new FebsResponse().success().data(happyMemberLabels);
+ }
+
+ @Override
public FebsResponse levelUpdate(AdminMemberLevelUpdateDto dto) {
HappyMemberLevel happyMemberLevel = happyMemberLevelMapper.selectById(dto.getId());
if (ObjectUtil.isNotNull(happyMemberLevel)) {
@@ -61,6 +101,47 @@
}
@Override
+ public FebsResponse labelUpdate(AdminMemberLabelUpdateDto dto) {
+ HappyMemberLabel happyMemberLabel = happyMemberLabelMapper.selectById(dto.getId());
+ if (ObjectUtil.isNotNull(happyMemberLabel)) {
+ BeanUtil.copyProperties(dto, happyMemberLabel);
+
+ Integer code = 0;
+ Long parentId = 0L;
+ if(ObjectUtil.isEmpty(dto.getParentId())){
+ code = dto.getCode();
+ }else{
+ parentId = dto.getParentId();
+ }
+ happyMemberLabel.setCode(code);
+ happyMemberLabel.setParentId(parentId);
+ 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)) {
+ LambdaQueryWrapper<HappyMemberLabelRecord> happyMemberLabelRecordLambdaQueryWrapper = new LambdaQueryWrapper<>();
+ happyMemberLabelRecordLambdaQueryWrapper.eq(HappyMemberLabelRecord::getLabelId,labelId);
+ happyMemberLabelRecordMapper.delete(happyMemberLabelRecordLambdaQueryWrapper);
+ if(CollUtil.isNotEmpty(memberIdList)){
+ for (Long memberId:memberIdList){
+ HappyMemberLabelRecord happyMemberLabelRecord = new HappyMemberLabelRecord();
+ happyMemberLabelRecord.setMemberId(memberId);
+ happyMemberLabelRecord.setLabelId(labelId);
+ happyMemberLabelRecordMapper.insert(happyMemberLabelRecord);
+ }
+ }
+ }
+ return new FebsResponse().success().message("操作成功");
+ }
+
+ @Override
public FebsResponse levelAll() {
List<HappyMemberLevel> happyMemberLevels = happyMemberLevelMapper.selectList(
new LambdaQueryWrapper<HappyMemberLevel>()
--
Gitblit v1.9.1