From a055d211ff39482e4b1196efb747d15fbc337165 Mon Sep 17 00:00:00 2001 From: andy <1042025947@qq.com> Date: Mon, 20 Apr 2026 09:22:49 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A1=B6=E9=A1=B6=E6=8E=A8=E9=80=81=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E6=95=B0=E6=8D=AE=E8=8E=B7=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RzAttendanceServiceImpl.java | 12 +++++++++--- .../com/evo/ding/mapper/DingShiftGroupMapper.java | 2 +- .../InstanceChangeRechargeCardExchangeProcessor.java | 2 +- .../com/evo/ding/service/DingShiftGroupService.java | 2 +- .../ding/service/impl/DingShiftGroupServiceImpl.java | 4 ++-- .../resources/mapper/ding/DingShiftGroupMapper.xml | 2 +- 6 files changed, 15 insertions(+), 9 deletions(-) diff --git a/evo-admin/src/main/java/com/evo/attendance/service/impl/RzAttendanceServiceImpl.java b/evo-admin/src/main/java/com/evo/attendance/service/impl/RzAttendanceServiceImpl.java index 02eb0fa..1437fd1 100644 --- a/evo-admin/src/main/java/com/evo/attendance/service/impl/RzAttendanceServiceImpl.java +++ b/evo-admin/src/main/java/com/evo/attendance/service/impl/RzAttendanceServiceImpl.java @@ -649,9 +649,13 @@ public class RzAttendanceServiceImpl extends ServiceImpl "OnDuty".equals(((JSONObject)data).getString("checkType"))).findFirst().orElse(null); - calculationAddRzOverTime(result, sysStaff, onDutyObject); + if(onDutyObject != null){ + calculationAddRzOverTime(result, sysStaff, onDutyObject); + } JSONObject offDutyObject = (JSONObject) jsonArray.stream().filter(data -> "OffDuty".equals(((JSONObject)data).getString("checkType"))).findFirst().orElse(null); - calculationAddRzOverTime(result, sysStaff, offDutyObject); + if(offDutyObject != null){ + calculationAddRzOverTime(result, sysStaff, offDutyObject); + } } catch (Exception e) { e.printStackTrace(); log.error("重新抓取钉钉考勤结果异常, 异常原因是==>>{}, 打卡结果是=====>>>>> {}", e.getMessage(), result); @@ -665,6 +669,8 @@ public class RzAttendanceServiceImpl extends ServiceImpl { - DingShiftGroup selectByGroupIdAndTypeAndCheckTime(@Param("groupId") String groupId, @Param("type") String type, @Param("checkTime") String checkTime); + DingShiftGroup selectByGroupIdAndTypeAndCheckTime(@Param("groupId") String groupId, @Param("shiftId")String shiftId, @Param("type") String type, @Param("checkTime") String checkTime); int updateCheckTimeByShiftIdAndType(@Param("shiftId")String shiftId, @Param("type")String type, @Param("checkTime")String checkTime); diff --git a/evo-admin/src/main/java/com/evo/ding/processor/instance/impl/InstanceChangeRechargeCardExchangeProcessor.java b/evo-admin/src/main/java/com/evo/ding/processor/instance/impl/InstanceChangeRechargeCardExchangeProcessor.java index 4c2e36a..03f76f3 100644 --- a/evo-admin/src/main/java/com/evo/ding/processor/instance/impl/InstanceChangeRechargeCardExchangeProcessor.java +++ b/evo-admin/src/main/java/com/evo/ding/processor/instance/impl/InstanceChangeRechargeCardExchangeProcessor.java @@ -60,7 +60,7 @@ public class InstanceChangeRechargeCardExchangeProcessor implements InstanceChan if(Integer.valueOf(0).equals(planResult.getInteger("errcode"))){ JSONObject planResultObject = planResult.getJSONArray("result").getJSONObject(0); String formatPlanCheckTime = DateUtils.parseDateToStr("HH:mm:ss", new Date(planResultObject.getString("plan_check_time"))); - dingsShiftGroup = getDingShiftGroupService().selectByGroupIdAndTypeAndCheckTime(planResultObject.getString("group_id"), checkType, formatPlanCheckTime); + dingsShiftGroup = getDingShiftGroupService().selectByGroupIdAndTypeAndCheckTime(planResultObject.getString("group_id"), planResultObject.getString("class_id"), checkType, formatPlanCheckTime); Date date= DateUtils.parseDate(bkTime, "yyyy-MM-dd HH:mm"); //生成补卡记录信息 getIRzAttendanceService().addRzOverTime(json.toString(), sysStaff, dingsShiftGroup, checkType, date, date, "/", "钉钉补卡-"+bkYi, ParamUtils.getDebiting()); diff --git a/evo-admin/src/main/java/com/evo/ding/service/DingShiftGroupService.java b/evo-admin/src/main/java/com/evo/ding/service/DingShiftGroupService.java index 09f6e4b..6c95875 100644 --- a/evo-admin/src/main/java/com/evo/ding/service/DingShiftGroupService.java +++ b/evo-admin/src/main/java/com/evo/ding/service/DingShiftGroupService.java @@ -16,7 +16,7 @@ import java.util.List; */ public interface DingShiftGroupService extends IService { - DingShiftGroup selectByGroupIdAndTypeAndCheckTime(String groupId, String type, String checkTime); + DingShiftGroup selectByGroupIdAndTypeAndCheckTime(String groupId, String shiftId, String type, String checkTime); int updateCheckTimeByShiftIdAndType(String shiftId, String type, String checkTime); diff --git a/evo-admin/src/main/java/com/evo/ding/service/impl/DingShiftGroupServiceImpl.java b/evo-admin/src/main/java/com/evo/ding/service/impl/DingShiftGroupServiceImpl.java index 700bff3..db9f5b2 100644 --- a/evo-admin/src/main/java/com/evo/ding/service/impl/DingShiftGroupServiceImpl.java +++ b/evo-admin/src/main/java/com/evo/ding/service/impl/DingShiftGroupServiceImpl.java @@ -20,8 +20,8 @@ import java.util.List; @Service public class DingShiftGroupServiceImpl extends ServiceImpl implements DingShiftGroupService { @Override - public DingShiftGroup selectByGroupIdAndTypeAndCheckTime(String groupId, String type, String checkTime) { - return getBaseMapper().selectByGroupIdAndTypeAndCheckTime(groupId, type, checkTime); + public DingShiftGroup selectByGroupIdAndTypeAndCheckTime(String groupId, String shiftId, String type, String checkTime) { + return getBaseMapper().selectByGroupIdAndTypeAndCheckTime(groupId, shiftId, type, checkTime); } @Override diff --git a/evo-admin/src/main/resources/mapper/ding/DingShiftGroupMapper.xml b/evo-admin/src/main/resources/mapper/ding/DingShiftGroupMapper.xml index 14b5a91..b329b29 100644 --- a/evo-admin/src/main/resources/mapper/ding/DingShiftGroupMapper.xml +++ b/evo-admin/src/main/resources/mapper/ding/DingShiftGroupMapper.xml @@ -23,7 +23,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"