From 7a171b5193feef1d201b7d273b64ba2aebaddcda Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 26 六月 2024 18:22:01 +0800
Subject: [PATCH] 成员管理:分配角色、分配部门、分配部门界面查询、角色角色界面查询等接口添加

---
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/OrgDeptQueryServiceImpl.java |   35 +++++++++++++++++++----------------
 1 files changed, 19 insertions(+), 16 deletions(-)

diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/OrgDeptQueryServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/OrgDeptQueryServiceImpl.java
index 7a92d79..3d433a9 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/OrgDeptQueryServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/OrgDeptQueryServiceImpl.java
@@ -424,37 +424,40 @@
 
 	/**
 	 * 淇濆瓨閮ㄩ棬瑙掕壊鍏宠仈淇℃伅锛屽甫鏌ラ噸鍔熻兘
-	 * @param userId 鐢ㄦ埛id
-	 * @param deptIds 閮ㄩ棬id
+	 * @param userOIds 鐢ㄦ埛id
+	 * @param deptId 閮ㄩ棬id
 	 * @return
 	 */
 	@Override
 	@Transactional(rollbackFor = Exception.class)
-	public boolean saveUserDepts(String userId, List<String> deptIds) throws PLException {
-		if(Func.isBlank(userId) || Func.isEmpty(deptIds)){
+	public boolean saveUsersDept(String[] userOIds, String deptId) throws PLException {
+		if(Func.isEmpty(userOIds) || Func.isBlank(deptId)){
 			return false;
 		}
-		List<String> repeatDeptOidList = new ArrayList<>();
+		//鍏堣繘鎬ф煡閲嶅鐞�
+		List<String> repeatUserOidList = new ArrayList<>();
 		//寰幆杩涜鏌ラ噸锛岄伩鍏峣n澶т簬1000
-		WebUtil.switchCollectionForOracleIn(deptIds).stream().forEach(deptoids->{
-			String sql = "select pluseruid,pldeptuid from pluserdept where pluseruid = " + userId
-					+ " and " + "pldeptuid in ("+WebUtil.toInSql(deptoids.toArray(new String[0]))+")";
+		WebUtil.switchCollectionForOracleIn(Arrays.asList(userOIds)).stream().forEach(userOId->{
+			String sql = "select pluseruid,pldeptuid from pluserdept where pldeptuid = '" + deptId
+					+ "' and " + "pluseruid in ("+WebUtil.toInSql(userOId.toArray(new String[0]))+")";
 			List<BusinessObject> cbos = boService.queryBySql(sql, null);
 			if(!CollectionUtils.isEmpty(cbos)){
 				cbos.stream().forEach(cbo->{
-					repeatDeptOidList.add(ObjectTool.getNewBOAttributeValue(cbo,"pldeptuid"));
+					repeatUserOidList.add(ObjectTool.getNewBOAttributeValue(cbo,"pluseruid"));
 				});
 			}
-
 		});
-		//浠庡嵆灏嗚鎵ц淇濆瓨鐨勯儴闂╫id涓Щ闄ゅ綋鍓嶇敤鎴峰凡缁忓瓨鍦ㄥ叧鑱斿叧绯荤殑鐨勯儴闂╫id
-		deptIds.removeAll(repeatDeptOidList);
-		if(Func.isNotEmpty(deptIds)){
-			for (String deptId : deptIds){
-				platformClientUtil.getFrameworkService().saveUserDept(new String[]{userId}, deptId,null);
-			}
+
+		//浠庡嵆灏嗚鎵ц淇濆瓨鐨勭敤鎴穙id涓Щ闄ゅ綋鍓嶇敤鎴峰凡缁忓瓨鍦ㄥ叧鑱斿叧绯荤殑oid
+		//绉婚櫎閲嶅鐨�
+		List<String> tempList = new ArrayList<>(Arrays.asList(userOIds));
+		tempList.removeAll(repeatUserOidList);
+		userOIds = tempList.toArray(new String[tempList.size()]);
+		if(Func.isNotEmpty(userOIds)){
+			platformClientUtil.getFrameworkService().saveUserDept(userOIds, deptId,null);
 		}
 		return true;
 	}
 
+
 }

--
Gitblit v1.9.3