From dc6f2e0919f49711ef032bc88e716aa1a7ae6de9 Mon Sep 17 00:00:00 2001 From: tanghao Date: Tue, 6 Aug 2024 09:49:45 +0800 Subject: fix: Location新增接口增加重复校验,删除接口改为批量删除 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cn-admin/src/main/java/net/geedge/common/utils/RCode.java | 3 ++- .../controller/LocationIntelligenceController.java | 6 +++--- .../modules/location/service/UserSubscriberService.java | 2 +- .../location/service/impl/UserSubscriberServiceImpl.java | 15 +++++++++++---- 4 files changed, 17 insertions(+), 9 deletions(-) diff --git a/cn-admin/src/main/java/net/geedge/common/utils/RCode.java b/cn-admin/src/main/java/net/geedge/common/utils/RCode.java index 732f6ca..523e952 100644 --- a/cn-admin/src/main/java/net/geedge/common/utils/RCode.java +++ b/cn-admin/src/main/java/net/geedge/common/utils/RCode.java @@ -433,8 +433,9 @@ public enum RCode { IMPORT_ERROR(806, "Import data error"), EXCELFILE_EMPTY_ERROR(807,"Import file data is required"), EXCELFILE_HEADER_TEMPLATE_REQUIRED(803,"The header row is required,please check db config"), + DATA_EXISTS_ERROR(998,"The data already exists, please do not add it again"), ERROR(999, "error"); //通用错误/未知错误 - + private RCode(Integer code, String msg) { diff --git a/cn-admin/src/main/java/net/geedge/modules/location/controller/LocationIntelligenceController.java b/cn-admin/src/main/java/net/geedge/modules/location/controller/LocationIntelligenceController.java index 5c5c03e..aa3572e 100644 --- a/cn-admin/src/main/java/net/geedge/modules/location/controller/LocationIntelligenceController.java +++ b/cn-admin/src/main/java/net/geedge/modules/location/controller/LocationIntelligenceController.java @@ -40,9 +40,9 @@ public class LocationIntelligenceController { } @DeleteMapping("/follow") - public R removeFollow(@RequestParam String subscriberId) { - ValidateUtils.is(subscriberId).notNull(RCode.NOT_NULL_ERROR); - userSubscriberService.deleteFollow(subscriberId); + public R removeFollow(@RequestParam String subscriberIds) { + ValidateUtils.is(subscriberIds).notNull(RCode.NOT_NULL_ERROR); + userSubscriberService.deleteFollow(subscriberIds); return R.ok(); } diff --git a/cn-admin/src/main/java/net/geedge/modules/location/service/UserSubscriberService.java b/cn-admin/src/main/java/net/geedge/modules/location/service/UserSubscriberService.java index fe0e01e..05ffc1c 100644 --- a/cn-admin/src/main/java/net/geedge/modules/location/service/UserSubscriberService.java +++ b/cn-admin/src/main/java/net/geedge/modules/location/service/UserSubscriberService.java @@ -13,5 +13,5 @@ public interface UserSubscriberService extends IService{ void insertFollow(UserSubscriber userSubscriber); - void deleteFollow(String subscriberId); + void deleteFollow(String subscriberIds); } diff --git a/cn-admin/src/main/java/net/geedge/modules/location/service/impl/UserSubscriberServiceImpl.java b/cn-admin/src/main/java/net/geedge/modules/location/service/impl/UserSubscriberServiceImpl.java index 7a285bb..bd5463d 100644 --- a/cn-admin/src/main/java/net/geedge/modules/location/service/impl/UserSubscriberServiceImpl.java +++ b/cn-admin/src/main/java/net/geedge/modules/location/service/impl/UserSubscriberServiceImpl.java @@ -1,5 +1,6 @@ package net.geedge.modules.location.service.impl; +import java.util.Arrays; import java.util.Date; import java.util.LinkedHashMap; import java.util.List; @@ -12,15 +13,15 @@ import org.springframework.stereotype.Service; import org.ssssssss.magicapi.core.service.MagicAPIService; import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.date.DateUtil; -import cn.hutool.core.map.MapUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import net.geedge.common.exception.CNException; import net.geedge.common.smartvalidate.ValidateUtils; import net.geedge.common.utils.GeoUtil; import net.geedge.common.utils.PageUtils; @@ -82,6 +83,11 @@ public class UserSubscriberServiceImpl extends ServiceImpl userSubs = this.baseMapper.selectList(new LambdaQueryWrapper().eq(UserSubscriber::getSubscriberId, userSubscriber.getSubscriberId()) + .eq(UserSubscriber::getUserId, userId)); + if(ObjectUtil.isNotEmpty(userSubs)) { + throw new CNException(RCode.DATA_EXISTS_ERROR); + } userSubscriber.setCtime(new Date()); userSubscriber.setUtime(new Date()); userSubscriber.setUserId(userId); @@ -89,7 +95,8 @@ public class UserSubscriberServiceImpl extends ServiceImpl().lambda().eq(UserSubscriber::getSubscriberId, subscriberId)); + public void deleteFollow(String subscriberIds) { + this.baseMapper.delete(new QueryWrapper().lambda() + .in(UserSubscriber::getSubscriberId, StrUtil.split(subscriberIds, StrUtil.C_COMMA))); } } -- cgit v1.2.3