From b5ae3b1780e6ea245752385315c12ab710871c0a Mon Sep 17 00:00:00 2001 From: dxfeng Date: Fri, 1 Aug 2025 10:49:19 +0800 Subject: [PATCH] =?UTF-8?q?=E8=80=83=E5=8B=A4=E7=9C=8B=E6=9D=BF=20?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=A9=BF=E9=80=8F=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ManagerPortalServiceImpl.java | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/weaver/seconddev/portal/service/impl/ManagerPortalServiceImpl.java b/src/main/java/com/weaver/seconddev/portal/service/impl/ManagerPortalServiceImpl.java index 2c5cd51..845eb00 100644 --- a/src/main/java/com/weaver/seconddev/portal/service/impl/ManagerPortalServiceImpl.java +++ b/src/main/java/com/weaver/seconddev/portal/service/impl/ManagerPortalServiceImpl.java @@ -366,19 +366,31 @@ public class ManagerPortalServiceImpl implements ManagerPortalService { Set allDepartmentIdList = getAllDepartmentIdList(basicPersonnelParam, currentUser.getEmployeeId()); // 设置部门范围ID集合 basicPersonnelParam.setDepartmentIdList(allDepartmentIdList); + + List portalUrlDetails = portalMapper.getPortalUrlDetail(currentUser.getTenantKey(), PORTAL_KEY, "getAttendanceInfo"); + Map urlMap = portalUrlDetails.stream().collect(Collectors.toMap(PortalUrlDetail::getDetailKey, PortalUrlDetail::getUrlAddress)); + switch (type) { case "abnormalAttendance": // 异常考勤 - return WeaResult.success(dealAbnormalAttendanceInfo(basicPersonnelParam)); + Map map = dealAbnormalAttendanceInfo(basicPersonnelParam); + map.put("url", urlMap.get("abnormalAttendance")); + return WeaResult.success(map); case "lateOrLeaveEarly": // 迟到/早退 - return WeaResult.success(dealLateOrLeaveEarlyInfo(basicPersonnelParam)); + Map map1 = dealLateOrLeaveEarlyInfo(basicPersonnelParam); + map1.put("url", urlMap.get("lateOrLeaveEarly")); + return WeaResult.success(map1); case "overtimeDuration": // 加班时长 - return WeaResult.success(dealOvertimeDurationInfo(basicPersonnelParam)); + Map map2 = dealOvertimeDurationInfo(basicPersonnelParam); + map2.put("url", urlMap.get("overtimeDuration")); + return WeaResult.success(map2); case "leaveType": // 请假类型 - return WeaResult.success(dealLeaveTypeInfo(basicPersonnelParam)); + Map map3 = dealLeaveTypeInfo(basicPersonnelParam); + map3.put("url", urlMap.get("leaveType")); + return WeaResult.success(map3); default: return WeaResult.fail("不支持的统计类型",true);