From a177d428e3d41fd81693ea3827916300bb2aa7f9 Mon Sep 17 00:00:00 2001 From: Penny <2500338766@qq.com> Date: Thu, 30 Mar 2023 01:48:38 +0800 Subject: [PATCH] =?UTF-8?q?feature-img-1.0:img=E6=9C=8D=E5=8A=A1=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E8=89=BA=E6=9C=AF=E5=AE=B6=E6=96=B0=E5=A2=9E=E8=87=AA?= =?UTF-8?q?=E5=AE=9A=E4=B9=89=E6=A0=87=E7=AD=BE=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bnyer/common/core/dto/SignFrontDto.java | 5 ++ .../com/bnyer/img/service/SignService.java | 7 +++ .../img/service/impl/SignServiceImpl.java | 48 +++++++++++++++---- 3 files changed, 50 insertions(+), 10 deletions(-) diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/SignFrontDto.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/SignFrontDto.java index da244d9..a5f8c5f 100644 --- a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/SignFrontDto.java +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/SignFrontDto.java @@ -5,7 +5,10 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; import java.io.Serializable; +import java.util.List; @Getter @@ -16,9 +19,11 @@ public class SignFrontDto implements Serializable { @ApiModelProperty(value="主键id") private Long id; + @NotEmpty(message = "标签名称必填!") @ApiModelProperty(value="标签名称") private String name; + @NotNull(message = "父id必填!") @ApiModelProperty(value="父id") private Long parentId; } diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/SignService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/SignService.java index be9978b..74b190a 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/SignService.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/SignService.java @@ -35,4 +35,11 @@ public interface SignService { * @return - */ void modifySign(Long imgId,Long typeId,List signIds); + + /** + * 检查是否存在重复名称 + * @param signNameList 标签列表 + * @return - + */ + void checkRepeat(String[] signNameList); } diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/SignServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/SignServiceImpl.java index 51722d3..7f76441 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/SignServiceImpl.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/SignServiceImpl.java @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.bnyer.common.core.domain.ImgSignRelation; import com.bnyer.common.core.domain.Sign; import com.bnyer.common.core.dto.SignFrontDto; +import com.bnyer.common.core.exception.ServiceException; +import com.bnyer.common.core.utils.StringUtils; import com.bnyer.img.mapper.ImgSignRelationMapper; import com.bnyer.img.mapper.SignMapper; import com.bnyer.img.service.SignService; @@ -29,16 +31,24 @@ public class SignServiceImpl implements SignService { @Override @Transactional(rollbackFor = Exception.class) public int creatorSign(SignFrontDto dto) { - Sign sign = new Sign(); - sign.setName(dto.getName()); - sign.setType("1"); - sign.setStatus("0"); - sign.setCreateTime(new Date()); - sign.setUpdateTime(new Date()); - sign.setIsShow("1"); - sign.setSort(0); - sign.setParentId(dto.getParentId()); - return signMapper.insert(sign); + if(StringUtils.isNotEmpty(dto.getName())){ + String[] splitNameList = dto.getName().split("、"); + //检查是否存在重复的 + checkRepeat(splitNameList); + for (int i = 0; i < splitNameList.length; i++) { + Sign sign = new Sign(); + sign.setName(splitNameList[i]); + sign.setType("1"); + sign.setStatus("0"); + sign.setCreateTime(new Date()); + sign.setUpdateTime(new Date()); + sign.setIsShow("1"); + sign.setSort(0); + sign.setParentId(dto.getParentId()); + return signMapper.insert(sign); + } + } + return 0; } @Override @@ -61,4 +71,22 @@ public class SignServiceImpl implements SignService { //插入新标签到关系表 imgSignRelationMapper.batctInsert(imgId,typeId,signIds); } + + @Override + public void checkRepeat(String[] signNameList) { + if(signNameList.length > 0){ + for (String name : signNameList) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(Sign::getName, name); + Sign sign = signMapper.selectOne(wrapper); + if(sign != null){ + throw new ServiceException("自定义标签["+name+"]已存在,请重新编辑!"); + } + //检查长度是否大于8 + if(name.length() > 8){ + throw new ServiceException("自定义标签["+name+"]长度大于8,请重新编辑!"); + } + } + } + } }