From e4213193fe5274cf140e7ce54272670ed2eeb55e Mon Sep 17 00:00:00 2001 From: WangHao <43278047@qq.com> Date: Sun, 10 Oct 2021 00:21:47 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A0=87=E7=AD=BE=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yunbookmark/SqBookmarkController.java | 22 +++-- .../yunbookmark/SqTagController.java | 32 ++++++- .../src/views/bookmark/bookmark/index.vue | 49 ++++++---- ruoyi-ui/src/views/bookmark/index/index.vue | 16 ++-- .../bookmark/mapper/SqBookmarkMapper.java | 3 + .../ruoyi/bookmark/pojo/SqBookmarkReq.java | 92 +++++++++++++++++++ .../com/ruoyi/bookmark/pojo/SqTagReq.java | 45 +++++++++ .../bookmark/service/ISqBookmarkService.java | 9 ++ .../service/impl/SqBookmarkServiceImpl.java | 9 +- .../mapper/bookmark/SqBookmarkMapper.xml | 24 +++++ .../resources/mapper/bookmark/SqTagMapper.xml | 2 +- 11 files changed, 263 insertions(+), 40 deletions(-) create mode 100644 ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/pojo/SqBookmarkReq.java create mode 100644 ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/pojo/SqTagReq.java diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/yunbookmark/SqBookmarkController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/yunbookmark/SqBookmarkController.java index 17398d654..1c317437a 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/yunbookmark/SqBookmarkController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/yunbookmark/SqBookmarkController.java @@ -6,6 +6,7 @@ import java.util.Date; import java.util.List; import com.ruoyi.bookmark.domain.SqBookmark; +import com.ruoyi.bookmark.pojo.SqBookmarkReq; import com.ruoyi.bookmark.service.ISqBookmarkService; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.bookmarkhtml.ImportHtml; @@ -13,14 +14,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; @@ -126,7 +120,6 @@ public class SqBookmarkController extends BaseController /** * 查询书签管理列表 聚合>> 星标 稍后看 最新书签 */ -// @PreAuthorize("@ss.hasPermi('bookmark:bookmark:list')") @GetMapping("/listByUserAndPolymerization") public TableDataInfo listByUserAndPolymerization(SqBookmark sqBookmark) { @@ -207,4 +200,15 @@ public class SqBookmarkController extends BaseController { return toAjax(sqBookmarkService.deleteSqBookmarkByIds(bookmarkIds)); } + + + /** + * 用户-根据标签查询书签分页 + */ + @GetMapping(value = "/listByTag") + public TableDataInfo listByTag(SqBookmarkReq sqBookmarkReq){ + sqBookmarkReq.setUserid(getAuthUser().getUserId()); + startPage(); + return getDataTable(sqBookmarkService.getlistByTag(sqBookmarkReq)); + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/yunbookmark/SqTagController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/yunbookmark/SqTagController.java index 0a9ee12c3..a4d389416 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/yunbookmark/SqTagController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/yunbookmark/SqTagController.java @@ -2,7 +2,9 @@ package com.ruoyi.web.controller.yunbookmark; import java.util.List; +import com.ruoyi.bookmark.pojo.SqTagReq; import com.ruoyi.common.core.domain.entity.SysUser; +import org.springframework.beans.BeanUtils; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -53,14 +55,40 @@ public class SqTagController extends BaseController * 模糊查书签TAG */ @GetMapping("/listByUserLike") - public TableDataInfo listByUserLike() + public TableDataInfo listByUserLike(SqTagReq req) { + SqTag sqTag = new SqTag(); + BeanUtils.copyProperties(req,sqTag); + sqTag.setUserId(getAuthUser().getUserId()); startPage(); - List list = sqTagService.selectSqTagList(new SqTag(getAuthUser().getUserId())); + List list = sqTagService.selectSqTagList(sqTag); return getDataTable(list); } + /** + * 新增书签_标签 + */ + @PostMapping("/addByUser") + public AjaxResult addByUser(SqTagReq req) + { + SqTag sqTag = new SqTag(); + BeanUtils.copyProperties(req,sqTag); + sqTag.setUserId(getAuthUser().getUserId()); + return toAjax(sqTagService.insertSqTag(sqTag)); + } + + /** + * 修改书签_标签 + */ + @PutMapping("/editByUser") + public AjaxResult editByUser(SqTagReq req) + { + SqTag sqTag = new SqTag(); + BeanUtils.copyProperties(req,sqTag); + sqTag.setUserId(getAuthUser().getUserId()); + return toAjax(sqTagService.updateSqTag(sqTag)); + } diff --git a/ruoyi-ui/src/views/bookmark/bookmark/index.vue b/ruoyi-ui/src/views/bookmark/bookmark/index.vue index 5f16e59a5..5f77020e3 100644 --- a/ruoyi-ui/src/views/bookmark/bookmark/index.vue +++ b/ruoyi-ui/src/views/bookmark/bookmark/index.vue @@ -71,29 +71,29 @@ 按时间排序(反) - 按标题A-Z排序(正) - - 按标题A-Z排序(反) - + + + + -
- - - - 按时间排序(正) - 按时间排序(反) - 按字母A-Z排序 - 按字母A-Z排序 - 按网站A-Z排序 - - + + + + + + + + + + + + + -
+ @@ -362,6 +362,7 @@ Ueditor:undefined,//点击的编辑器文章id noteId:undefined, //点击的noteId user:'',//登陆的用户信息 + sortState:true,//是否进行请求书签的拼接,切换排序规则时,不能进行拼接,重新渲染数据 false表示切换了 true没切换 @@ -744,7 +745,13 @@ this.queryParams.bkOrderBy=""; listByUserAndPolymerization(this.queryParams).then(response => { if (response.code == 200) { - this.bookmarkList = this.bookmarkList.concat(response.rows); + //如果进行了排序切换 就不能进行拼接 + if (this.sortState){ + this.bookmarkList = this.bookmarkList.concat(response.rows); + }else{ + this.bookmarkList = response.rows; + this.sortState = false; + } this.total = response.total; this.listloading = false this.loading = false; @@ -787,7 +794,11 @@ /**切换排序规则**/ handleCommand(command) { + if (this.queryParams.sort != command){ + this.sortState = false;//是否切换了新的排序规则方式 false表示切换了 true没切换 + } this.queryParams.sort = command; + this.getBypropertyList(this.property); }, diff --git a/ruoyi-ui/src/views/bookmark/index/index.vue b/ruoyi-ui/src/views/bookmark/index/index.vue index b1409a0c6..455aafefe 100644 --- a/ruoyi-ui/src/views/bookmark/index/index.vue +++ b/ruoyi-ui/src/views/bookmark/index/index.vue @@ -32,14 +32,14 @@ 稍后看 5 -
- 发现 - -
-
- 收件箱 - 5 -
+ + + + + + + +
diff --git a/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/mapper/SqBookmarkMapper.java b/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/mapper/SqBookmarkMapper.java index 1a350b30a..a34369407 100644 --- a/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/mapper/SqBookmarkMapper.java +++ b/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/mapper/SqBookmarkMapper.java @@ -1,6 +1,7 @@ package com.ruoyi.bookmark.mapper; import com.ruoyi.bookmark.domain.SqBookmark; +import com.ruoyi.bookmark.pojo.SqBookmarkReq; import com.ruoyi.common.mybatisMapper.MyMapper; import org.apache.ibatis.annotations.Param; @@ -120,4 +121,6 @@ public interface SqBookmarkMapper extends MyMapper * */ List listByUserAndPolymerization(SqBookmark sqBookmark); + + List getlistByTag(SqBookmarkReq sqBookmarkReq); } diff --git a/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/pojo/SqBookmarkReq.java b/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/pojo/SqBookmarkReq.java new file mode 100644 index 000000000..a417d81c9 --- /dev/null +++ b/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/pojo/SqBookmarkReq.java @@ -0,0 +1,92 @@ +package com.ruoyi.bookmark.pojo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.annotation.Excel; +import lombok.Data; +import lombok.ToString; + +import javax.persistence.*; +import java.util.Date; +import java.util.List; +import java.util.Map; + +/** + * 书签管理对象 sq_bookmark 不存在的字段注解 @Transient + * + */ +@Data +public class SqBookmarkReq +{ + private Long bookmarkId; + + private Long userid; + + /** 书签标题 */ + private String title; + + /** 书签地址 */ + private String url; + + /** 官网地址 */ + private String urls; + + /** 书签描述 */ + private String description; + + /** 图片 */ + private String image; + + /** 标签 */ + private String label; + + /** 分类ID */ + private Long menuId; + + /** 点赞数 */ + private Long zcount; + + /** 0 未删除 1表示删除 */ + private Integer idelete; + + /** 0公开显示 1隐藏显示 2好友显示 3稍后再看 */ + private Integer start; + + /** 0非星标 1星标 */ + private Integer bookmarkStar; + + /** 创建时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date createTime; + + /**tag名称串**/ + private String tagNameAll; + + /**是否稍后读 0不是 1是**/ + private Integer seeYouLater; + + private Long parentId; + + /** 书签的类型 星标 稍后看 最新书签 **/ + private String type; + + /** 排序的方式 **/ + private String sort; + + /** 搜索 **/ + private String sousuo; + + /** 标签ID **/ + private Long tagId; + + + + private List> sqTags; + public SqBookmarkReq(){ + } + + public SqBookmarkReq(String url, Long userid){ + this.url = url; + this.userid = userid; + } + +} diff --git a/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/pojo/SqTagReq.java b/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/pojo/SqTagReq.java new file mode 100644 index 000000000..2973320d4 --- /dev/null +++ b/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/pojo/SqTagReq.java @@ -0,0 +1,45 @@ +package com.ruoyi.bookmark.pojo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.persistence.Column; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; +import javax.persistence.Table; +import java.util.Date; + +/** + * 书签_标签对象 sq_tag + * + * @author ruoyi + * @date 2020-09-05 + */ +@Data +public class SqTagReq +{ + /** 书签标签id */ + private Long id; + + /** 标签名字 */ + private String name; + + /** 链接 */ + private String url; + + /** 状态 0显示默认*/ + private Integer status; + + + /** 标签的字体颜色 */ + private String isFontColor; + + /** 标签的背景颜色 */ + private String isBgColor; + + + +} diff --git a/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/service/ISqBookmarkService.java b/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/service/ISqBookmarkService.java index 881f35d9d..703f959e1 100644 --- a/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/service/ISqBookmarkService.java +++ b/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/service/ISqBookmarkService.java @@ -2,6 +2,7 @@ package com.ruoyi.bookmark.service; import java.util.List; import com.ruoyi.bookmark.domain.SqBookmark; +import com.ruoyi.bookmark.pojo.SqBookmarkReq; import com.ruoyi.common.utils.bookmarkhtml.HtmlName; /** @@ -170,4 +171,12 @@ public interface ISqBookmarkService * */ List listByUserAndPolymerization(SqBookmark sqBookmark); + + + /** + * 用户根据标签ID 查询对应的书签 分页 + * @param + * + */ + List getlistByTag(SqBookmarkReq sqBookmarkReq); } diff --git a/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/service/impl/SqBookmarkServiceImpl.java b/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/service/impl/SqBookmarkServiceImpl.java index bc160f3dc..15de7982b 100644 --- a/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/service/impl/SqBookmarkServiceImpl.java +++ b/ruoyi-yunbookmark/src/main/java/com/ruoyi/bookmark/service/impl/SqBookmarkServiceImpl.java @@ -19,6 +19,7 @@ import com.ruoyi.bookmark.mapper.SqBookmarkTagMapper; import com.ruoyi.bookmark.mapper.SqMenuMapper; import com.ruoyi.bookmark.mapper.SqTagMapper; +import com.ruoyi.bookmark.pojo.SqBookmarkReq; import com.ruoyi.bookmark.service.ISqTagService; import com.ruoyi.common.utils.StringUtils; @@ -135,7 +136,7 @@ public class SqBookmarkServiceImpl implements ISqBookmarkService } catch (MalformedURLException e) { logger.info("用户ID:"+sqBookmark.getUserid()+",新增书签"+sqBookmark.getUrl()+"获取网址的 主机信息 报错 -"+new Date()); } - if(null==sqBookmark.getDescription()||"".equals(sqBookmark.getDescription())){ + if(StringUtils.isEmpty(sqBookmark.getDescription())){ sqBookmark.setDescription(sqBookmark.getTitle()); } //转换传入的父级ID @@ -537,5 +538,11 @@ public class SqBookmarkServiceImpl implements ISqBookmarkService return sqBookmarkMapper.listByUserAndPolymerization(search); } + @Override + public List getlistByTag(SqBookmarkReq sqBookmarkReq) { + + return sqBookmarkMapper.getlistByTag(sqBookmarkReq); + } + } diff --git a/ruoyi-yunbookmark/src/main/resources/mapper/bookmark/SqBookmarkMapper.xml b/ruoyi-yunbookmark/src/main/resources/mapper/bookmark/SqBookmarkMapper.xml index c3ba4ed40..376fc3e91 100644 --- a/ruoyi-yunbookmark/src/main/resources/mapper/bookmark/SqBookmarkMapper.xml +++ b/ruoyi-yunbookmark/src/main/resources/mapper/bookmark/SqBookmarkMapper.xml @@ -210,4 +210,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + diff --git a/ruoyi-yunbookmark/src/main/resources/mapper/bookmark/SqTagMapper.xml b/ruoyi-yunbookmark/src/main/resources/mapper/bookmark/SqTagMapper.xml index fd17a7fa1..8589df921 100644 --- a/ruoyi-yunbookmark/src/main/resources/mapper/bookmark/SqTagMapper.xml +++ b/ruoyi-yunbookmark/src/main/resources/mapper/bookmark/SqTagMapper.xml @@ -24,7 +24,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"