145 lines
4.2 KiB
JavaScript
145 lines
4.2 KiB
JavaScript
let form, layer, treeTable, treemenu;
|
||
layui.config({
|
||
base: "../../js/", //此处路径请自行处理, 可以使用绝对路径
|
||
}).extend({
|
||
treeTable: 'treeTable'
|
||
}).use(['form', 'layer', 'treeTable'], function () {
|
||
form = layui.form;
|
||
layer = layui.layer;
|
||
treeTable = layui.treeTable;
|
||
layui.form.render();
|
||
getDistinctTreeTable(1);
|
||
})
|
||
|
||
// 渲染表格
|
||
treemenu = {
|
||
reload: function (data) {
|
||
treeTable.render({
|
||
elem: '#dt-table',
|
||
data: data,
|
||
height: 'full-50',
|
||
tree: {
|
||
iconIndex: 0,
|
||
isPidData: true,
|
||
id: 'id',//父ID
|
||
pidName: 'parentId',//子ID
|
||
openName: 'open',// 是否默认展开的字段名
|
||
},
|
||
cols: [[
|
||
{field: 'dictName', title: '字典名称', width: '25%'},
|
||
{field: 'dictCode', title: '字典编码', width: '25%%'},
|
||
{field: 'dictValue', title: '字典值', width: '25%', align: "center"},
|
||
{field: 'dictSort', title: '排序', width: '15%', align: "center"},
|
||
{toolbar: '#menusState', width: '10%', align: 'center', title: '操作'}
|
||
]],
|
||
style: 'margin-top:0;'
|
||
});
|
||
treeTable.on('tool(dt-table)', function (obj) {
|
||
console.log(obj)
|
||
let data = obj.data;
|
||
let layEvent = obj.event;
|
||
if (layEvent === 'edit') {
|
||
addData(data.id);
|
||
} else if (layEvent === 'del') {
|
||
delData(data.id, data.parentId);
|
||
}
|
||
});
|
||
form.render();
|
||
}
|
||
}
|
||
|
||
// 获取设备类型treeTable
|
||
function getDistinctTreeTable(type) {
|
||
let loadingMsg = layer.msg("数据加载中,请稍候...", {icon: 16, scrollbar: false, time: 0,});
|
||
let params = getReqParams(type);
|
||
let url = dataUrl + "/sys/distinct/getDistinctList";
|
||
ajaxRequest(url, "POST", params, true, function () {
|
||
}, function (result) {
|
||
layer.close(loadingMsg);
|
||
if (result.status === 200) {
|
||
treemenu.reload(result.data);
|
||
} else if (result.status === 500) {
|
||
layer.alert(result.msg, {icon: 2})
|
||
}
|
||
}, function (xhr) {
|
||
error(xhr)
|
||
layer.close(loadingMsg);
|
||
});
|
||
}
|
||
|
||
|
||
// 获取参数
|
||
function getReqParams(type) {
|
||
let obj = {};
|
||
if (!type) {
|
||
obj = {
|
||
keyWord: $('#keyWord').val()
|
||
};
|
||
} else {
|
||
obj = {
|
||
keyWord: ''
|
||
};
|
||
}
|
||
obj = {
|
||
encryptedData: encryptCBC(JSON.stringify(obj))
|
||
}
|
||
return obj;
|
||
}
|
||
|
||
// 查询/重置
|
||
function query() {
|
||
let pattern = new RegExp("[%<>]");
|
||
if (pattern.test($("#keyWord").val())) {
|
||
$("#keyWord").val('');
|
||
return layer.msg('关键字查询包含特殊字符,请重新输入', {
|
||
icon: 2,
|
||
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
||
});
|
||
}
|
||
getDistinctTreeTable();
|
||
}
|
||
|
||
function reloadData() {
|
||
getDistinctTreeTable();
|
||
}
|
||
|
||
// 新增/修改设备类型
|
||
function addData(id) {
|
||
let title = '新增字典'
|
||
if (id) {
|
||
title = '修改字典';
|
||
}
|
||
let param = {
|
||
'id': id
|
||
}
|
||
openIframe2("addOrEditDistinct", title, "child/distinctForm.html", '875px', '625px', param);
|
||
}
|
||
|
||
/*删除字典*/
|
||
function delData(id, parentId) {
|
||
layer.confirm("确定删除吗?", {
|
||
move: false
|
||
}, function () {
|
||
let loadingMsg = layer.msg('数据删除中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
||
let url = dataUrl + "/sys/distinct/delDistinct"
|
||
let obj = {'id': id, 'parentId': parentId}
|
||
let params = {
|
||
encryptedData: encryptCBC(JSON.stringify(obj))
|
||
}
|
||
ajaxRequest(url, "POST", params, true, function () {
|
||
}, function (result) {
|
||
layer.close(loadingMsg); // 关闭提示层
|
||
if (result.status === 200) {
|
||
parent.layer.msg(result.msg, {icon: 1})
|
||
query()
|
||
} else if (result.status === 500) {
|
||
layer.alert(result.msg, {icon: 2})
|
||
}
|
||
}, function (xhr) {
|
||
layer.close(loadingMsg); // 关闭提示层
|
||
error(xhr)
|
||
});
|
||
})
|
||
}
|
||
|