From 729a63deca3af1ea6d2b15e50d2e933d215114ae Mon Sep 17 00:00:00 2001 From: TinyAnts Date: Mon, 29 Aug 2022 19:00:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=89=8D=E7=AB=AF=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../front/controller/ArticleController.java | 54 +++++++++++ .../mdd/front/controller/IndexController.java | 42 +++++++- .../mdd/front/controller/UserController.java | 27 ++++++ .../mdd/front/service/IArticleService.java | 18 ++++ .../com/mdd/front/service/IIndexService.java | 34 +++++++ .../com/mdd/front/service/IUserService.java | 4 + .../service/impl/ArticleServiceImpl.java | 36 +++++++ .../front/service/impl/IndexServiceImpl.java | 97 +++++++++++++++++++ .../front/service/impl/UserServiceImpl.java | 7 ++ .../mdd/front/vo/article/ArticleCateVo.java | 18 ++++ .../mdd/front/vo/article/ArticleDetailVo.java | 13 +++ .../mdd/front/vo/article/ArticleListVo.java | 11 +++ .../src/main/resources/application.yml | 10 +- 13 files changed, 366 insertions(+), 5 deletions(-) create mode 100644 server/like-front/src/main/java/com/mdd/front/controller/ArticleController.java create mode 100644 server/like-front/src/main/java/com/mdd/front/controller/UserController.java create mode 100644 server/like-front/src/main/java/com/mdd/front/service/IArticleService.java create mode 100644 server/like-front/src/main/java/com/mdd/front/service/IIndexService.java create mode 100644 server/like-front/src/main/java/com/mdd/front/service/IUserService.java create mode 100644 server/like-front/src/main/java/com/mdd/front/service/impl/ArticleServiceImpl.java create mode 100644 server/like-front/src/main/java/com/mdd/front/service/impl/IndexServiceImpl.java create mode 100644 server/like-front/src/main/java/com/mdd/front/service/impl/UserServiceImpl.java create mode 100644 server/like-front/src/main/java/com/mdd/front/vo/article/ArticleCateVo.java create mode 100644 server/like-front/src/main/java/com/mdd/front/vo/article/ArticleDetailVo.java create mode 100644 server/like-front/src/main/java/com/mdd/front/vo/article/ArticleListVo.java diff --git a/server/like-front/src/main/java/com/mdd/front/controller/ArticleController.java b/server/like-front/src/main/java/com/mdd/front/controller/ArticleController.java new file mode 100644 index 00000000..d7cdad6f --- /dev/null +++ b/server/like-front/src/main/java/com/mdd/front/controller/ArticleController.java @@ -0,0 +1,54 @@ +package com.mdd.front.controller; + +import com.mdd.common.core.AjaxResult; +import com.mdd.front.service.IArticleService; +import com.mdd.front.vo.article.ArticleCateVo; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; + +@RestController +@RequestMapping("/api/article") +public class ArticleController { + + @Resource + IArticleService iArticleService; + + /** + * 文章分类 + * + * @author fzr + * @return Object + */ + @GetMapping("/category") + public Object category() { + List list = iArticleService.category(); + return AjaxResult.success(list); + } + + /** + * 文章列表 + * + * @author fzr + * @return Object + */ + @GetMapping("/list") + public Object list() { + return AjaxResult.success(); + } + + /** + * 文章详情 + * + * @author fzr + * @return Object + */ + @GetMapping("/detail") + public Object detail() { + return AjaxResult.success(); + } + +} diff --git a/server/like-front/src/main/java/com/mdd/front/controller/IndexController.java b/server/like-front/src/main/java/com/mdd/front/controller/IndexController.java index 7bd78605..3238eccd 100644 --- a/server/like-front/src/main/java/com/mdd/front/controller/IndexController.java +++ b/server/like-front/src/main/java/com/mdd/front/controller/IndexController.java @@ -1,17 +1,57 @@ package com.mdd.front.controller; import com.mdd.common.core.AjaxResult; +import com.mdd.common.validator.annotation.IDMust; +import com.mdd.front.service.IIndexService; +import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; +import javax.annotation.Resource; +import java.util.Map; + @RestController @RequestMapping("/api") public class IndexController { + @Resource + IIndexService IIndexService; + + /** + * 首页 + * + * @author fzr + * @return Object + */ @GetMapping("/index") public Object index() { - return AjaxResult.success(); + Map detail = IIndexService.index(); + return AjaxResult.success(detail); } + /** + * 装修 + * + * @author fzr + * @param id 主键 + * @return Object + */ + @GetMapping("/decorate") + public Object decorate(@Validated @IDMust() @RequestParam("id") Integer id) { + Map detail = IIndexService.decorate(id); + return AjaxResult.success(detail); + } + + /** + * 配置 + * + * @author fzr + * @return Object + */ + @GetMapping("/config") + public Object config() { + return AjaxResult.success(); + } } diff --git a/server/like-front/src/main/java/com/mdd/front/controller/UserController.java b/server/like-front/src/main/java/com/mdd/front/controller/UserController.java new file mode 100644 index 00000000..2d5d2b26 --- /dev/null +++ b/server/like-front/src/main/java/com/mdd/front/controller/UserController.java @@ -0,0 +1,27 @@ +package com.mdd.front.controller; + +import com.mdd.common.core.AjaxResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("api/user") +public class UserController { + + @GetMapping("/center") + public Object center() { + return AjaxResult.success(); + } + + @GetMapping("/info") + public Object info() { + return AjaxResult.success(); + } + + @GetMapping("/agreement") + public Object agreement() { + return AjaxResult.success(); + } + +} diff --git a/server/like-front/src/main/java/com/mdd/front/service/IArticleService.java b/server/like-front/src/main/java/com/mdd/front/service/IArticleService.java new file mode 100644 index 00000000..6b608d0c --- /dev/null +++ b/server/like-front/src/main/java/com/mdd/front/service/IArticleService.java @@ -0,0 +1,18 @@ +package com.mdd.front.service; + +import com.mdd.front.vo.article.ArticleCateVo; + +import java.util.List; + +/** + * 文章服务接口类 + */ +public interface IArticleService { + + List category(); + + Object list(); + + Object detail(); + +} diff --git a/server/like-front/src/main/java/com/mdd/front/service/IIndexService.java b/server/like-front/src/main/java/com/mdd/front/service/IIndexService.java new file mode 100644 index 00000000..60552777 --- /dev/null +++ b/server/like-front/src/main/java/com/mdd/front/service/IIndexService.java @@ -0,0 +1,34 @@ +package com.mdd.front.service; + +import java.util.Map; + +/** + * 首页服务接口类 + */ +public interface IIndexService { + + /** + * 首页 + * + * @author fzr + * @return Map + */ + Map index(); + + /** + * 装修 + * + * @author fzr + * @return Map + */ + Map decorate(Integer id); + + /** + * 配置 + * + * @author fzr + * @return Map + */ + Map config(); + +} diff --git a/server/like-front/src/main/java/com/mdd/front/service/IUserService.java b/server/like-front/src/main/java/com/mdd/front/service/IUserService.java new file mode 100644 index 00000000..902fe124 --- /dev/null +++ b/server/like-front/src/main/java/com/mdd/front/service/IUserService.java @@ -0,0 +1,4 @@ +package com.mdd.front.service; + +public interface IUserService { +} diff --git a/server/like-front/src/main/java/com/mdd/front/service/impl/ArticleServiceImpl.java b/server/like-front/src/main/java/com/mdd/front/service/impl/ArticleServiceImpl.java new file mode 100644 index 00000000..705177ed --- /dev/null +++ b/server/like-front/src/main/java/com/mdd/front/service/impl/ArticleServiceImpl.java @@ -0,0 +1,36 @@ +package com.mdd.front.service.impl; + +import com.mdd.common.mapper.article.ArticleCategoryMapper; +import com.mdd.common.mapper.article.ArticleMapper; +import com.mdd.front.service.IArticleService; +import com.mdd.front.vo.article.ArticleCateVo; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service +public class ArticleServiceImpl implements IArticleService { + + @Resource + ArticleMapper articleMapper; + + @Resource + ArticleCategoryMapper articleCategoryMapper; + + @Override + public List category() { + return null; + } + + @Override + public Object list() { + return null; + } + + @Override + public Object detail() { + return null; + } + +} diff --git a/server/like-front/src/main/java/com/mdd/front/service/impl/IndexServiceImpl.java b/server/like-front/src/main/java/com/mdd/front/service/impl/IndexServiceImpl.java new file mode 100644 index 00000000..424007b9 --- /dev/null +++ b/server/like-front/src/main/java/com/mdd/front/service/impl/IndexServiceImpl.java @@ -0,0 +1,97 @@ +package com.mdd.front.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Assert; +import com.mdd.common.entity.decorate.DecoratePage; +import com.mdd.common.entity.decorate.DecorateTabbar; +import com.mdd.common.mapper.decorate.DecoratePageMapper; +import com.mdd.common.mapper.decorate.DecorateTabbarMapper; +import com.mdd.common.utils.ToolsUtil; +import com.mdd.common.utils.UrlUtil; +import com.mdd.front.service.IIndexService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.LinkedHashMap; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; + +/** + * 首页服务实现类 + */ +@Service +public class IndexServiceImpl implements IIndexService { + + @Resource + DecoratePageMapper decoratePageMapper; + + @Resource + DecorateTabbarMapper decorateTabbarMapper; + + /** + * 首页 + * + * @author fzr + * @return Map + */ + @Override + public Map index() { + Map response = new LinkedHashMap<>(); + + DecoratePage decoratePage = decoratePageMapper.selectOne( + new QueryWrapper() + .eq("id", 1) + .last("limit 1")); + + List> tabs = new LinkedList<>(); + List decorateTabbars = decorateTabbarMapper.selectList(new QueryWrapper().orderByAsc("id")); + for (DecorateTabbar tab: decorateTabbars) { + Map map = new LinkedHashMap<>(); + map.put("name", tab.getName()); + map.put("selected", UrlUtil.toAbsoluteUrl(tab.getSelected())); + map.put("unselected", UrlUtil.toAbsoluteUrl(tab.getUnselected())); + map.put("link", tab.getLink()); + tabs.add(map); + } + + response.put("pages", ToolsUtil.jsonToMap(decoratePage.getPageData())); + response.put("tabbar", tabs); + return response; + } + + /** + * 装修 + * + * @author fzr + * @param id 主键 + * @return Map + */ + @Override + public Map decorate(Integer id) { + DecoratePage decoratePage = decoratePageMapper.selectOne( + new QueryWrapper() + .eq("id", id) + .last("limit 1")); + + Assert.notNull(decoratePage, "数据不存在!"); + + Map response = new LinkedHashMap<>(); + response.put("type", decoratePage.getPageType()); + response.put("name", decoratePage.getPageName()); + response.put("pages", ToolsUtil.jsonToMap(decoratePage.getPageData())); + return response; + } + + /** + * 配置 + * + * @author fzr + * @return Map + */ + @Override + public Map config() { + return null; + } + +} diff --git a/server/like-front/src/main/java/com/mdd/front/service/impl/UserServiceImpl.java b/server/like-front/src/main/java/com/mdd/front/service/impl/UserServiceImpl.java new file mode 100644 index 00000000..72dabd34 --- /dev/null +++ b/server/like-front/src/main/java/com/mdd/front/service/impl/UserServiceImpl.java @@ -0,0 +1,7 @@ +package com.mdd.front.service.impl; + +import org.springframework.stereotype.Service; + +@Service +public class UserServiceImpl { +} diff --git a/server/like-front/src/main/java/com/mdd/front/vo/article/ArticleCateVo.java b/server/like-front/src/main/java/com/mdd/front/vo/article/ArticleCateVo.java new file mode 100644 index 00000000..4a48e7f2 --- /dev/null +++ b/server/like-front/src/main/java/com/mdd/front/vo/article/ArticleCateVo.java @@ -0,0 +1,18 @@ +package com.mdd.front.vo.article; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 文章分类Vo + */ +@Data +public class ArticleCateVo implements Serializable { + + private static final long serialVersionUID = 1L; + + private Integer id; // 主键 + private String name; // 名称 + +} diff --git a/server/like-front/src/main/java/com/mdd/front/vo/article/ArticleDetailVo.java b/server/like-front/src/main/java/com/mdd/front/vo/article/ArticleDetailVo.java new file mode 100644 index 00000000..82c13a9d --- /dev/null +++ b/server/like-front/src/main/java/com/mdd/front/vo/article/ArticleDetailVo.java @@ -0,0 +1,13 @@ +package com.mdd.front.vo.article; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class ArticleDetailVo implements Serializable { + + private static final long serialVersionUID = 1L; + + +} diff --git a/server/like-front/src/main/java/com/mdd/front/vo/article/ArticleListVo.java b/server/like-front/src/main/java/com/mdd/front/vo/article/ArticleListVo.java new file mode 100644 index 00000000..82affba0 --- /dev/null +++ b/server/like-front/src/main/java/com/mdd/front/vo/article/ArticleListVo.java @@ -0,0 +1,11 @@ +package com.mdd.front.vo.article; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class ArticleListVo implements Serializable { + + private static final long serialVersionUID = 1L; +} diff --git a/server/like-front/src/main/resources/application.yml b/server/like-front/src/main/resources/application.yml index 0a2c7816..0531e345 100644 --- a/server/like-front/src/main/resources/application.yml +++ b/server/like-front/src/main/resources/application.yml @@ -4,7 +4,7 @@ like: # 服务配置 server: - port: 8083 + port: 8084 # 框架配置 spring: @@ -50,9 +50,11 @@ spring: mybatis-plus: mapper-locations: classpath*:/mapper/**Mapper.xml # 映射文件路径 typeAliasesPackage: com.mdd.**.mapper -# configuration: -# log-impl: org.apache.ibatis.logging.stdout.StdOutImpl + # configuration: + # log-impl: org.apache.ibatis.logging.stdout.StdOutImpl global-config: banner: false db-config: - table-prefix: ls_ # 设置表前缀 \ No newline at end of file + table-prefix: la_ # 设置表前缀 + configuration-properties: + prefix: la_ # 自定义表前缀标签${prefix} \ No newline at end of file