diff --git a/backend/src/main/java/com/designhub/service/AnalyticsService.java b/backend/src/main/java/com/designhub/service/AnalyticsService.java index a19cd25..6b11f04 100644 --- a/backend/src/main/java/com/designhub/service/AnalyticsService.java +++ b/backend/src/main/java/com/designhub/service/AnalyticsService.java @@ -1333,14 +1333,22 @@ public class AnalyticsService { .le(Task::getActualEndTime, endTime) ); + log.info("获取设计师扣分明细 - 用户: {}, 月份: {}, 已完成任务数: {}", + designer.getRealName() != null ? designer.getRealName() : designer.getUsername(), + currentMonth, completedTasks.size()); + // 获取扣分比例配置 BigDecimal deductionRate = getDeductionRate(designer.getDeptId(), currentMonth); + log.info("扣分比例: {}%", deductionRate); // 计算延误扣分明细 List delayDeductions = new ArrayList<>(); BigDecimal totalDelayDeduction = BigDecimal.ZERO; for (Task task : completedTasks) { + log.debug("检查任务: taskNo={}, deadline={}, actualEndTime={}", + task.getTaskNo(), task.getDeadline(), task.getActualEndTime()); + if (task.getDeadline() != null && task.getActualEndTime() != null && task.getActualEndTime().isAfter(task.getDeadline())) { @@ -1370,6 +1378,9 @@ public class AnalyticsService { totalDelayDeduction = totalDelayDeduction.add(taskDeduction); + log.info("发现延误任务: taskNo={}, 任务积分={}, 延误小时={}, 扣分={}", + task.getTaskNo(), taskScore, overdueHours, taskDeduction); + delayDeductions.add(DeductionDetailVO.DelayDeductionItem.builder() .taskId(task.getId()) .taskNo(task.getTaskNo()) @@ -1386,6 +1397,8 @@ public class AnalyticsService { } } + log.info("延误扣分总数: {}, 延误扣分记录数: {}", totalDelayDeduction, delayDeductions.size()); + // 获取进度未更新扣分明细 List progressDeductions = new ArrayList<>(); BigDecimal totalProgressDeduction = BigDecimal.ZERO;