diff --git a/src/com/engine/organization/entity/department/bo/DepartmentBO.java b/src/com/engine/organization/entity/department/bo/DepartmentBO.java index 6841a0d7..8d3a107c 100644 --- a/src/com/engine/organization/entity/department/bo/DepartmentBO.java +++ b/src/com/engine/organization/entity/department/bo/DepartmentBO.java @@ -5,13 +5,14 @@ import com.engine.organization.entity.department.param.DeptSearchParam; import com.engine.organization.entity.department.po.DepartmentPO; import com.engine.organization.entity.department.vo.SingleDeptTreeVO; import com.engine.organization.entity.searchtree.SearchTree; -import com.engine.organization.mapper.comp.CompMapper; import com.engine.organization.mapper.department.DepartmentMapper; -import com.engine.organization.mapper.employee.EmployeeMapper; import com.engine.organization.util.db.MapperProxyFactory; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; import weaver.general.Util; +import weaver.hrm.company.DepartmentComInfo; +import weaver.hrm.company.SubCompanyComInfo; +import weaver.hrm.resource.ResourceComInfo; import java.util.*; import java.util.stream.Collectors; @@ -24,10 +25,25 @@ import java.util.stream.Collectors; **/ public class DepartmentBO { - public static List buildDeptDTOList(Collection list) { + /** + * 台账数据、值显示转换 + * @param list + * @return + */ + public static List buildDeptDTOShowNames(Collection list) { + SubCompanyComInfo subCompanyComInfo = new SubCompanyComInfo(); + DepartmentComInfo departmentComInfo = new DepartmentComInfo(); + return list.stream().map(e -> { + e.setSubCompanyName(0 == e.getSubCompanyId1() ? "" : subCompanyComInfo.getSubCompanyname(Util.null2String(e.getSubCompanyId1()))); + e.setSupDepName(0 == e.getSupDepId() ? "" : departmentComInfo.getDepartmentname(Util.null2String(e.getSupDepId()))); + e.setBmfzr(getEmployeeNameById(e.getId())); + return e; + } + ).collect(Collectors.toList()); + } + public static List buildDeptDTOList(Collection list) { // 递归添加父级数据 - Map poMaps = list.stream().collect(Collectors.toMap(DepartmentPO::getId, item -> item)); List dtoList = list.stream().map(e -> DepartmentListDTO .builder() @@ -36,10 +52,7 @@ public class DepartmentBO { .departmentName(e.getDepartmentName()) .departmentCode(e.getDepartmentCode()) .subCompanyId1(e.getSubCompanyId1()) - .subCompanyName(0 == e.getSubCompanyId1() ? "" : MapperProxyFactory.getProxy(CompMapper.class).listById(e.getSubCompanyId1()).getSubCompanyName()) .supDepId(e.getSupDepId()) - .supDepName(null == poMaps.get(e.getSupDepId()) ? "" : poMaps.get(e.getSupDepId()).getDepartmentName()) - .bmfzr(getEmployeeNameById(e.getId())) .showOrder(null == e.getShowOrder() ? 0 : e.getShowOrder()) .canceled(null == e.getCanceled() ? 0 : e.getCanceled()) .build()).collect(Collectors.toList()); @@ -162,11 +175,21 @@ public class DepartmentBO { if (StringUtils.isBlank(departmentPrincipal) || "$NULL$".equalsIgnoreCase(departmentPrincipal)) { return ""; } - List collect = Arrays.stream(departmentPrincipal.split(",")).map(Long::parseLong).collect(Collectors.toList()); + List collect = Arrays.stream(departmentPrincipal.split(",")).collect(Collectors.toList()); if (CollectionUtils.isEmpty(collect)) { return ""; } - List employeeNameById = MapperProxyFactory.getProxy(EmployeeMapper.class).getEmployeeNameById(collect); + List employeeNameById = new ArrayList<>(); + try { + for (String aLong : collect) { + String lastname = new ResourceComInfo().getLastname(Util.null2String(aLong)); + if (StringUtils.isNotBlank(lastname)) { + employeeNameById.add(lastname); + } + } + } catch (Exception e) { + throw new RuntimeException(e); + } return StringUtils.join(employeeNameById, ","); } diff --git a/src/com/engine/organization/entity/job/bo/JobBO.java b/src/com/engine/organization/entity/job/bo/JobBO.java index 2f5a3212..d10ac66e 100644 --- a/src/com/engine/organization/entity/job/bo/JobBO.java +++ b/src/com/engine/organization/entity/job/bo/JobBO.java @@ -142,7 +142,7 @@ public class JobBO { } } - public static List buildSetToSearchTree(Set builderJobs) { + public static List buildSetToSearchTree(Collection builderJobs) { return builderJobs.stream().map(item -> { SearchTree tree = new SearchTree(); tree.setCanClick(true); diff --git a/src/com/engine/organization/mapper/resource/HrmResourceMapper.xml b/src/com/engine/organization/mapper/resource/HrmResourceMapper.xml index 3bbc0605..44dc3af8 100644 --- a/src/com/engine/organization/mapper/resource/HrmResourceMapper.xml +++ b/src/com/engine/organization/mapper/resource/HrmResourceMapper.xml @@ -17,8 +17,16 @@