From e8546263668c1250a02d517b052aa71c32f1ae61 Mon Sep 17 00:00:00 2001 From: johnniang Date: Thu, 25 Apr 2019 10:16:35 +0800 Subject: [PATCH] Fix option list bug --- .../halo/app/model/properties/PropertyEnum.java | 1 - .../java/run/halo/app/service/JournalService.java | 4 ++-- .../halo/app/service/impl/JournalServiceImpl.java | 15 +++++++++++---- .../halo/app/service/impl/OptionServiceImpl.java | 4 +++- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/src/main/java/run/halo/app/model/properties/PropertyEnum.java b/src/main/java/run/halo/app/model/properties/PropertyEnum.java index ac8e2895f..7456d4749 100644 --- a/src/main/java/run/halo/app/model/properties/PropertyEnum.java +++ b/src/main/java/run/halo/app/model/properties/PropertyEnum.java @@ -1,6 +1,5 @@ package run.halo.app.model.properties; -import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.lang.NonNull; import org.springframework.lang.Nullable; diff --git a/src/main/java/run/halo/app/service/JournalService.java b/src/main/java/run/halo/app/service/JournalService.java index d5a481bc5..44e722d96 100644 --- a/src/main/java/run/halo/app/service/JournalService.java +++ b/src/main/java/run/halo/app/service/JournalService.java @@ -1,7 +1,7 @@ package run.halo.app.service; import run.halo.app.model.entity.Journal; -import run.halo.app.service.base.CrudService; +import run.halo.app.service.base.BaseCommentService; /** * Journal service interface. @@ -9,6 +9,6 @@ import run.halo.app.service.base.CrudService; * @author johnniang * @date 19-4-24 */ -public interface JournalService extends CrudService { +public interface JournalService extends BaseCommentService { } diff --git a/src/main/java/run/halo/app/service/impl/JournalServiceImpl.java b/src/main/java/run/halo/app/service/impl/JournalServiceImpl.java index c403d421b..647ab3fe8 100644 --- a/src/main/java/run/halo/app/service/impl/JournalServiceImpl.java +++ b/src/main/java/run/halo/app/service/impl/JournalServiceImpl.java @@ -1,9 +1,12 @@ package run.halo.app.service.impl; +import org.springframework.context.ApplicationEventPublisher; +import org.springframework.stereotype.Service; import run.halo.app.model.entity.Journal; import run.halo.app.repository.JournalRepository; +import run.halo.app.repository.PostRepository; import run.halo.app.service.JournalService; -import run.halo.app.service.base.AbstractCrudService; +import run.halo.app.service.OptionService; /** * Journal service implementation. @@ -11,12 +14,16 @@ import run.halo.app.service.base.AbstractCrudService; * @author johnniang * @date 19-4-24 */ -public class JournalServiceImpl extends AbstractCrudService implements JournalService { +@Service +public class JournalServiceImpl extends BaseCommentServiceImpl implements JournalService { private final JournalRepository journalRepository; - public JournalServiceImpl(JournalRepository journalRepository) { - super(journalRepository); + public JournalServiceImpl(JournalRepository journalRepository, + PostRepository postRepository, + OptionService optionService, + ApplicationEventPublisher eventPublisher) { + super(journalRepository, postRepository, optionService, eventPublisher); this.journalRepository = journalRepository; } } diff --git a/src/main/java/run/halo/app/service/impl/OptionServiceImpl.java b/src/main/java/run/halo/app/service/impl/OptionServiceImpl.java index 5814ae751..2340bb47c 100644 --- a/src/main/java/run/halo/app/service/impl/OptionServiceImpl.java +++ b/src/main/java/run/halo/app/service/impl/OptionServiceImpl.java @@ -130,7 +130,7 @@ public class OptionServiceImpl extends AbstractCrudService impl Set keys = ServiceUtils.fetchProperty(options, Option::getKey); - Map result = ServiceUtils.convertToMap(options, Option::getKey, option -> { + Map userDefinedOptionMap = ServiceUtils.convertToMap(options, Option::getKey, option -> { String key = option.getKey(); PropertyEnum propertyEnum = propertyEnumMap.get(key); @@ -142,6 +142,8 @@ public class OptionServiceImpl extends AbstractCrudService impl return PropertyEnum.convertTo(option.getValue(), propertyEnum); }); + Map result = new HashMap<>(userDefinedOptionMap); + // Add default property propertyEnumMap.keySet() .stream()