Quellcode durchsuchen

修复公证处编码重复问题

gaoxinguang vor 2 Jahren
Ursprung
Commit
ae71abee7c

+ 2 - 2
eladmin-common/src/main/java/me/zhengjie/base/ResultCode.java

@@ -108,8 +108,8 @@ public enum ResultCode {
     SUCC_ALREADY_EXISTED(30050,"社会统一信用代码已存在,请确认输入是否正确!"),
     SUCC_NEED_INPUT(30051,"请输入社会统一信用代码!"),
     ORDER_OCR_SERVICE_UNAVAILABLE(30052,"订单扫描录入功能尚未开通,请联系平台开通后使用!"),
-    JOB_NO_ALREADY_EXISTS(30053,"此工号已存在,请重新输入!"),
-    
+    JOB_NO_ALREADY_EXISTS(30053,"此工号已存在,请重新输入"),
+    NOTARY_OFFICE_CODE_ALREADY_EXISTS(30054,"公证处编码已存在!"),
     /* 系统错误:40001-49999 */
     SYSTEM_INNER_ERROR(40001, "系统繁忙,请稍后重试"),
     UPLOAD_ERROR(40002, "系统异常,上传文件失败"),

+ 9 - 0
eladmin-system/src/main/java/me/zhengjie/application/admin/service/impl/NotaryOfficeServiceImpl.java

@@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
 import me.zhengjie.base.config.AppConfigInfo;
 import me.zhengjie.base.util.ApplicationContextUtil;
+import me.zhengjie.dao.mybatis.NotaryOfficeRepository;
 import me.zhengjie.dao.mybatis.entity.SysUserEntity;
 import me.zhengjie.base.AppBaseResponse;
 import me.zhengjie.base.AppResultData;
@@ -73,6 +74,9 @@ public class NotaryOfficeServiceImpl extends ServiceImpl<NotaryOfficeMapper, Not
 	@Autowired
 	private CFCACertUtil cfcaCertUtil;
 
+	@Autowired
+	private NotaryOfficeRepository notaryOfficeRepository;
+
 	/**
 	 * 查询公证处信息
 	 * 
@@ -221,11 +225,16 @@ public class NotaryOfficeServiceImpl extends ServiceImpl<NotaryOfficeMapper, Not
 	@Override
 	public AppBaseResponse create(NotaryOfficeCreateReq req) {
 		AppBaseResponse response = new AppBaseResponse();
+		if (notaryOfficeRepository.getNotaryOfficeByNameAndCode(req.getName(), req.getNotaryOfficeCode()) != null) {
+			response.fail(ResultCode.NOTARY_OFFICE_CODE_ALREADY_EXISTS);
+			return response;
+		}
 		NotaryOfficeEntity entity = NotaryOfficeEntity.builder().areaCodesStr(req.getAreaCodesStr())
 				.areaCodeStr(req.getAreaCodeStr()).areaCode(req.getAreaCode()).name(req.getName())
 				.subjectColor(req.getSubjectColor()).imageId(req.getImageId()).address(req.getAddress()).phone(req.getPhone())
 				.notaryOfficeCode(req.getNotaryOfficeCode())
 				.createTime(LocalDateTime.now()).build();
+
 		int insert = notaryOfficeMapper.insert(entity);
 		if (insert == 0) {
 			response.fail(ResultCode.DATA_INSERT_ERROR);

+ 30 - 0
eladmin-system/src/main/java/me/zhengjie/dao/mybatis/NotaryOfficeRepository.java

@@ -0,0 +1,30 @@
+package me.zhengjie.dao.mybatis;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import lombok.RequiredArgsConstructor;
+import me.zhengjie.dao.mybatis.entity.NotaryOfficeEntity;
+import me.zhengjie.dao.mybatis.mapper.NotaryOfficeMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
+
+@RequiredArgsConstructor
+@Repository
+public class NotaryOfficeRepository {
+
+    @Autowired
+    private final NotaryOfficeMapper notaryOfficeMapper;
+
+    /**
+     * 根据业务编号获取主订单
+     *
+     * @param name 公证处名称
+     * @param notaryOfficeCode 公证处编码
+     * @return 公证处实体
+     */
+    public NotaryOfficeEntity getNotaryOfficeByNameAndCode(String name, String notaryOfficeCode) {
+        QueryWrapper<NotaryOfficeEntity> qw = new QueryWrapper<>();
+        qw.eq("name", name);
+        qw.eq("notary_office_code", notaryOfficeCode);
+        return notaryOfficeMapper.selectOne(qw);
+    }
+}