From 718c4cc47ad2e19f1d15ee81e98d8bf2fae84ba3 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期日, 28 一月 2024 15:40:22 +0800
Subject: [PATCH] 业务类型对象修改
---
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java | 36 +++++++++++++++++++++++-------------
1 files changed, 23 insertions(+), 13 deletions(-)
diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java
index 0ab7e08..143545b 100644
--- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java
@@ -27,10 +27,7 @@
import org.springframework.util.CollectionUtils;
import javax.validation.constraints.NotEmpty;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-import java.util.Set;
+import java.util.*;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
@@ -77,17 +74,30 @@
@Override
public boolean submit(AttributeDTO dto) {
VciBaseUtil.alertNotNull(dto.getId(),"灞炴�х紪鍙�",dto.getName(),"灞炴�у悕绉�",dto.getTypeKey(),"灞炴�х被鍨�",dto.getMaxLength(),"灞炴�ч暱搴�");
- if (!Pattern.compile(REGEXP).matcher(dto.getId()).matches()){
- throw new VciBaseException("灞炴�х紪鍙穥0}鍙兘鏄嫳鏂�",new Object[]{dto.getId()});
- }
- LambdaQueryWrapper<Attribute> wrapper = Wrappers.<Attribute>query().lambda().eq(Attribute::getId, dto.getId());
- Long count = baseMapper.selectCount((Func.isEmpty(dto.getOid())) ? wrapper : wrapper.notIn(Attribute::getOid, dto.getOid()));
- if (count > 0L) {
- throw new ServiceException("灞炴�х紪鍙峰凡瀛樺湪!");
+ String msg = checkAttributeId(dto.getId(),dto.getOid());
+ if (StringUtils.isNotBlank(msg)){
+ throw new VciBaseException(msg);
}
Attribute attribute = AttributeWrapper.build().copyBeforeSave(dto);
CacheUtil.clear(OmdCacheConstant.ATTR_CACHE);
return saveOrUpdate(attribute);
+ }
+
+ /**
+ * 鍏冩暟鎹殑ID鏍¢獙
+ * @param id 缂栧彿鍊�
+ * @param oid 鏁版嵁涓婚敭
+ * @return 鏍¢獙缁撴灉
+ */
+ private String checkAttributeId(String id, String oid) {
+ if (!Pattern.compile(REGEXP).matcher(id).matches()){
+ return "灞炴�х紪鍙�"+id+"鍙兘鏄嫳鏂�";
+ }
+ Long count = baseMapper.checkIdExist(id.toLowerCase(Locale.ROOT),oid);
+ if (count > 0L) {
+ return "灞炴�х紪鍙�"+id+"(涓嶅尯鍒嗗ぇ灏忓啓)宸插瓨鍦�!";
+ }
+ return null;
}
/**
@@ -134,7 +144,7 @@
if (CollectionUtils.isEmpty(existAttributeVOList)) {
throw new VciBaseException("浣跨敤鐨勫睘鎬ч兘鍦ㄧ郴缁熶腑涓嶅瓨鍦紝璇峰厛鏌ヨ瘉");
} else {
- Set<String> existAttributeOidSet = (existAttributeVOList.stream().collect(Collectors.toMap(s -> s.getId().toLowerCase().trim(), t -> t))).keySet();
+ Set<String> existAttributeOidSet = (existAttributeVOList.stream().collect(Collectors.toMap(s -> s.getId().trim(), t -> t))).keySet();
keyCollections.stream().forEach(s -> {
if (!existAttributeOidSet.contains(s)) {
throw new VciBaseException("浣跨敤鐨勫睘鎬0}鍦ㄧ郴缁熶腑涓嶅瓨鍦紝璇峰厛鏌ヨ瘉", new Object[]{s});
@@ -163,7 +173,7 @@
}
/**
- * 鏍规嵁缂栧彿闆嗗悎鑾峰彇灞炴�ф暟鎹璞�
+ * 鏍规嵁缂栧彿闆嗗悎鑾峰彇灞炴�ф暟鎹璞�,鍏朵腑榛樿鐨勫睘鎬у簲褰撳墧闄�
* @param attributeIdCollection 灞炴�х殑缂栧彿闆嗗悎
* @return 灞炴�ф暟鎹璞″垪琛紝濡傛灉鏈変笉瀛樺湪鐨勪笉浼氳繑鍥烇紝鍏ㄩ儴涓嶅瓨鍦ㄧ殑鍒欒繑鍥炵┖鍒楄〃
* @throws VciBaseException mybatis鏌ヨ鍑洪敊鐨勬椂鍊欎細鎶涘嚭寮傚父
--
Gitblit v1.9.3