From 6e5c3105e4921bf5e75c71351c27dfd345d45073 Mon Sep 17 00:00:00 2001
From: xiejun <xj@2023>
Date: 星期四, 08 六月 2023 16:02:50 +0800
Subject: [PATCH] 集成接口管理模块-系统管理删除接口添加

---
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemServiceImpl.java |   58 +++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 45 insertions(+), 13 deletions(-)

diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemServiceImpl.java
index 46a17e6..f71967b 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemServiceImpl.java
@@ -1,14 +1,18 @@
 package com.vci.ubcs.code.service.impl;
 
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.vci.ubcs.code.constant.MdmBtmTypeConstant;
 import com.vci.ubcs.code.dto.DockingSystemDTO;
 import com.vci.ubcs.code.entity.CodeRule;
 import com.vci.ubcs.code.entity.DockingSystem;
+import com.vci.ubcs.code.entity.DockingSystemConfig;
+import com.vci.ubcs.code.mapper.DockingSystemConfigMapper;
 import com.vci.ubcs.code.mapper.DockingSystemMapper;
 import com.vci.ubcs.code.service.IDockingSystemService;
 import com.vci.ubcs.code.vo.pagemodel.DockingSystemVO;
 import com.vci.ubcs.code.wrapper.DockingSystemWrapper;
+import com.vci.ubcs.starter.exception.VciBaseException;
 import com.vci.ubcs.starter.revision.service.RevisionModelUtil;
 import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
 import com.vci.ubcs.starter.web.util.VciBaseUtil;
@@ -17,8 +21,10 @@
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
 
-import java.util.Objects;
+import java.util.*;
+import java.util.stream.Collectors;
 
 import static com.vci.ubcs.code.constant.FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_EDITING;
 import static com.vci.ubcs.code.constant.MdmLifeCycleConstant.CODE_RULE_LC;
@@ -35,6 +41,12 @@
 	 */
 	@Autowired(required = false)
 	private  DockingSystemMapper dockingSystemMapper;
+
+	/***
+	 * 闆嗘垚绯荤粺绠$悊鏈嶅姟
+	 */
+	@Autowired(required = false)
+	private DockingSystemConfigMapper dockingSystemConfigMapper;
 
 	/**
 	 * 瀵硅薄鐨勬搷浣�
@@ -69,20 +81,40 @@
 		return DockingSystemWrapper.build().entityVO(dockingSystem);
 	}
 
+	/***
+	 * 鏍规嵁绯荤粺涓婚敭鍒犻櫎绯荤粺鍚嶇О
+	 * @param oids
+	 * @return
+	 * @throws VciBaseException
+	 */
 	@Override
-	public boolean delSystemData(DockingSystemDTO dockingSystemDTO) {
-		VciBaseUtil.alertNotNull(dockingSystemDTO,"绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹璞�",dockingSystemDTO.getOid(),"绯荤粺闆嗘垚鐨勭郴缁熶俊鎭殑涓婚敭");
-		/*DockingSystem dockingSystem = dockingSystemMapper.selectById(dockingSystemDTO.getOid());
-		BaseResult baseResult = checkIsCanDeleteForDO(sysIntBaseDTO,sysIntBaseDO);
-		if(baseResult.isSuccess()) {
+	public boolean deleteDataById(String oids) throws VciBaseException {
+		String message="";
+		try {
+			VciBaseUtil.alertNotNull(oids, "绯荤粺闆嗘垚鐨勭郴缁熶俊鎭殑涓婚敭");
+			List<DockingSystem> dockingSystemList = dockingSystemMapper.selectBatchIds(VciBaseUtil.str2List(oids));
+			Map<String/**绯荤粺oid**/, String/**绯荤粺鍚嶇О**/> systemNameMap = dockingSystemList.stream().collect(Collectors.toMap(s -> s.getOid(), t -> t.getName(),(o1, o2)->o2));
+			List<DockingSystemConfig> dockingSystemConfigList = dockingSystemConfigMapper.selectList(Wrappers.<DockingSystemConfig>query().lambda().in(DockingSystemConfig::getSourceSystemOid, VciBaseUtil.str2List(oids)));
+			Set<String> systemOidList=new HashSet<>();
+			Map<String,String> errorMap = new HashMap<>();
+			if (!CollectionUtils.isEmpty(dockingSystemConfigList)) {
+				dockingSystemConfigList.stream().forEach(dockingSystemConfig -> {
+					if(!systemOidList.contains(dockingSystemConfig.getSourceSystemOid())&&
+						systemNameMap.containsKey(dockingSystemConfig.getSourceSystemOid())){
+						String systemName=systemNameMap.get(dockingSystemConfig.getSourceSystemOid());
+						errorMap.put("error",errorMap.getOrDefault("error","") + ";"+systemName);
+					}
+					systemOidList.add(dockingSystemConfig.getSourceSystemOid());
+				});
+			}
+			if(errorMap.size()>0){
+				throw  new Throwable(errorMap.getOrDefault("error",""));
+			}
+			return	dockingSystemMapper.deleteBatchIds(VciBaseUtil.str2List(oids))>0;
+		}catch (Throwable e){
+			e.printStackTrace();
+			throw  new VciBaseException(e.getMessage());
 
-		}else{
-			return baseResult;
 		}
-		//鎵ц鍒犻櫎鎿嶄綔
-		BatchCBO batchCBO = sysIntBaseMapper.deleteByPrimaryKey(sysIntBaseDO.getOid());
-		return (batchCBO!=null && batchCBO.getDeleteCbos() !=null &&batchCBO.getDeleteCbos().size() > 0)?BaseResult.successMsg(DELETE_SUCCESS):BaseResult.fail(DELETE_FAIL);
-*/
-		return false;
 	}
 }

--
Gitblit v1.9.3