diff --git a/reading-platform-java/src/main/java/com/reading/platform/service/impl/CourseServiceImpl.java b/reading-platform-java/src/main/java/com/reading/platform/service/impl/CourseServiceImpl.java index 43d242f..162d8c1 100644 --- a/reading-platform-java/src/main/java/com/reading/platform/service/impl/CourseServiceImpl.java +++ b/reading-platform-java/src/main/java/com/reading/platform/service/impl/CourseServiceImpl.java @@ -63,24 +63,24 @@ public class CourseServiceImpl extends ServiceImpl course.setIntroMethods(request.getIntroMethods()); course.setIntroEvaluation(request.getIntroEvaluation()); course.setIntroNotes(request.getIntroNotes()); - course.setScheduleRefData(request.getScheduleRefData()); + course.setScheduleRefData(nullIfEmptyJson(request.getScheduleRefData())); course.setEnvironmentConstruction(request.getEnvironmentConstruction()); course.setThemeId(request.getThemeId()); course.setPictureBookName(request.getPictureBookName()); - course.setEbookPaths(request.getEbookPaths()); - course.setAudioPaths(request.getAudioPaths()); - course.setVideoPaths(request.getVideoPaths()); - course.setOtherResources(request.getOtherResources()); + course.setEbookPaths(nullIfEmptyJson(request.getEbookPaths())); + course.setAudioPaths(nullIfEmptyJson(request.getAudioPaths())); + course.setVideoPaths(nullIfEmptyJson(request.getVideoPaths())); + course.setOtherResources(nullIfEmptyJson(request.getOtherResources())); course.setPptPath(request.getPptPath()); course.setPptName(request.getPptName()); course.setPosterPaths(request.getPosterPaths()); course.setTools(request.getTools()); course.setStudentMaterials(request.getStudentMaterials()); - course.setLessonPlanData(request.getLessonPlanData()); - course.setActivitiesData(request.getActivitiesData()); - course.setAssessmentData(request.getAssessmentData()); - course.setGradeTags(request.getGradeTags()); - course.setDomainTags(request.getDomainTags()); + course.setLessonPlanData(nullIfEmptyJson(request.getLessonPlanData())); + course.setActivitiesData(nullIfEmptyJson(request.getActivitiesData())); + course.setAssessmentData(nullIfEmptyJson(request.getAssessmentData())); + course.setGradeTags(nullIfEmptyJson(request.getGradeTags())); + course.setDomainTags(nullIfEmptyJson(request.getDomainTags())); course.setHasCollectiveLesson(request.getHasCollectiveLesson() != null && request.getHasCollectiveLesson() ? 1 : 0); course.setVersion("1.0"); @@ -124,24 +124,24 @@ public class CourseServiceImpl extends ServiceImpl course.setIntroMethods(request.getIntroMethods()); course.setIntroEvaluation(request.getIntroEvaluation()); course.setIntroNotes(request.getIntroNotes()); - course.setScheduleRefData(request.getScheduleRefData()); + course.setScheduleRefData(nullIfEmptyJson(request.getScheduleRefData())); course.setEnvironmentConstruction(request.getEnvironmentConstruction()); course.setThemeId(request.getThemeId()); course.setPictureBookName(request.getPictureBookName()); - course.setEbookPaths(request.getEbookPaths()); - course.setAudioPaths(request.getAudioPaths()); - course.setVideoPaths(request.getVideoPaths()); - course.setOtherResources(request.getOtherResources()); + course.setEbookPaths(nullIfEmptyJson(request.getEbookPaths())); + course.setAudioPaths(nullIfEmptyJson(request.getAudioPaths())); + course.setVideoPaths(nullIfEmptyJson(request.getVideoPaths())); + course.setOtherResources(nullIfEmptyJson(request.getOtherResources())); course.setPptPath(request.getPptPath()); course.setPptName(request.getPptName()); course.setPosterPaths(request.getPosterPaths()); course.setTools(request.getTools()); course.setStudentMaterials(request.getStudentMaterials()); - course.setLessonPlanData(request.getLessonPlanData()); - course.setActivitiesData(request.getActivitiesData()); - course.setAssessmentData(request.getAssessmentData()); - course.setGradeTags(request.getGradeTags()); - course.setDomainTags(request.getDomainTags()); + course.setLessonPlanData(nullIfEmptyJson(request.getLessonPlanData())); + course.setActivitiesData(nullIfEmptyJson(request.getActivitiesData())); + course.setAssessmentData(nullIfEmptyJson(request.getAssessmentData())); + course.setGradeTags(nullIfEmptyJson(request.getGradeTags())); + course.setDomainTags(nullIfEmptyJson(request.getDomainTags())); course.setHasCollectiveLesson(request.getHasCollectiveLesson() != null && request.getHasCollectiveLesson() ? 1 : 0); course.setVersion("1.0"); @@ -224,7 +224,7 @@ public class CourseServiceImpl extends ServiceImpl course.setIntroNotes(request.getIntroNotes()); } if (request.getScheduleRefData() != null) { - course.setScheduleRefData(request.getScheduleRefData()); + course.setScheduleRefData(nullIfEmptyJson(request.getScheduleRefData())); } if (request.getEnvironmentConstruction() != null) { course.setEnvironmentConstruction(request.getEnvironmentConstruction()); @@ -236,16 +236,16 @@ public class CourseServiceImpl extends ServiceImpl course.setPictureBookName(request.getPictureBookName()); } if (request.getEbookPaths() != null) { - course.setEbookPaths(request.getEbookPaths()); + course.setEbookPaths(nullIfEmptyJson(request.getEbookPaths())); } if (request.getAudioPaths() != null) { - course.setAudioPaths(request.getAudioPaths()); + course.setAudioPaths(nullIfEmptyJson(request.getAudioPaths())); } if (request.getVideoPaths() != null) { - course.setVideoPaths(request.getVideoPaths()); + course.setVideoPaths(nullIfEmptyJson(request.getVideoPaths())); } if (request.getOtherResources() != null) { - course.setOtherResources(request.getOtherResources()); + course.setOtherResources(nullIfEmptyJson(request.getOtherResources())); } if (request.getPptPath() != null) { course.setPptPath(request.getPptPath()); @@ -263,19 +263,19 @@ public class CourseServiceImpl extends ServiceImpl course.setStudentMaterials(request.getStudentMaterials()); } if (request.getLessonPlanData() != null) { - course.setLessonPlanData(request.getLessonPlanData()); + course.setLessonPlanData(nullIfEmptyJson(request.getLessonPlanData())); } if (request.getActivitiesData() != null) { - course.setActivitiesData(request.getActivitiesData()); + course.setActivitiesData(nullIfEmptyJson(request.getActivitiesData())); } if (request.getAssessmentData() != null) { - course.setAssessmentData(request.getAssessmentData()); + course.setAssessmentData(nullIfEmptyJson(request.getAssessmentData())); } if (request.getGradeTags() != null) { - course.setGradeTags(request.getGradeTags()); + course.setGradeTags(nullIfEmptyJson(request.getGradeTags())); } if (request.getDomainTags() != null) { - course.setDomainTags(request.getDomainTags()); + course.setDomainTags(nullIfEmptyJson(request.getDomainTags())); } if (request.getHasCollectiveLesson() != null) { course.setHasCollectiveLesson(request.getHasCollectiveLesson() ? 1 : 0); @@ -442,4 +442,11 @@ public class CourseServiceImpl extends ServiceImpl ); } + /** + * 将空字符串转为 null,避免 MySQL JSON 列报错(空串不是有效 JSON) + */ + private static String nullIfEmptyJson(String s) { + return (s != null && !s.isBlank()) ? s : null; + } + }