From 388daad59d20da84118067593fc88a89e3f8c9d8 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期五, 07 七月 2023 17:59:50 +0800
Subject: [PATCH] 主题库7-7完善发现bug
---
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java | 68 ++++++++++++++++++---------------
1 files changed, 37 insertions(+), 31 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 03f8eaf..f2b24c1 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
@@ -4,35 +4,28 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.vci.ubcs.omd.constant.OmdCacheConstant;
import com.vci.ubcs.omd.dto.AttributeDTO;
import com.vci.ubcs.omd.dto.BtmTypeLinkAttributesDTO;
import com.vci.ubcs.omd.entity.Attribute;
import com.vci.ubcs.omd.entity.BtmType;
-import com.vci.ubcs.omd.entity.BtmTypeAttribute;
import com.vci.ubcs.omd.mapper.AttributeMapper;
-import com.vci.ubcs.omd.mapper.BtmTypeMapper;
import com.vci.ubcs.omd.service.IAttributeService;
import com.vci.ubcs.omd.vo.AttributeVO;
import com.vci.ubcs.omd.vo.BtmTypeVO;
import com.vci.ubcs.omd.wrapper.AttributeWrapper;
import com.vci.ubcs.omd.wrapper.BtmTypeWrapper;
import com.vci.ubcs.starter.exception.VciBaseException;
-import com.vci.ubcs.starter.util.Map2MPJLambdaUtil;
import com.vci.ubcs.starter.web.constant.OmdRegExpConstant;
import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum;
import com.vci.ubcs.starter.web.util.VciBaseUtil;
import org.springblade.core.cache.utils.CacheUtil;
import org.springblade.core.log.exception.ServiceException;
-import org.springblade.core.tool.constant.BladeConstant;
-import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
-import javax.annotation.Resource;
import javax.validation.constraints.NotEmpty;
import java.util.ArrayList;
import java.util.Collection;
@@ -52,9 +45,6 @@
public class AttributeServiceImpl extends ServiceImpl<AttributeMapper, Attribute> implements IAttributeService {
private final String REGEXP = "^[A-Za-z]+$";
-
- @Resource
- private BtmTypeMapper btmTypeMapper;
@Override
public boolean deleteLogic(@NotEmpty List<Long> ids) {
@@ -86,29 +76,34 @@
*/
@Override
public boolean submit(AttributeDTO dto) {
- if (Pattern.compile(REGEXP).matcher(dto.getId()).matches()){
- throw new VciBaseException("灞炴�у悕绉皗0}鍙兘鏄嫳鏂�",new Object[]{dto.getId()});
+ 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.getId())) ? wrapper : wrapper.notIn(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("灞炴�у悕宸插瓨鍦�!");
+ throw new ServiceException("灞炴�х紪鍙峰凡瀛樺湪!");
}
- Attribute omdAttribute = BeanUtil.copy(dto, Attribute.class);
+ Attribute attribute = AttributeWrapper.build().copyBeforeSave(dto);
CacheUtil.clear(OmdCacheConstant.ATTR_CACHE);
- return saveOrUpdate(omdAttribute);
+ return saveOrUpdate(attribute);
}
/**
* 鍒犻櫎
*
- * @param ids 涓婚敭闆嗗悎
+ * @param oids 涓婚敭闆嗗悎
* @return 鎵ц缁撴灉
*/
@Override
- public boolean removeAttrs(String ids) {
- List<Long> idList = Func.toLongList(ids);
- return !deleteLogic(idList) && removeByIds(idList);
+ public boolean removeAttrs(String oids) {
+ List<String> oidList = Func.toStrList(",", oids);
+ List<Attribute> list = list(Wrappers.<Attribute>query().lambda().in(Attribute::getOid, oidList));
+ if (!CollectionUtils.isEmpty(list)){
+ baseMapper.delete(Wrappers.<Attribute>query().lambda().in(Attribute::getOid,list.stream().map(Attribute::getOid).collect(Collectors.toList())));
+ }
+ return true;
}
/**
@@ -120,15 +115,10 @@
@Override
public List<BtmTypeVO> applyRange(String oid) {
List<BtmType> btmTypes = baseMapper.selectApplyRange(oid);
- if (!CollectionUtils.isEmpty(btmTypes)){
- return btmTypes.stream().map(btm -> {
- BtmTypeVO vo = new BtmTypeVO();
- vo.setId(btm.getId());
- vo.setName(btm.getName());
- return vo;
- }).collect(Collectors.toList());
+ if (CollectionUtils.isEmpty(btmTypes)){
+ return null;
}
- return null;
+ return BtmTypeWrapper.build().listEntityVO(btmTypes);
}
/**
@@ -144,7 +134,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});
@@ -173,7 +163,7 @@
}
/**
- * 鏍规嵁缂栧彿闆嗗悎鑾峰彇灞炴�ф暟鎹璞�
+ * 鏍规嵁缂栧彿闆嗗悎鑾峰彇灞炴�ф暟鎹璞�,鍏朵腑榛樿鐨勫睘鎬у簲褰撳墧闄�
* @param attributeIdCollection 灞炴�х殑缂栧彿闆嗗悎
* @return 灞炴�ф暟鎹璞″垪琛紝濡傛灉鏈変笉瀛樺湪鐨勪笉浼氳繑鍥烇紝鍏ㄩ儴涓嶅瓨鍦ㄧ殑鍒欒繑鍥炵┖鍒楄〃
* @throws VciBaseException mybatis鏌ヨ鍑洪敊鐨勬椂鍊欎細鎶涘嚭寮傚父
@@ -252,4 +242,20 @@
}
return pass;
}
+
+ /**
+ * 鍗曚釜鍒犻櫎
+ *
+ * @param oid 涓婚敭
+ * @return 鎵ц缁撴灉
+ */
+ @Override
+ public R remove(String oid) {
+ List<BtmTypeVO> vos = applyRange(oid);
+ if (CollectionUtils.isEmpty(vos)){
+ return R.status(removeAttrs(oid));
+ }else {
+ return R.fail("璇ュ睘鎬у凡琚娇鐢紝涓嶅厑璁稿垹闄�");
+ }
+ }
}
--
Gitblit v1.9.3