From 15d33efb51eff8d95628a1ae4aae1ddb5c94d14d Mon Sep 17 00:00:00 2001 From: dxfeng Date: Wed, 23 Jul 2025 11:50:14 +0800 Subject: [PATCH] =?UTF-8?q?refactor(organization):=20=E9=87=8D=E6=9E=84?= =?UTF-8?q?=E7=BB=84=E7=BB=87=E4=BF=A1=E6=81=AF=E7=9B=B8=E5=85=B3=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E5=8F=8A=E6=95=B0=E6=8D=AE=E6=A8=A1=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 DepartmentData 和 PositionData 类作为接口返回数据模型 - 更新 OrganizationInfoController 中的方法,增加分页参数 - 重构 OrganizationInfoServiceImpl 中的数据处理逻辑,使用新数据模型 --- .../OrganizationInfoController.java | 18 +++++-- .../entity/po/DepartmentData.java | 24 +++++++++ .../organization/entity/po/PositionData.java | 17 +++++++ .../impl/OrganizationInfoServiceImpl.java | 51 +++++++++---------- 4 files changed, 80 insertions(+), 30 deletions(-) create mode 100644 src/main/java/com/weaver/seconddev/organization/entity/po/DepartmentData.java create mode 100644 src/main/java/com/weaver/seconddev/organization/entity/po/PositionData.java 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 00d5418..c90b25d 100644 --- a/src/main/java/com/weaver/seconddev/organization/controller/OrganizationInfoController.java +++ b/src/main/java/com/weaver/seconddev/organization/controller/OrganizationInfoController.java @@ -27,31 +27,43 @@ public class OrganizationInfoController { @GetMapping("/getDepartmentInfo") public Object getDepartmentInfo(@RequestParam(name = "code", required = false) String code, - @RequestParam(name = "oId", required = false) String oId) { + @RequestParam(name = "oId", required = false) String oId, + @RequestParam(name = "current", required = false) Integer current, + @RequestParam(name = "pageSize", required = false) Integer pageSize) { log.error("code=={},oId=={}", code, oId); Map params = new HashMap<>(); params.put("code", code); params.put("oId", oId); + params.put("current", current); + params.put("pageSize", pageSize); return organizationInfoService.getDepartmentInfo(params); } @GetMapping("/getPositionInfo") public Object getPositionInfo(@RequestParam(name = "code", required = false) String code, - @RequestParam(name = "oId", required = false) String oId) { + @RequestParam(name = "oId", required = false) String oId, + @RequestParam(name = "current", required = false) Integer current, + @RequestParam(name = "pageSize", required = false) Integer pageSize) { log.error("code=={},oId=={}", code, oId); Map params = new HashMap<>(); params.put("code", code); params.put("oId", oId); + params.put("current", current); + params.put("pageSize", pageSize); return organizationInfoService.getPositionInfo(params); } @GetMapping("/getEmployeeInfo") public Object getEmployeeInfo(@RequestParam(name = "code", required = false) String code, - @RequestParam(name = "oId", required = false) String oId) { + @RequestParam(name = "oId", required = false) String oId, + @RequestParam(name = "current", required = false) Integer current, + @RequestParam(name = "pageSize", required = false) Integer pageSize) { log.error("code=={},oId=={}", code, oId); Map params = new HashMap<>(); params.put("code", code); params.put("oId", oId); + params.put("current", current); + params.put("pageSize", pageSize); return organizationInfoService.getEmployeeInfo(params); } } diff --git a/src/main/java/com/weaver/seconddev/organization/entity/po/DepartmentData.java b/src/main/java/com/weaver/seconddev/organization/entity/po/DepartmentData.java new file mode 100644 index 0000000..3454d32 --- /dev/null +++ b/src/main/java/com/weaver/seconddev/organization/entity/po/DepartmentData.java @@ -0,0 +1,24 @@ +package com.weaver.seconddev.organization.entity.po; + +import lombok.Data; + +/** + * @author:dxfeng + * @createTime: 2025/07/23 + * @version: 1.0 + */ +@Data +public class DepartmentData { + private String oId; + private String code; + private String name; + private String pathCode; + private String pathName; + private String poId; + private String sqcj; + private Long dataRank; + private Integer status; + private String bmfzrgh; + private String hrbpxm; + private String hrbpgh; +} diff --git a/src/main/java/com/weaver/seconddev/organization/entity/po/PositionData.java b/src/main/java/com/weaver/seconddev/organization/entity/po/PositionData.java new file mode 100644 index 0000000..48d30d1 --- /dev/null +++ b/src/main/java/com/weaver/seconddev/organization/entity/po/PositionData.java @@ -0,0 +1,17 @@ +package com.weaver.seconddev.organization.entity.po; + +import lombok.Data; + +/** + * @author:dxfeng + * @createTime: 2025/07/23 + * @version: 1.0 + */ +@Data +public class PositionData { + private String oId; + private String code; + private String name; + private String oDeptId; + private String isCanceled; +} 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 a9f93a3..207aacb 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 @@ -9,10 +9,7 @@ import com.weaver.common.hrm.cache.HrmDepartmentComInfo; import com.weaver.common.hrm.dao.HrmCommonEmployeeDao; import com.weaver.common.hrm.manage.HrmComInfoCacheHandler; import com.weaver.seconddev.organization.entity.param.OrgSearchCondition; -import com.weaver.seconddev.organization.entity.po.Area; -import com.weaver.seconddev.organization.entity.po.AreaExtends; -import com.weaver.seconddev.organization.entity.po.EmployeeData; -import com.weaver.seconddev.organization.entity.po.HrmOffSpace; +import com.weaver.seconddev.organization.entity.po.*; import com.weaver.seconddev.organization.mapper.CityMapper; import com.weaver.seconddev.organization.mapper.OrganizationInfoMapper; import com.weaver.seconddev.organization.service.OrganizationInfoService; @@ -82,12 +79,12 @@ public class OrganizationInfoServiceImpl implements OrganizationInfoService { List templateDetails = ebuilderBaseMapper.getFormdataTemplateDetails(param, formField.getDataTemplateId()); Map sqcjMap = templateDetails.stream().collect(Collectors.toMap(FormdataTemplateDetails::getValueKey, FormdataTemplateDetails::getName)); - List> orgList = new ArrayList<>(); + List orgList = new ArrayList<>(); for (Map map : departmentList) { - Map newMap = new HashMap<>(); - newMap.put("oId", map.get("oid")); - newMap.put("poId", map.get("poid")); - newMap.put("sqcj", sqcjMap.get(Util.null2String(map.get("sqcj")))); + DepartmentData departmentData = new DepartmentData(); + departmentData.setOId(Convert.toStr(map.get("oid"),"")); + departmentData.setPoId(Convert.toStr(map.get("poid"),"")); + departmentData.setSqcj(sqcjMap.get(Util.null2String(map.get("sqcj")))); String jobNum = ""; String bmfzr = Util.null2String(map.get("bmfzr")); @@ -97,7 +94,7 @@ public class OrganizationInfoServiceImpl implements OrganizationInfoService { jobNum = byId.getJobNum(); } } - newMap.put("bmfzr", jobNum); + departmentData.setBmfzrgh(jobNum); String hrbp = Util.null2String(map.get("hrbp")); String hrbpxm = ""; @@ -109,25 +106,25 @@ public class OrganizationInfoServiceImpl implements OrganizationInfoService { hrbpgh = byId.getJobNum(); } } - newMap.put("hrbpxm", hrbpxm); - newMap.put("hrbpgh", hrbpgh); + departmentData.setHrbpxm(hrbpxm); + departmentData.setHrbpgh(hrbpgh); Long departmentid = Convert.toLong(map.get("id")); HrmDepartmentComInfo department = hrmComInfoCacheHandler.getCacheById(HrmDepartmentComInfo.class, departmentid); - newMap.put("code", department.getCode()); - newMap.put("name", department.getName()); - newMap.put("dataRank", department.getDatarank()); - newMap.put("status", department.getStatus()); + departmentData.setCode(department.getCode()); + departmentData.setName(department.getName()); + departmentData.setDataRank(department.getDatarank()); + departmentData.setStatus(department.getStatus()); List allDepartmentList = new ArrayList<>(); getParentDeptList(department, allDepartmentList); String pathCode = allDepartmentList.stream().map(HrmDepartmentComInfo::getCode).collect(Collectors.joining("/")); String pathName = allDepartmentList.stream().map(HrmDepartmentComInfo::getName).collect(Collectors.joining("/")); - newMap.put("pathCode", pathCode); - newMap.put("pathName", pathName); - orgList.add(newMap); + departmentData.setPathCode(pathCode); + departmentData.setPathName(pathName); + orgList.add(departmentData); } Map returnMap = new HashMap<>(); returnMap.put("data", orgList); @@ -151,17 +148,17 @@ public class OrganizationInfoServiceImpl implements OrganizationInfoService { param.setCurrent(current); List> positionList = organizationInfoMapper.getPositionList(param); int total = organizationInfoMapper.getPositionListSize(param); - List> orgList = new ArrayList<>(); + 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")); + PositionData positionData = new PositionData(); + positionData.setOId(Convert.toStr(map.get("oid"),"")); + positionData.setCode(Convert.toStr(map.get("positionCode"),"")); + positionData.setName(Convert.toStr(map.get("positionName"),"")); + positionData.setODeptId(Convert.toStr(map.get("odeptid"),"")); + positionData.setIsCanceled(Convert.toStr(map.get("is_canceled"),"")); - orgList.add(newMap); + orgList.add(positionData); }