From 7d1fc84fad2f4627eb855d44a86e3b7d0f90fe91 Mon Sep 17 00:00:00 2001 From: dxfeng Date: Fri, 18 Nov 2022 16:28:02 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=84=E7=BB=87=E6=9E=B6=E6=9E=84=E6=A0=91?= =?UTF-8?q?=E6=8E=92=E5=BA=8F=E3=80=81=E4=BA=BA=E5=91=98=E5=8D=A1=E7=89=87?= =?UTF-8?q?BUG=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/personnelcard/UserCard.java | 17 +++++++++--- .../personnelcard/PersonnelCardMapper.xml | 4 +-- .../thread/OrganizationSyncEc.java | 5 ++++ .../util/saveimport/OrgImportUtil.java | 26 ++++++++++++++++++- .../util/tree/SearchTreeUtil.java | 23 +++++++++------- 5 files changed, 59 insertions(+), 16 deletions(-) diff --git a/src/com/engine/organization/entity/personnelcard/UserCard.java b/src/com/engine/organization/entity/personnelcard/UserCard.java index c286cd50..f870ee66 100644 --- a/src/com/engine/organization/entity/personnelcard/UserCard.java +++ b/src/com/engine/organization/entity/personnelcard/UserCard.java @@ -27,10 +27,21 @@ public class UserCard { private String email; private String phone; private String belongTo; + private String accountType; private String status; - public String getBelongTo() { - return StringUtils.isBlank(belongTo) ? "主账号" : "次账号"; + public String getAccountType() { + if (StringUtils.isBlank(accountType)) { + return ""; + } + switch (accountType) { + case "0": + return "主账号"; + case "1": + return "次账号"; + default: + return ""; + } } public String getStatus() { @@ -43,7 +54,7 @@ public class UserCard { public String getImage() { weaver.hrm.User user = new weaver.hrm.User(); user.setLanguage(LanguageService.getDefaultLang()); - if(StringUtils.isNotBlank(image)&& image.contains("/")){ + if (StringUtils.isNotBlank(image) && image.contains("/")) { return image; } return FieldDefinedValueUtil.getFieldValue(user, ExtendInfoPO.builder().controlType(6).browserType("1").build(), image); diff --git a/src/com/engine/organization/mapper/personnelcard/PersonnelCardMapper.xml b/src/com/engine/organization/mapper/personnelcard/PersonnelCardMapper.xml index a9184400..1b19be40 100644 --- a/src/com/engine/organization/mapper/personnelcard/PersonnelCardMapper.xml +++ b/src/com/engine/organization/mapper/personnelcard/PersonnelCardMapper.xml @@ -8,7 +8,7 @@ - + @@ -33,7 +33,7 @@ sex, email, mobile, - belong_to, + account_type, status from jcl_org_hrmresource where id = #{id} diff --git a/src/com/engine/organization/thread/OrganizationSyncEc.java b/src/com/engine/organization/thread/OrganizationSyncEc.java index 16d97e93..36636eeb 100644 --- a/src/com/engine/organization/thread/OrganizationSyncEc.java +++ b/src/com/engine/organization/thread/OrganizationSyncEc.java @@ -225,6 +225,11 @@ public class OrganizationSyncEc { String oldName = oldJobPO.getJobName(); String newName = Util.null2String(params.get("job_name")); + if(newName.equals(oldName)){ + this.resultMap = new HashMap<>(); + this.resultMap.put("sign", "1"); + return; + } RecordInfo oldHrmJobTitle = getSystemDataMapper().getHrmJobTitleByName(oldName); Map map = new HashMap<>(); diff --git a/src/com/engine/organization/util/saveimport/OrgImportUtil.java b/src/com/engine/organization/util/saveimport/OrgImportUtil.java index cfda1908..07879d32 100644 --- a/src/com/engine/organization/util/saveimport/OrgImportUtil.java +++ b/src/com/engine/organization/util/saveimport/OrgImportUtil.java @@ -30,17 +30,35 @@ import java.util.stream.Collectors; */ public class OrgImportUtil { + /** + * 插入导入日志信息 + * + * @param importType + * @param operateType + * @param user + * @return + */ public static Long saveImportLog(String importType, String operateType, User user) { JclImportHistoryPO historyPO = JclImportHistoryPO.builder().operator((long) user.getUID()).operateTime(DateUtil.getFullDate()).clientAddress(user.getLoginip()).importType(importType).sourceFrom("excel").operateType(operateType).status("importing").build(); MapperProxyFactory.getProxy(JclImportHistoryMapper.class).insertHistory(historyPO); return historyPO.getId(); } + /** + * 插入导入日志详细信息 + * + * @param historyDetailPO + */ public static void saveImportDetailLog(JclImportHistoryDetailPO historyDetailPO) { - String detailMsg = "导入第" + historyDetailPO.getRowNums() + "行数据," + historyDetailPO.getRelatedName() + historyDetailPO.getOperateDetail(); + String relatedName = ""; + if (StringUtils.isNotBlank(historyDetailPO.getRelatedName())) { + relatedName = "[" + historyDetailPO.getRelatedName() + "]"; + } + String detailMsg = "导入第" + historyDetailPO.getRowNums() + "行数据," + relatedName + historyDetailPO.getOperateDetail(); historyDetailPO.setOperateDetail(detailMsg); MapperProxyFactory.getProxy(JclImportHistoryDetailMapper.class).insertHistoryDetail(historyDetailPO); } + /** * 转换存入数据库的值 */ @@ -97,6 +115,12 @@ public class OrgImportUtil { return object; } + /** + * 读取表格中的内容 + * + * @param cell + * @return + */ public static String getCellValue(XSSFCell cell) { String cellValue = ""; if (cell == null) diff --git a/src/com/engine/organization/util/tree/SearchTreeUtil.java b/src/com/engine/organization/util/tree/SearchTreeUtil.java index 7d235349..71eb06c5 100644 --- a/src/com/engine/organization/util/tree/SearchTreeUtil.java +++ b/src/com/engine/organization/util/tree/SearchTreeUtil.java @@ -35,7 +35,7 @@ public class SearchTreeUtil { // 排序,设置是否为叶子节点 List collect = treeList.stream().peek(item -> item.setIsParent(CollectionUtils.isNotEmpty(item.getSubs())) - ).sorted(Comparator.comparing(SearchTree::getOrderNum)).collect(Collectors.toList()); + ).collect(Collectors.toList()); if (CollectionUtils.isNotEmpty(collect)) { treeDatas.addAll(collect); } @@ -87,14 +87,16 @@ public class SearchTreeUtil { * @return */ public static List builderTreeMode(List treeList) { - List sortedList = treeList.stream().sorted(Comparator.comparing(SearchTree::getOrderNum)).collect(Collectors.toList()); - Map> collects = sortedList.stream().collect(Collectors.groupingBy(TreeNode::getPid)); + Map> collects = treeList.stream().collect(Collectors.groupingBy(TreeNode::getPid)); Set leafIds = new HashSet<>(); - List collect = sortedList.stream().peek(e -> { - e.setSubs(collects.get(e.getId())); - leafIds.add(e.getId()); - if (CollectionUtils.isNotEmpty(e.getSubs())) { - e.setIsParent(true); + List collect = treeList.stream().peek(e -> { + if (null != collects && CollectionUtils.isNotEmpty(collects.get(e.getId()))) { + List nodes = collects.get(e.getId()).stream().sorted(Comparator.comparing(item -> null == item.getOrderNum() ? 0 : item.getOrderNum())).collect(Collectors.toList()); + e.setSubs(nodes); + leafIds.add(e.getId()); + if (CollectionUtils.isNotEmpty(e.getSubs())) { + e.setIsParent(true); + } } }).collect(Collectors.toList()); return collect.stream().filter(item -> !leafIds.contains(item.getPid())).collect(Collectors.toList()); @@ -113,13 +115,14 @@ public class SearchTreeUtil { boolean isAdd = !childMap.isEmpty(); Set leafIds = new HashSet<>(); List collect = treeList.stream().peek(e -> { - Set treeNodes = new HashSet<>(); + Set treeNodes = new LinkedHashSet<>(); List nodes = parentMap.get(e.getId()); if (CollectionUtils.isNotEmpty(nodes)) { treeNodes.addAll(nodes); } if (isAdd && CollectionUtils.isNotEmpty(childMap.get(e.getId()))) { - treeNodes.addAll(childMap.get(e.getId())); + List searchTrees = childMap.get(e.getId()).stream().sorted(Comparator.comparing(SearchTree::getOrderNum)).collect(Collectors.toList()); + treeNodes.addAll(searchTrees); } if (CollectionUtils.isNotEmpty(e.getSubs())) { treeNodes.addAll(e.getSubs());