From cd27abbdd908cb939152172e6c9389b6d1212b87 Mon Sep 17 00:00:00 2001 From: sy Date: Sat, 14 Sep 2024 09:52:35 +0800 Subject: [PATCH] =?UTF-8?q?=E8=80=83=E5=8B=A4=EF=BC=8C=E5=87=BA=E5=8B=A4?= =?UTF-8?q?=E5=88=86=E6=9E=90=E5=8A=A0=E7=8F=AD=E6=97=B6=E9=95=BF=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1=E4=BC=98=E5=8C=96=EF=BC=8C=E8=A1=A5=E6=89=93=E5=8D=A1?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E8=A1=A5=E6=89=93=E5=8D=A1=E6=AC=A1=E6=95=B0?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C=E4=BC=98=E5=8C=96=EF=BC=8C=E4=BC=81=E4=B8=9A?= =?UTF-8?q?=E6=97=A5=E5=8E=86=E6=8E=92=E7=8F=AD=E7=BB=93=E6=9E=9C=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=9D=83=E9=99=90=E9=80=BB=E8=BE=91=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cmd/workovertime/GetOvertimeDurationCmd.java | 11 ++++++----- .../service/impl/WorkRulesServiceImpl.java | 11 ++++++++++- .../workflow/action/MakeUpClockInAction.java | 3 ++- 3 files changed, 18 insertions(+), 7 deletions(-) diff --git a/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/workovertime/GetOvertimeDurationCmd.java b/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/workovertime/GetOvertimeDurationCmd.java index 497e97b..dfdedb4 100644 --- a/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/workovertime/GetOvertimeDurationCmd.java +++ b/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/workovertime/GetOvertimeDurationCmd.java @@ -268,11 +268,12 @@ public class GetOvertimeDurationCmd extends AbstractCommonCommand> personnelGrouping = DbTools.getSqlToList(sql,userId); + boolean isFzgly = personnelGrouping.size() > 0; personnelGrouping = personnelGrouping.stream().filter(e -> DateUtil.getTime(endTime).compareTo(DateUtil.getTime(e.get("bdate").toString())) >=0 && (Util.null2String(e.get("edate")).equals("") || DateUtil.getTime(startTime).compareTo(DateUtil.getTime(e.get("edate").toString())) <=0)).collect(Collectors.toList()); Map userIdMap =Maps.newHashMap(); @@ -218,7 +219,15 @@ public class WorkRulesServiceImpl extends Service implements WorkRulesService { } } } - + //20240913逻辑修改,如果登录人非系统管理员,且非人员分组管理员时,可查看其下级人员 + if (!isFzgly) { + //获取登录人员下级信息 + String subEmpSql = "select * from hrmresource where managerid = " + userId; + List> subEmpData = DbTools.getSqlToList(subEmpSql); + for (Map map : subEmpData) { + userIdMap.put(map.get("id").toString(),startTime+","+endTime); + } + } for (int i=0;i map = dataTable.get(i); String id = Util.null2String(map.get("id")); diff --git a/src/com/engine/jucailinkq/attendance/workflow/action/MakeUpClockInAction.java b/src/com/engine/jucailinkq/attendance/workflow/action/MakeUpClockInAction.java index 07785ff..dfe181a 100644 --- a/src/com/engine/jucailinkq/attendance/workflow/action/MakeUpClockInAction.java +++ b/src/com/engine/jucailinkq/attendance/workflow/action/MakeUpClockInAction.java @@ -137,6 +137,7 @@ public class MakeUpClockInAction implements Action { List> item = itemsGroupById.get(bdklx); int maxclockTimes = Integer.valueOf(item.get(0).get("xzsydcs").toString()); int clockTimes = detailDatas.size(); + String doLimitClockTimes = Util.null2String(item.get(0).get("kqzqnxzsycs")); //计入限制次数的其他项目 String hbjrdkqxm = Util.null2String(item.get(0).get("hbjrdkqxm")); @@ -152,7 +153,7 @@ public class MakeUpClockInAction implements Action { DateUtil.getTime(endDate).compareTo(DateUtil.getTime(e.get("dkrq").toString())) >=0).collect(Collectors.toList()); clockTimes +=existsList.size(); log.debug("clockTimes : [{}],maxclockTimes : [{}]",clockTimes,maxclockTimes); - if (clockTimes > maxclockTimes){ + if (clockTimes > maxclockTimes && "1".equals(doLimitClockTimes)){ //已达到请假上限 log.error("考勤项目已达到补打卡上限"); requestInfo.getRequestManager().setMessageid("11111" + requestid + "22222");