diff --git a/backend/src/main/java/com/designhub/service/AnalyticsService.java b/backend/src/main/java/com/designhub/service/AnalyticsService.java index 2fb04b4..68c10fc 100644 --- a/backend/src/main/java/com/designhub/service/AnalyticsService.java +++ b/backend/src/main/java/com/designhub/service/AnalyticsService.java @@ -668,7 +668,10 @@ public class AnalyticsService { BigDecimal deductionRate = getDeductionRate(designer.getDeptId(), currentMonth); for (Task task : designerTasks) { - if ("completed".equals(task.getStatus())) { + // 只计算在指定月份内完成的任务(与getDesignerDeductionDetails保持一致) + if ("completed".equals(task.getStatus()) && task.getActualEndTime() != null + && !task.getActualEndTime().isBefore(startTime) + && !task.getActualEndTime().isAfter(endTime)) { // 计算任务积分 BigDecimal taskScore = BigDecimal.ZERO; if (task.getScoreReward() != null && task.getScoreReward().compareTo(BigDecimal.ZERO) > 0) {