Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Skyeye云
Skyeye
提交
3d86ebf3
S
Skyeye
项目概览
Skyeye云
/
Skyeye
通知
1430
Star
162
Fork
130
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
Skyeye
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
3d86ebf3
编写于
12月 06, 2022
作者:
Skyeye云
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
目录功能完成
上级
4b87f37f
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
150 addition
and
0 deletion
+150
-0
web/src/main/resources/template/assets/lib/layui/customer/tree/catalogTreeUtil.js
...emplate/assets/lib/layui/customer/tree/catalogTreeUtil.js
+150
-0
未找到文件。
web/src/main/resources/template/assets/lib/layui/customer/tree/catalogTreeUtil.js
浏览文件 @
3d86ebf3
...
...
@@ -77,7 +77,9 @@ var catalogTreeUtil = {
layui.define(["jquery", 'fsTree'], function(exports) {
var jQuery = layui.jquery,
fsTree = layui.fsTree;
var chooseCagelogId = "";
(function($) {
var ztree = null;
fsTree.render({
id: "
${
showBoxId
}
Tree",
simpleData: '`
+
JSON
.
stringify
(
data
)
+
`',
...
...
@@ -87,10 +89,27 @@ var catalogTreeUtil = {
showIcon: true,
expandSpeed: 'fast',
clickCallback: onClickTree,
onRename: onRename,
beforeRename: beforeRename,
onRightClick: onRightClick,
onDblClick: onClickTree
}, function(id) {
ztree = $.fn.zTree.getZTreeObj(id);
fuzzySearch(id, '#
${
showBoxId
}
Name', null, true);
});
function onRightClick(event, treeId, treeNode) {
chooseCagelogId = treeNode.id;
// 设置右键节点选中
chooseNodeSelect(chooseCagelogId);
// 公共目录 不展示右键菜单
if (treeNode.type == 2 || chooseCagelogId === '0') {
if (chooseCagelogId === '0') {
showRMenu('root', event.clientX, event.clientY);
} else {
showRMenu('node', event.clientX, event.clientY);
}
}
}
function onClickTree(event, treeId, treeNode) {
var chooseId;
if (treeNode == undefined || treeNode.id == 0) {
...
...
@@ -100,6 +119,126 @@ var catalogTreeUtil = {
}
$('#
${
showBoxId
}
Choose').val(chooseId).change();
}
// 设置选中节点
function chooseNodeSelect(chooseCagelogId) {
var selNode = ztree.getNodeByParam("id", chooseCagelogId, null);
ztree.selectNode(selNode);
}
function showRMenu(type, x, y) {
$("#caralogTreeRight .is-file").show();
if(type == 'root'){
$("#caralogTreeRight .reName").hide();
$("#caralogTreeRight .deleteFolder").hide();
}
$("#caralogTreeRight").show();
$("#caralogTreeRight").css({top: y + "px", left: x + "px", visibility: "visible", position: "absolute"});
$("body").bind("mousedown", onBodyMouseDown);
}
function hideRMenu() {
if ($("#caralogTreeRight")) $("#caralogTreeRight").css({"visibility": "hidden"});
$("body").unbind("mousedown", onBodyMouseDown);
}
function onBodyMouseDown(event){
if (!($(event.target).parents(".is-file").length > 0)) {
$("#caralogTreeRight").css({"visibility" : "hidden"});
}
}
// 节点名称修改限制
var oldName = '';
function beforeRename(treeId, treeNode, newName, isCancel) {
if (isNull(oldName)) {
oldName = treeNode.name;
}
if (newName.length < 1) {
winui.window.msg("节点名称不能为空", {icon: 2, time: 2000});
return false;
}
return true;
}
// 编辑节点名称
function onRename(event, treeId, treeNode) {
var params = {
name: treeNode.name,
icon: '',
parentId: treeNode.parentId,
objectId: '
${
catalogTreeUtil
.
config
.
objectId
}
',
objectKey: '
${
catalogTreeUtil
.
config
.
className
}
',
type: 2,
id : treeNode.id
};
AjaxPostUtil.request({url: reqBasePath + "writeCatalog", params: params, type: 'json', method: 'POST', callback: function (json) {
winui.window.msg("保存成功", {icon: 1, time: 2000});
chooseCagelogId = treeNode.id;
oldName = '';
}, errorCallback: function (json) {
winui.window.msg(json.returnMessage, {icon: 2, time: 2000});
// 1、获取当前选中的节点
var selectedNode = ztree.getSelectedNodes();
// 2、恢复旧的名称
if (selectedNode.length > 0) {
selectedNode[0].name = oldName;
ztree.editName(selectedNode[0]);
}
oldName = '';
}});
}
// 文件夹或者文件重命名
$("body").on("click", ".reName", function (e) {
hideRMenu();
var selNode = ztree.getNodeByParam("id", chooseCagelogId, null);
ztree.editName(selNode);
});
// 树操作--新建文件夹
$("body").on("click", ".createNewFolder", function (e) {
var params = {
name: '新建文件夹',
icon: '',
parentId: chooseCagelogId,
objectId: '
${
catalogTreeUtil
.
config
.
objectId
}
',
objectKey: '
${
catalogTreeUtil
.
config
.
className
}
',
type: 2
};
hideRMenu();
AjaxPostUtil.request({url: reqBasePath + "writeCatalog", params: params, type: 'json', method: 'POST', callback: function (json) {
var newNode = json.bean;
// 1、获取当前选中的节点
var selectedNode = ztree.getSelectedNodes();
// 2、把这个新节点添加到当前选中的节点下,作为它的子节点
if (selectedNode.length > 0) {
ztree.addNodes(selectedNode[0], newNode);
}
}});
});
// 删除文件夹
$("body").on("click", ".deleteFolder", function (e) {
hideRMenu();
layer.confirm(systemLanguage["com.skyeye.deleteOperationMsg"][languageType], {icon: 3, title: systemLanguage["com.skyeye.deleteOperation"][languageType]}, function (index) {
layer.close(index);
deleteFile();
});
});
// 删除文件夹
function deleteFile() {
AjaxPostUtil.request({url: reqBasePath + "deleteCatalogById", params: {id: chooseCagelogId}, type: 'json', method: 'DELETE', callback: function (json) {
winui.window.msg(systemLanguage["com.skyeye.deleteOperationSuccessMsg"][languageType], {icon: 1, time: 2000});
var selNode = ztree.getNodeByParam("id", chooseCagelogId, null);
ztree.selectNode(selNode.getParentNode());// 设置选中节点
// 重置 chooseCagelogId
chooseCagelogId = selNode.getParentNode().id;
// 移除节点
ztree.removeNode(selNode);
}});
}
})(jQuery);});
</script>`
;
$
(
"
#
"
+
showBoxId
).
append
(
_html
+
_js
);
...
...
@@ -124,6 +263,17 @@ var catalogTreeUtil = {
<ul id="
${
showBoxId
}
Tree" class="ztree fsTree" method="get" isRoot="
${
isRoot
}
" isLoad="0" treeIdKey="id" inputs="parentId" treePIdKey="parentId"
clickCallbackInputs="parentId:$id" treeName="name" style="overflow-y: auto; height: 100%;"></ul>
</div>
<ul class="layui-dropdown-menu" id="caralogTreeRight">
<li class="is-file createNewFolder">
<a href="javascript:;"><img alt="" src="../../assets/images/create-folder-icon.png" /><span>新建</span></a>
</li>
<li class="is-file reName" >
<a href="javascript:;"><img alt="" src="../../assets/images/rename-icon.png" /><span>重命名</span></a>
</li>
<li class="is-file deleteFolder">
<a href="javascript:;"><img alt="" src="../../assets/images/delete-icon.png" /><span>删除</span></a>
</li>
</ul>
<script type="text/javascript" src="../../assets/lib/layui/lay/modules/jquery-min.js"></script>
<script type="text/javascript" src="../../assets/lib/layui/lay/modules/contextMenu/jquery.contextMenu.min.js"></script>
<script type="text/javascript" src="../../assets/lib/layui/lay/modules/ztree/js/jquery.ztree.all.min.js"></script>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录