You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

109 lines
3.5 KiB
Plaintext

11 months ago
function handleDeptContextMenu(data, object) {
data.id === 'Delete' ? Del($(this.elem)[0].dataset.id, $(this.elem)[0].dataset.pid, '1') : DoUnEnable($(this.elem)[0].dataset.id, $(this.elem)[0].dataset.pid)
}
function handlePtjContextMenu(data, object) {
data.id === 'Delete' ? Del($(this.elem)[0].dataset.id, $(this.elem)[0].dataset.pid, '1') : Remove($(this.elem)[0].dataset.id)
}
function handleBlContextMenu(data, object) {
data.id === 'Delete' ? Del($(this.elem)[0].dataset.id, $(this.elem)[0].dataset.pid, '1') : DoEnable($(this.elem)[0].dataset.id, $(this.elem)[0].dataset.pid)
}
function bindContextMenu() {
var _this = this
layui.use('dropdown', function () {
var dropdown = layui.dropdown
var deptMenuOptions = [
{title: '<i class=icon-share-alt ></i> 删除', id: "Delete", Icon: "icon-plus"},
//{ title: '新建下级目录', id: 5 },
{title: '<i class=icon-close></i> 禁用', id: "BlackList", Icon: "icon-close"}
]
var ptjMenuOptions = [
{title: '<i class=icon-share-alt ></i> 删除', id: "Delete", Icon: "icon-plus"},
//{ title: '新建下级目录', id: 5 },
{title: '<i class=icon-close></i> 移除', id: "BlackList", Icon: "icon-close"}
]
var blMenuOptions = [
{title: '<i class=icon-share-alt ></i> 删除', id: "Delete", Icon: "icon-plus"},
//{ title: '新建下级目录', id: 5 },
{title: '<i class=icon-close></i> 启用', id: "BlackList", Icon: "icon-close"}
]
var tRenderOptions = [{
elem: '.dept-dropdown-item',
trigger: 'contextmenu',
data: deptMenuOptions,
click: handleDeptContextMenu
}, {
elem: '.dept-dropdown-btn',
trigger: 'click',
data: deptMenuOptions,
click: handleDeptContextMenu
}, {
elem: '.ptj-dropdown-item',
trigger: 'contextmenu',
data: ptjMenuOptions,
click: handlePtjContextMenu
}, {
elem: '.ptj-dropdown-btn',
trigger: 'click',
data: ptjMenuOptions,
click: handlePtjContextMenu
}, {
elem: '.bl-dropdown-item',
trigger: 'contextmenu',
data: blMenuOptions,
click: handleBlContextMenu
}, {
elem: '.bl-dropdown-btn',
trigger: 'click',
data: blMenuOptions,
click: handleBlContextMenu
}]
for (var i = 0; i < tRenderOptions.length; i++) {
dropdown.render(tRenderOptions[i])
}
})
}
/**
* 更新排序
* @param type 三种 部门|兼职|黑名单 dept|ptj|bl
* @param arr 排序后数组 eg: ['lisi','zhangsan']
*/
function updateSort(type,arr){
switch (type){
// 部门
case 'dept':
break
// 兼职
case 'ptj':
break
// 黑名单
case 'bl':
break
}
}
function activePlugin(container,type){
new Sortable(container, {
animation: 150,
dataIdAttr: 'data-id',
ghostClass: 'blue-background-class',
onEnd: function (evt) {
updateSort(type,this.toArray())
}
});
}
function bindSortableJs() {
activePlugin(document.querySelector('.dept-sort'),'dept')
activePlugin(document.querySelector('.part-time-sort'),'ptj')
activePlugin(document.querySelector('.blacklist-sort'),'bl')
}