标签管理
This commit is contained in:
parent
900076723f
commit
6414758036
@ -181,7 +181,8 @@ public class SqBookmarkController extends BaseController
|
|||||||
public AjaxResult add(@RequestBody SqBookmark sqBookmark)
|
public AjaxResult add(@RequestBody SqBookmark sqBookmark)
|
||||||
{
|
{
|
||||||
sqBookmark.setUserid(getAuthUser().getUserId());
|
sqBookmark.setUserid(getAuthUser().getUserId());
|
||||||
return toAjax(sqBookmarkService.insertSqBookmark(sqBookmark));
|
int i = sqBookmarkService.insertSqBookmark(sqBookmark);
|
||||||
|
return new AjaxResult(200,(i>0&&i!=999)?"success":"repetition");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -37,6 +37,40 @@ public class SqTagController extends BaseController
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取所有的书签TAG 并且翻页
|
||||||
|
*/
|
||||||
|
@GetMapping("/listByUser")
|
||||||
|
public TableDataInfo listByUser()
|
||||||
|
{
|
||||||
|
startPage();
|
||||||
|
List<SqTag> list = sqTagService.selectSqTagList(new SqTag(getAuthUser().getUserId()));
|
||||||
|
return getDataTable(list);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 模糊查书签TAG
|
||||||
|
*/
|
||||||
|
@GetMapping("/listByUserLike")
|
||||||
|
public TableDataInfo listByUserLike()
|
||||||
|
{
|
||||||
|
startPage();
|
||||||
|
List<SqTag> list = sqTagService.selectSqTagList(new SqTag(getAuthUser().getUserId()));
|
||||||
|
return getDataTable(list);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// 以下是系统管理员的操作
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询书签_标签列表
|
* 查询书签_标签列表
|
||||||
|
@ -174,16 +174,6 @@ public class SqBookmarkTest extends BaseSpringBootTest{
|
|||||||
* @return
|
* @return
|
||||||
* @throws Exception
|
* @throws Exception
|
||||||
*/
|
*/
|
||||||
private HttpSession getLoginSession() throws Exception{
|
|
||||||
// mock request get login session
|
|
||||||
// url = /xxx/xxx/{username}/{password}
|
|
||||||
MvcResult result = this.mockMvc
|
|
||||||
.perform((MockMvcRequestBuilders.post("/login")))
|
|
||||||
.andExpect(MockMvcResultMatchers.status().isOk())
|
|
||||||
.andReturn();
|
|
||||||
return result.getRequest().getSession();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -15,8 +15,12 @@ import org.junit.Test;
|
|||||||
import org.mybatis.spring.SqlSessionTemplate;
|
import org.mybatis.spring.SqlSessionTemplate;
|
||||||
import org.omg.PortableServer.THREAD_POLICY_ID;
|
import org.omg.PortableServer.THREAD_POLICY_ID;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.test.web.servlet.MvcResult;
|
||||||
|
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
|
||||||
|
import org.springframework.test.web.servlet.result.MockMvcResultMatchers;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpSession;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -38,10 +42,19 @@ public class SqMenuTest extends BaseSpringBootTest{
|
|||||||
SqBookmarkMapper sqBookmarkMapper;
|
SqBookmarkMapper sqBookmarkMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
SqlSessionTemplate sqlSessionTemplate;
|
SqlSessionTemplate sqlSessionTemplate;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void addMenuUplinkSeries() {
|
public void addMenuUplinkSeries() {
|
||||||
|
|
||||||
|
|
||||||
List<com.ruoyi.bookmark.domain.SqMenu> sqMenus = sqMenuMapper.selectbymenuUplinkSeries();
|
List<com.ruoyi.bookmark.domain.SqMenu> sqMenus = sqMenuMapper.selectbymenuUplinkSeries();
|
||||||
if (null!=sqMenus&&!sqMenus.isEmpty()) {
|
if (null!=sqMenus&&!sqMenus.isEmpty()) {
|
||||||
for (com.ruoyi.bookmark.domain.SqMenu s:sqMenus) {
|
for (com.ruoyi.bookmark.domain.SqMenu s:sqMenus) {
|
||||||
@ -88,6 +101,11 @@ public class SqMenuTest extends BaseSpringBootTest{
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void test67(){
|
||||||
|
iSqBookmarkService.bookmarkDeleteRepetition(1L);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 初始化是否有下级目录 subordinate 0无下级 1有下级
|
* 初始化是否有下级目录 subordinate 0无下级 1有下级
|
||||||
|
@ -62,6 +62,7 @@
|
|||||||
"vue": "2.6.10",
|
"vue": "2.6.10",
|
||||||
"vue-count-to": "1.0.13",
|
"vue-count-to": "1.0.13",
|
||||||
"vue-cropper": "0.4.9",
|
"vue-cropper": "0.4.9",
|
||||||
|
"vue-material": "^1.0.0-beta-15",
|
||||||
"vue-quill-editor": "3.0.6",
|
"vue-quill-editor": "3.0.6",
|
||||||
"vue-router": "3.0.2",
|
"vue-router": "3.0.2",
|
||||||
"vue-splitpane": "1.0.4",
|
"vue-splitpane": "1.0.4",
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
<template>
|
<template>
|
||||||
<div id="app">
|
<div id="app" style="overflow: hidden;">
|
||||||
<router-view />
|
<router-view />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: 'App'
|
name: 'App'
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
@ -1,5 +1,36 @@
|
|||||||
import request from '@/utils/request'
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询书签_标签列表
|
||||||
|
export function listByUser(query) {
|
||||||
|
return request({
|
||||||
|
url: '/system/tag/listByUser',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询书签_标签列表
|
||||||
|
export function listByUserLike(query) {
|
||||||
|
return request({
|
||||||
|
url: '/system/tag/listByUserLike',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 查询书签_标签列表
|
// 查询书签_标签列表
|
||||||
export function listTag(query) {
|
export function listTag(query) {
|
||||||
return request({
|
return request({
|
||||||
@ -50,4 +81,4 @@ export function exportTag(query) {
|
|||||||
method: 'get',
|
method: 'get',
|
||||||
params: query
|
params: query
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
1
ruoyi-ui/src/assets/icons/svg/str.svg
Normal file
1
ruoyi-ui/src/assets/icons/svg/str.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1620535693527" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3174" data-spm-anchor-id="a313x.7781069.0.i4" width="32" height="32" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><style type="text/css"></style></defs><path d="M492.544 663.7568c-6.7584 0-13.7216-2.6624-18.8416-7.7824l-113.0496-113.0496c-5.9392-4.9152-9.6256-12.0832-9.6256-20.2752 0-14.7456 11.6736-26.624 26.4192-26.624h0.6144c6.9632 0 13.9264 2.8672 18.8416 7.7824l114.4832 114.4832a26.58304 26.58304 0 0 1-18.8416 45.4656z" fill="#4e6ef2" p-id="3175"></path><path d="M312.7296 909.312c-9.4208 0-18.8416-3.072-26.8288-9.0112-13.5168-9.8304-20.2752-27.2384-16.9984-44.032l37.888-221.5936-161.3824-157.696c-11.8784-11.4688-16.384-29.4912-11.264-45.4656 5.12-15.9744 19.2512-27.8528 35.84-30.3104l222.8224-31.9488 100.5568-202.3424c7.3728-14.9504 22.528-24.576 39.3216-24.7808h0.2048c16.7936 0 32.5632 9.6256 39.936 24.7808l99.7376 202.3424 223.232 32.3584c15.9744 1.4336 30.9248 13.1072 36.4544 29.9008 5.12 16.5888 0.8192 33.5872-10.8544 45.056l-121.856 118.5792c-12.0832 11.8784-31.5392 11.6736-43.4176-0.6144a30.72 30.72 0 0 1 0.6144-43.4176l96.4608-93.7984-205.2096-29.696c-10.0352-1.4336-18.6368-7.7824-23.1424-16.7936L533.0944 225.28l-92.3648 185.9584c-4.5056 9.0112-13.1072 15.36-23.1424 16.7936l-204.3904 29.2864 148.0704 144.7936c7.168 6.9632 10.4448 17.2032 8.8064 27.2384l-35.0208 204.8 183.7056-96.6656c9.0112-4.7104 19.6608-4.7104 28.672 0l181.0432 95.0272-69.4272-283.8528c-4.096-16.384 6.144-33.1776 22.528-37.0688 16.5888-4.096 33.1776 6.144 37.0688 22.528l78.4384 320.3072c3.2768 13.312 0.2048 27.648-8.6016 38.5024-8.6016 10.6496-21.7088 17.2032-35.6352 16.384-6.144-0.2048-13.1072-1.6384-19.456-4.9152l-200.0896-105.0624-199.68 105.0624c-6.5536 3.2768-13.7216 4.9152-20.8896 4.9152zM737.28 868.7616c0 0.2048 0 0.2048 0 0z m-407.7568-2.048l-0.2048 0.6144c0.2048-0.2048 0.2048-0.4096 0.2048-0.6144z m-24.576-16.9984c-0.2048 0-0.2048 0.2048-0.4096 0.2048l0.4096-0.2048z m582.0416-387.2768c0.6144 0.2048 1.2288 0.2048 1.8432 0.2048l-1.8432-0.2048zM188.416 432.7424c0 0.2048 0 0.2048 0 0zM548.4544 194.1504z m-30.72 0z" fill="#4e6ef2" p-id="3176"></path><path d="M676.0448 258.6624c-7.7824 0-15.7696-3.072-21.7088-9.0112a30.5152 30.5152 0 0 1 0-43.4176l82.5344-82.5344c12.0832-12.0832 31.5392-12.0832 43.4176 0s12.0832 31.5392 0 43.4176l-82.5344 82.5344c-5.9392 6.144-13.7216 9.0112-21.7088 9.0112zM120.2176 796.0576c-7.7824 0-15.7696-3.072-21.7088-9.0112a30.5152 30.5152 0 0 1 0-43.4176l121.0368-121.0368c12.0832-12.0832 31.5392-12.0832 43.4176 0s12.0832 31.5392 0 43.4176l-121.0368 121.0368c-5.9392 5.9392-13.9264 9.0112-21.7088 9.0112zM709.2224 356.1472c-7.7824 0-15.7696-3.072-21.7088-9.0112a30.5152 30.5152 0 0 1 0-43.4176l73.728-74.1376a30.5152 30.5152 0 0 1 43.4176 0c12.0832 11.8784 12.0832 31.3344 0 43.4176l-73.728 74.1376c-5.9392 6.144-13.7216 9.0112-21.7088 9.0112z" fill="#4e6ef2" p-id="3177"></path></svg>
|
After Width: | Height: | Size: 3.0 KiB |
BIN
ruoyi-ui/src/assets/image/sj.png
Normal file
BIN
ruoyi-ui/src/assets/image/sj.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.5 KiB |
BIN
ruoyi-ui/src/assets/image/sqsc.png
Normal file
BIN
ruoyi-ui/src/assets/image/sqsc.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 8.0 KiB |
BIN
ruoyi-ui/src/assets/image/ts.png
Normal file
BIN
ruoyi-ui/src/assets/image/ts.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 64 KiB |
BIN
ruoyi-ui/src/assets/image/zwsj.png
Normal file
BIN
ruoyi-ui/src/assets/image/zwsj.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 65 KiB |
@ -28,7 +28,11 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="bookmark-official bookmark-list-tag-top">{{bm.urls}} · </div>
|
<div class="bookmark-official bookmark-list-tag-top">{{bm.urls}} · </div>
|
||||||
<div class="bookmark-time bookmark-list-tag-top">{{bm.createTime|changeTime}}</div>
|
<div class="bookmark-time bookmark-list-tag-top">{{bm.createTime|changeTime}}</div>
|
||||||
<div class="bookmark-time bookmark-list-tag-top">{{bm.bookmarkStar}}</div>
|
<div class="bookmark-time bookmark-list-tag-top" v-if="bm.bookmarkStar == 1">
|
||||||
|
<svg-icon slot="prefix" icon-class="str" style="font-size: 18px;"/>
|
||||||
|
<!-- <i class="el-icon-star-on" style="color: #569cd5;font-size: 18px;margin-top: 4px"></i>-->
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class="bookmark-time" v-if="bm.tagNameAll!=null&&bm.tagNameAll!=''" >
|
<div class="bookmark-time" v-if="bm.tagNameAll!=null&&bm.tagNameAll!=''" >
|
||||||
<el-tag v-for="item in JSON.parse(bm.tagNameAll)" class="bookmark-list-tag bookmark-list-tag-top" style="float: left" type="info" data-tagid="item.tagId" size="mini">
|
<el-tag v-for="item in JSON.parse(bm.tagNameAll)" class="bookmark-list-tag bookmark-list-tag-top" style="float: left" type="info" data-tagid="item.tagId" size="mini">
|
||||||
@ -69,7 +73,7 @@
|
|||||||
isBookmarkIcon:false,
|
isBookmarkIcon:false,
|
||||||
Ueditor:undefined,
|
Ueditor:undefined,
|
||||||
seen:false,
|
seen:false,
|
||||||
current:0,
|
current:0
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted(){
|
mounted(){
|
||||||
@ -109,15 +113,39 @@
|
|||||||
},
|
},
|
||||||
/** 星标 **/
|
/** 星标 **/
|
||||||
updateStarById:function(bookmarkId,bookmarkStar){
|
updateStarById:function(bookmarkId,bookmarkStar){
|
||||||
|
var that = this;
|
||||||
console.log("bookmarkStar:"+bookmarkStar)
|
console.log("bookmarkStar:"+bookmarkStar)
|
||||||
var param={
|
var param={
|
||||||
bookmarkId:bookmarkId,
|
bookmarkId:bookmarkId,
|
||||||
bookmarkStr:bookmarkStar==0?1:0
|
bookmarkStr:bookmarkStar
|
||||||
}
|
}
|
||||||
console.log("bookmarkStar2:"+param.bookmarkStar)
|
console.log("bookmarkStar2:"+param.bookmarkStar)
|
||||||
updateBookmarkStarById(param).then(response => {
|
updateBookmarkStarById(param).then(response => {
|
||||||
if (response.code === 200) {
|
if (response.code === 200) {
|
||||||
this.msgSuccess("设置成功");
|
this.msgSuccess("设置成功");
|
||||||
|
// let list = this.bookmarkList;
|
||||||
|
// for (var i=0;i<list.length;i++){
|
||||||
|
// if (list[i].bookmarkId == bookmarkId) {
|
||||||
|
// that.$set(this.bookmarkList[i], `bookmarkStr`, 0)
|
||||||
|
// console.log("bookmarkStar2:"+this.bookmarkList[i].bookmarkStr)
|
||||||
|
// break;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// //修改数据
|
||||||
|
// for (var item of list) {
|
||||||
|
// if (item.bookmarkId == bookmarkId){
|
||||||
|
// //修改数据
|
||||||
|
// console.log(item.bookmarkId+" "+bookmarkId);
|
||||||
|
// console.log("item.bookmarkstatus1 = "+ item.bookmarkStr);
|
||||||
|
// item.bookmarkStr = bookmarkStar;
|
||||||
|
// this.$set(item, `showAlert`, true)
|
||||||
|
// console.log("item.bookmarkstatus2 = "+ item.bookmarkStr);
|
||||||
|
// this.bookmarkList = list;
|
||||||
|
// break;
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
@ -145,6 +173,7 @@
|
|||||||
|
|
||||||
/**搜索高亮 开始**/
|
/**搜索高亮 开始**/
|
||||||
highLight(item, highLight) {
|
highLight(item, highLight) {
|
||||||
|
// console.log("搜索高亮")
|
||||||
return this.highLightTableMsg(item, highLight)
|
return this.highLightTableMsg(item, highLight)
|
||||||
},
|
},
|
||||||
highLightTableMsg(msg, highLightStr) {
|
highLightTableMsg(msg, highLightStr) {
|
||||||
|
@ -27,7 +27,12 @@ import 'element-ui/lib/theme-chalk/index.css'
|
|||||||
//媒体查詢
|
//媒体查詢
|
||||||
import '@/assets/styles/base.css'
|
import '@/assets/styles/base.css'
|
||||||
|
|
||||||
|
// 全局引入VueMaterial组件库 https://vuematerial.io/
|
||||||
|
// import VueMaterial from 'vue-material'
|
||||||
|
// import 'vue-material/dist/vue-material.min.css'
|
||||||
|
// import 'vue-material/dist/theme/default.css'
|
||||||
|
//
|
||||||
|
// Vue.use(VueMaterial)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
<div class="mdui-btn-group head-tag-button">
|
<div class="mdui-btn-group head-tag-button">
|
||||||
<!-- <div :class="['classification',property=='0'?' classification-click':'']" @click="showopen(0)"><span>网页</span></div>-->
|
<!-- <div :class="['classification',property=='0'?' classification-click':'']" @click="showopen(0)"><span>网页</span></div>-->
|
||||||
<button @click="goRouter(1)" :class="['mdui-btn mdui-color-theme-accent mdui-ripple ',property=='1'?' mdui-btn-active mdui-color-blue-50 mdui-text-color-blue-600':'']">个人中心</button>
|
<button @click="goRouter(1)" :class="['mdui-btn mdui-color-theme-accent mdui-ripple ',property=='1'?' mdui-btn-active mdui-color-blue-50 mdui-text-color-blue-600':'']">个人中心</button>
|
||||||
<button @click="goRouter(7)" :class="['mdui-btn mdui-color-theme-accent mdui-ripple ',property=='7'?' mdui-btn-active mdui-color-blue-50 mdui-text-color-blue-600':'']">外观设置</button>
|
<!-- <button @click="goRouter(7)" :class="['mdui-btn mdui-color-theme-accent mdui-ripple ',property=='7'?' mdui-btn-active mdui-color-blue-50 mdui-text-color-blue-600':'']">外观设置</button>-->
|
||||||
<button @click="goRouter(2)" :class="['mdui-btn mdui-color-theme-accent mdui-ripple ',property=='2'?' mdui-btn-active mdui-color-blue-50 mdui-text-color-blue-600':'']">系统设置</button>
|
<button @click="goRouter(2)" :class="['mdui-btn mdui-color-theme-accent mdui-ripple ',property=='2'?' mdui-btn-active mdui-color-blue-50 mdui-text-color-blue-600':'']">系统设置</button>
|
||||||
<button @click="goRouter(3)" :class="['mdui-btn mdui-color-theme-accent mdui-ripple ',property=='3'?' mdui-btn-active mdui-color-blue-50 mdui-text-color-blue-600':'']">导入书签</button>
|
<button @click="goRouter(3)" :class="['mdui-btn mdui-color-theme-accent mdui-ripple ',property=='3'?' mdui-btn-active mdui-color-blue-50 mdui-text-color-blue-600':'']">导入书签</button>
|
||||||
<button @click="goRouter(4)" :class="['mdui-btn mdui-color-theme-accent mdui-ripple ',property=='4'?' mdui-btn-active mdui-color-blue-50 mdui-text-color-blue-600':'']">备份导出</button>
|
<button @click="goRouter(4)" :class="['mdui-btn mdui-color-theme-accent mdui-ripple ',property=='4'?' mdui-btn-active mdui-color-blue-50 mdui-text-color-blue-600':'']">备份导出</button>
|
||||||
@ -70,7 +70,7 @@
|
|||||||
that.$router.push({
|
that.$router.push({
|
||||||
path: "/content",
|
path: "/content",
|
||||||
query: {
|
query: {
|
||||||
menuId: 'BOOKMARK'
|
menuId: 'newest'
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
break;
|
break;
|
||||||
|
@ -24,7 +24,8 @@
|
|||||||
<div class="sousouright-iconadd">
|
<div class="sousouright-iconadd">
|
||||||
<el-dropdown trigger="click" size="small" :hide-on-click="true" >
|
<el-dropdown trigger="click" size="small" :hide-on-click="true" >
|
||||||
<span class="el-dropdown-link">
|
<span class="el-dropdown-link">
|
||||||
<i class="el-icon-plus" style="font-size: 18px;"/>
|
<!-- <i class="el-icon-plus" style="font-size: 18px;"/>-->
|
||||||
|
<el-button icon="el-icon-plus" style="border:0px;font-size: 18px;" size="mini"></el-button>
|
||||||
</span>
|
</span>
|
||||||
<el-dropdown-menu slot="dropdown" class="sq-dropdown">
|
<el-dropdown-menu slot="dropdown" class="sq-dropdown">
|
||||||
<el-dropdown-item class="filter-item" icon="el-icon-plus" @click.native="addbookmarkurl">添加连接
|
<el-dropdown-item class="filter-item" icon="el-icon-plus" @click.native="addbookmarkurl">添加连接
|
||||||
@ -38,7 +39,7 @@
|
|||||||
<el-dropdown trigger="click" size="small" :hide-on-click="false">
|
<el-dropdown trigger="click" size="small" :hide-on-click="false">
|
||||||
<span class="el-dropdown-link">
|
<span class="el-dropdown-link">
|
||||||
|
|
||||||
<el-avatar :size="28"
|
<el-avatar style="margin-top: 5px" :size="28"
|
||||||
src="https://up.raindrop.io/collection/templates/social-media-logos-6/97social.png"></el-avatar>
|
src="https://up.raindrop.io/collection/templates/social-media-logos-6/97social.png"></el-avatar>
|
||||||
</span>
|
</span>
|
||||||
<el-dropdown-menu slot="dropdown" class="sq-dropdown">
|
<el-dropdown-menu slot="dropdown" class="sq-dropdown">
|
||||||
@ -55,14 +56,15 @@
|
|||||||
<div class="filter-tbar">
|
<div class="filter-tbar">
|
||||||
<div class="filter-classification">
|
<div class="filter-classification">
|
||||||
<div :class="['classification',property=='0'?' classification-click':'']" @click="showopen(0)"><span>网页</span></div>
|
<div :class="['classification',property=='0'?' classification-click':'']" @click="showopen(0)"><span>网页</span></div>
|
||||||
<div :class="['classification',property=='1'?' classification-click':'']" @click="showopen(1)"><span>文本</span></div>
|
<!-- <div :class="['classification',property=='1'?' classification-click':'']" @click="showopen(1)"><span>文本</span></div>-->
|
||||||
<div :class="['classification',property=='2'?' classification-click':'']" @click="showopen(2)"><span>其他</span></div>
|
<div :class="['classification',property=='2'?' classification-click':'']" @click="showopen(2)"><span>其他</span></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="setUpThe">
|
<div class="setUpThe">
|
||||||
<div class="filter-content">
|
<div class="filter-content">
|
||||||
<el-dropdown trigger="hover" size="small" @command="handleCommand">
|
<el-dropdown trigger="hover" size="small" @command="handleCommand">
|
||||||
<div class="el-dropdown-link dropdownList">
|
<div class="el-dropdown-link dropdownList">
|
||||||
<i class="el-icon-document-checked "></i>
|
<!-- <i class="el-icon-document-checked "></i>-->
|
||||||
|
<el-button icon="el-icon-document-checked" style="border:0px;font-size: 18px;" size="mini"></el-button>
|
||||||
</div>
|
</div>
|
||||||
<el-dropdown-menu slot="dropdown" class="filter-sort-dropdown">
|
<el-dropdown-menu slot="dropdown" class="filter-sort-dropdown">
|
||||||
<el-dropdown-item class="filter-item" command="0"><i class="el-icon-bottom"></i>按时间排序(正)
|
<el-dropdown-item class="filter-item" command="0"><i class="el-icon-bottom"></i>按时间排序(正)
|
||||||
@ -80,7 +82,7 @@
|
|||||||
<div class="filter-content">
|
<div class="filter-content">
|
||||||
<el-dropdown trigger="hover" size="small">
|
<el-dropdown trigger="hover" size="small">
|
||||||
<div class="el-dropdown-link dropdownList">
|
<div class="el-dropdown-link dropdownList">
|
||||||
<i class="el-icon-tickets "></i>
|
<el-button icon="el-icon-tickets" style="border:0px;font-size: 18px;" size="mini"></el-button>
|
||||||
</div>
|
</div>
|
||||||
<el-dropdown-menu slot="dropdown" class="filter-sort-dropdown">
|
<el-dropdown-menu slot="dropdown" class="filter-sort-dropdown">
|
||||||
<el-dropdown-item class="filter-item"><i class="el-icon-bottom"></i>按时间排序(正)</el-dropdown-item>
|
<el-dropdown-item class="filter-item"><i class="el-icon-bottom"></i>按时间排序(正)</el-dropdown-item>
|
||||||
@ -105,8 +107,8 @@
|
|||||||
<div class="nullbookmark" v-if="showimg">
|
<div class="nullbookmark" v-if="showimg">
|
||||||
<div class="nullbookmark-img">
|
<div class="nullbookmark-img">
|
||||||
</div>
|
</div>
|
||||||
<div style="color: #000000" class="nullbookmark-text">
|
<div class="nullbookmark-text">
|
||||||
此目录还未添加收藏
|
空空如也
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -411,7 +413,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
console.log("routedata:"+routedata)
|
console.log("routedata:"+routedata)
|
||||||
if (routedata == 'newest'||routedata == 'asterisk'||routedata == 'seeYouLater'||routedata == 'recycle') {
|
if ((sousuo != null && sousuo != undefined && sousuo != '')||routedata == 'newest'||routedata == 'asterisk'||routedata == 'seeYouLater'||routedata == 'recycle') {
|
||||||
that.queryParams.menuId=null;
|
that.queryParams.menuId=null;
|
||||||
|
|
||||||
this.listByUserAndPolymerization(routedata);
|
this.listByUserAndPolymerization(routedata);
|
||||||
@ -606,14 +608,25 @@
|
|||||||
this.msgSuccess("修改成功");
|
this.msgSuccess("修改成功");
|
||||||
this.open = false;
|
this.open = false;
|
||||||
this.getList();
|
this.getList();
|
||||||
|
}else{
|
||||||
|
this.msgError("新增失败,系统错误!");
|
||||||
|
this.open = false;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
addBookmark(this.form).then(response => {
|
addBookmark(this.form).then(response => {
|
||||||
if (response.code === 200) {
|
if (response.code === 200) {
|
||||||
|
if(response.data === 'repetition'){
|
||||||
|
this.msgSuccess("新增失败,此书签已经存在了!");
|
||||||
|
this.open = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
this.msgSuccess("新增成功");
|
this.msgSuccess("新增成功");
|
||||||
this.open = false;
|
this.open = false;
|
||||||
this.getList();
|
this.getList();
|
||||||
|
}else{
|
||||||
|
this.msgError("新增失败,系统错误!");
|
||||||
|
this.open = false;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -705,24 +718,24 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
/** 全部书签**/
|
// /** 全部书签**/
|
||||||
getBookmarkList() {
|
// getBookmarkList() {
|
||||||
this.loading = true;
|
// this.loading = true;
|
||||||
selectByUseridList(this.queryParams).then(response => {
|
// selectByUseridList(this.queryParams).then(response => {
|
||||||
if (response.code == 200) {
|
// if (response.code == 200) {
|
||||||
this.bookmarkList = this.bookmarkList.concat(response.rows);
|
// this.bookmarkList = this.bookmarkList.concat(response.rows);
|
||||||
this.total = response.total;
|
// this.total = response.total;
|
||||||
this.listloading = false
|
// this.listloading = false
|
||||||
this.loading = false;
|
// this.loading = false;
|
||||||
console.log("请求完毕" + this.queryParams.pageNum)
|
// console.log("请求完毕" + this.queryParams.pageNum)
|
||||||
} else {
|
// } else {
|
||||||
//出错了加载完毕了 禁止滚动
|
// //出错了加载完毕了 禁止滚动
|
||||||
this.noMore = true;
|
// this.noMore = true;
|
||||||
this.listloading = false
|
// this.listloading = false
|
||||||
this.loading = false;
|
// this.loading = false;
|
||||||
}
|
// }
|
||||||
});
|
// });
|
||||||
},
|
// },
|
||||||
/** 最新 星标 回收站 稍后看**/
|
/** 最新 星标 回收站 稍后看**/
|
||||||
listByUserAndPolymerization(str) {
|
listByUserAndPolymerization(str) {
|
||||||
console.log(" 最新 星标 回收站 稍后看");
|
console.log(" 最新 星标 回收站 稍后看");
|
||||||
@ -735,12 +748,16 @@
|
|||||||
this.total = response.total;
|
this.total = response.total;
|
||||||
this.listloading = false
|
this.listloading = false
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
|
if (response.total == 0){
|
||||||
|
this.showimg = true;//空提示
|
||||||
|
}
|
||||||
console.log("请求完毕" + this.queryParams.pageNum)
|
console.log("请求完毕" + this.queryParams.pageNum)
|
||||||
} else {
|
} else {
|
||||||
//出错了加载完毕了 禁止滚动
|
//出错了加载完毕了 禁止滚动
|
||||||
this.noMore = true;
|
this.noMore = true;
|
||||||
this.listloading = false
|
this.listloading = false
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
|
this.showimg = true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
@ -787,7 +804,7 @@
|
|||||||
/** 查询书签管理列表 */
|
/** 查询书签管理列表 */
|
||||||
getList() {
|
getList() {
|
||||||
this.loading = true;
|
this.loading = true;
|
||||||
selectBymenuIdUserID(this.queryParams).then(response => {
|
listByUserAndPolymerization(this.queryParams).then(response => {
|
||||||
if (response.code == 200) {
|
if (response.code == 200) {
|
||||||
this.bookmarkList = response.rows;
|
this.bookmarkList = response.rows;
|
||||||
this.total = response.total;
|
this.total = response.total;
|
||||||
@ -810,14 +827,9 @@
|
|||||||
var routedata = this.queryParams.menuId;
|
var routedata = this.queryParams.menuId;
|
||||||
if(routedata == 'newest'||routedata == 'asterisk'||routedata == 'seeYouLater'||routedata == 'recycle'){
|
if(routedata == 'newest'||routedata == 'asterisk'||routedata == 'seeYouLater'||routedata == 'recycle'){
|
||||||
this.listByUserAndPolymerization(routedata);
|
this.listByUserAndPolymerization(routedata);
|
||||||
// //全部书签
|
|
||||||
// this.getBookmarkList();
|
|
||||||
// }else if (this.queryParams.menuId == 'RECYCLE') {
|
|
||||||
// //回收站书签
|
|
||||||
// this.getrecycleList();
|
|
||||||
}else{
|
}else{
|
||||||
//查看目录下的书签
|
//查看目录下的书签
|
||||||
this.getlistByMenuId();
|
this.listByUserAndPolymerization(routedata);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**查询便签 滚动加载分页拼接*/
|
/**查询便签 滚动加载分页拼接*/
|
||||||
@ -965,7 +977,13 @@
|
|||||||
|
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
/*.isbookmarkContainer{*/
|
||||||
|
/* background-color: #f0f0f2;*/
|
||||||
|
/* background-image: url(https://shijiechao.oss-cn-hangzhou.aliyuncs.com/wp-content/uploads/2020/12/top_bg.png);*/
|
||||||
|
/* background-repeat: no-repeat;*/
|
||||||
|
/* background-attachment: fixed;*/
|
||||||
|
/* background-position: center top;*/
|
||||||
|
/*}*/
|
||||||
|
|
||||||
.button-new-tag {
|
.button-new-tag {
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
@ -1019,21 +1037,23 @@
|
|||||||
|
|
||||||
.nullbookmark-img {
|
.nullbookmark-img {
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
width: 250px;
|
width: 450px;
|
||||||
height: 250px;
|
height: 250px;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-content: center;
|
align-content: center;
|
||||||
background-image: url("https://s1.ax1x.com/2020/08/22/dawFp9.png");
|
background-image: url("../../../assets/image/ts.png");
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-size: 100% 100%;
|
background-size: 100% 100%;
|
||||||
|
opacity: 0.75;
|
||||||
}
|
}
|
||||||
|
|
||||||
.nullbookmark-text {
|
.nullbookmark-text {
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
width: 250px;
|
width: 250px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
color: #D4D4D4 !important;
|
color: #D4D4D4;
|
||||||
|
font-size: 18px;
|
||||||
|
/*font-family: "Arial","Microsoft YaHei","黑体","宋体",sans-serif;*/
|
||||||
}
|
}
|
||||||
|
|
||||||
.editBookamrk {
|
.editBookamrk {
|
||||||
@ -1104,10 +1124,10 @@
|
|||||||
height: 40px;
|
height: 40px;
|
||||||
-webkit-box-pack: justify;
|
-webkit-box-pack: justify;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
-webkit-box-align: center;
|
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.filter-classification {
|
.filter-classification {
|
||||||
@ -1125,7 +1145,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.filter-content {
|
.filter-content {
|
||||||
margin-left: 13px;
|
margin-left: 2px;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1331,7 +1351,7 @@
|
|||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
width: 50px;
|
width: 60px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.sq-dropdown {
|
.sq-dropdown {
|
||||||
|
@ -20,11 +20,26 @@
|
|||||||
|
|
||||||
<div class="main-right">
|
<div class="main-right">
|
||||||
<!-- <svg-icon icon-class="tool" class="svgicon"/>-->
|
<!-- <svg-icon icon-class="tool" class="svgicon"/>-->
|
||||||
<div class="aside-title" @click="goRouter(8)"><i class="el-icon-folder"></i><span>最新</span></div>
|
<div class="aside-title" @click="goRouter(8)"><i class="el-icon-folder"></i>
|
||||||
<div class="aside-title" @click="goRouter(9)"><i class="el-icon-star-off"></i><span>星标</span></div>
|
<span>最新</span>
|
||||||
<div class="aside-title" @click="goRouter(10)"><i class="el-icon-reading"></i><span>稍后看</span></div>
|
<span class="menuCount">112</span>
|
||||||
<div class="aside-title"><i class="el-icon-view"></i><span>发现</span></div>
|
</div>
|
||||||
<div class="aside-title"><i class="el-icon-message"></i><span>收件箱</span></div>
|
<div class="aside-title" @click="goRouter(9)"><i class="el-icon-star-off"></i>
|
||||||
|
<span>星标</span>
|
||||||
|
<span class="menuCount">92</span>
|
||||||
|
</div>
|
||||||
|
<div class="aside-title" @click="goRouter(10)"><i class="el-icon-reading"></i>
|
||||||
|
<span>稍后看</span>
|
||||||
|
<span class="menuCount">5</span>
|
||||||
|
</div>
|
||||||
|
<div class="aside-title"><i class="el-icon-view"></i>
|
||||||
|
<span>发现</span>
|
||||||
|
<span class="menuCount"></span>
|
||||||
|
</div>
|
||||||
|
<div class="aside-title"><i class="el-icon-message"></i>
|
||||||
|
<span>收件箱</span>
|
||||||
|
<span class="menuCount">5</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class="aside-titleB" @mouseenter="eidtMenuText=!eidtMenuText" @mouseleave="eidtMenuText=!eidtMenuText">
|
<div class="aside-titleB" @mouseenter="eidtMenuText=!eidtMenuText" @mouseleave="eidtMenuText=!eidtMenuText">
|
||||||
@ -73,32 +88,42 @@
|
|||||||
</el-input>
|
</el-input>
|
||||||
<i v-if="!searchBkMenu" @click="searchBkMenuCk" class="el-icon-close" style="font-size: 25px;margin-left: 5px;margin-bottom: 2px"></i>
|
<i v-if="!searchBkMenu" @click="searchBkMenuCk" class="el-icon-close" style="font-size: 25px;margin-left: 5px;margin-bottom: 2px"></i>
|
||||||
</div>
|
</div>
|
||||||
<!-- <transition name="el-zoom-in-top">-->
|
|
||||||
<!-- 目录-->
|
<!-- 目录-->
|
||||||
<div class="areaTree" v-show="menuListShow">
|
<el-collapse-transition>
|
||||||
<ul id="treeDemo" class="ztree"></ul>
|
<div class="areaTree transition-box" v-show="menuListShow">
|
||||||
</div>
|
<ul id="treeDemo" class="ztree"></ul>
|
||||||
<!-- </transition>-->
|
|
||||||
|
|
||||||
<!-- <div class="reminder" STYLE="">工具箱</div>-->
|
|
||||||
|
|
||||||
<div class="aside-titleB" @mouseenter="eidtTAGText=!eidtTAGText" @mouseleave="eidtTAGText=!eidtTAGText">
|
|
||||||
<i @click="tagListShowCk" :class="tagListShow ? 'el-icon-caret-bottom aside-titleB_childi_one':'el-icon-caret-right aside-titleB_childi_one'" ></i>
|
|
||||||
<i class="el-icon-price-tag aside-titleB_childi_two"></i>
|
|
||||||
<span >工具箱</span>
|
|
||||||
<div style="margin-left: 40%" v-show="eidtTAGText">
|
|
||||||
<i class="el-icon-search" style="font-size: 19px;margin-left: 5px;margin-top: 7px" @click="searchBkTagCk"></i>
|
|
||||||
<i class="el-icon-folder-add" style="font-size: 19px;margin-left: 5px;margin-top: 7px" @click="addBkTagCk"></i>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</el-collapse-transition>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="reminder" STYLE="">工具箱</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- TAG标签 -->
|
||||||
|
|
||||||
|
<usertag/>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- <div class="aside-title"><i class="el-icon-s-flag" style="color: #569cd5"></i><span>RSS订阅</span></div>-->
|
<!-- <div class="aside-title"><i class="el-icon-s-flag" style="color: #569cd5"></i><span>RSS订阅</span></div>-->
|
||||||
<div class="aside-title" @click="goRouter(7)"><i class="el-icon-collection"></i><span>标签管理</span></div>
|
<!-- <div class="aside-title" @click="goRouter(7)"><i class="el-icon-collection"></i><span>功能管理</span></div>-->
|
||||||
<div class="aside-title" @click="goRouter(6)"><i class="el-icon-delete" ></i><span>垃圾桶</span></div>
|
<div class="aside-title" @click="goRouter(6)"><i class="el-icon-delete" ></i><span>垃圾桶</span></div>
|
||||||
<div class="aside-title"><i class="el-icon-chat-dot-square"></i><span>意见反馈</span></div>
|
<!-- <div class="aside-title"><i class="el-icon-chat-dot-square"></i><span>意见反馈</span></div>-->
|
||||||
<div class="aside-title" @click="goRouter(2)"><i class="el-icon-suitcase"></i><span>小工具</span></div>
|
<!-- <div class="aside-title" @click="goRouter(2)"><i class="el-icon-suitcase"></i><span>小工具</span></div>-->
|
||||||
<div class="aside-title " style="margin-bottom: 100px" @click="goRouter(11)"><i class="el-icon-setting"></i><span>更多设置</span></div>
|
<div class="aside-title " style="margin-bottom: 100px" @click="goRouter(11)"><i class="el-icon-setting"></i><span>更多设置</span></div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@ -111,8 +136,8 @@
|
|||||||
|
|
||||||
|
|
||||||
<!-- 拖拽 -->
|
<!-- 拖拽 -->
|
||||||
<!-- <div class="isresize" style="cursor:w-resize">-->
|
<div class="isresize" style="cursor:w-resize">
|
||||||
<!-- </div>-->
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -173,11 +198,12 @@
|
|||||||
import "../ztree/zTreeStyle.css"
|
import "../ztree/zTreeStyle.css"
|
||||||
import "../ztree/jquery.ztree.exedit.js"
|
import "../ztree/jquery.ztree.exedit.js"
|
||||||
import {listMenuByUserId,listByMenuId} from "@/api/bookmark/menu";
|
import {listMenuByUserId,listByMenuId} from "@/api/bookmark/menu";
|
||||||
|
import usertag from '../tag/usertag.vue'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'areaTree',
|
name: 'areaTree',
|
||||||
components: {
|
components: {
|
||||||
Treeselect
|
Treeselect,usertag
|
||||||
},
|
},
|
||||||
|
|
||||||
data: function () {
|
data: function () {
|
||||||
@ -187,10 +213,6 @@
|
|||||||
menuListShow:true,//目录list
|
menuListShow:true,//目录list
|
||||||
eidtMenuText:false,//我的收藏
|
eidtMenuText:false,//我的收藏
|
||||||
|
|
||||||
addBkTAG:true,//添加书TAG
|
|
||||||
searchBkTAG:true,//搜索TAG
|
|
||||||
tagListShow:false,//TAGlist
|
|
||||||
eidtTAGText:false,//我的TAG
|
|
||||||
|
|
||||||
|
|
||||||
queryParams: {
|
queryParams: {
|
||||||
@ -370,24 +392,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
/**添加书签目录**/
|
|
||||||
addBkTagCk(){
|
|
||||||
this.addBkTAG = this.addBkTAG?false:true;
|
|
||||||
this.searchBkTAG = true;
|
|
||||||
this.tagListShow = true;
|
|
||||||
},
|
|
||||||
/**搜索书签目录**/
|
|
||||||
searchBkTagCk(){
|
|
||||||
this.searchBkMenu = this.searchBkTAG?false:true;
|
|
||||||
this.addBkTAG = true;
|
|
||||||
this.tagListShow = true;
|
|
||||||
},
|
|
||||||
/**搜索书签目录**/
|
|
||||||
tagListShowCk(){
|
|
||||||
this.tagListShow = this.tagListShow?false:true;
|
|
||||||
this.addBkTAG = true;
|
|
||||||
this.searchBkTAG = true;
|
|
||||||
},
|
|
||||||
|
|
||||||
/**图片失败显示**/
|
/**图片失败显示**/
|
||||||
errorHandler() {
|
errorHandler() {
|
||||||
@ -413,7 +418,8 @@
|
|||||||
console.log("开始拖拽")
|
console.log("开始拖拽")
|
||||||
var resize = document.getElementsByClassName('isresize');
|
var resize = document.getElementsByClassName('isresize');
|
||||||
var left = document.getElementsByClassName('main-right');
|
var left = document.getElementsByClassName('main-right');
|
||||||
var mid = document.getElementsByClassName('el-container mid is-vertical');
|
// var mid = document.getElementsByClassName('el-container mid is-vertical');
|
||||||
|
var mid = document.getElementsByClassName('mid');
|
||||||
var box = document.getElementsByClassName('box');
|
var box = document.getElementsByClassName('box');
|
||||||
var transition = document.getElementsByClassName('transition-box');
|
var transition = document.getElementsByClassName('transition-box');
|
||||||
|
|
||||||
@ -886,7 +892,8 @@
|
|||||||
that.$router.push({
|
that.$router.push({
|
||||||
path: "/content",
|
path: "/content",
|
||||||
query: {
|
query: {
|
||||||
menuId: 'recycle'
|
menuId: 'recycle',
|
||||||
|
t:Date.now()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
break;
|
break;
|
||||||
@ -1000,7 +1007,6 @@
|
|||||||
</script>
|
</script>
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
|
||||||
|
|
||||||
body {
|
body {
|
||||||
/*font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;*/
|
/*font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;*/
|
||||||
font-family: "Merriweather", "Open Sans", "Microsoft Jhenghei", "Microsoft Yahei", sans-serif;
|
font-family: "Merriweather", "Open Sans", "Microsoft Jhenghei", "Microsoft Yahei", sans-serif;
|
||||||
@ -1213,6 +1219,11 @@
|
|||||||
.separator {
|
.separator {
|
||||||
float: left;
|
float: left;
|
||||||
}
|
}
|
||||||
|
.menuCount{
|
||||||
|
float: right;
|
||||||
|
margin-right:18px!important;
|
||||||
|
color: #9e9e9e
|
||||||
|
}
|
||||||
|
|
||||||
.filter-sort i {
|
.filter-sort i {
|
||||||
margin-left: -4px;
|
margin-left: -4px;
|
||||||
|
159
ruoyi-ui/src/views/bookmark/tag/usertag.vue
Normal file
159
ruoyi-ui/src/views/bookmark/tag/usertag.vue
Normal file
@ -0,0 +1,159 @@
|
|||||||
|
<template>
|
||||||
|
<div class="main" >
|
||||||
|
<div class="aside-titleB" @mouseenter="eidtTAGText=!eidtTAGText" @mouseleave="eidtTAGText=!eidtTAGText">
|
||||||
|
<i @click="tagListShowCk" :class="tagListShow ? 'el-icon-caret-bottom aside-titleB_childi_one':'el-icon-caret-right aside-titleB_childi_one'" ></i>
|
||||||
|
<i class="el-icon-price-tag aside-titleB_childi_two"></i>
|
||||||
|
<span >标签管理</span>
|
||||||
|
<div style="margin-left: 40%" v-show="eidtTAGText">
|
||||||
|
<i class="el-icon-search" style="font-size: 19px;margin-left: 5px;margin-top: 7px" @click="searchBkTagCk"></i>
|
||||||
|
<i class="el-icon-folder-add" style="font-size: 19px;margin-left: 5px;margin-top: 7px" @click="addBkTagCk"></i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div style="display: flex;justify-items: center;align-items: center">
|
||||||
|
<el-input
|
||||||
|
v-if="!addBkTAG"
|
||||||
|
placeholder="输入书签名字"
|
||||||
|
v-model="input4"
|
||||||
|
size="mini"
|
||||||
|
style="width: 80%;margin-left: 5%"
|
||||||
|
>
|
||||||
|
<i slot="prefix" class="el-input__icon el-icon-circle-plus-outline"></i>
|
||||||
|
</el-input>
|
||||||
|
<i v-if="!addBkTAG" @click="addBkTagCk" class="el-icon-close" style="font-size: 25px;margin-left: 5px;margin-bottom: 2px"></i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div style="display: flex;justify-items: center;align-items: center">
|
||||||
|
<el-input
|
||||||
|
v-if="!searchBkTAG"
|
||||||
|
placeholder="搜索书签"
|
||||||
|
v-model="input4"
|
||||||
|
size="mini"
|
||||||
|
style="width: 80%;margin-left: 5%"
|
||||||
|
>
|
||||||
|
<i slot="prefix" class="el-icon-search" style="margin-left: 5px"></i>
|
||||||
|
</el-input>
|
||||||
|
<i v-if="!searchBkTAG" @click="searchBkTagCk" class="el-icon-close" style="font-size: 25px;margin-left: 5px;margin-bottom: 2px"></i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<el-collapse-transition>
|
||||||
|
<div v-if=" tagListShow">
|
||||||
|
<!-- TAG标签 -->
|
||||||
|
<div v-if=" !(tagList == undefined ||tagList == null || tagList.length <= 0)" v-for="item in tagList" >
|
||||||
|
<div class="aside-title name transition-box" id="item.id">
|
||||||
|
<i class="el-icon-collection-tag" style="font-size: 15px"/> {{item.name}}
|
||||||
|
<!-- <el-tag type="info" size="mini">{{item.name}}</el-tag>-->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div v-if=" !(tagList == undefined ||tagList == null || tagList.length <= 0)" class="aside-title name transition-box" >加载更多</div>
|
||||||
|
|
||||||
|
<!-- 无标签 -->
|
||||||
|
<div v-if=" tagList == undefined ||tagList == null || tagList.length <= 0" class="aside-title name transition-box" >暂无标签</div>
|
||||||
|
</div>
|
||||||
|
</el-collapse-transition>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import {listByUser,listByUserLike} from "@/api/bookmark/tag";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'areaTree',
|
||||||
|
components: {},
|
||||||
|
|
||||||
|
data: function () {
|
||||||
|
return {
|
||||||
|
msg:'暂无标签',
|
||||||
|
tagList:[],
|
||||||
|
tagParams: {
|
||||||
|
pageNum: 1,
|
||||||
|
pageSize: 8
|
||||||
|
},
|
||||||
|
|
||||||
|
addBkTAG:true,//添加书TAG
|
||||||
|
searchBkTAG:true,//搜索TAG
|
||||||
|
tagListShow:false,//TAGlist
|
||||||
|
eidtTAGText:false,//我的TAG
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created(){
|
||||||
|
this.listByUser();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
/** 查询书签 */
|
||||||
|
listByUser: function () {
|
||||||
|
listByUser(this.tagParams).then(response => {
|
||||||
|
if (response.code === 200) {
|
||||||
|
this.tagList=response.rows;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
/**添加书签目录**/
|
||||||
|
addBkTagCk(){
|
||||||
|
this.addBkTAG = this.addBkTAG?false:true;
|
||||||
|
this.searchBkTAG = true;
|
||||||
|
this.tagListShow = true;
|
||||||
|
},
|
||||||
|
/**搜索书签目录**/
|
||||||
|
searchBkTagCk(){
|
||||||
|
this.searchBkTAG = this.searchBkTAG?false:true;
|
||||||
|
this.addBkTAG = true;
|
||||||
|
this.tagListShow = true;
|
||||||
|
},
|
||||||
|
/**搜索书签目录**/
|
||||||
|
tagListShowCk(){
|
||||||
|
this.tagListShow = this.tagListShow?false:true;
|
||||||
|
this.addBkTAG = true;
|
||||||
|
this.searchBkTAG = true;
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style scoped>
|
||||||
|
.name{
|
||||||
|
padding-left: 50px;
|
||||||
|
}
|
||||||
|
.aside-title:hover{
|
||||||
|
background-color: #e8e8e8;
|
||||||
|
color: #1c84c6;
|
||||||
|
}
|
||||||
|
.aside-titleB{
|
||||||
|
display: flex;
|
||||||
|
height: 32px;
|
||||||
|
align-items: center;
|
||||||
|
justify-items: center;
|
||||||
|
}
|
||||||
|
.aside-titleB:hover {
|
||||||
|
background-color: #e8e8e8;
|
||||||
|
}
|
||||||
|
/**第一个元素**/
|
||||||
|
.aside-titleB_childi_one{
|
||||||
|
margin-left: 5px;
|
||||||
|
font-size: 15px;
|
||||||
|
margin-right: 11px;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
/**第二个元素**/
|
||||||
|
.aside-titleB_childi_two{
|
||||||
|
margin-left: -4px;
|
||||||
|
font-size: 20px;
|
||||||
|
margin-right: 11px;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
.aside-titleB span{
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
@ -1366,7 +1366,7 @@
|
|||||||
if (!node.isAjaxing) {
|
if (!node.isAjaxing) {
|
||||||
var isParent = data.nodeIsParent(setting, node);
|
var isParent = data.nodeIsParent(setting, node);
|
||||||
var icon = (isParent && node.iconOpen && node.iconClose) ? (node.open ? node.iconOpen : node.iconClose) : node[setting.data.key.icon];
|
var icon = (isParent && node.iconOpen && node.iconClose) ? (node.open ? node.iconOpen : node.iconClose) : node[setting.data.key.icon];
|
||||||
if (icon) icoStyle.push("background:url(", icon, ") 0 0 no-repeat;background-position:center;background-size:20px 20px;border-radius: 50%;");
|
if (icon) icoStyle.push("background:url(", icon, ") 0 0 no-repeat;background-position:center;background-size:20px 20px;");//border-radius: 50%; 目录的图标
|
||||||
if (setting.view.showIcon == false || !tools.apply(setting.view.showIcon, [setting.treeId, node], true)) {
|
if (setting.view.showIcon == false || !tools.apply(setting.view.showIcon, [setting.treeId, node], true)) {
|
||||||
icoStyle.push("display:none;");
|
icoStyle.push("display:none;");
|
||||||
}
|
}
|
||||||
|
@ -1,98 +1,101 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="dashboard-editor-container">
|
<div class="dashboard-editor-container">
|
||||||
|
|
||||||
<panel-group @handleSetLineChartData="handleSetLineChartData" />
|
<panel-group @handleSetLineChartData="handleSetLineChartData" />
|
||||||
|
|
||||||
<el-row style="background:#fff;padding:16px 16px 0;margin-bottom:32px;">
|
<el-row style="background:#fff;padding:16px 16px 0;margin-bottom:32px;">
|
||||||
<line-chart :chart-data="lineChartData" />
|
<line-chart :chart-data="lineChartData" />
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<el-row :gutter="32">
|
<el-row :gutter="32">
|
||||||
<el-col :xs="24" :sm="24" :lg="8">
|
<el-col :xs="24" :sm="24" :lg="8">
|
||||||
<div class="chart-wrapper">
|
<div class="chart-wrapper">
|
||||||
<raddar-chart />
|
<raddar-chart />
|
||||||
</div>
|
</div>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :xs="24" :sm="24" :lg="8">
|
<el-col :xs="24" :sm="24" :lg="8">
|
||||||
<div class="chart-wrapper">
|
<div class="chart-wrapper">
|
||||||
<pie-chart />
|
<pie-chart />
|
||||||
</div>
|
</div>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :xs="24" :sm="24" :lg="8">
|
<el-col :xs="24" :sm="24" :lg="8">
|
||||||
<div class="chart-wrapper">
|
<div class="chart-wrapper">
|
||||||
<bar-chart />
|
<bar-chart />
|
||||||
</div>
|
</div>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import PanelGroup from './dashboard/PanelGroup'
|
import PanelGroup from './dashboard/PanelGroup'
|
||||||
import LineChart from './dashboard/LineChart'
|
import LineChart from './dashboard/LineChart'
|
||||||
import RaddarChart from './dashboard/RaddarChart'
|
import RaddarChart from './dashboard/RaddarChart'
|
||||||
import PieChart from './dashboard/PieChart'
|
import PieChart from './dashboard/PieChart'
|
||||||
import BarChart from './dashboard/BarChart'
|
import BarChart from './dashboard/BarChart'
|
||||||
|
|
||||||
const lineChartData = {
|
const lineChartData = {
|
||||||
newVisitis: {
|
newVisitis: {
|
||||||
expectedData: [100, 120, 161, 134, 105, 160, 165],
|
expectedData: [100, 120, 161, 134, 105, 160, 165],
|
||||||
actualData: [120, 82, 91, 154, 162, 140, 145]
|
actualData: [120, 82, 91, 154, 162, 140, 145]
|
||||||
},
|
},
|
||||||
messages: {
|
messages: {
|
||||||
expectedData: [200, 192, 120, 144, 160, 130, 140],
|
expectedData: [200, 192, 120, 144, 160, 130, 140],
|
||||||
actualData: [180, 160, 151, 106, 145, 150, 130]
|
actualData: [180, 160, 151, 106, 145, 150, 130]
|
||||||
},
|
},
|
||||||
purchases: {
|
purchases: {
|
||||||
expectedData: [80, 100, 121, 104, 105, 90, 100],
|
expectedData: [80, 100, 121, 104, 105, 90, 100],
|
||||||
actualData: [120, 90, 100, 138, 142, 130, 130]
|
actualData: [120, 90, 100, 138, 142, 130, 130]
|
||||||
},
|
},
|
||||||
shoppings: {
|
shoppings: {
|
||||||
expectedData: [130, 140, 141, 142, 145, 150, 160],
|
expectedData: [130, 140, 141, 142, 145, 150, 160],
|
||||||
actualData: [120, 82, 91, 154, 162, 140, 130]
|
actualData: [120, 82, 91, 154, 162, 140, 130]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'Index',
|
name: 'Index',
|
||||||
components: {
|
components: {
|
||||||
PanelGroup,
|
PanelGroup,
|
||||||
LineChart,
|
LineChart,
|
||||||
RaddarChart,
|
RaddarChart,
|
||||||
PieChart,
|
PieChart,
|
||||||
BarChart
|
BarChart
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
lineChartData: lineChartData.newVisitis
|
lineChartData: lineChartData.newVisitis
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
handleSetLineChartData(type) {
|
handleSetLineChartData(type) {
|
||||||
this.lineChartData = lineChartData[type]
|
this.lineChartData = lineChartData[type]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.dashboard-editor-container {
|
/*html{*/
|
||||||
padding: 32px;
|
/* overflow: hidden;*/
|
||||||
background-color: rgb(240, 242, 245);
|
/*}*/
|
||||||
position: relative;
|
.dashboard-editor-container {
|
||||||
|
padding: 32px;
|
||||||
.chart-wrapper {
|
background-color: rgb(240, 242, 245);
|
||||||
background: #fff;
|
position: relative;
|
||||||
padding: 16px 16px 0;
|
|
||||||
margin-bottom: 32px;
|
.chart-wrapper {
|
||||||
}
|
background: #fff;
|
||||||
}
|
padding: 16px 16px 0;
|
||||||
|
margin-bottom: 32px;
|
||||||
@media (max-width:1024px) {
|
}
|
||||||
.chart-wrapper {
|
}
|
||||||
padding: 8px;
|
|
||||||
}
|
@media (max-width:1024px) {
|
||||||
}
|
.chart-wrapper {
|
||||||
</style>
|
padding: 8px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
@ -113,9 +113,19 @@ public class SqBookmark
|
|||||||
/** 排序的方式 **/
|
/** 排序的方式 **/
|
||||||
@Transient
|
@Transient
|
||||||
private String sort;
|
private String sort;
|
||||||
|
/** 搜索 **/
|
||||||
|
@Transient
|
||||||
|
private String sousuo;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private List<Map<String,Object>> sqTags;
|
private List<Map<String,Object>> sqTags;
|
||||||
|
public SqBookmark (){
|
||||||
|
}
|
||||||
|
|
||||||
|
public SqBookmark (String url,Long userid){
|
||||||
|
this.url = url;
|
||||||
|
this.userid = userid;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -80,4 +80,7 @@ public class SqTag
|
|||||||
private Date createTime;
|
private Date createTime;
|
||||||
|
|
||||||
|
|
||||||
|
public SqTag(Long userId){
|
||||||
|
this.userId = userId;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -25,6 +25,8 @@ import com.ruoyi.common.utils.StringUtils;
|
|||||||
import com.ruoyi.common.utils.bookmarkhtml.Const;
|
import com.ruoyi.common.utils.bookmarkhtml.Const;
|
||||||
import com.ruoyi.common.utils.bookmarkhtml.HtmlName;
|
import com.ruoyi.common.utils.bookmarkhtml.HtmlName;
|
||||||
import com.ruoyi.common.utils.bookmarkhtml.ImportHtml;
|
import com.ruoyi.common.utils.bookmarkhtml.ImportHtml;
|
||||||
|
import com.sun.org.apache.bcel.internal.generic.RETURN;
|
||||||
|
import org.jacoco.agent.rt.internal_f3994fa.core.internal.flow.IFrame;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@ -119,6 +121,12 @@ public class SqBookmarkServiceImpl implements ISqBookmarkService
|
|||||||
@Transactional
|
@Transactional
|
||||||
public int insertSqBookmark(SqBookmark sqBookmark)
|
public int insertSqBookmark(SqBookmark sqBookmark)
|
||||||
{
|
{
|
||||||
|
//判断标签是否已经存在了 999
|
||||||
|
List<SqBookmark> list = sqBookmarkMapper.select(new SqBookmark(sqBookmark.getUrl(),sqBookmark.getUserid()));
|
||||||
|
if (!(list==null||list.isEmpty()))
|
||||||
|
return 999;
|
||||||
|
|
||||||
|
|
||||||
JSONArray objects = new JSONArray();
|
JSONArray objects = new JSONArray();
|
||||||
JSONObject json = null;
|
JSONObject json = null;
|
||||||
//获取官网urls
|
//获取官网urls
|
||||||
@ -378,7 +386,7 @@ public class SqBookmarkServiceImpl implements ISqBookmarkService
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int updateBookmarkStarById(Long userId, Long bookmarkId, Integer bookmarkStr) {
|
public int updateBookmarkStarById(Long userId, Long bookmarkId, Integer bookmarkStr) {
|
||||||
return sqBookmarkMapper.updateSqBookmarkByStar(bookmarkId,userId,bookmarkStr==1?1:0);
|
return sqBookmarkMapper.updateSqBookmarkByStar(bookmarkId,userId,bookmarkStr==1?0:1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -501,23 +509,32 @@ public class SqBookmarkServiceImpl implements ISqBookmarkService
|
|||||||
@Override
|
@Override
|
||||||
public List<SqBookmark> listByUserAndPolymerization(SqBookmark sqBookmark) {
|
public List<SqBookmark> listByUserAndPolymerization(SqBookmark sqBookmark) {
|
||||||
|
|
||||||
SqBookmark searchBookmark = new SqBookmark();
|
SqBookmark search = new SqBookmark();
|
||||||
searchBookmark.setUserid(sqBookmark.getUserid());
|
search.setUserid(sqBookmark.getUserid());
|
||||||
|
search.setSort(sqBookmark.getSort());
|
||||||
|
search.setSousuo(sqBookmark.getSousuo());
|
||||||
|
//未删除的
|
||||||
|
search.setIdelete(Const.BKDELETE);
|
||||||
|
|
||||||
if(sqBookmark.getType().equals(Const.RECYCLE)){
|
|
||||||
searchBookmark.setIdelete(Const.BKNOTDELETE);//删除的
|
if (sqBookmark.getType()==null){
|
||||||
}else{
|
//搜索情况下走这里
|
||||||
searchBookmark.setIdelete(Const.BKDELETE);//未删除的
|
return sqBookmarkMapper.listByUserAndPolymerization(search);
|
||||||
}
|
}
|
||||||
|
if(sqBookmark.getType().equals(Const.RECYCLE)){
|
||||||
if (sqBookmark.getType().equals(Const.NEWEST)){//最新的
|
search.setIdelete(Const.BKNOTDELETE);//删除的
|
||||||
|
}else if (sqBookmark.getType().equals(Const.NEWEST)){//最新的
|
||||||
//无处理
|
//无处理
|
||||||
}else if(sqBookmark.getType().equals(Const.ASTERISK)){
|
}else if(sqBookmark.getType().equals(Const.ASTERISK)){
|
||||||
searchBookmark.setBookmarkStar(1);
|
search.setBookmarkStar(1);
|
||||||
}else if(sqBookmark.getType().equals(Const.SEEYOULATER)){//稍后看
|
}else if(sqBookmark.getType().equals(Const.SEEYOULATER)){//稍后看
|
||||||
searchBookmark.setSeeYouLater(1);
|
search.setSeeYouLater(1);
|
||||||
|
}else {
|
||||||
|
//默认的目录Muidid
|
||||||
|
search.setMenuId(Long.valueOf(sqBookmark.getType()));
|
||||||
}
|
}
|
||||||
return sqBookmarkMapper.listByUserAndPolymerization(searchBookmark);
|
|
||||||
|
return sqBookmarkMapper.listByUserAndPolymerization(search);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -187,6 +187,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
<if test="idelete != null "> and idelete = #{idelete}</if>
|
<if test="idelete != null "> and idelete = #{idelete}</if>
|
||||||
<if test="bookmarkStar != null "> and bookmark_star = #{bookmarkStar}</if>
|
<if test="bookmarkStar != null "> and bookmark_star = #{bookmarkStar}</if>
|
||||||
<if test="seeYouLater != null "> and see_you_later = #{seeYouLater}</if>
|
<if test="seeYouLater != null "> and see_you_later = #{seeYouLater}</if>
|
||||||
|
<if test="(sousuo == null or sousuo == '') and menuId!=null and menuId!=''"> and menu_id = #{menuId}</if>
|
||||||
|
<if test="start != null and start != ''"> and start = #{start}</if>
|
||||||
|
<if test="sousuo != null and sousuo != ''"> and title like concat('%', #{sousuo}, '%')</if>
|
||||||
order by
|
order by
|
||||||
<choose>
|
<choose>
|
||||||
<when test="sort == 0">
|
<when test="sort == 0">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user