From 7a4321c9118e48e3e239907216eec2c5e343d0ea Mon Sep 17 00:00:00 2001 From: zhangmeng <1334717033@qq.com> Date: Tue, 16 Nov 2021 18:26:52 +0800 Subject: [PATCH] =?UTF-8?q?update=202021=E5=B9=B411=E6=9C=8816=E6=97=A518:?= =?UTF-8?q?24:41?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mystyle-cloud-admin-manager/pom.xml | 6 +- .../manager/controller/TagsController.java | 115 ++++++++++++++++++ .../controller/UrlRequestController.java | 84 ++++++++++--- .../zhangmeng/admin/manager/dao/TagsDao.java | 8 ++ .../admin/manager/feign/FictionFeign.java | 2 +- .../admin/manager/service/TagsService.java | 7 ++ .../manager/service/impl/TagsServiceImpl.java | 11 ++ .../src/main/resources/application.yml | 14 ++- .../static/system/admin/js/mystyle-admin.js | 12 ++ .../resources/templates/admin/tags/add.ftl | 11 +- .../resources/templates/admin/tags/edit.ftl | 11 +- .../resources/templates/admin/tags/list.ftl | 97 ++++++++------- mystyle-cloud-admin-monitor/pom.xml | 81 ++++++++++++ .../monitor/AdminMonitorApplication.java | 15 +++ .../monitor/config/ResourceServerConfig.java | 84 +++++++++++++ .../src/main/resources/application.yml | 25 ++++ .../src/main/resources/public.key | 1 + .../FictionCollectionControllerApi.java | 17 +++ mystyle-cloud-blog/pom.xml | 6 + .../src/main/resources/application.yml | 13 +- .../FictionCollectionController.java | 13 +- .../src/main/resources/application.yml | 6 + .../base/baseController/BaseController.java | 7 ++ .../model/base/baseUtil/CommonUtil.java | 9 ++ .../model/dto/system/SysConstant.java | 10 ++ .../java/com/zhangmeng/model/entity/Tags.java | 68 +++++++++++ pom.xml | 14 +++ 27 files changed, 666 insertions(+), 81 deletions(-) create mode 100644 mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/controller/TagsController.java create mode 100644 mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/dao/TagsDao.java create mode 100644 mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/service/TagsService.java create mode 100644 mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/service/impl/TagsServiceImpl.java create mode 100644 mystyle-cloud-admin-monitor/pom.xml create mode 100644 mystyle-cloud-admin-monitor/src/main/java/com/zhangmeng/monitor/AdminMonitorApplication.java create mode 100644 mystyle-cloud-admin-monitor/src/main/java/com/zhangmeng/monitor/config/ResourceServerConfig.java create mode 100644 mystyle-cloud-admin-monitor/src/main/resources/application.yml create mode 100644 mystyle-cloud-admin-monitor/src/main/resources/public.key create mode 100644 mystyle-cloud-model/src/main/java/com/zhangmeng/model/entity/Tags.java diff --git a/mystyle-cloud-admin-manager/pom.xml b/mystyle-cloud-admin-manager/pom.xml index 5431f30..d18e0bd 100644 --- a/mystyle-cloud-admin-manager/pom.xml +++ b/mystyle-cloud-admin-manager/pom.xml @@ -66,6 +66,11 @@ spring-cloud-sleuth-zipkin + + de.codecentric + spring-boot-admin-starter-client + + net.oschina.zcx7878 fastdfs-client-java @@ -80,7 +85,6 @@ org.springframework.boot spring-boot-starter-freemarker - \ No newline at end of file diff --git a/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/controller/TagsController.java b/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/controller/TagsController.java new file mode 100644 index 0000000..53f7bc4 --- /dev/null +++ b/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/controller/TagsController.java @@ -0,0 +1,115 @@ +package com.zhangmeng.admin.manager.controller; + +import com.github.pagehelper.PageInfo; +import com.zhangmeng.admin.manager.service.TagsService; +import com.zhangmeng.model.base.baseController.BaseController; +import com.zhangmeng.model.base.baseUtil.CommonUtil; +import com.zhangmeng.model.dto.query.QueryParams; +import com.zhangmeng.model.entity.Tags; +import com.zhangmeng.model.vo.Result; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.servlet.ModelAndView; +import springfox.documentation.annotations.ApiIgnore; +import tk.mybatis.mapper.entity.Condition; +import tk.mybatis.mapper.entity.Example; + +import java.util.List; +import java.util.Map; + +/** + * @author zhangmeng + * @version 1.0 + * @date 2021年8月20日08:44:26 + */ +@Api(tags = "标签管理") +@RestController +@RequestMapping("/tags") +public class TagsController extends BaseController { + + @Autowired + private TagsService tagsService; + + @ApiOperation("标签列表") + @GetMapping("/list") + public Result list(String tagName, Integer pageNum, Integer pageSize) { + CommonUtil.page_params_verify(pageNum, pageSize); //校验 + Condition condition = new Condition(Tags.class); + Example.Criteria criteria = condition.createCriteria(); + if (tagName != null && !tagName.equals("")) { + criteria.andLike("tagName", "%" + tagName + "%"); + } + PageInfo pageInfo = this.tagsService.findByCondition(new QueryParams(pageNum, pageSize, "addTime desc"), true); + return this.responseJsonData(pageInfo.getTotal(), pageInfo.getList()); + } + + @ApiOperation("标签保存") + @PostMapping("/save") + public Result save(@RequestBody @RequestParam Map map) { + + Condition condition = new Condition(Tags.class); + Example.Criteria criteria = condition.createCriteria(); + + String tagName = CommonUtil.map_get_value(map, "tagName"); + String tagId = CommonUtil.map_get_value(map, "tagId"); + Tags tags = null; + boolean flag = false; + if (tagId == null || tagId.equals("")) { + tags = new Tags(); + flag = true; + } else { + tags = this.tagsService.findById(Long.parseLong(tagId)); + } + if (tagName != null && !tagName.equals("")) { + //判断是否是修改 + if (flag) { + criteria.andEqualTo("tagName", tagName); + //查找是否存在 + List tagsList = this.tagsService.findByCondition(condition); + if (tagsList.size() > 0) { + return this.failure("该标签已经存在,请重新输入!"); + } + } + tags.setTagName(tagName); + } + String description = CommonUtil.map_get_value(map, "description"); + if (CommonUtil.isNotNull(description)) { + tags.setDescription(description); + } + String tagType = CommonUtil.map_get_value(map, "tagType"); + if (CommonUtil.isNotNull(tagType)) { + Tags.Type type = CommonUtil.getEnum(tagType, Tags.Type.class); + tags.setType(type); + } + String message = null; + if (flag) { + message = "保存成功"; + this.tagsService.save(tags); + } else { + message = "修改成功"; + this.tagsService.update(tags); + } + return this.success(message); + } + + @ApiOperation("根据id删除标签") + @PostMapping("/delete") + public Result delete(String tagId) { + if (CommonUtil.isNotNull(tagId)) { + this.tagsService.deleteById(Long.parseLong(tagId)); + } + return this.success("删除成功!"); + } + + @ApiOperation("标签批量删除") + @PostMapping("/batchRemove") + public Result batchRemove(String ids) { + if (CommonUtil.isNotNull(ids)) { + this.tagsService.deleteByIds(CommonUtil.firstLastComma(ids)); + } + return success("批量删除成功"); + } +} diff --git a/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/controller/UrlRequestController.java b/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/controller/UrlRequestController.java index aa0266e..792765f 100644 --- a/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/controller/UrlRequestController.java +++ b/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/controller/UrlRequestController.java @@ -4,23 +4,24 @@ import com.alibaba.fastjson.JSONObject; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.zhangmeng.admin.manager.feign.*; -import com.zhangmeng.admin.manager.service.PermissionService; -import com.zhangmeng.admin.manager.service.RoleService; -import com.zhangmeng.admin.manager.service.SysLogService; -import com.zhangmeng.admin.manager.service.UserService; +import com.zhangmeng.admin.manager.service.*; import com.zhangmeng.admin.manager.utils.UserUtil; import com.zhangmeng.model.base.baseController.BaseController; import com.zhangmeng.model.base.baseUtil.CommonUtil; import com.zhangmeng.model.dto.system.EncryptType; import com.zhangmeng.model.dto.system.Menu; import com.zhangmeng.model.dto.query.QueryParams; +import com.zhangmeng.model.dto.system.SysConstant; import com.zhangmeng.model.entity.*; import com.zhangmeng.model.vo.Result; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cloud.client.ServiceInstance; +import org.springframework.cloud.client.loadbalancer.LoadBalancerClient; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; +import org.springframework.web.servlet.view.RedirectView; import springfox.documentation.annotations.ApiIgnore; import tk.mybatis.mapper.entity.Condition; import tk.mybatis.mapper.entity.Example; @@ -35,6 +36,9 @@ import java.util.*; @Controller public class UrlRequestController extends BaseController { + @Autowired + private LoadBalancerClient loadBalancerClient; + @Autowired private UserUtil userUtil; @@ -65,8 +69,11 @@ public class UrlRequestController extends BaseController { @Autowired private FictionFeign fictionFeign; + @Autowired + private TagsService tagsService; + //跳转首页 - @GetMapping({"/login","/"}) + @GetMapping({"/login"}) public ModelAndView login (){ return this.jumpPage("admin/login"); } @@ -347,17 +354,17 @@ public class UrlRequestController extends BaseController { return this.jumpPage("admin/code/form"); } - @GetMapping("/mail/index") + @GetMapping(SysConstant.mail_prefix + "/index") public ModelAndView mail_index() { return this.jumpPage("admin/mail/list"); } - @GetMapping("/mail/add") + @GetMapping(SysConstant.mail_prefix + "/add") public ModelAndView mail_add() { return this.jumpPage("admin/mail/add"); } - @GetMapping("/mail/edit") + @GetMapping(SysConstant.mail_prefix + "/edit") public ModelAndView mail_edit(String mail_id,Model model) { if (mail_id != null ){ Mail mail = this.mailFeign.findById(Long.parseLong(mail_id)); @@ -368,14 +375,12 @@ public class UrlRequestController extends BaseController { return this.jumpPage("admin/mail/edit"); } - @ApiIgnore - @GetMapping("/fiction/add") + @GetMapping(SysConstant.fiction_prefix + "/add") public ModelAndView add() { return this.jumpPage("admin/fiction/fiction_add"); } - @ApiIgnore - @GetMapping("/fiction/chapter/{id}") + @GetMapping(SysConstant.fiction_prefix + "/chapter/{id}") public ModelAndView chapter(Model model, @PathVariable Long id) { Fiction fiction = this.fictionFeign.findById(id); @@ -386,8 +391,7 @@ public class UrlRequestController extends BaseController { return this.jumpPage("xiaoshuo/fiction_chapter"); } - @ApiIgnore - @GetMapping("/details/{chapter_id}") + @GetMapping(SysConstant.fiction_prefix + "/details/{chapter_id}") public ModelAndView details(Model model, @PathVariable String chapter_id){ String replace = chapter_id.replace(",", ""); @@ -405,8 +409,8 @@ public class UrlRequestController extends BaseController { } @ApiIgnore - @GetMapping("/fiction/index") - public ModelAndView index(Model model, Integer pageNum, Integer pageSize) { + @GetMapping(SysConstant.fiction_prefix + "/index") + public ModelAndView fiction_index(Model model, Integer pageNum, Integer pageSize) { if (pageNum == null || pageSize == null) { pageNum = pageNum == null ? 1 : pageNum; @@ -428,16 +432,60 @@ public class UrlRequestController extends BaseController { return this.jumpPage("xiaoshuo/index"); } - @GetMapping("/fictionCollection/index") + @GetMapping(SysConstant.fictionCollection_prefix + "/index") public ModelAndView fictionCollection_index() { return this.jumpPage("admin/fiction/fiction_list"); } - @GetMapping("/fictionCollection/edit") + @GetMapping(SysConstant.fictionCollection_prefix + "/edit") public ModelAndView fictionCollection_edit(@RequestParam("fiction_id") Long fiction_id,Model model){ FictionCollection fictionCollection = this.fictionFeign.findFictionCollectionById(fiction_id); model.addAttribute("fictionCollection",fictionCollection); return this.jumpPage("admin/fiction/fiction_edit"); } + + + @GetMapping(SysConstant.tags_prefix + "/index") + public ModelAndView tags_index() { + return this.jumpPage("admin/tags/list"); + } + + @GetMapping(SysConstant.tags_prefix + "/add") + public ModelAndView tags_add(Model model) { + model.addAttribute("tagTypeList", Tags.Type.enumListMap()); + return this.jumpPage("admin/tags/add"); + } + + @GetMapping(SysConstant.tags_prefix + "/edit") + public ModelAndView tags_edit(Model model, String tagId) { + if (CommonUtil.isNotNull(tagId)) { + Tags tags = this.tagsService.findById(Long.parseLong(tagId)); + model.addAttribute("tags", tags); + } + model.addAttribute("tagTypeList", Tags.Type.enumListMap()); + return this.jumpPage("admin/tags/edit"); + } + + @RequestMapping("/zipkin") + public RedirectView zipkin_loginPage() { + String url = "http://localhost:9411/zipkin/"; + return new RedirectView(url); + } + + @RequestMapping("/sentinel") + public RedirectView nacos_loginPage() { + String url = "http://localhost:8748/#/login"; + return new RedirectView(url); + } + + @RequestMapping("/boot/admin") + public RedirectView boot_admin_loginPage() { + ServiceInstance serviceInstance = loadBalancerClient.choose(SysConstant.mystyle_cloud_admin_monitor); + if (serviceInstance == null) { + throw new RuntimeException("找不到对应的服务"); + } + String path = serviceInstance.getUri().toString(); + return new RedirectView(path); + } } \ No newline at end of file diff --git a/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/dao/TagsDao.java b/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/dao/TagsDao.java new file mode 100644 index 0000000..05d3b6c --- /dev/null +++ b/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/dao/TagsDao.java @@ -0,0 +1,8 @@ +package com.zhangmeng.admin.manager.dao; +import com.zhangmeng.model.base.baseDao.AbstractBaseMapper; +import com.zhangmeng.model.entity.Tags; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface TagsDao extends AbstractBaseMapper { +} diff --git a/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/feign/FictionFeign.java b/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/feign/FictionFeign.java index ee23e65..9310138 100644 --- a/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/feign/FictionFeign.java +++ b/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/feign/FictionFeign.java @@ -27,6 +27,6 @@ public interface FictionFeign { @GetMapping(SysConstant.mystyle_cloud_fiction_prefix + "/findAllToFiction") List findAll(); - @ + @GetMapping(SysConstant.fictionCollection_prefix + "/findFictionCollectionById") FictionCollection findFictionCollectionById(@RequestParam("fiction_id") Long fiction_id); } diff --git a/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/service/TagsService.java b/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/service/TagsService.java new file mode 100644 index 0000000..5ee2328 --- /dev/null +++ b/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/service/TagsService.java @@ -0,0 +1,7 @@ +package com.zhangmeng.admin.manager.service; + +import com.zhangmeng.model.base.baseService.BaseService; +import com.zhangmeng.model.entity.Tags; + +public interface TagsService extends BaseService { +} diff --git a/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/service/impl/TagsServiceImpl.java b/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/service/impl/TagsServiceImpl.java new file mode 100644 index 0000000..d61524c --- /dev/null +++ b/mystyle-cloud-admin-manager/src/main/java/com/zhangmeng/admin/manager/service/impl/TagsServiceImpl.java @@ -0,0 +1,11 @@ +package com.zhangmeng.admin.manager.service.impl; + +import com.zhangmeng.admin.manager.service.TagsService; +import com.zhangmeng.model.base.baseService.impl.AbstractBaseServiceImpl; +import com.zhangmeng.model.entity.Tags; +import org.springframework.stereotype.Service; + +@Service +public class TagsServiceImpl extends AbstractBaseServiceImpl implements TagsService { + +} diff --git a/mystyle-cloud-admin-manager/src/main/resources/application.yml b/mystyle-cloud-admin-manager/src/main/resources/application.yml index c9e2c6d..5fa0203 100644 --- a/mystyle-cloud-admin-manager/src/main/resources/application.yml +++ b/mystyle-cloud-admin-manager/src/main/resources/application.yml @@ -57,7 +57,6 @@ mapper: mystyle: security: open-api: - - / - /login - /favicon.ico # 开放FAVICON - /system/** @@ -71,7 +70,18 @@ mystyle: - /v3/api-docs - /doc.html - /webjars/** + - /actuator/** + - /instances/** verification-code: type: mysql expiration-time: 300 - redis-key: redis-29b9f4ddcf8072d2f856a67f76957821 \ No newline at end of file + redis-key: redis-29b9f4ddcf8072d2f856a67f76957821 +management: + endpoints: + web: + exposure: + include: '*' + endpoint: + health: + show-details: ALWAYS + enabled: true \ No newline at end of file diff --git a/mystyle-cloud-admin-manager/src/main/resources/static/system/admin/js/mystyle-admin.js b/mystyle-cloud-admin-manager/src/main/resources/static/system/admin/js/mystyle-admin.js index b78f561..d7fec5d 100644 --- a/mystyle-cloud-admin-manager/src/main/resources/static/system/admin/js/mystyle-admin.js +++ b/mystyle-cloud-admin-manager/src/main/resources/static/system/admin/js/mystyle-admin.js @@ -136,6 +136,18 @@ var fiction_save_url = gate_way_url + "/" + fiction_url + "/fiction/save"; //小说集合列表 var fictionCollection_list_url = gate_way_url + "/" + fiction_url + "/fictionCollection/list"; var fictionCollection_add_url = gate_way_url + "/" + admin_manager_url + "/fiction/add" + access_token_url; +//标签列表 +var tags_list_url = gate_way_url + "/" + admin_manager_url + "/tags/list"; +//新增标签 +var tags_add_url = gate_way_url + "/" + admin_manager_url + "/tags/add" + access_token_url; +//标签保存 +var tags_save_url = gate_way_url + "/" + admin_manager_url + "/tags/save"; +//标签删除 +var tags_delete_url = gate_way_url + "/" + admin_manager_url; +//标签批量删除 +var tags_batchRemove_url = gate_way_url + "/" + admin_manager_url + "/tags/batchRemove"; +//标签编辑 +var tags_edit_url = gate_way_url + "/" + admin_manager_url + "/tags/edit" + access_token_url ; //页面跳转 function postToPage(url, token) { diff --git a/mystyle-cloud-admin-manager/src/main/resources/templates/admin/tags/add.ftl b/mystyle-cloud-admin-manager/src/main/resources/templates/admin/tags/add.ftl index 804265c..f2a91aa 100644 --- a/mystyle-cloud-admin-manager/src/main/resources/templates/admin/tags/add.ftl +++ b/mystyle-cloud-admin-manager/src/main/resources/templates/admin/tags/add.ftl @@ -3,7 +3,7 @@ 标签添加 - +
@@ -51,8 +51,9 @@
- - + + + - + + + - - + + +