diff --git a/backend/src/main/java/com/designhub/service/TaskService.java b/backend/src/main/java/com/designhub/service/TaskService.java index b6e6f9d..b145e57 100644 --- a/backend/src/main/java/com/designhub/service/TaskService.java +++ b/backend/src/main/java/com/designhub/service/TaskService.java @@ -198,6 +198,17 @@ public class TaskService { log.info("一级需求部门任务,允许不填写任务类型,积分暂时设为0"); } } + } else { + // 如果quantity为null,设置默认值 + task.setScore(BigDecimal.ZERO); + task.setEstimatedHours(BigDecimal.ZERO); + log.info("任务数量为null,积分和工时设为0"); + } + + // 确保score字段不为null(防止数据库插入错误) + if (task.getScore() == null) { + task.setScore(BigDecimal.ZERO); + log.warn("任务积分未设置,使用默认值0"); } // 检查部门积分是否充足(管理员跳过积分检查)