From c6534f3ab435f9f25030b8b38e462262e2fce43b Mon Sep 17 00:00:00 2001 From: TinyAnts Date: Wed, 7 Sep 2022 11:40:43 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=83=AD=E9=97=A8=E6=90=9C?= =?UTF-8?q?=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/decorate/TabbarController.java | 2 - .../controller/setting/SearchController.java | 39 ++++++++++- .../controller/setting/UserController.java | 34 ++++++++-- .../setting/ISettingSearchService.java | 23 +++++++ .../service/setting/ISettingUserService.java | 22 +++++++ .../impl/SettingSearchServiceImpl.java | 66 +++++++++++++++++++ .../setting/impl/SettingUserServiceImpl.java | 42 ++++++++++++ .../mdd/common/entity/setting/HotSearch.java | 22 +++++++ .../mapper/setting/HotSearchMapper.java | 12 ++++ 9 files changed, 251 insertions(+), 11 deletions(-) create mode 100644 server/like-admin/src/main/java/com/mdd/admin/service/setting/impl/SettingSearchServiceImpl.java create mode 100644 server/like-admin/src/main/java/com/mdd/admin/service/setting/impl/SettingUserServiceImpl.java create mode 100644 server/like-common/src/main/java/com/mdd/common/entity/setting/HotSearch.java create mode 100644 server/like-common/src/main/java/com/mdd/common/mapper/setting/HotSearchMapper.java diff --git a/server/like-admin/src/main/java/com/mdd/admin/controller/decorate/TabbarController.java b/server/like-admin/src/main/java/com/mdd/admin/controller/decorate/TabbarController.java index b0eecc9b..1a81bf34 100644 --- a/server/like-admin/src/main/java/com/mdd/admin/controller/decorate/TabbarController.java +++ b/server/like-admin/src/main/java/com/mdd/admin/controller/decorate/TabbarController.java @@ -40,8 +40,6 @@ public class TabbarController { */ @PostMapping("/save") public Object save(@RequestBody Map params) { -// System.out.println( ArrayUtil.objectToListAsStr(params.get("list"))); - iDecorateTabbarService.save(params); return AjaxResult.success(); } diff --git a/server/like-admin/src/main/java/com/mdd/admin/controller/setting/SearchController.java b/server/like-admin/src/main/java/com/mdd/admin/controller/setting/SearchController.java index 68cc72ad..d32a5e97 100644 --- a/server/like-admin/src/main/java/com/mdd/admin/controller/setting/SearchController.java +++ b/server/like-admin/src/main/java/com/mdd/admin/controller/setting/SearchController.java @@ -1,7 +1,11 @@ package com.mdd.admin.controller.setting; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import com.mdd.admin.service.setting.ISettingSearchService; +import com.mdd.common.core.AjaxResult; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.Map; /** * 热搜设置 @@ -9,4 +13,35 @@ import org.springframework.web.bind.annotation.RestController; @RestController("settingSearchController") @RequestMapping("api/setting/search") public class SearchController { + + @Resource + ISettingSearchService iSettingSearchService; + + /** + * 热门搜索详情 + * + * @author fzr + * @return Object + */ + @GetMapping("/detail") + public Object detail() { + Map map = iSettingSearchService.detail(); + return AjaxResult.success(map); + } + + /** + * 热门搜索保存 + * + * @author fzr + * @param params 参数 + * @return Object + */ + @PostMapping("/save") + public Object save(@RequestBody Map params) { + iSettingSearchService.save(params); + return AjaxResult.success(); + } + + + } diff --git a/server/like-admin/src/main/java/com/mdd/admin/controller/setting/UserController.java b/server/like-admin/src/main/java/com/mdd/admin/controller/setting/UserController.java index 06441eba..4983409c 100644 --- a/server/like-admin/src/main/java/com/mdd/admin/controller/setting/UserController.java +++ b/server/like-admin/src/main/java/com/mdd/admin/controller/setting/UserController.java @@ -1,9 +1,11 @@ package com.mdd.admin.controller.setting; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import com.mdd.admin.service.setting.ISettingUserService; +import com.mdd.common.core.AjaxResult; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.Map; /** * 用户设置管理 @@ -12,14 +14,32 @@ import org.springframework.web.bind.annotation.RestController; @RequestMapping("api/setting/user") public class UserController { + @Resource + ISettingUserService iSettingUserService; + + /** + * 用户设置详情 + * + * @author fzr + * @return Object + */ @GetMapping("/detail") public Object detail() { - return null; + Map map = iSettingUserService.detail(); + return AjaxResult.success(map); } + /** + * 用户设置保存 + * + * @author fzr + * @param params 参数 + * @return Object + */ @PostMapping("/save") - public Object save() { - return null; + public Object save(@RequestBody Map params) { + iSettingUserService.save(params); + return AjaxResult.success(); } } diff --git a/server/like-admin/src/main/java/com/mdd/admin/service/setting/ISettingSearchService.java b/server/like-admin/src/main/java/com/mdd/admin/service/setting/ISettingSearchService.java index 4378b4b9..2891e733 100644 --- a/server/like-admin/src/main/java/com/mdd/admin/service/setting/ISettingSearchService.java +++ b/server/like-admin/src/main/java/com/mdd/admin/service/setting/ISettingSearchService.java @@ -1,4 +1,27 @@ package com.mdd.admin.service.setting; +import java.util.Map; + +/** + * 热门搜索服务接口类 + */ public interface ISettingSearchService { + + /** + * 热门搜索详情 + * + * @author fzr + * @return Map + */ + Map detail(); + + /** + * 热门搜索新增 + * + * @author fzr + * @param params 参数 + */ + void save(Map params); + + } diff --git a/server/like-admin/src/main/java/com/mdd/admin/service/setting/ISettingUserService.java b/server/like-admin/src/main/java/com/mdd/admin/service/setting/ISettingUserService.java index bf9354bf..ea8d9d87 100644 --- a/server/like-admin/src/main/java/com/mdd/admin/service/setting/ISettingUserService.java +++ b/server/like-admin/src/main/java/com/mdd/admin/service/setting/ISettingUserService.java @@ -1,4 +1,26 @@ package com.mdd.admin.service.setting; +import java.util.Map; + +/** + * 用户设置服务接口类 + */ public interface ISettingUserService { + + /** + * 用户设置详情 + * + * @author fzr + * @return Map + */ + Map detail(); + + /** + * 用户设置保存 + * + * @author fzr + * @param params 参数 + */ + void save(Map params); + } diff --git a/server/like-admin/src/main/java/com/mdd/admin/service/setting/impl/SettingSearchServiceImpl.java b/server/like-admin/src/main/java/com/mdd/admin/service/setting/impl/SettingSearchServiceImpl.java new file mode 100644 index 00000000..b3c1ee3a --- /dev/null +++ b/server/like-admin/src/main/java/com/mdd/admin/service/setting/impl/SettingSearchServiceImpl.java @@ -0,0 +1,66 @@ +package com.mdd.admin.service.setting.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.mdd.admin.service.setting.ISettingSearchService; +import com.mdd.common.entity.setting.HotSearch; +import com.mdd.common.mapper.setting.HotSearchMapper; +import com.mdd.common.utils.ArrayUtil; +import com.mdd.common.utils.ConfigUtil; +import com.mdd.common.utils.ToolsUtil; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +/** + * 热门搜索服务实现类 + */ +@Service +public class SettingSearchServiceImpl implements ISettingSearchService { + + @Resource + HotSearchMapper hotSearchMapper; + + /** + * 热门搜索详情 + * + * @author fzr + * @return Map + */ + @Override + public Map detail() { + Map response = new LinkedHashMap<>(); + + Integer isHotSearch = Integer.parseInt(ConfigUtil.get("search", "isHotSearch", "0")); + response.put("isHotSearch", isHotSearch); + + List list = hotSearchMapper.selectList(new QueryWrapper().orderByDesc("sort")); + response.put("list", list); + + return response; + } + + /** + * 热门搜索新增 + * + * @author fzr + * @param params 参数 + */ + @Override + public void save(Map params) { + String isHotSearch = params.getOrDefault("isHotSearch", "0").toString(); + ConfigUtil.set("search", "isHotSearch", isHotSearch); + + hotSearchMapper.delete(new QueryWrapper().ge("id", 0)); + for (String obj : ArrayUtil.objectToListAsStr(params.get("list"))) { + Map item = ToolsUtil.jsonToMap(obj); + HotSearch hotSearch = new HotSearch(); + hotSearch.setName(item.getOrDefault("name", "")); + hotSearch.setSort(Integer.parseInt(item.getOrDefault("sort", "0"))); + hotSearchMapper.insert(hotSearch); + } + } + +} diff --git a/server/like-admin/src/main/java/com/mdd/admin/service/setting/impl/SettingUserServiceImpl.java b/server/like-admin/src/main/java/com/mdd/admin/service/setting/impl/SettingUserServiceImpl.java new file mode 100644 index 00000000..8ed9bf79 --- /dev/null +++ b/server/like-admin/src/main/java/com/mdd/admin/service/setting/impl/SettingUserServiceImpl.java @@ -0,0 +1,42 @@ +package com.mdd.admin.service.setting.impl; + +import com.mdd.admin.service.setting.ISettingUserService; +import com.mdd.common.utils.ConfigUtil; +import com.mdd.common.utils.UrlUtil; +import org.springframework.stereotype.Service; + +import java.util.LinkedHashMap; +import java.util.Map; + +/** + * 用户设置服务实现类 + */ +@Service +public class SettingUserServiceImpl implements ISettingUserService { + + /** + * 用户设置详情 + * + * @author fzr + * @return Map + */ + @Override + public Map detail() { + String defaultAvatar = ConfigUtil.get("user", "defaultAvatar", ""); + Map response = new LinkedHashMap<>(); + response.put("defaultAvatar", UrlUtil.toAbsoluteUrl(defaultAvatar)); + return response; + } + + /** + * 用户设置保存 + * + * @author fzr + * @param params 参数 + */ + @Override + public void save(Map params) { + ConfigUtil.set("user", "defaultAvatar", UrlUtil.toRelativeUrl(params.getOrDefault("defaultAvatar", ""))); + } + +} diff --git a/server/like-common/src/main/java/com/mdd/common/entity/setting/HotSearch.java b/server/like-common/src/main/java/com/mdd/common/entity/setting/HotSearch.java new file mode 100644 index 00000000..5febb534 --- /dev/null +++ b/server/like-common/src/main/java/com/mdd/common/entity/setting/HotSearch.java @@ -0,0 +1,22 @@ +package com.mdd.common.entity.setting; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.io.Serializable; + +/** + * 热门搜索实体 + */ +@Data +public class HotSearch implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value="id", type= IdType.AUTO) + private Integer id; // 主键 + private String name; // 关键词 + private Integer sort; // 排序号 + +} diff --git a/server/like-common/src/main/java/com/mdd/common/mapper/setting/HotSearchMapper.java b/server/like-common/src/main/java/com/mdd/common/mapper/setting/HotSearchMapper.java new file mode 100644 index 00000000..7bc63502 --- /dev/null +++ b/server/like-common/src/main/java/com/mdd/common/mapper/setting/HotSearchMapper.java @@ -0,0 +1,12 @@ +package com.mdd.common.mapper.setting; + +import com.mdd.common.core.basics.IBaseMapper; +import com.mdd.common.entity.setting.HotSearch; +import org.apache.ibatis.annotations.Mapper; + +/** + * 热门搜索Mapper + */ +@Mapper +public interface HotSearchMapper extends IBaseMapper { +}