From fe668c37e7c36a85c1d650ba36fbcf4dddd0049e Mon Sep 17 00:00:00 2001 From: dxfeng Date: Mon, 19 Sep 2022 13:27:50 +0800 Subject: [PATCH] =?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 --- src/com/api/browser/service/impl/JobBrowserService.java | 3 ++- src/com/engine/organization/entity/job/bo/JobBO.java | 2 ++ src/com/engine/organization/mapper/job/JobMapper.java | 8 ++++++++ src/com/engine/organization/mapper/job/JobMapper.xml | 6 ++++++ .../service/impl/ImportCommonServiceImpl.java | 2 +- .../engine/organization/service/impl/JobServiceImpl.java | 9 +++++---- 6 files changed, 24 insertions(+), 6 deletions(-) diff --git a/src/com/api/browser/service/impl/JobBrowserService.java b/src/com/api/browser/service/impl/JobBrowserService.java index 85776d49..4cb16406 100644 --- a/src/com/api/browser/service/impl/JobBrowserService.java +++ b/src/com/api/browser/service/impl/JobBrowserService.java @@ -63,7 +63,8 @@ public class JobBrowserService extends BrowserService { searchTreeParams.setId(idArray[1]); Map searchTree = new JobServiceImpl().getSearchTree(searchTreeParams); List datas = (List) searchTree.get("datas"); - nodeData.addAll(datas.get(0).getSubs()); + TreeNode treeNode = datas.stream().filter(item -> idArray[1].equals(item.getId())).findFirst().orElse(new TreeNode()); + nodeData.addAll(treeNode.getSubs()); } } List cusBrowserTrees = CusBowserTreeBO.convertSearchTreeToBorwserTree(nodeData); diff --git a/src/com/engine/organization/entity/job/bo/JobBO.java b/src/com/engine/organization/entity/job/bo/JobBO.java index 652f10e9..1bb1486d 100644 --- a/src/com/engine/organization/entity/job/bo/JobBO.java +++ b/src/com/engine/organization/entity/job/bo/JobBO.java @@ -98,6 +98,8 @@ public class JobBO { Map> collects = dtoList.stream().filter(item -> null != item.getParentJob() && 0 != item.getParentJob()).collect(Collectors.groupingBy(JobListDTO::getParentJob)); // 处理被引用数据 List usedIds = MapperProxyFactory.getProxy(JobMapper.class).listUsedId(); + // 兼容不同类型 + usedIds.addAll(MapperProxyFactory.getProxy(JobMapper.class).getCusJobIds()); List collect = Arrays.stream(String.join(",", usedIds).split(",")).collect(Collectors.toList()); return dtoList.stream().peek(e -> { List childList = collects.get(e.getId()); diff --git a/src/com/engine/organization/mapper/job/JobMapper.java b/src/com/engine/organization/mapper/job/JobMapper.java index 50d8c9b0..f5dbbab8 100644 --- a/src/com/engine/organization/mapper/job/JobMapper.java +++ b/src/com/engine/organization/mapper/job/JobMapper.java @@ -136,6 +136,14 @@ public interface JobMapper { */ List listUsedId(); + /** + * EC人员使用的聚才林岗位 + * @return + */ + List getCusJobIds(); + + + /** * 获取最大排序 * diff --git a/src/com/engine/organization/mapper/job/JobMapper.xml b/src/com/engine/organization/mapper/job/JobMapper.xml index 208ef6a6..66ab906b 100644 --- a/src/com/engine/organization/mapper/job/JobMapper.xml +++ b/src/com/engine/organization/mapper/job/JobMapper.xml @@ -540,6 +540,12 @@ and t.id != #{id} + and ifnull(parent_job,0) = diff --git a/src/com/engine/organization/service/impl/ImportCommonServiceImpl.java b/src/com/engine/organization/service/impl/ImportCommonServiceImpl.java index 50ed7392..83da6057 100644 --- a/src/com/engine/organization/service/impl/ImportCommonServiceImpl.java +++ b/src/com/engine/organization/service/impl/ImportCommonServiceImpl.java @@ -815,7 +815,7 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ saveImportDetailLog(historyDetailPO); continue nextRow; } - if (StringUtils.isNotBlank(cellValue) && StringUtils.isBlank(Util.null2String(reallyValue)) && !"parent_comp".equals(infoPO.getFieldName())) { + if (StringUtils.isNotBlank(cellValue) && StringUtils.isBlank(Util.null2String(reallyValue)) && !"ec_company".equals(infoPO.getFieldName())) { historyDetailPO.setOperateDetail(infoPO.getFieldNameDesc() + "数据转换失败,未找到对应数据"); historyDetailPO.setStatus("0"); saveImportDetailLog(historyDetailPO); diff --git a/src/com/engine/organization/service/impl/JobServiceImpl.java b/src/com/engine/organization/service/impl/JobServiceImpl.java index 6d540d4c..71df6806 100644 --- a/src/com/engine/organization/service/impl/JobServiceImpl.java +++ b/src/com/engine/organization/service/impl/JobServiceImpl.java @@ -539,11 +539,11 @@ public class JobServiceImpl extends Service implements JobService { // 人员信息变动,更新分部、部门、岗位 RecordSet rs = new RecordSet(); - rs.executeUpdate("SELECT ID FROM CUS_FIELDDATA WHERE SCOPEID =-1 AND FIELD100002 = ?", jobById.getId()); + rs.execute("SELECT ID FROM CUS_FIELDDATA WHERE SCOPE = 'HrmCustomFieldByInfoType' AND SCOPEID =-1 AND FIELD100002 = '" + jobById.getId() + "'"); while (rs.next()) { long userId = Long.parseLong(Util.null2String(rs.getString("ID"))); // 更新岗位 、岗位更新触发器 - rs.executeUpdate("update CUS_FIELDDATA set FIELD100002 = ? where SCOPEID =-1 and id = ", targetJob.getId(), userId); + rs.executeUpdate("update CUS_FIELDDATA set FIELD100002 = ? where SCOPE = 'HrmCustomFieldByInfoType' AND SCOPEID =-1 and id = ?", targetJob.getId(), userId); CusFieldDataTrigger.run(userId); // 更新人员组织架构图 } @@ -569,13 +569,14 @@ public class JobServiceImpl extends Service implements JobService { job.setParentDept(parentDepartment); job.setEcDepartment(ecDepartment); job.setParentJob(parentJob); + getJobMapper().updateBaseJob(job); // 更新人员信息 RecordSet rs = new RecordSet(); - rs.executeUpdate("SELECT ID FROM CUS_FIELDDATA WHERE SCOPEID =-1 AND FIELD100002 = ?", job.getId()); + rs.execute("SELECT ID FROM CUS_FIELDDATA WHERE SCOPE = 'HrmCustomFieldByInfoType' AND SCOPEID =-1 AND FIELD100002 = '" + job.getId() + "'"); while (rs.next()) { long userId = Long.parseLong(Util.null2String(rs.getString("ID"))); // 更新人员分部、部门 - rs.executeUpdate("UPDATE HRMRESOURCE SET SUBCOMPANYID1 = ? , DEPARTMENTID = ? WHERE ID =? ", ecCompany, ecDepartment, userId); + // rs.executeUpdate("UPDATE HRMRESOURCE SET SUBCOMPANYID1 = ? , DEPARTMENTID = ? WHERE ID =? ", ecCompany, ecDepartment, userId); // 更新人员组织架构图 CusFieldDataTrigger.run(userId); }