From 12ada3a7e6680d5ab92901410e3cedd9b8077e56 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期六, 16 十二月 2023 17:08:46 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ycl-platform/src/main/java/com/ycl/timer/GetDingUserOrgTimer.java | 108 +++++++++++++++++++++++++++++------------------------- 1 files changed, 58 insertions(+), 50 deletions(-) diff --git a/ycl-platform/src/main/java/com/ycl/timer/GetDingUserOrgTimer.java b/ycl-platform/src/main/java/com/ycl/timer/GetDingUserOrgTimer.java index 03f510e..dc42646 100644 --- a/ycl-platform/src/main/java/com/ycl/timer/GetDingUserOrgTimer.java +++ b/ycl-platform/src/main/java/com/ycl/timer/GetDingUserOrgTimer.java @@ -33,10 +33,7 @@ import org.springframework.transaction.annotation.Transactional; import java.time.LocalDateTime; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; -import java.util.Set; +import java.util.*; @Slf4j @@ -72,52 +69,56 @@ @Autowired private UmsAdminRoleRelationService umsAdminRoleRelationService; - //@Scheduled(cron = "0 50 15 * * ?") + @Scheduled(cron = "40 50 16 * * ?") @Transactional(rollbackFor = Exception.class) public void run() { log.info("寮�濮嬪悓姝ヤ换鍔�"); //鑾峰彇鍏ㄩ儴閮ㄩ棬code JSONObject topObj = dingCommon.getBookAuthority(); //椤剁骇閮ㄩ棬id + log.info("閮ㄩ棬code------------>{}",topObj.toJSONString()); JSONArray deptTopArr = topObj.getJSONArray("deptVisibleScopes"); List<UmsDepart> dingOrgList = dingCommon.getOrgInfo(deptTopArr); //鏌ヨ鏁版嵁搴撲腑鐨勯儴闂� List<UmsDepart> dataOrgList = umsDepartService.list(); - Iterator<UmsDepart> removeIterOrg = dingOrgList.iterator(); - while (removeIterOrg.hasNext()) { - UmsDepart dingOrg = removeIterOrg.next(); - if (dingOrg.getCode().equals(deptTopArr.getString(0))) { - dingOrg.setParentId(0L); - } - //鍒ゆ柇 - for (UmsDepart org : dataOrgList) { - if (ObjectUtil.equals(org.getId(), dingOrg.getId()) && ObjectUtil.equals(org.getDepartName(), dingOrg.getDepartName()) && ObjectUtil.equals(org.getParentId(), dingOrg.getParentId())) { - removeIterOrg.remove(); + if(CollectionUtils.isNotEmpty(dingOrgList)) { + Iterator<UmsDepart> removeIterOrg = dingOrgList.iterator(); + while (removeIterOrg.hasNext()) { + UmsDepart dingOrg = removeIterOrg.next(); + if (dingOrg.getCode().equals(deptTopArr.getString(0))) { + dingOrg.setParentId(0L); + } + //鍒ゆ柇 + for (UmsDepart org : dataOrgList) { + if (ObjectUtil.equals(org.getId(), dingOrg.getId()) && ObjectUtil.equals(org.getDepartName(), dingOrg.getDepartName()) && ObjectUtil.equals(org.getParentId(), dingOrg.getParentId())) { + removeIterOrg.remove(); + } } } + //姝ゆ椂 dingOrgList 涓墿涓嬬殑灏辨槸鏂扮殑缁勭粐鏈烘瀯浜嗐�� + dingOrgList.forEach(dingOrg -> { + if (dingOrg.getCode().equals(deptTopArr.getString(0))) { + dingOrg.setParentId(0L); + } + //umsDepartService.fillPids(dingOrg); + dingOrg.setStatus((short) 1); + umsDepartService.saveOrUpdate(dingOrg); + }); } - //姝ゆ椂 dingOrgList 涓墿涓嬬殑灏辨槸鏂扮殑缁勭粐鏈烘瀯浜嗐�� - dingOrgList.forEach(dingOrg -> { - if (dingOrg.getCode().equals(deptTopArr.getString(0))) { - dingOrg.setParentId(0L); - } - //umsDepartService.fillPids(dingOrg); - dingOrg.setStatus((short) 1); - umsDepartService.saveOrUpdate(dingOrg); - }); - // log.info(TAG + "update organization size " + dingOrgList.size()); TimeInterval timer = DateUtil.timer(); /** // * 鏍规嵁缁勭粐code 鏌ヨ 閫氳褰曚汉鍛樹俊鎭� // */ - Set<DingUserInfo> dingList = dingCommon.getPersonInfoByOrgCode(); - //鏌ヨ鎵�鏈夌敤鎴� - List<UmsAdmin> userList = umsAdminService.list(); //鏌ヨ鐢ㄦ埛缁勭粐鍏宠仈琛� List<UmsDepartManage> empOrgList = departManageService.list(); - Iterator<DingUserInfo> iterator = dingList.iterator(); + //鏌ヨ鎵�鏈夌敤鎴� + Set<DingUserInfo> dingList = dingCommon.getPersonInfoByOrgCode(); + Set<DingUserInfo> dingUsers = new HashSet<>(dingList); + log.info("dinglistStart----->{}",dingList); + List<UmsAdmin> userList = umsAdminService.list(); + Iterator<DingUserInfo> iterator = dingUsers.iterator(); while (iterator.hasNext()) { DingUserInfo dingUserInfo = iterator.next(); //鍒ゆ柇鐢ㄦ埛鏄惁瀛樺湪锛岃緭鍑烘柊鐢ㄦ埛 @@ -135,9 +136,12 @@ } } } + + + log.info("dinglistEnd----->{}",dingUsers); ArrayList<UmsAdminRoleRelation> relations = new ArrayList<>(); // log.info(TAG + " elapsed time:" + timer.interval()); - for (DingUserInfo dingUserInfo : dingList) { + for (DingUserInfo dingUserInfo : dingUsers) { //1.娣诲姞鐢ㄦ埛 UmsAdmin user = new UmsAdmin(); //璐﹀彿 @@ -149,6 +153,9 @@ user.setNickName(dingUserInfo.getEmployeeName()); } //code + //accountId + log.info("鍛樺伐璐︽埛id{}",dingUserInfo.getAccountId()); + user.setAccountId(dingUserInfo.getAccountId()); //澶村儚 user.setIcon(dingUserInfo.getGovEmpAvatar()); //濮撳悕 @@ -166,27 +173,28 @@ //鐘舵�佷负鍋滅敤锛堜笉鍙敤鐘舵�侊級鐐瑰嚮鐧诲綍鍚庢墠鑳戒娇鐢� user.setStatus(1); umsAdminService.save(user); - //鍛樺伐淇℃伅锛屽叧鑱旂粍缁� - UmsDepartManage departManage = new UmsDepartManage(); - departManage.setDepartId(dingUserInfo.getOrgId()); - departManage.setIsLeader(0); - departManage.setUserId(dingUserInfo.getUserId()); - departManageService.saveOrUpdate(departManage); - //瑙掕壊淇℃伅 - List<String> roleCode = dingUserInfo.getRoleCodeList(); - if (CollectionUtils.isNotEmpty(roleCode)) { - List<UmsRole> roleList = roleService.getRoleListByCodes(roleCode); - roleList.forEach(item -> { - UmsAdminRoleRelation relation = new UmsAdminRoleRelation(); - relation.setAdminId(dingUserInfo.getUserId()); - relation.setRoleId(item.getId()); - relations.add(relation); - }); - } +// //鍛樺伐淇℃伅锛屽叧鑱旂粍缁� +// UmsDepartManage departManage = new UmsDepartManage(); +// departManage.setDepartId(dingUserInfo.getOrgId()); +// departManage.setIsLeader(0); +// departManage.setUserId(dingUserInfo.getUserId()); +// departManageService.saveOrUpdate(departManage); +// //瑙掕壊淇℃伅 +// List<String> roleCode = dingUserInfo.getRoleCodeList(); +// if (CollectionUtils.isNotEmpty(roleCode)) { +// List<UmsRole> roleList = roleService.getRoleListByCodes(roleCode); +// roleList.forEach(item -> { +// UmsAdminRoleRelation relation = new UmsAdminRoleRelation(); +// relation.setAdminId(dingUserInfo.getUserId()); +// relation.setRoleId(item.getId()); +// relations.add(relation); +// }); +// } +// } +// if (CollUtil.isNotEmpty(relations)) { +// umsAdminRoleRelationService.saveBatch(relations, IService.DEFAULT_BATCH_SIZE); } - if (CollUtil.isNotEmpty(relations)) { - umsAdminRoleRelationService.saveBatch(relations, IService.DEFAULT_BATCH_SIZE); - } + log.info("鍚屾浠诲姟缁撴潫"); // log.info(TAG + "update user size " + dingList.size()); // getEmployeeAvatar(); } -- Gitblit v1.8.0