From e78e0c039bce605844f2adedc08ac0c65a7c9b6f Mon Sep 17 00:00:00 2001 From: wyt <414651037@qq.com> Date: Wed, 3 Sep 2025 10:35:09 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=88=86=E7=BB=84=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=EF=BC=8C=E6=96=B0=E5=A2=9E=E5=90=8D=E7=A7=B0=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E6=A0=A1=E9=AA=8C=E4=BB=A5=E5=8F=8A=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/base/mapper/BasSheepGroupMapper.java | 5 +++++ .../base/service/impl/BasSheepGroupServiceImpl.java | 13 +++++++++++++ .../resources/mapper/base/BasSheepGroupMapper.xml | 6 ++++++ 3 files changed, 24 insertions(+) diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMapper.java index 52abe57..c14eb81 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMapper.java @@ -2,6 +2,7 @@ package com.zhyc.module.base.mapper; import com.zhyc.module.base.domain.BasSheepGroup; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -64,4 +65,8 @@ public interface BasSheepGroupMapper List selectLeafNodes(); + + // 新增方法:根据父节点和分组名称查询是否存在 + BasSheepGroup selectByParentIdAndGroupName(@Param("parentId") Long parentId, @Param("groupName") String groupName); + } diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupServiceImpl.java index 3d375b3..d67a55b 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupServiceImpl.java @@ -1,5 +1,6 @@ package com.zhyc.module.base.service.impl; +import com.zhyc.common.exception.ServiceException; import com.zhyc.common.utils.DateUtils; import com.zhyc.module.base.domain.BasSheepGroup; import com.zhyc.module.base.mapper.BasSheepGroupMapper; @@ -68,6 +69,12 @@ public class BasSheepGroupServiceImpl implements IBasSheepGroupService @Override public int insertBasSheepGroup(BasSheepGroup basSheepGroup) { + // ✅ 新增唯一性校验 + BasSheepGroup existing = basSheepGroupMapper.selectByParentIdAndGroupName( + basSheepGroup.getParentId(), basSheepGroup.getGroupName()); + if (existing != null) { + throw new ServiceException("同一分支下已存在该分组名称"); + } basSheepGroup.setCreateTime(DateUtils.getNowDate()); return basSheepGroupMapper.insertBasSheepGroup(basSheepGroup); } @@ -81,6 +88,12 @@ public class BasSheepGroupServiceImpl implements IBasSheepGroupService @Override public int updateBasSheepGroup(BasSheepGroup basSheepGroup) { + // ✅ 新增唯一性校验(排除当前记录) + BasSheepGroup existing = basSheepGroupMapper.selectByParentIdAndGroupName( + basSheepGroup.getParentId(), basSheepGroup.getGroupName()); + if (existing != null && !existing.getGroupId().equals(basSheepGroup.getGroupId())) { + throw new ServiceException("同一分支下已存在该分组名称"); + } basSheepGroup.setUpdateTime(DateUtils.getNowDate()); return basSheepGroupMapper.updateBasSheepGroup(basSheepGroup); } diff --git a/zhyc-module/src/main/resources/mapper/base/BasSheepGroupMapper.xml b/zhyc-module/src/main/resources/mapper/base/BasSheepGroupMapper.xml index 5f0aab6..bb0ff09 100644 --- a/zhyc-module/src/main/resources/mapper/base/BasSheepGroupMapper.xml +++ b/zhyc-module/src/main/resources/mapper/base/BasSheepGroupMapper.xml @@ -126,5 +126,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + \ No newline at end of file