156 lines
6.8 KiB
HTML
156 lines
6.8 KiB
HTML
<resource-share type="script" src="/assets/js/formConfigs/SerieForm.js"></resource-share>
|
|
<div class="layui-fluid">
|
|
<div class="layui-row layui-col-space15">
|
|
<div class="layui-col-md12">
|
|
<div class="layui-card">
|
|
<table class="layui-hide" id="ID-treeTable"></table>
|
|
<script type="text/html" id="TPL-treeTable">
|
|
<div class="layui-btn-container">
|
|
<button class="layui-btn layui-btn-warm layui-btn-sm" lay-event="NewSerie">新建系列</button>
|
|
<button class="layui-btn layui-btn-sm" lay-event="FullChecked">展开全部</button>
|
|
<button class="layui-btn layui-btn-sm" lay-event="FullOutChecked">收起全部</button>
|
|
<button class="layui-btn layui-btn-sm" lay-event="Refresh">刷新</button>
|
|
</div>
|
|
</script>
|
|
<script type="text/html" id="TPL-treeTable-tools">
|
|
<div class="layui-btn-container">
|
|
<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看</a>
|
|
<a class="layui-btn layui-btn-warm layui-btn-xs" lay-event="edit">编辑</a>
|
|
<a class="layui-btn layui-btn-xs" lay-event="more">更多 <i class="layui-icon layui-icon-down"></i></a>
|
|
</div>
|
|
</script>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<script>
|
|
layui.use(['treeTable', 'layer', 'dropdown', 'form', 'formEngine'], function() {
|
|
const treeTable = layui.treeTable;
|
|
const layer = layui.layer;
|
|
const dropdown = layui.dropdown;
|
|
const form = layui.form;
|
|
const formEngine = layui.formEngine;
|
|
|
|
// 渲染树形表格
|
|
const tableInst = treeTable.render({
|
|
elem: '#ID-treeTable',
|
|
id: 'ID-treeTable',
|
|
url: '/API/doc/serie/GetSeries',
|
|
tree: {
|
|
view: {
|
|
iconLeaf: '<i class="layui-icon layui-icon-username"></i>'
|
|
}
|
|
},
|
|
toolbar: '#TPL-treeTable',
|
|
cols: [[
|
|
{ type: 'checkbox', fixed: 'left' },
|
|
{ field: 'DocSerieUUID', title: '系列编号', width: 200 },
|
|
{ field: 'DocSerieCreateTime', title: '系列创建时间', width: 250 },
|
|
{ field: 'DocSerieName', title: '系列名称', minWidth: 300 },
|
|
{
|
|
fixed: 'right',
|
|
title: '操作',
|
|
width: 200,
|
|
align: 'center',
|
|
toolbar: '#TPL-treeTable-tools'
|
|
}
|
|
]],
|
|
page: false
|
|
});
|
|
|
|
// 表头工具栏事件
|
|
treeTable.on('toolbar(ID-treeTable)', function(obj) {
|
|
const tableId = obj.config.id;
|
|
|
|
switch (obj.event) {
|
|
case 'FullChecked':
|
|
layer.msg('成功展开全部', {icon: 1});
|
|
treeTable.expandAll(tableId, true);
|
|
break;
|
|
case 'FullOutChecked':
|
|
layer.msg('成功收起全部', {icon: 1});
|
|
treeTable.expandAll(tableId, false);
|
|
break;
|
|
case 'Refresh':
|
|
tableInst.reload();
|
|
layer.msg('已刷新', {icon: 1});
|
|
break;
|
|
case 'NewSerie':
|
|
formEngine.openRegisteredForm('Serie-add', {
|
|
confirm: function(data, close) {
|
|
$.post('/API/doc/serie/AddSerie', data, function(res) {
|
|
if (res.code == 0) {
|
|
layer.msg('成功添加新系列', {icon: 1});
|
|
tableInst.reload();
|
|
close();
|
|
} else {
|
|
layer.msg(`添加失败:${res.msg}`, {icon: 5});
|
|
}
|
|
}).fail(() => layer.msg('网络错误', {icon: 5}));
|
|
}
|
|
});
|
|
break;
|
|
}
|
|
});
|
|
|
|
// 单元格工具事件
|
|
treeTable.on(`tool(${tableInst.config.id})`, function(obj) {
|
|
const { event: layEvent, data: trData, tr: trElem, config: { id: tableId } } = obj;
|
|
|
|
if (layEvent === 'detail') {
|
|
gerp.addTab(
|
|
`系列 - 视图 [${trData.DocSerieName}]`,
|
|
`/write/docs.html?DocSerieUUID=${trData.DocSerieUUID}`
|
|
);
|
|
}
|
|
else if (layEvent === 'edit') {
|
|
formEngine.openRegisteredForm('Serie-edit', {
|
|
data: trData,
|
|
confirm: function(data, close) {
|
|
$.post('/API/doc/serie/ModifySerieSettings', data, function(res) {
|
|
if (res.code == 0) {
|
|
layer.msg('成功修改部门信息', {icon: 1});
|
|
tableInst.reload();
|
|
close();
|
|
} else {
|
|
layer.msg(`修改失败:${res.msg}`, {icon: 5});
|
|
}
|
|
}).fail(() => layer.msg('网络错误', {icon: 5}));
|
|
}
|
|
});
|
|
}
|
|
else if (layEvent === 'more') {
|
|
dropdown.render({
|
|
elem: this,
|
|
show: true,
|
|
align: 'right',
|
|
data: [{ title: '删除', id: 'del' }],
|
|
click: function(menudata) {
|
|
if (menudata.id === 'del') {
|
|
Toast.warning('部门变更操作', '注销部门应由组织决定!', 3000);
|
|
Toast.warning('部门变更操作', '验权在后端实现,前端未作限制!', 3000);
|
|
Toast.warning('部门变更操作', '请考虑后果!', 3000);
|
|
layer.confirm("确定要删除此部门吗?删除后不可恢复!", {
|
|
title: '删除确认',
|
|
icon: 3
|
|
}, function(index) {
|
|
$.post("/API/doc/serie/DeleteSerie", {
|
|
DocSerieUUID: trData.DocSerieUUID
|
|
}, function(data) {
|
|
if (data.code == 0) {
|
|
layer.msg('删除成功', {icon: 1});
|
|
obj.del();
|
|
tableInst.reload();
|
|
} else {
|
|
layer.msg(`删除失败:${data.msg}`, {icon: 5});
|
|
}
|
|
}).fail(() => layer.msg('网络错误', {icon: 5}));
|
|
layer.close(index);
|
|
});
|
|
}
|
|
}
|
|
});
|
|
}
|
|
});
|
|
});
|
|
</script> |