From 6ad31a5c3ff976f64cfdaccdd06717f8cb0acf1f Mon Sep 17 00:00:00 2001 From: zhaokai Date: Fri, 28 Nov 2025 14:50:52 +0800 Subject: [PATCH] =?UTF-8?q?=E9=83=A8=E9=97=A8=E6=A0=A1=E9=AA=8C=E5=90=8D?= =?UTF-8?q?=E5=AD=97=E6=98=AF=E5=90=A6=E9=87=8D=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/zcloud/basic/info/command/DepartmentAddExe.java | 8 ++++++-- .../info/persistence/repository/DepartmentRepository.java | 3 +++ .../repository/impl/DepartmentRepositoryImpl.java | 8 ++++++++ 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentAddExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentAddExe.java index a0fccca..96a7841 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentAddExe.java +++ b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentAddExe.java @@ -10,6 +10,7 @@ import com.zcloud.basic.info.domain.gateway.DepartmentSuperviseGateway; import com.zcloud.basic.info.domain.model.DepartmentE; import com.zcloud.basic.info.domain.model.DepartmentSuperviseE; import com.zcloud.basic.info.dto.DepartmentAddCmd; +import com.zcloud.basic.info.persistence.repository.DepartmentRepository; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; @@ -34,13 +35,16 @@ public class DepartmentAddExe { private final DepartmentGateway departmentGateway; private final DepartmentSuperviseGateway departmentSuperviseGateway; - private final DepartmentSuperviseCoConvertor departmentSuperviseCoConvertor; + private final DepartmentRepository departmentRepository; @Transactional(rollbackFor = Exception.class) public Long execute(DepartmentAddCmd cmd) { DepartmentE examTypeE = new DepartmentE(); - + //名字校验重复 + if (departmentRepository.existsByName(cmd.getName())) { + throw new BizException("部门名称已存在"); + } BeanUtils.copyProperties(cmd, examTypeE); Long id = null; try { diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/DepartmentRepository.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/DepartmentRepository.java index 1ce0541..99121c7 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/DepartmentRepository.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/DepartmentRepository.java @@ -6,6 +6,7 @@ import com.zcloud.basic.info.domain.model.DepartmentE; import com.zcloud.basic.info.persistence.dataobject.CorpInfoDO; import com.zcloud.basic.info.persistence.dataobject.DepartmentDO; +import javax.validation.constraints.NotEmpty; import java.util.List; import java.util.Map; @@ -33,5 +34,7 @@ public interface DepartmentRepository extends BaseRepository { List listAllTree(); + + boolean existsByName(@NotEmpty(message = "名称不能为空") String name); } diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/DepartmentRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/DepartmentRepositoryImpl.java index 1c71111..356417d 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/DepartmentRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/DepartmentRepositoryImpl.java @@ -123,5 +123,13 @@ public class DepartmentRepositoryImpl extends BaseRepositoryImpl listAllTree() { return departmentMapper.listAllTree(); } + + @Override + public boolean existsByName(String name) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("name", name); + queryWrapper.eq("corpinfo_id", AuthContext.getTenantId()); + return departmentMapper.selectCount(queryWrapper) > 0; + } }