新增支持内嵌套打开网页

This commit is contained in:
WangHao 2020-10-08 14:18:42 +08:00
parent f79ef13ddf
commit d6692f242b
12 changed files with 786 additions and 606 deletions

View File

@ -9,7 +9,7 @@ import com.ruoyi.bookmark.service.ISqMenuService;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.BookmarkHtml.ImportHtml;
import com.ruoyi.common.utils.bookmarkhtml.ImportHtml;
import com.ruoyi.common.utils.StringUtils;
import org.jsoup.HttpStatusException;
import org.slf4j.Logger;
@ -22,17 +22,14 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import javax.net.ssl.SSLHandshakeException;
import java.net.MalformedURLException;
import java.net.URL;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
/**
* @Auther: Wang
* @auther: Wang
* @Date:
* 功能描述: 导入书签 导出书签
*/

View File

@ -8,7 +8,7 @@ import java.util.List;
import com.ruoyi.bookmark.domain.SqBookmark;
import com.ruoyi.bookmark.service.ISqBookmarkService;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.BookmarkHtml.ImportHtml;
import com.ruoyi.common.utils.bookmarkhtml.ImportHtml;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.security.access.prepost.PreAuthorize;

View File

@ -186,10 +186,10 @@ public class SqMenuController extends BaseController
}
}
// /**
// * 批量更新书签的数量
// */
//
/**
* 批量更新书签的数量
*/
@RequestMapping("/bookmarkcount/{menuId}")
public AjaxResult bookmarkcount(@PathVariable Long menuId)
{

View File

@ -13,7 +13,7 @@ import org.springframework.test.context.web.WebAppConfiguration;
/**
* @Auther: Wang
* @auther: Wang
* @Date: 2020/08/08 19:10
* 功能描述:
*/

View File

@ -1,4 +1,4 @@
package com.ruoyi.common.utils.BookmarkHtml;
package com.ruoyi.common.utils.bookmarkhtml;
import org.springframework.stereotype.Component;

View File

@ -1,4 +1,4 @@
package com.ruoyi.common.utils.BookmarkHtml;
package com.ruoyi.common.utils.bookmarkhtml;
import com.ruoyi.common.utils.StringUtils;
@ -10,7 +10,6 @@ import org.jsoup.select.Elements;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.File;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;

View File

@ -2,7 +2,7 @@
@media screen and (max-width: 2920px) {
/*@media screen and (max-width: 1920px) {*/
.sousouleft-switch{
display: none;
display: none!important;
}
.dropdownList{
font-size: 22px!important;
@ -50,10 +50,10 @@
display: none;
}
.sousouleft-switch{
display: block;
display: block!important;
}
.sousou-leftico{
display: none;
display: none!important;
}
.sousouright-icon{

View File

@ -0,0 +1,100 @@
<template>
<div>
<div v-for="bm in bookmarkList" class="bookmark" :data-id="bm.id" @click="windowurl(bm.url,bm.bookmarkId)">
<div class="bookmark-item">
<span class="title-icon">
<img :ng-src="'https://favicon.lucq.fun/?url=http://'+bm.urls"
:src="'https://favicon.lucq.fun/?url=http://'+bm.urls"
onerror="this.src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQEAYAAABPYyMiAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAAAmVJREFUSMftlG1IU2EUx8+5jRHzg+5OiD64WTBBjSY5ZybUJMaMiIUICUKFIGmoIIogYWKFBmtDxN1tBKIWvlS6SR+iLFDBXqSMgmzbvQ7fkAjcINmQ5u7pQwyCiOvWx/p/fPj9/5znnPM8AP+VolRTjjHhTlmZipzEk9GYao4sVaMYxXp62NgIdpLBCuLP05mZZHOYZA3p5KgMjBcUwCmw4PfVVYiBGmbW1zMzOU4QCgtTvdAeRESEyNZyJbx+dDTjVv/9YFSjSScnfabsbPYMF+AbxsYS3F5TfwPZAacpMNfUBEAljK24mMJwlLIUClTAdfwok9FXWBTtc3Phzqv7c/RWa8KnrHZM8VltbRjC92AxGkEPRpSJInjJQPpIBJoZC6nn50M19dM5J/v6/lhRxgXXDX9Qp1POcmHh2sTEQbfbvVmrUCTbr4RPaeMe8Q0eTyI36VkrW50mftjrPWCyDn9oSUuTdj4Y/1Qpl7NdzkNC98iIqsIxHdQVFaU8eWW1U1guLy1lr3Acr3O7pXi227EhDLpcCZ8UL/kK8LIYjxtDIRhEP8xGIlI8bcAKvY3FGB/zYvf81pYUL/0PvGTKoTUvjzbgCx5ZWlJq3a5lQa1Ge3yTWnp64ASYqVcUoXn3Jtja2/EpRtHj89FF8Tb25ufDOwCo8/lSL0BF/eDPzcVXeA7WDAa6J9rES1VVdJqx41JHBwCE8BgA3JU9B+3AACziMwjv7MAaPQb/wgIAnP2rDpCWtpkncjm+Ro34bWgo3FkX0O6bnARARCT6hSR6YzazXa7DfLyigo7TNtObxNb/s/oB7V8JFvW/8IQAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjAtMDItMDJUMTg6MTE6NTgrMDg6MDCoc6tpAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIwLTAyLTAyVDE4OjExOjU4KzA4OjAw2S4T1QAAAGd0RVh0c3ZnOmJhc2UtdXJpAGZpbGU6Ly8vaG9tZS9hZG1pbi9pY29uLWZvbnQvdG1wL2ljb25fNWhyOG55Nmo1bWMvamluZ2RpYW5hbmxpX2tvbmd3dWppYW94aW5nX3Nob3VjYW5nLnN2Z4/vilwAAAAASUVORK5CYII='"
alt="" ng-show="bm.urls"/>
</span>
<span class="bookmark-title">
{{bm.title}}
</span>
<span class="bookmark-time">2020-10-10</span>
</div>
</div>
</div>
</template>
<script>
export default {
components: {},
props: {
bookmarkList: Array,
},
data: function () {
return {
}
},
methods: {
windowurl(A, B) {
this.$emit('on-windowurl', A, B)
}
}
}
</script>
<style scoped>
.bookmarklist {
}
.bookmark-item {
display: flex;
height: 24px;
font-size: 13px;
overflow: hidden;
}
.bookmark {
position: relative;
padding: 15px 20px;
border-top: 1px solid #e0e1e5;
overflow: hidden;
line-height: 24px;
}
.bookmark:hover {
background-color: #D4D4D4;
}
.title-icon img {
width: 15px;
height: 15px;
}
.title-icon {
display: inline-flex;
align-items: center;
}
.bookmark-title {
display: inline-block;
margin-left: 10px;
color: #393939;
flex: 1;
-webkit-flex: 1;
white-space: nowrap;
text-overflow: ellipsis;
-webkit-text-overflow: ellipsis;
overflow: hidden;
position: relative;
}
.bookmark-time {
display: block;
color: #c2c2c2;
margin-right: 10px;
}
</style>

View File

@ -1,6 +1,62 @@
<template>
<div>
<el-container class="isbookmarkContainer">
<el-aside class="isBookmarkAside" >
<el-header class="header-sousou">
<div class="sousou-left">
<div class="sousouleft-switch" @click="drawer = true"><i class="el-icon-s-unfold"/></div>
<div class="sousou-leftico" @click="drawer = true"><img
src="https://favicon.lucq.fun/?url=https://www.baidu.com"/></div>
</div>
<div class="sousou-input">
<el-input slot="reference" @keyup.enter.native="gosousuo" placeholder="请输入要查找的关键词" v-model="sousuo"
size="small">
<i slot="prefix" class="el-input__icon el-icon-search"></i>
</el-input>
</div>
<div class="sousouright-icon">
<el-badge :value="5" :max="99" class="item"><i class="el-icon-message-solid" style="font-size: 17px;"></i>
</el-badge>
</div>
<div class="sousouright-iconadd">
<el-dropdown trigger="click" size="small" :hide-on-click="false">
<span class="el-dropdown-link">
<i class="el-icon-plus" style="font-size: 18px;"/>
</span>
<el-dropdown-menu slot="dropdown" class="sq-dropdown">
<el-dropdown-item class="filter-item" icon="el-icon-plus" @click.native="addbookmarkurl">添加连接
</el-dropdown-item>
<el-dropdown-item class="filter-item" icon="el-icon-plus" command="b">添加文本</el-dropdown-item>
<el-dropdown-item class="filter-item" icon="el-icon-plus" command="d">导入书签</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
<div class="header-list">
<!-- <el-dropdown trigger="click" size="small" :hide-on-click="false">-->
<!-- <span class="el-dropdown-link">-->
<el-avatar :size="28"
src="https://up.raindrop.io/collection/templates/social-media-logos-6/97social.png"></el-avatar>
<!-- </span>-->
<!-- <el-dropdown-menu slot="dropdown" class="sq-dropdown">-->
<!-- <el-dropdown-item class="filter-item" icon="el-icon-plus" command="a">外观显示</el-dropdown-item>-->
<!-- <el-dropdown-item class="filter-item" icon="el-icon-plus" command="b">用户中心</el-dropdown-item>-->
<!-- <el-dropdown-item class="filter-item" icon="el-icon-plus" command="d">建议反馈</el-dropdown-item>-->
<!-- <el-dropdown-item class="filter-item" icon="el-icon-plus" command="e">退出登录</el-dropdown-item>-->
<!-- </el-dropdown-menu>-->
<!-- </el-dropdown>-->
</div>
</el-header>
<div class="filter-tbar">
<div class="filter-classification">
<div class="classification " @click="showopen(0)"><span>网页</span></div>
@ -12,7 +68,8 @@
<div class="filter-content">
<el-dropdown trigger="hover" size="small" @command="handleCommand">
<div class="el-dropdown-link dropdownList">
<i class="el-icon-document-checked "></i> <span>排序</span>
<i class="el-icon-document-checked "></i>
<!-- <span>排序</span>-->
</div>
<el-dropdown-menu slot="dropdown" class="filter-sort-dropdown">
<el-dropdown-item class="filter-item" command="0"><i class="el-icon-bottom"></i>按时间排序()
@ -30,7 +87,8 @@
<div class="filter-content">
<el-dropdown trigger="hover" size="small">
<div class="el-dropdown-link dropdownList">
<i class="el-icon-tickets "></i> <span>列表</span>
<i class="el-icon-tickets "></i>
<!-- <span>列表</span>-->
</div>
<el-dropdown-menu slot="dropdown" class="filter-sort-dropdown">
<el-dropdown-item class="filter-item"><i class="el-icon-bottom"></i>按时间排序()</el-dropdown-item>
@ -72,64 +130,77 @@
</div>
</div>
<!-- 默认展示-->
<!-- <div class="bookmarklist" :style="datalist" infinite-scroll-distance="10" v-loading="loading"-->
<!-- v-if="showbookmark"-->
<!-- v-infinite-scroll="load"-->
<!-- infinite-scroll-disabled="disabled" style="overflow:auto;" infinite-scroll-immediate="false">-->
<!-- <el-row>-->
<!-- &lt;!&ndash; <hr class="bookamrk-hr" v-if="!queryParams.sousuo!=''"/>&ndash;&gt;-->
<!-- <el-col :span="24" v-for="bm in bookmarkList">-->
<!-- <div class="editBookamrk ">-->
<!-- <div class="editlist">-->
<!-- <div>-->
<!-- <el-button plain size="small" @click="handleUpdate(bm.bookmarkId)">修改</el-button>-->
<!-- </div>-->
<!-- <div>-->
<!-- <el-button plain size="small" @click="handleDelete(bm.bookmarkId)">删除</el-button>-->
<!-- </div>-->
<!-- <div>-->
<!-- <el-button plain size="small">笔记</el-button>-->
<!-- </div>-->
<!-- <div>-->
<!-- <el-button plain size="small">分享</el-button>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="bookmark " :data-id="bm.id" @click="windowurl(bm.url,bm.bookmarkId)">-->
<!-- <p class="bookmark-title" v-if="highlighted"><span v-html="highLight(bm.title,queryParams.sousuo)"/>-->
<!-- </p>-->
<!-- <p class="bookmark-title" v-if="!highlighted">{{bm.title}}</p>-->
<!-- <div class="">-->
<!-- <p class="description" v-if="highlighted"><span-->
<!-- v-html="highLight(bm.description,queryParams.sousuo)"/>-->
<!-- </p>-->
<!-- <p class="description" v-if="!highlighted">{{bm.description}}</p>-->
<!-- </div>-->
<!-- <div class="info-wrap">-->
<!-- <div class="info">-->
<!-- <div class="bookmark-icon">-->
<!-- &lt;!&ndash; <img :err-src='bm.icon' :ng-src="bm.icon" :src="bm.icon" />&ndash;&gt;-->
<!-- <img :ng-src="'https://favicon.lucq.fun/?url=http://'+bm.urls"-->
<!-- :src="'https://favicon.lucq.fun/?url=http://'+bm.urls"-->
<!-- onerror="this.src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQEAYAAABPYyMiAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAAAmVJREFUSMftlG1IU2EUx8+5jRHzg+5OiD64WTBBjSY5ZybUJMaMiIUICUKFIGmoIIogYWKFBmtDxN1tBKIWvlS6SR+iLFDBXqSMgmzbvQ7fkAjcINmQ5u7pQwyCiOvWx/p/fPj9/5znnPM8AP+VolRTjjHhTlmZipzEk9GYao4sVaMYxXp62NgIdpLBCuLP05mZZHOYZA3p5KgMjBcUwCmw4PfVVYiBGmbW1zMzOU4QCgtTvdAeRESEyNZyJbx+dDTjVv/9YFSjSScnfabsbPYMF+AbxsYS3F5TfwPZAacpMNfUBEAljK24mMJwlLIUClTAdfwok9FXWBTtc3Phzqv7c/RWa8KnrHZM8VltbRjC92AxGkEPRpSJInjJQPpIBJoZC6nn50M19dM5J/v6/lhRxgXXDX9Qp1POcmHh2sTEQbfbvVmrUCTbr4RPaeMe8Q0eTyI36VkrW50mftjrPWCyDn9oSUuTdj4Y/1Qpl7NdzkNC98iIqsIxHdQVFaU8eWW1U1guLy1lr3Acr3O7pXi227EhDLpcCZ8UL/kK8LIYjxtDIRhEP8xGIlI8bcAKvY3FGB/zYvf81pYUL/0PvGTKoTUvjzbgCx5ZWlJq3a5lQa1Ge3yTWnp64ASYqVcUoXn3Jtja2/EpRtHj89FF8Tb25ufDOwCo8/lSL0BF/eDPzcVXeA7WDAa6J9rES1VVdJqx41JHBwCE8BgA3JU9B+3AACziMwjv7MAaPQb/wgIAnP2rDpCWtpkncjm+Ro34bWgo3FkX0O6bnARARCT6hSR6YzazXa7DfLyigo7TNtObxNb/s/oB7V8JFvW/8IQAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjAtMDItMDJUMTg6MTE6NTgrMDg6MDCoc6tpAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIwLTAyLTAyVDE4OjExOjU4KzA4OjAw2S4T1QAAAGd0RVh0c3ZnOmJhc2UtdXJpAGZpbGU6Ly8vaG9tZS9hZG1pbi9pY29uLWZvbnQvdG1wL2ljb25fNWhyOG55Nmo1bWMvamluZ2RpYW5hbmxpX2tvbmd3dWppYW94aW5nX3Nob3VjYW5nLnN2Z4/vilwAAAAASUVORK5CYII='"-->
<!-- alt="" ng-show="bm.urls">-->
<!-- </div>-->
<!-- <div class="bookmark-official">{{bm.urls}}&nbsp;·&nbsp;</div>-->
<!-- <div class="bookmark-time">{{bm.createTime|changeTime}}</div>-->
<!-- <div class="bookmark-time" v-for="t in bm.sqTags">-->
<!-- <el-tag class="bookmark-list-tag" data-bookmarkId="t.bookmarkId" data-tagId="t.tagId"-->
<!-- size="mini">-->
<!-- {{t.name}}-->
<!-- </el-tag>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- </el-col>-->
<!-- </el-row>-->
<!-- <p v-if="listloading" class="listhint"><i class="el-icon-loading"></i>加载中...</p>-->
<!-- <p v-if="listnoMore" class="listhint">没有更多了</p>-->
<!-- </div>-->
<!-- 三窗口展示-->
<div class="bookmarklist" :style="datalist" infinite-scroll-distance="10" v-loading="loading" v-if="showbookmark"
v-infinite-scroll="load"
infinite-scroll-disabled="disabled" style="overflow:auto;" infinite-scroll-immediate="false">
<el-row>
<!-- <hr class="bookamrk-hr" v-if="!queryParams.sousuo!=''"/>-->
<el-col :span="24" v-for="bm in bookmarkList">
<div class="editBookamrk ">
<div class="editlist">
<div>
<el-button plain size="small" @click="handleUpdate(bm.bookmarkId)">修改</el-button>
</div>
<div>
<el-button plain size="small" @click="handleDelete(bm.bookmarkId)">删除</el-button>
</div>
<div>
<el-button plain size="small">笔记</el-button>
</div>
<div>
<el-button plain size="small">分享</el-button>
</div>
</div>
</div>
<BookmarkOne @on-windowurl="windowurl" :listloading="listloading" :loading="loading" :bookmarkList="bookmarkList"></BookmarkOne>
<div class="bookmark " :data-id="bm.id" @click="windowurl(bm.url,bm.bookmarkId)">
<p class="bookmark-title" v-if="highlighted"><span v-html="highLight(bm.title,queryParams.sousuo)"/></p>
<p class="bookmark-title" v-if="!highlighted">{{bm.title}}</p>
<div class="">
<p class="description" v-if="highlighted"><span v-html="highLight(bm.description,queryParams.sousuo)"/>
</p>
<p class="description" v-if="!highlighted">{{bm.description}}</p>
</div>
<div class="info-wrap">
<div class="info">
<div class="bookmark-icon">
<!-- <img :err-src='bm.icon' :ng-src="bm.icon" :src="bm.icon" />-->
<img :ng-src="'https://favicon.lucq.fun/?url=http://'+bm.urls"
:src="'https://favicon.lucq.fun/?url=http://'+bm.urls"
onerror="this.src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQEAYAAABPYyMiAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAAAmVJREFUSMftlG1IU2EUx8+5jRHzg+5OiD64WTBBjSY5ZybUJMaMiIUICUKFIGmoIIogYWKFBmtDxN1tBKIWvlS6SR+iLFDBXqSMgmzbvQ7fkAjcINmQ5u7pQwyCiOvWx/p/fPj9/5znnPM8AP+VolRTjjHhTlmZipzEk9GYao4sVaMYxXp62NgIdpLBCuLP05mZZHOYZA3p5KgMjBcUwCmw4PfVVYiBGmbW1zMzOU4QCgtTvdAeRESEyNZyJbx+dDTjVv/9YFSjSScnfabsbPYMF+AbxsYS3F5TfwPZAacpMNfUBEAljK24mMJwlLIUClTAdfwok9FXWBTtc3Phzqv7c/RWa8KnrHZM8VltbRjC92AxGkEPRpSJInjJQPpIBJoZC6nn50M19dM5J/v6/lhRxgXXDX9Qp1POcmHh2sTEQbfbvVmrUCTbr4RPaeMe8Q0eTyI36VkrW50mftjrPWCyDn9oSUuTdj4Y/1Qpl7NdzkNC98iIqsIxHdQVFaU8eWW1U1guLy1lr3Acr3O7pXi227EhDLpcCZ8UL/kK8LIYjxtDIRhEP8xGIlI8bcAKvY3FGB/zYvf81pYUL/0PvGTKoTUvjzbgCx5ZWlJq3a5lQa1Ge3yTWnp64ASYqVcUoXn3Jtja2/EpRtHj89FF8Tb25ufDOwCo8/lSL0BF/eDPzcVXeA7WDAa6J9rES1VVdJqx41JHBwCE8BgA3JU9B+3AACziMwjv7MAaPQb/wgIAnP2rDpCWtpkncjm+Ro34bWgo3FkX0O6bnARARCT6hSR6YzazXa7DfLyigo7TNtObxNb/s/oB7V8JFvW/8IQAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjAtMDItMDJUMTg6MTE6NTgrMDg6MDCoc6tpAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIwLTAyLTAyVDE4OjExOjU4KzA4OjAw2S4T1QAAAGd0RVh0c3ZnOmJhc2UtdXJpAGZpbGU6Ly8vaG9tZS9hZG1pbi9pY29uLWZvbnQvdG1wL2ljb25fNWhyOG55Nmo1bWMvamluZ2RpYW5hbmxpX2tvbmd3dWppYW94aW5nX3Nob3VjYW5nLnN2Z4/vilwAAAAASUVORK5CYII='"
alt="" ng-show="bm.urls">
</div>
<div class="bookmark-official">{{bm.urls}}&nbsp;·&nbsp;</div>
<div class="bookmark-time">{{bm.createTime|changeTime}}</div>
<div class="bookmark-time" v-for="t in bm.sqTags">
<el-tag class="bookmark-list-tag" data-bookmarkId="t.bookmarkId" data-tagId="t.tagId" size="mini">
{{t.name}}
</el-tag>
</div>
</div>
</div>
</div>
</el-col>
</el-row>
<p v-if="listloading" class="listhint"><i class="el-icon-loading"></i>加载中...</p>
<p v-if="listnoMore" class="listhint">没有更多了</p>
</div>
@ -149,11 +220,12 @@
<el-input v-model="form.description" type="textarea" placeholder="请输入书签描述" run dev
:autosize="{minRows: 3, maxRows:4}" :style="{width: '100%'}"></el-input>
</el-form-item>
<el-form-item label="所属目录" prop="menuId">
<el-input v-model="form.menuId" placeholder="请选择上级目录"/>
<el-form-item prop="menuId">
<div class="labelname">请选择上级目录</div>
<treeselect class="menutreeselect" v-model="form.parentId" :options="menuOptions"
:normalizer="normalizer"/>
</el-form-item>
<el-form-item label="书签标签:" prop="label">
<el-tag
class="bookmarktag"
@ -205,13 +277,37 @@
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</el-aside>
<el-main class="isBookmarkMain">
<el-header class="mianUrl-top" style="height: 50px">
<div class="mianUrl-top-left">
<i class="el-icon-folder-delete"></i>
<i class="el-icon-rank"></i>
</div>
<div class="mianUrl-top-right">
<i class="el-icon-edit-outline" @click="windowurlOpen"></i>
<i class="el-icon-position"></i>
</div>
</el-header>
<div class="mianUrl-botoom" v-loading="iframeLoading" >
<!-- webkitallowfullscreen="true" mozallowfullscreen="true" allowfullscreen="true"-->
<iframe sandbox="allow-forms allow-scripts allow-popups" class="openurl" :src="gourl" target="_self" tabindex="-1" />
</div>
</el-main>
</el-container>
</div>
</template>
<script>
import {listMenuByUserId} from "@/api/bookmark/menu";
import Treeselect from "@riophae/vue-treeselect";
import BookmarkOne from "../../../components/BookmarkList";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
import {
selectBymenuIdUserID,
selectBydelete,
@ -226,11 +322,13 @@
export default {
components: {
format
format, Treeselect,BookmarkOne
},
data: function () {
return {
sousuo: '',
drawer: false,
//
loading: true,
//
@ -241,6 +339,7 @@
showbookmark: true,
showimg: false,
loading: false,
iframeLoading:false,
queryParams: {
pageNum: 1,
pageSize: 15,
@ -264,6 +363,8 @@
tagcount: 0, //ID
bookmarkList: [],
urltext: '?from=yunshuqian.com',//广
//
menuOptions: [],
//
form: {},
//
@ -293,6 +394,10 @@
total: 0,//
noMore: false,//
highlighted: true,//
//
gourl:'https://element.eleme.cn/#/zh-CN/theme',
}
},
@ -432,7 +537,17 @@
}
}
},
/** 转换书签菜单数据结构 */
normalizer(node) {
if (node.children && !node.children.length) {
delete node.children;
}
return {
id: node.menuId,
label: node.menuName,
children: node.children
};
},
/**书签编辑设置的 标签开始**/
taghandleClose(tag) {
@ -552,7 +667,7 @@
idelete: undefined,
start: undefined,
createTime: undefined,
sqTags: undefined,
sqTags: [],
sort: undefined,
};
this.resetForm("form");
@ -600,15 +715,27 @@
this.bookmarkList = response.rows;
this.total = response.total;
this.loading = false;
if (this.total>0){
this.gourl=this.bookmarkList[0].url;
}
} else {
this.showbookmark = false;
this.showimg = true;
}
});
},
/**网站内打开*/
windowurl(url,bookmarkId) {
// window.open(url+this.urltext);
window.open(url);
var that=this;
that.iframeLoading=true;
this.gourl=url;
setTimeout(function(){
that.iframeLoading=false;
},1000);
},
/**新窗口打开*/
windowurlOpen() {
window.open(this.gourl);
},
/**搜索高亮 开始**/
@ -662,7 +789,49 @@
return htmlStr;
},
/**搜索高亮 结束**/
/**搜索功能**/
gosousuo() {
var that = this;
// that.$router.push({
// path: "/content",
// query: {
// sousuo: this.sousuo,
// t:Date.now(),
// }
// })
},
/** 查询部门下拉树结构 */
getTreeselect() {
if (this.zNodes != null && this.zNodes.length != 0) {
this.menuOptions = [];
const data = {menuId: 0, menuName: '顶级菜单', children: []};
data.children = this.handleTree(this.zNodes, "menuId", "parentId");
this.menuOptions.push(data);
return;
}
listMenuByUserId().then(response => {
this.menuOptions = [];
const data = {menuId: 0, menuName: '顶级菜单', children: []};
data.children = this.handleTree(response.data, "menuId", "parentId");
this.menuOptions.push(data);
});
},
/** 新增书签Url操作 */
addbookmarkurl: function () {
this.reset();
this.getTreeselect();
this.open = true;
// getMenu(e.getAttribute("data-menuId")).then(response => {
// this.form = response.data;
// this.open = true;
// this.title = "";
// });
},
},
@ -747,7 +916,7 @@
height: 70px;
position: absolute;
background-color: #acd7ff;
/*right: 0;编辑*/
right: 0;
display: none;
}
@ -764,11 +933,6 @@
float: left;
}
.bookmark-hr {
background-color: #fff !important;
margin-top: 2px !important;
margin-bottom: 7px !important;
}
.editlist div {
margin-left: 10px;
@ -795,7 +959,6 @@
.bookmark-icon {
float: left;
margin-right: 5px;
}
.bookmark-icon img {
@ -804,6 +967,11 @@
}
.filter-item:hover {
background-color: #E5E5E5 !important;
color: #000 !important;
}
.filter-tbar {
display: flex;
position: relative;
@ -828,10 +996,11 @@
display: flex;
align-items: center;
justify-content: center;
margin-right: 13px;
}
.filter-content {
margin-left: 18px;
margin-left: 13px;
}
@ -892,9 +1061,13 @@
.listhint {
width: 100%;
text-align: center;
height: 20px;
color: #808080;
/*background: #dcdfe682;*/
font-weight: 600;
padding: 0;
margin: 0;
}
.bookmark-title:hover {
@ -928,6 +1101,8 @@
margin-bottom: 2px;
}
.description {
/*设置文本框大小*/
white-space: nowrap;
@ -942,9 +1117,7 @@
.bookmarklist {
width: 100%;
height: 600px;
/*background-color: #fff;*/
float: left
}
@ -972,8 +1145,8 @@
::-webkit-scrollbar-thumb {
/*设置为透明 隐藏掉*/
/*background-color: #606d71;*/
background-color: transparent;
background-color: #606d71;
/*background-color: transparent;*/
background-clip: padding-box;
min-height: 28px;
-webkit-border-radius: 2em;
@ -991,8 +1164,6 @@
/*滚动条美化结束*/
.sousuoContent {
width: 100%;
height: 24px;
@ -1013,7 +1184,192 @@
/*border-bottom: 1px solid #D9D9D9;*/
}
.bookmark2 {
height: 52px;
/*border-bottom: 1px solid #D9D9D9;*/
white-space: nowrap;
border-top:1px solid #D4D4D4 ;
}
.sousouright-icon {
display: flex;
justify-content: center;
align-items: center;
width: 50px;
margin: 0 auto;
}
.sousouright-iconadd {
display: flex;
justify-content: center;
align-items: center;
width: 50px;
}
.sq-dropdown {
top: 33px !important;
box-shadow: 0 2px 15px 0 rgba(0, 0, 0, .2) !important;
font-weight: 800 !important;
}
.sq-dropdown div {
display: none !important;
}
.sousouleft-switch {
display: flex;
align-items: center;
justify-content: center;
margin-right: 10px;
width: 30px;
height: 30px;
}
.sousouleft-switch i {
font-size: 30px !important;
opacity: 0.8;
}
.sousou-leftico {
display: flex;
align-items: center;
justify-content: center;
width: 30px;
height: 30px;
border-radius: 3px;
border: 1px solid #e6e6e6;
margin-right: 10px;
}
.sousou-leftico img {
}
.header-sousou {
display: flex;
align-items: center;
justify-content: center;
height: 50px;
padding-left: 0px;
}
.header-sousou input {
margin-top: 9px;
border: 0px;
background-color: #f2f2f2;
border-radius: 0 !important;
/*border: 1px solid #f2f2f2;*/
}
.header-sousou input:focus {
background-color: #FFFFFF !important;
border: 1px solid #C0C4CC;
}
.sousou-input {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
.sousou-input i {
font-size: 15px;
}
.header-list {
display: flex;
justify-content: center;
align-items: center;
width: 35px;
}
.header-list:hover {
color: #7a6df0;
}
.header-list i {
font-size: 25px;
margin-right: 2px;
}
.sousou-left {
/*width: 50px!important;*/
/*height: 50px;*/
/*margin-top: 12px!important;*/
/*background-color: red;*/
}
.isBookmarkAside{
padding: 0px;
background-color: #ffffff;
width: 400px!important;
box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1);
}
.isBookmarkMain{
padding: 0px;
}
.mianUrl{
padding: 0px;
color: #8F8F8F;
}
.mianUrl-top{
display: flex;
padding: 0px!important;
}
.mianUrl-top div{
width: 50%;
height: 50px;
background-color: #FFFFFF;
font-size: 22px;
color: #414141;
padding-top: 19px;
}
.mianUrl i{
display: block;
width: 30px;
height: 30px;
line-height: 30px;
text-align: center;
margin-top: 15px;
border-radius: 2px;
}
.mianUrl-top-left i{
float: left;
margin-left: 15px;
}
.mianUrl i:hover{
background-color: #F2F2F2;
}
.mianUrl-top-right i{
float: right;
margin-right: 15px;
}
.mianUrl-botoom{
height: 900px;
}
.openurl{
background-color: #ffffff;
border: 0px;
width: 100%;
height: 100%;
}
</style>

View File

@ -1,22 +1,17 @@
<template>
<div class="home">
<div CLASS="title">
<div CLASS="nqtitle">
<div class="mdui-textfield mdui-textfield-floating-label">
<label class="mdui-textfield-label">文章标题</label>
<input class="mdui-textfield-input" type="text" required/>
<div class="mdui-textfield-error">文章标题不能为空</div>
</div>
<div class="mdui-textfield mdui-textfield-floating-label">
<label class="mdui-textfield-label">文章描述</label>
<input class="mdui-textfield-input" type="text" required/>
<div class="mdui-textfield-error">文章描述不能为空</div>
</div>
</div>
<div class="mian" v-html="msg">
<!-- <div class="mian" v-html="msg">-->
</div>
<!-- </div>-->
<div>
<tinymce
@ -26,8 +21,9 @@
@onClick="onClick"
/>
</div>
<div STYLE="margin-top: 10px;">
<div STYLE="margin-top: 10px;margin-bottom: 10px">
<button class="mdui-btn mdui-btn-raised mdui-color-indigo-300" @click="clear">清空内容</button>
<button class="mdui-btn mdui-btn-raised mdui-color-indigo-300" @click="clear">发布</button>
<button class="mdui-btn mdui-ripple mdui-btn-raised " @click="disabled = true">禁用</button>
<button class="mdui-btn mdui-ripple mdui-btn-raised " @click="disabled = false">启用</button>
</div>
@ -78,7 +74,7 @@
}
}
</script>
<style>
<style scoped>
.title{
display: flex;
}
@ -90,7 +86,8 @@
}
.mian{
min-height: 100px;
height: 300px;
overflow-y: auto;
width: 100%;
border: 1px solid #cacaca;
background-color: #ebebeb;

View File

@ -18,9 +18,9 @@
<div class="main-right">
<div class="aside-title" @click="goBookmarkList"><i class="el-icon-s-tools"></i><span>全部书签</span></div>
<div class="aside-title"><i class="el-icon-help"></i><span>发现</span></div>
<div class="aside-title"><i class="el-icon-s-platform"></i><span>任意门</span></div>
<div class="aside-title" @click="goBookmarkList"><i class="el-icon-s-tools"></i><span>最新书签</span></div>
<!-- <div class="aside-title"><i class="el-icon-help"></i><span>发现</span></div>-->
<!-- <div class="aside-title"><i class="el-icon-s-platform"></i><span>任意门</span></div>-->
<div class="aside-title"><i class="el-icon-message-solid"></i><span>收件箱</span></div>
<div class="reminder">我的收藏</div>
<div class="areaTree">
@ -64,8 +64,8 @@
</transition>
<div class="isresize">
<i class="el-icon-caret-top"></i>
<div class="isresize" style="cursor:w-resize">
<!-- <i class="el-icon-caret-top"></i>-->
</div>
<!-- <el-drawer-->
<!-- title="我是标题"-->
@ -83,70 +83,6 @@
<el-container class="mid">
<el-header class="header-sousou" style="height: 50px">
<div class="sousou-left">
<div class="sousouleft-switch" @click="drawer = true"><i class="el-icon-s-unfold"/></div>
<div class="sousou-leftico" @click="drawer = true"><img
src="https://favicon.lucq.fun/?url=https://www.baidu.com"/></div>
</div>
<div class="sousou-input">
<!-- <el-popover-->
<!-- placement="bottom"-->
<!-- width="400"-->
<!-- trigger="click"-->
<!-- :visible-arrow="false"-->
<!-- popper-class="popover-suosou"-->
<!-- >-->
<!-- <div v-for="o in 4" :key="o">-->
<!-- {{'列表内容 ' + o }}-->
<!-- </div>-->
<el-input slot="reference" @keyup.enter.native="gosousuo" placeholder="请输入要查找的关键词" v-model="sousuo"
size="small">
<i slot="prefix" class="el-input__icon el-icon-search" style="font-size: 15px;margin-top: 7px"></i>
<!-- <el-button slot="append" icon="el-icon-search"></el-button>-->
</el-input>
<!-- </el-popover>-->
</div>
<div class="sousouright-icon">
<el-badge :value="5" :max="99" class="item"><i class="el-icon-message-solid" style="font-size: 17px;"></i>
</el-badge>
</div>
<div class="sousouright-iconadd">
<el-dropdown trigger="click" size="small" :hide-on-click="false">
<span class="el-dropdown-link">
<i class="el-icon-plus" style="font-size: 18px;"/>
</span>
<el-dropdown-menu slot="dropdown" class="sq-dropdown">
<el-dropdown-item class="filter-item" icon="el-icon-plus" @click.native="addbookmarkurl">添加连接
</el-dropdown-item>
<el-dropdown-item class="filter-item" icon="el-icon-plus" command="b">添加文本</el-dropdown-item>
<el-dropdown-item class="filter-item" icon="el-icon-plus" command="d">导入书签</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
<div class="header-list">
<el-dropdown trigger="click" size="small" :hide-on-click="false">
<span class="el-dropdown-link">
<el-avatar :size="28"
src="https://up.raindrop.io/collection/templates/social-media-logos-6/97social.png"></el-avatar>
</span>
<el-dropdown-menu slot="dropdown" class="sq-dropdown">
<el-dropdown-item class="filter-item" icon="el-icon-plus" command="a">外观显示</el-dropdown-item>
<el-dropdown-item class="filter-item" icon="el-icon-plus" command="b">用户中心</el-dropdown-item>
<el-dropdown-item class="filter-item" icon="el-icon-plus" command="d">建议反馈</el-dropdown-item>
<el-dropdown-item class="filter-item" icon="el-icon-plus" command="e">退出登录</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
</el-header>
<el-main class="bookmarkmain">
<router-view :key="$route.query.t"></router-view>
@ -217,82 +153,82 @@
</el-dialog>
<!-- 添加链接-->
<!-- 添加或修改书签管理对话框 -->
<el-dialog title="添加连接" :visible.sync="addopen" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="书签地址" prop="url">
<el-input v-model="form.url" placeholder="请输入书签地址"/>
</el-form-item>
<el-form-item label="书签标题" prop="title">
<el-input v-model="form.title" placeholder="请输入书签标题"/>
</el-form-item>
<el-form-item label="书签描述" prop="description">
<el-input v-model="form.description" type="textarea" placeholder="请输入书签描述"
:autosize="{minRows: 3, maxRows:4}" :style="{width: '100%'}"></el-input>
</el-form-item>
<!-- &lt;!&ndash; 添加链接&ndash;&gt;-->
<!-- &lt;!&ndash; 添加或修改书签管理对话框 &ndash;&gt;-->
<!-- <el-dialog title="添加连接" :visible.sync="addopen" width="500px" append-to-body>-->
<!-- <el-form ref="form" :model="form" :rules="rules" label-width="80px">-->
<!-- <el-form-item label="书签地址" prop="url">-->
<!-- <el-input v-model="form.url" placeholder="请输入书签地址"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="书签标题" prop="title">-->
<!-- <el-input v-model="form.title" placeholder="请输入书签标题"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="书签描述" prop="description">-->
<!-- <el-input v-model="form.description" type="textarea" placeholder="请输入书签描述"-->
<!-- :autosize="{minRows: 3, maxRows:4}" :style="{width: '100%'}"></el-input>-->
<!-- </el-form-item>-->
<el-form-item prop="parentId">
<div class="labelname">分类菜单</div>
<treeselect class="menutreeselect" v-model="form.menuId" :options="menuOptions" :normalizer="normalizer"/>
</el-form-item>
<!-- <el-form-item prop="parentId">-->
<!-- <div class="labelname">分类菜单</div>-->
<!-- <treeselect class="menutreeselect" v-model="form.menuId" :options="menuOptions" :normalizer="normalizer"/>-->
<!-- </el-form-item>-->
<el-form-item label="书签标签" prop="label">
<el-tag
class="bookmarktag"
v-for="tag in sqTags"
:key="tag.tagId"
closable
type="success"
:disable-transitions="false"
@close="taghandleClose(tag.tagId)"
v-if="tag.name!='TAGDELETE'"
>
{{tag.name}}
</el-tag>
<el-input
class="input-new-tag"
v-if="inputVisible"
v-model="inputValue"
ref="saveTagInput"
size="small"
@keyup.enter.native="handleInputConfirm"
@blur="handleInputConfirm"
>
</el-input>
<el-button v-else class="button-new-tag" size="small" @click="showInput">+ 新增标签</el-button>
<!-- <el-form-item label="书签标签" prop="label">-->
<!-- <el-tag-->
<!-- class="bookmarktag"-->
<!-- v-for="tag in sqTags"-->
<!-- :key="tag.tagId"-->
<!-- closable-->
<!-- type="success"-->
<!-- :disable-transitions="false"-->
<!-- @close="taghandleClose(tag.tagId)"-->
<!-- v-if="tag.name!='TAGDELETE'"-->
<!-- >-->
<!-- {{tag.name}}-->
<!-- </el-tag>-->
<!-- <el-input-->
<!-- class="input-new-tag"-->
<!-- v-if="inputVisible"-->
<!-- v-model="inputValue"-->
<!-- ref="saveTagInput"-->
<!-- size="small"-->
<!-- @keyup.enter.native="handleInputConfirm"-->
<!-- @blur="handleInputConfirm"-->
<!-- >-->
<!-- </el-input>-->
<!-- <el-button v-else class="button-new-tag" size="small" @click="showInput">+ 新增标签</el-button>-->
</el-form-item>
<!-- </el-form-item>-->
<!-- <el-form-item label="所属目录" prop="menuId">-->
<!-- <el-input v-model="form.menuId" placeholder="请选择上级目录" />-->
<!-- &lt;!&ndash; <el-form-item label="所属目录" prop="menuId">&ndash;&gt;-->
<!-- &lt;!&ndash; <el-input v-model="form.menuId" placeholder="请选择上级目录" />&ndash;&gt;-->
<!-- &lt;!&ndash; </el-form-item>&ndash;&gt;-->
<!-- &lt;!&ndash; 0公开显示 1隐藏显示 2好友显示&ndash;&gt;-->
<!-- <el-form-item label="选择状态" prop="start">-->
<!-- <el-radio-group v-model="form.start" size="medium">-->
<!-- <el-radio v-for="(item, index) in bookmarkstatus" :key="index" :label="item.value"-->
<!-- :disabled="item.disabled">{{item.name}}-->
<!-- </el-radio>-->
<!-- </el-radio-group>-->
<!-- </el-form-item>-->
<!-- &lt;!&ndash; 1.未读稍后再看 2 已读 2.續看&ndash;&gt;-->
<!-- <el-form-item label="选择类型" prop="type">-->
<!-- <el-radio-group v-model="form.type" size="medium">-->
<!-- <el-radio v-for="(item, index) in bookmarktype" :key="index" :label="item.value"-->
<!-- :disabled="item.disabled">{{item.name}}-->
<!-- </el-radio>-->
<!-- </el-radio-group>-->
<!-- </el-form-item>-->
<!-- 0公开显示 1隐藏显示 2好友显示-->
<el-form-item label="选择状态" prop="start">
<el-radio-group v-model="form.start" size="medium">
<el-radio v-for="(item, index) in bookmarkstatus" :key="index" :label="item.value"
:disabled="item.disabled">{{item.name}}
</el-radio>
</el-radio-group>
</el-form-item>
<!-- 1.未读稍后再看 2 已读 2.續看-->
<el-form-item label="选择类型" prop="type">
<el-radio-group v-model="form.type" size="medium">
<el-radio v-for="(item, index) in bookmarktype" :key="index" :label="item.value"
:disabled="item.disabled">{{item.name}}
</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="addbookmark"> </el-button>
<el-button @click="bookmarkcancel"> </el-button>
</div>
</el-dialog>
<!-- </el-form>-->
<!-- <div slot="footer" class="dialog-footer">-->
<!-- <el-button type="primary" @click="addbookmark"> </el-button>-->
<!-- <el-button @click="bookmarkcancel"> </el-button>-->
<!-- </div>-->
<!-- </el-dialog>-->
<!--背景特效-->
<canvas id="evanyou"></canvas>
@ -428,9 +364,6 @@
height: "",
width: "",
},
//
gourl:'https://element.eleme.cn/#/zh-CN/theme',
}
},
@ -453,8 +386,6 @@
var that = this;
//
that.getList();
window.addEventListener('resize', this.getHeight);
this.getHeight()
},
@ -1015,18 +946,6 @@
/**书签编辑设置的 标签结束**/
/** 新增书签Url操作 */
addbookmarkurl: function () {
this.reset();
this.getTreeselect();
this.addopen = true;
// getMenu(e.getAttribute("data-menuId")).then(response => {
// this.form = response.data;
// this.open = true;
// this.title = "";
// });
},
/** 提交按钮 修改和新增 */
addbookmark: function () {
@ -1374,17 +1293,7 @@
path: "/UserTagAll",
})
},
/**搜索功能**/
gosousuo() {
var that = this;
that.$router.push({
path: "/content",
query: {
sousuo: this.sousuo,
t:Date.now(),
}
})
},
},
@ -1567,6 +1476,10 @@
box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1);
}
/*光标拖拽*/
/*.isaside{*/
/* cursor:w-resize*/
/*}*/
.aside-title {
height: 32px;
@ -1617,10 +1530,6 @@
}
/*.logoright i:active {*/
/* background-color: #7a6df0;*/
/* color: #FFFFFF;*/
/*}*/
.reminder {
@ -1666,8 +1575,7 @@
.bookmarkmain {
padding-top: 0px !important;
padding: 0px !important;
}
.separator {
@ -1683,65 +1591,6 @@
margin-bottom: 3px;
}
.header-sousou {
display: flex;
align-items: center;
justify-content: center;
}
.header-sousou input {
margin-top: 9px;
border: 0px;
background-color: #f2f2f2;
border-radius: 0 !important;
/*border: 1px solid #f2f2f2;*/
}
.header-sousou input:focus {
background-color: #FFFFFF !important;
border: 1px solid #C0C4CC;
}
.header-sousou i {
font-size: 1px;
margin-top: 6px;
}
.sousou-input {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
.header-list {
display: flex;
justify-content: center;
align-items: center;
width: 35px;
margin-top: 9px !important;
}
.header-list:hover {
color: #7a6df0;
}
.header-list i {
font-size: 25px;
margin-right: 2px;
}
.main-label span i {
margin-left: 5px;
@ -1759,80 +1608,6 @@
margin-right: 5px;
}
.sousouleft-switch {
margin-top: 4px !important;
margin-right: 10px !important;
}
.sousouleft-switch i {
font-size: 30px;
opacity: 0.8;
}
.sousou-left {
/*width: 50px!important;*/
/*height: 50px;*/
/*margin-top: 12px!important;*/
/*background-color: red;*/
}
.sousou-leftico {
display: flex;
align-items: center;
justify-content: center;
width: 30px;
height: 30px;
border-radius: 3px;
border: 1px solid #e6e6e6 !important;
margin-top: 9px !important;
margin-right: 10px !important;
}
.sousou-leftico img {
}
.filter-item:hover {
background-color: #E5E5E5 !important;
color: #000 !important;
}
.sousouright-icon {
display: flex;
justify-content: center;
align-items: center;
width: 50px;
margin-top: 7px !important;
}
.sousouright-iconadd {
display: flex;
justify-content: center;
align-items: center;
width: 50px;
margin-top: 7px !important;
}
.sq-dropdown {
top: 33px !important;
box-shadow: 0 2px 15px 0 rgba(0, 0, 0, .2) !important;
font-weight: 800 !important;
}
.sq-dropdown div {
display: none !important;
}
.labelname {
font-weight: 800;
color: rgb(0, 0, 0);
@ -1914,11 +1689,12 @@
padding-top: 6px !important;
}
el-aside {
.isaside {
box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1);
}
.main-right {
width: 300px;
height: 95%;
@ -1950,12 +1726,7 @@
}
.tabBar {
/*width: inherit;*/
/*overflow: hidden;*/
/*position: fixed;*/
/*bottom: 0;*/
}
.tabBarList{
display: flex;
float: left;
@ -1992,28 +1763,29 @@
/*拖拽区div样式*/
.isresize {
background-color: transparent;
width: 10px;
width: 7px;
font-size: 25px;
display: -webkit-flex;
justify-content: center;
align-items: center;
background-color: transparent;
color: transparent;
z-index: 1;
margin-left: -4px!important;
}
/*拖拽区鼠标悬停样式*/
.isresize:hover {
color: #a4a4a4;
}
/*.isresize:hover {*/
/* color: #a4a4a4;*/
/*}*/
.isresize i {
margin-left: 2px;
transform: rotate(90deg);
width: 10px;
/*color: transparent;*/
/*background-color: black;*/
}
/*.isresize i {*/
/* margin-left: 2px;*/
/* transform: rotate(90deg);*/
/* width: 10px;*/
/* !*color: transparent;*!*/
/* !*background-color: black;*!*/
/*}*/
.main-right {
min-width: 250px;
@ -2041,53 +1813,12 @@
.mianUrl{
padding: 0px;
color: #8F8F8F;
}
.mianUrl-top{
display: flex;
padding: 0px!important;
}
.mianUrl-top div{
width: 50%;
height: 50px;
background-color: #FFFFFF;
font-size: 22px;
color: #414141;
}
.mianUrl i{
display: block;
width: 30px;
height: 30px;
line-height: 30px;
text-align: center;
margin-top: 15px;
border-radius: 2px;
}
.mianUrl-top-left i{
float: left;
margin-left: 15px;
}
.mianUrl i:hover{
background-color: #F2F2F2;
}
.mianUrl-top-right i{
float: right;
margin-right: 15px;
}
.mianUrl-botoom{
height: 900px;
}
.openurl{
width: 100%;
height: 100%;
}
/*.mid{*/
/* min-width: 400px!important;*/
/* max-width: 400px;*/
/*}*/
</style>

View File

@ -19,9 +19,9 @@ import java.util.Date;
public class SqMenu
{
private static final long serialVersionUID = 1L;
/** ID */
/** ID 返回自增长主键 */
@Id
@GeneratedValue(generator = "JDBC")//返回自增长主键
@GeneratedValue(generator = "JDBC")
@Column(name = "menu_id")
private Long menuId;