From c0c75703071327c172f9dfbe14f2ca47abfa10a5 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期二, 07 十一月 2023 10:35:57 +0800
Subject: [PATCH] bug列表158(所有规则增加前缀、后缀属性,并在申请编码时进行前后缀拼接)修复;集成系统信息管理,创建修改删除,同步到用户的账号创建、删除、修改操作。

---
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemServiceImpl.java |   48 +++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 43 insertions(+), 5 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 2472e27..1186d51 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
@@ -16,10 +16,17 @@
 import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
 import com.vci.ubcs.starter.util.MdmBtmTypeConstant;
 import com.vci.ubcs.starter.web.util.VciBaseUtil;
+import com.vci.ubcs.system.user.entity.User;
+import com.vci.ubcs.system.user.enums.UserEnum;
+import com.vci.ubcs.system.user.enums.UserStatus;
+import com.vci.ubcs.system.user.feign.IUserClient;
 import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.core.tool.utils.Func;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
 import java.util.*;
@@ -52,28 +59,54 @@
 	 */
 	@Autowired
 	private RevisionModelUtil revisionModelUtil;
-	@Override
-	public boolean addSave(DockingSystemDTO dockingSystemDTO) {
 
+	/**
+	 * 鐢ㄦ埛鏈嶅姟
+	 */
+	@Autowired
+	private IUserClient userClient;
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public boolean addSave(DockingSystemDTO dockingSystemDTO) {
 		VciBaseUtil.alertNotNull(dockingSystemDTO, "闇�瑕佹坊鍔犵殑鏁版嵁瀵硅薄");
 		//灏咲TO杞崲涓篋O
 		DockingSystem dockingSystem = Objects.requireNonNull(BeanUtil.copy(dockingSystemDTO, DockingSystem.class));
-		String userId = AuthUtil.getUserId().toString();
 		DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingSystem, MdmBtmTypeConstant.SYS_INT_BASE);
 		dockingSystem.setLctid(CODE_RULE_LC);
 		dockingSystem.setLcStatus(FRAMEWORK_RELEASE_EDITING);
-		return dockingSystemMapper.insert(dockingSystem)>0;
+		boolean resInsert = dockingSystemMapper.insert(dockingSystem) > 0;
+		if (!resInsert) {
+			return false;
+		}
+		// 淇濆瓨鐢ㄦ埛
+		User user = new User(
+			UserEnum.WEB.getCategory(),
+			dockingSystem.getId().toLowerCase(Locale.ROOT),
+			Func.md5Hex(dockingSystem.getId()),
+			dockingSystem.getName(),
+			dockingSystem.getName(),
+			UserStatus.Enable.getValue()
+		);
+		resInsert = userClient.saveUser(user).isSuccess();
+		return resInsert;
 	}
+
 	/**
 	 * 淇敼 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭�
 	 * @param dockingSystemDTO 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞�
 	 * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
 	 */
 	@Override
+	@Transactional(rollbackFor = Exception.class)
 	public DockingSystemVO editSave(DockingSystemDTO dockingSystemDTO) {
 		VciBaseUtil.alertNotNull(dockingSystemDTO,"鏁版嵁瀵硅薄",dockingSystemDTO.getOid(),"绯荤粺闆嗘垚鐨勭郴缁熶俊鎭富閿�");
 		//灏咲TO杞崲涓篋O
 		DockingSystem dockingSystem = dockingSystemMapper.selectById(dockingSystemDTO.getOid());
+		// 绯荤粺缂栧彿鏇存敼鏃惰处鍙蜂篃闇�瑕佽繘琛屾洿鏀�
+		if(!dockingSystemDTO.getId().equals(dockingSystem.getId())){
+			userClient.updateUserByAccount(dockingSystem.getId(),dockingSystemDTO.getId().toLowerCase(Locale.ROOT));
+		}
 		revisionModelUtil.copyFromDTOIgnore(dockingSystemDTO,dockingSystem);
 		DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingSystem);
 		dockingSystemMapper.updateById(dockingSystem);
@@ -87,6 +120,7 @@
 	 * @throws VciBaseException
 	 */
 	@Override
+	@Transactional(rollbackFor = Exception.class)
 	public boolean deleteDataById(String oids) throws VciBaseException {
 		String message="";
 		try {
@@ -109,11 +143,15 @@
 			if(errorMap.size()>0){
 				throw  new Throwable(errorMap.getOrDefault("error",""));
 			}
-			return	dockingSystemMapper.deleteBatchIds(VciBaseUtil.str2List(oids))>0;
+			// 淇敼闆嗘垚绯荤粺淇℃伅绠$悊鐨勭敤鎴蜂负鍒犻櫎鐘舵�佺敤鎴�
+			String accounts = dockingSystemList.stream().map(DockingSystem::getId).collect(Collectors.joining(","));
+			userClient.updateStatusByAccount(accounts,"1");
+			return dockingSystemMapper.deleteBatchIds(VciBaseUtil.str2List(oids))>0;
 		}catch (Throwable e){
 			e.printStackTrace();
 			throw  new VciBaseException(e.getMessage());
 
 		}
 	}
+
 }

--
Gitblit v1.9.3