diff --git a/backend/services/data-management-service/src/main/java/com/datamate/datamanagement/application/KnowledgeItemApplicationService.java b/backend/services/data-management-service/src/main/java/com/datamate/datamanagement/application/KnowledgeItemApplicationService.java index 1358693..1baafef 100644 --- a/backend/services/data-management-service/src/main/java/com/datamate/datamanagement/application/KnowledgeItemApplicationService.java +++ b/backend/services/data-management-service/src/main/java/com/datamate/datamanagement/application/KnowledgeItemApplicationService.java @@ -266,6 +266,12 @@ public class KnowledgeItemApplicationService { response.setTotalKnowledgeSets(totalSets); List accessibleSetIds = knowledgeSetRepository.listSetIdsByCriteria(baseQuery, ownerFilterUserId, excludeConfidential); + if (CollectionUtils.isEmpty(accessibleSetIds)) { + response.setTotalFiles(0L); + response.setTotalSize(0L); + response.setTotalTags(0L); + return response; + } List accessibleSets = knowledgeSetRepository.listByIds(accessibleSetIds); if (CollectionUtils.isEmpty(accessibleSets)) { response.setTotalFiles(0L); diff --git a/backend/services/knowledge-graph-service/src/main/java/com/datamate/knowledgegraph/domain/repository/EditReviewRepository.java b/backend/services/knowledge-graph-service/src/main/java/com/datamate/knowledgegraph/domain/repository/EditReviewRepository.java index 6bfc3fa..7ae299a 100644 --- a/backend/services/knowledge-graph-service/src/main/java/com/datamate/knowledgegraph/domain/repository/EditReviewRepository.java +++ b/backend/services/knowledge-graph-service/src/main/java/com/datamate/knowledgegraph/domain/repository/EditReviewRepository.java @@ -43,7 +43,13 @@ public class EditReviewRepository { params.put("reviewedBy", review.getReviewedBy() != null ? review.getReviewedBy() : ""); params.put("reviewComment", review.getReviewComment() != null ? review.getReviewComment() : ""); params.put("createdAt", review.getCreatedAt()); - params.put("reviewedAt", review.getReviewedAt()); + + // reviewed_at 为 null 时(PENDING 状态)不写入 SET,避免 null 参数导致属性缺失 + String reviewedAtSet = ""; + if (review.getReviewedAt() != null) { + reviewedAtSet = ", r.reviewed_at = $reviewedAt"; + params.put("reviewedAt", review.getReviewedAt()); + } neo4jClient .query( @@ -57,8 +63,8 @@ public class EditReviewRepository { " r.submitted_by = $submittedBy, " + " r.reviewed_by = $reviewedBy, " + " r.review_comment = $reviewComment, " + - " r.created_at = $createdAt, " + - " r.reviewed_at = $reviewedAt " + + " r.created_at = $createdAt" + + reviewedAtSet + " " + "RETURN r" ) .bindAll(params)