From d388b75c8aa2171f044b16fe0afa310a9f42dc6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Thu, 4 Dec 2025 09:50:30 +0800 Subject: [PATCH] =?UTF-8?q?=E9=92=89=E9=92=89=E8=80=83=E5=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../market/service/impl/DingService.java | 27 ++++++++++++++----- 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/DingService.java b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/DingService.java index 6f38f1033..5f5534989 100644 --- a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/DingService.java +++ b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/DingService.java @@ -177,16 +177,31 @@ public class DingService { status = "休息日"; } } - for (Object item : resultList) { + int notSignedCount = 0; + + for (int i = 0, resultListSize = resultList.size(); i < resultListSize; i++) { + Object item = resultList.get(i); + JSONObject jsonObject = (JSONObject) item; String timeResult = jsonObject.getString("time_result"); String checkType = jsonObject.getString("check_type"); + + if ("NotSigned".equals(timeResult)) { + notSignedCount++; + } + + if (notSignedCount >= 2) { + status = "旷工"; + break; + } + + if (i > 1 && !"正常".equals(status)) { + break; + } + + status = STATUS_MAP.get(timeResult); if (!"正常".equals(status)) { - status = STATUS_MAP.get(timeResult); - if(!"正常".equals(status)) { - status = ("OnDuty".equals(checkType) ? "上班" : "下班") + status; - break; - } + status = ("OnDuty".equals(checkType) ? "上班" : "下班") + status; } }