diff --git a/src/main/java/com/weaver/seconddev/organization/controller/OrganizationInfoController.java b/src/main/java/com/weaver/seconddev/organization/controller/OrganizationInfoController.java index 424e444..649e80b 100644 --- a/src/main/java/com/weaver/seconddev/organization/controller/OrganizationInfoController.java +++ b/src/main/java/com/weaver/seconddev/organization/controller/OrganizationInfoController.java @@ -34,4 +34,14 @@ public class OrganizationInfoController { params.put("oId", oId); return organizationInfoService.getDepartmentInfo(params); } + + @GetMapping("/getPositionInfo") + public Object getPositionInfo(@RequestParam(name = "code", required = false) String code, + @RequestParam(name = "oId", required = false) String oId) { + log.error("code=={},oId=={}", code, oId); + Map params = new HashMap<>(); + params.put("code", code); + params.put("oId", oId); + return organizationInfoService.getPositionInfo(params); + } } diff --git a/src/main/java/com/weaver/seconddev/organization/mapper/OrganizationInfoMapper.java b/src/main/java/com/weaver/seconddev/organization/mapper/OrganizationInfoMapper.java index c99f60a..3720ae5 100644 --- a/src/main/java/com/weaver/seconddev/organization/mapper/OrganizationInfoMapper.java +++ b/src/main/java/com/weaver/seconddev/organization/mapper/OrganizationInfoMapper.java @@ -3,7 +3,6 @@ package com.weaver.seconddev.organization.mapper; import com.weaver.seconddev.portal.entity.param.BaseParam; import org.apache.ibatis.annotations.MapKey; import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Param; import java.util.List; import java.util.Map; @@ -16,14 +15,14 @@ import java.util.Map; @Mapper public interface OrganizationInfoMapper { - /** - * 根据oId获取部门Id - * - * @param param - * @param oId - * @return - */ - Long getDepartmentIdByOId(@Param("param") BaseParam param, @Param("oId") String oId); + ///** + // * 根据oId获取部门Id + // * + // * @param param + // * @param oId + // * @return + // */ + //Long getDepartmentIdByOId(@Param("param") BaseParam param, @Param("oId") String oId); /** * 获取部门列表 @@ -31,7 +30,7 @@ public interface OrganizationInfoMapper { * @param param * @return */ - @MapKey("departmentId") + @MapKey("id") List> getDepartmentList(BaseParam param); /** @@ -48,20 +47,20 @@ public interface OrganizationInfoMapper { * @param id * @return */ - String getDepartmentCodeById(@Param("param") BaseParam param, @Param("id") Long id); + //String getDepartmentCodeById(@Param("param") BaseParam param, @Param("id") Long id); - /** - * 查询部门自定义表数据 - * - * @param param - * @param id - * @return - */ - @MapKey("departmentId") - Map getDepartmentCustomData(@Param("param") BaseParam param, @Param("id") Long id); - - @MapKey("positionId") - Map getPosition(@Param("param") BaseParam param, @Param("oId") String oId, @Param("code") String code); + ///** + // * 查询部门自定义表数据 + // * + // * @param param + // * @param id + // * @return + // */ + //@MapKey("departmentId") + //Map getDepartmentCustomData(@Param("param") BaseParam param, @Param("id") Long id); + // + //@MapKey("positionId") + //Map getPosition(@Param("param") BaseParam param, @Param("oId") String oId, @Param("code") String code); /** * 获取职位列表 @@ -70,7 +69,7 @@ public interface OrganizationInfoMapper { * @return */ @MapKey("positionId") - List> getPositionList(@Param("param") BaseParam param); + List> getPositionList(BaseParam param); /** * 统计职位列表 @@ -78,5 +77,5 @@ public interface OrganizationInfoMapper { * @param param * @return */ - int getPositionListSize(@Param("param") BaseParam param); + int getPositionListSize(BaseParam param); } diff --git a/src/main/java/com/weaver/seconddev/organization/service/impl/OrganizationInfoServiceImpl.java b/src/main/java/com/weaver/seconddev/organization/service/impl/OrganizationInfoServiceImpl.java index daf756b..77f4f8d 100644 --- a/src/main/java/com/weaver/seconddev/organization/service/impl/OrganizationInfoServiceImpl.java +++ b/src/main/java/com/weaver/seconddev/organization/service/impl/OrganizationInfoServiceImpl.java @@ -6,7 +6,6 @@ import com.weaver.common.form.datasource.FormdataTemplateDetails; import com.weaver.common.form.metadata.field.FormField; import com.weaver.common.hr.util.Util; import com.weaver.common.hrm.cache.HrmDepartmentComInfo; -import com.weaver.common.hrm.dao.HrmCommonDepartmentDao; import com.weaver.common.hrm.dao.HrmCommonEmployeeDao; import com.weaver.common.hrm.manage.HrmComInfoCacheHandler; import com.weaver.seconddev.organization.entity.param.OrgSearchCondition; @@ -14,9 +13,7 @@ import com.weaver.seconddev.organization.mapper.OrganizationInfoMapper; import com.weaver.seconddev.organization.service.OrganizationInfoService; import com.weaver.seconddev.portal.mapper.EbuilderBaseMapper; import com.weaver.seconddev.portal.mapper.EteamsBaseMapper; -import com.weaver.teams.domain.department.SimpleDepartment; import com.weaver.teams.domain.user.SimpleEmployee; -import com.weaver.workflow.common.cfg.org.service.DepartMentService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -37,11 +34,11 @@ import java.util.stream.Collectors; @Service public class OrganizationInfoServiceImpl implements OrganizationInfoService { - @Autowired - DepartMentService departMentService; - - @Autowired - HrmCommonDepartmentDao hrmCommonDepartmentDao; + //@Autowired + //DepartMentService departMentService; + // + //@Autowired + //HrmCommonDepartmentDao hrmCommonDepartmentDao; @Autowired HrmCommonEmployeeDao hrmCommonEmployeeDao; @@ -112,7 +109,8 @@ public class OrganizationInfoServiceImpl implements OrganizationInfoService { newMap.put("hrbpxm", hrbpxm); newMap.put("hrbpgh", hrbpgh); - HrmDepartmentComInfo department = hrmComInfoCacheHandler.getCacheById(HrmDepartmentComInfo.class, 1560052731319352218L); + Long departmentid = Convert.toLong(map.get("id")); + HrmDepartmentComInfo department = hrmComInfoCacheHandler.getCacheById(HrmDepartmentComInfo.class, departmentid); newMap.put("code", department.getCode()); newMap.put("name", department.getName()); @@ -128,19 +126,46 @@ public class OrganizationInfoServiceImpl implements OrganizationInfoService { newMap.put("pathName", pathName); orgList.add(newMap); } - Map returnMap = new HashMap<>(); - returnMap.put("data",orgList); - returnMap.put("current",current); - returnMap.put("total",total); + Map returnMap = new HashMap<>(); + returnMap.put("data", orgList); + returnMap.put("current", current); + returnMap.put("total", total); return WeaResult.success(returnMap); } @Override public WeaResult> getPositionInfo(Map params) { + OrgSearchCondition param = new OrgSearchCondition(); + String code = Util.null2String(params.get("code")); + String oId = Util.null2String(params.get("oId")); + int pageSize = Convert.toInt(params.get("pageSize"), 10); + int current = Convert.toInt(params.get("current"), 1); + + param.setCode(code); + param.setOId(oId); + param.setPageSize(pageSize); + param.setCurrent(current); + List> positionList = organizationInfoMapper.getPositionList(param); + int total = organizationInfoMapper.getPositionListSize(param); + List> orgList = new ArrayList<>(); + + for (Map map : positionList) { + Map newMap = new HashMap<>(); + newMap.put("oId", map.get("oid")); + newMap.put("code", map.get("positionCode")); + newMap.put("name", map.get("positionName")); + newMap.put("odeptid", map.get("odeptid")); + newMap.put("is_canceled", map.get("is_canceled")); + + orgList.add(newMap); + } + Map returnMap = new HashMap<>(); - + returnMap.put("data", orgList); + returnMap.put("current", current); + returnMap.put("total", total); return WeaResult.success(returnMap); } @@ -149,18 +174,20 @@ public class OrganizationInfoServiceImpl implements OrganizationInfoService { return null; } - private void getParentDeptList(SimpleDepartment department, List parentDeptList) { - parentDeptList.add(department); - if (department.getParent() != null) { - getParentDeptList(department.getParent(), parentDeptList); - } - } + /** + * 获取部门的所有上级部门 + * + * @param department + * @param parentDeptList + */ private void getParentDeptList(HrmDepartmentComInfo department, List parentDeptList) { - parentDeptList.add(department); + parentDeptList.add(0, department); if (department.getParent() != null) { HrmDepartmentComInfo cacheById = hrmComInfoCacheHandler.getCacheById(HrmDepartmentComInfo.class, department.getParent()); - getParentDeptList(cacheById, parentDeptList); + if (null != cacheById) { + getParentDeptList(cacheById, parentDeptList); + } } } diff --git a/src/main/resources/mapper/OrganizationInfoMapper.xml b/src/main/resources/mapper/OrganizationInfoMapper.xml index d65b14e..2b24a8e 100644 --- a/src/main/resources/mapper/OrganizationInfoMapper.xml +++ b/src/main/resources/mapper/OrganizationInfoMapper.xml @@ -45,12 +45,14 @@ +