diff --git a/src/main/java/cc/ryanc/halo/model/freemarker/tag/CommonTagDirective.java b/src/main/java/cc/ryanc/halo/model/freemarker/tag/CommonTagDirective.java index 1b5ece658..09741ac4e 100644 --- a/src/main/java/cc/ryanc/halo/model/freemarker/tag/CommonTagDirective.java +++ b/src/main/java/cc/ryanc/halo/model/freemarker/tag/CommonTagDirective.java @@ -53,7 +53,7 @@ public class CommonTagDirective implements TemplateDirectiveModel { environment.setVariable("tags", builder.build().wrap(tagService.findAll())); break; case "links": - environment.setVariable("links", builder.build().wrap(linkService.findAll())); + environment.setVariable("links", builder.build().wrap(linkService.listAll())); break; case "newComments": environment.setVariable("newComments", builder.build().wrap(commentService.findAll(1))); diff --git a/src/main/java/cc/ryanc/halo/repository/base/BaseRepositoryImpl.java b/src/main/java/cc/ryanc/halo/repository/base/BaseRepositoryImpl.java index 0dd44b3a5..648e7284c 100644 --- a/src/main/java/cc/ryanc/halo/repository/base/BaseRepositoryImpl.java +++ b/src/main/java/cc/ryanc/halo/repository/base/BaseRepositoryImpl.java @@ -13,7 +13,6 @@ import javax.persistence.TypedQuery; import javax.persistence.criteria.*; import java.util.ArrayList; import java.util.Collections; -import java.util.Iterator; import java.util.List; /** diff --git a/src/main/java/cc/ryanc/halo/service/LinkService.java b/src/main/java/cc/ryanc/halo/service/LinkService.java index be35a639a..b21d80aba 100755 --- a/src/main/java/cc/ryanc/halo/service/LinkService.java +++ b/src/main/java/cc/ryanc/halo/service/LinkService.java @@ -1,9 +1,7 @@ package cc.ryanc.halo.service; import cc.ryanc.halo.model.domain.Link; - -import java.util.List; -import java.util.Optional; +import cc.ryanc.halo.service.base.CrudService; /** *
@@ -13,36 +11,6 @@ import java.util.Optional; * @author : RYAN0UP * @date : 2017/11/14 */ -public interface LinkService { +public interface LinkService extends CrudService { - /** - * 新增/修改友情链接 - * - * @param link link - * @return Link - */ - Link save(Link link); - - /** - * 根据编号删除 - * - * @param linkId linkId - * @return Link - */ - Link remove(Long linkId); - - /** - * 查询所有 - * - * @return List - */ - List findAll(); - - /** - * 根据编号查询单个链接 - * - * @param linkId linkId - * @return Link - */ - Optional findByLinkId(Long linkId); } diff --git a/src/main/java/cc/ryanc/halo/service/impl/LinkServiceImpl.java b/src/main/java/cc/ryanc/halo/service/impl/LinkServiceImpl.java index 8ac598757..78793674c 100755 --- a/src/main/java/cc/ryanc/halo/service/impl/LinkServiceImpl.java +++ b/src/main/java/cc/ryanc/halo/service/impl/LinkServiceImpl.java @@ -3,7 +3,7 @@ package cc.ryanc.halo.service.impl; import cc.ryanc.halo.model.domain.Link; import cc.ryanc.halo.repository.LinkRepository; import cc.ryanc.halo.service.LinkService; -import org.springframework.beans.factory.annotation.Autowired; +import cc.ryanc.halo.service.base.AbstractCrudService; import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; @@ -20,14 +20,18 @@ import java.util.Optional; * @date : 2017/11/14 */ @Service -public class LinkServiceImpl implements LinkService { +public class LinkServiceImpl extends AbstractCrudService implements LinkService { private static final String LINKS_CACHE_KEY = "'link'"; private static final String LINKS_CACHE_NAME = "links"; - @Autowired - private LinkRepository linkRepository; + private final LinkRepository linkRepository; + + public LinkServiceImpl(LinkRepository linkRepository) { + super(linkRepository); + this.linkRepository = linkRepository; + } /** * 新增/修改友情链接 @@ -37,8 +41,8 @@ public class LinkServiceImpl implements LinkService { */ @Override @CacheEvict(value = LINKS_CACHE_NAME, allEntries = true, beforeInvocation = true) - public Link save(Link link) { - return linkRepository.save(link); + public Link create(Link link) { + return super.create(link); } /** @@ -49,10 +53,8 @@ public class LinkServiceImpl implements LinkService { */ @Override @CacheEvict(value = LINKS_CACHE_NAME, allEntries = true, beforeInvocation = true) - public Link remove(Long linkId) { - final Optional link = this.findByLinkId(linkId); - linkRepository.delete(link.get()); - return link.get(); + public Link removeById(Long linkId) { + return super.removeById(linkId); } /** @@ -62,18 +64,8 @@ public class LinkServiceImpl implements LinkService { */ @Override @Cacheable(value = LINKS_CACHE_NAME, key = LINKS_CACHE_KEY) - public List findAll() { - return linkRepository.findAll(); + public List listAll() { + return super.listAll(); } - /** - * 根据编号查询友情链接 - * - * @param linkId linkId - * @return Optional - */ - @Override - public Optional findByLinkId(Long linkId) { - return linkRepository.findById(linkId); - } } diff --git a/src/main/java/cc/ryanc/halo/web/controller/admin/PageController.java b/src/main/java/cc/ryanc/halo/web/controller/admin/PageController.java index addde46da..05d3b8f38 100755 --- a/src/main/java/cc/ryanc/halo/web/controller/admin/PageController.java +++ b/src/main/java/cc/ryanc/halo/web/controller/admin/PageController.java @@ -107,7 +107,7 @@ public class PageController { */ @GetMapping(value = "/links/edit") public String toEditLink(Model model, @RequestParam("linkId") Long linkId) { - final Optional link = linkService.findByLinkId(linkId); + final Optional link = linkService.fetchById(linkId); model.addAttribute("updateLink", link.orElse(new Link())); return "admin/admin_page_link"; } @@ -126,7 +126,7 @@ public class PageController { return new JsonResult(ResultCodeEnum.FAIL.getCode(), error.getDefaultMessage()); } } - link = linkService.save(link); + link = linkService.create(link); if (null == link) { return new JsonResult(ResultCodeEnum.FAIL.getCode(), localeMessageUtil.getMessage("code.admin.common.save-failed")); } @@ -142,7 +142,7 @@ public class PageController { @GetMapping(value = "/links/remove") public String removeLink(@RequestParam("linkId") Long linkId) { try { - linkService.remove(linkId); + linkService.removeById(linkId); } catch (Exception e) { log.error("Deleting a friendship link failed: {}", e.getMessage()); } diff --git a/src/main/java/cc/ryanc/halo/web/controller/api/ApiLinkController.java b/src/main/java/cc/ryanc/halo/web/controller/api/ApiLinkController.java index 505ef5e29..0449fee97 100644 --- a/src/main/java/cc/ryanc/halo/web/controller/api/ApiLinkController.java +++ b/src/main/java/cc/ryanc/halo/web/controller/api/ApiLinkController.java @@ -54,7 +54,7 @@ public class ApiLinkController { */ @GetMapping public JsonResult links() { - final List links = linkService.findAll(); + final List links = linkService.listAll(); if (null != links && links.size() > 0) { return new JsonResult(ResponseStatusEnum.SUCCESS.getCode(), ResponseStatusEnum.SUCCESS.getMsg(), links); } else {