Files

272 lines
10 KiB
HTML

<!DOCTYPE html>
<html class="x-admin-sm">
<head>
<meta charset="UTF-8">
<title>银河锋锐工作室账户后台系统</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<link rel="stylesheet" href="/css/font.css">
<link rel="stylesheet" href="/css/xadmin.css">
<link rel="stylesheet" href="/css/win10ui.css">
<link rel="stylesheet" href="/css/theme.css">
<script type="text/javascript" src="/lib/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="/js/xadmin.js"></script>
<!--[if lt IE 9]>
<script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
<script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<div class="x-nav">
<span class="layui-breadcrumb">
<a>首页</a>
<a>工作室</a>
<a><cite>成员管理</cite></a>
</span>
<a class="layui-btn layui-btn-small" style="line-height:1.6em;margin-top:3px;float:right" onclick="location.reload()" title="刷新">
<i class="layui-icon layui-icon-refresh" style="line-height:30px"></i>
</a>
</div>
<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-sm" lay-event="FullChecked">展开全部</button>
<button class="layui-btn layui-btn-sm" lay-event="FullOutChecked">收起全部</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="addChild">新增</a>
<a class="layui-btn layui-btn-xs" lay-event="more">更多 <i class="layui-icon layui-icon-down"></i></a>
</div>
</script>
<script>
layui.use(function() {
var treeTable = layui.treeTable;
var layer = layui.layer;
var dropdown = layui.dropdown;
// 渲染
var inst = treeTable.render({
elem: '#ID-treeTable',
id: "ID-treeTable",
url: '/API/GetSubMem.api',
tree: {
view: {
iconLeaf: "<i class=\"layui-icon layui-icon-username\"></i>"
},
},
toolbar: '#TPL-treeTable',
cols: [
[{
type: 'checkbox',
fixed: 'left'
},
{
field: 'UserJobNumber',
title: '工号',
width: 200
},
{
field: 'name',
title: '用户名',
width: 180
},
{
field: 'UserHeadPng',
title: '头像',
width: 40,
templet: function(d) {
return "<img src=\"" + d.UserHeadPng + "\" style=\"width:30px;height:30px;border-radius:50%;\">";
}
},
{
field: 'UserRealName',
title: '真名',
width: 100
},
{
field: 'UserSex',
title: '性别',
width: 80,
sort: true
},
{
field: 'UserLastCheckInDate',
title: '上次签到时间',
width: 180
},
{
field: 'UserPositionStatus',
title: '职位情况',
width: 100,
templet: function(d) {
if (d.UserPositionStatus == "在职") {
return "<span class=\"layui-btn layui-btn-normal layui-btn-mini\">在职</span>"
} else {
return "<span class=\"layui-btn layui-btn-danger layui-btn-mini layui-btn-disabled\">停职</span>"
}
},
},
{
field: 'UserPermissions',
title: '权限等级',
width: 100
},
{
field: 'UserPermissionstr',
title: '权限文字',
width: 100
},
{
field: 'UserJob',
title: '职业',
width: 500,
templet: function(d) {
h="";
for (const i in d.UserJob) {
h += `<span class="layui-btn layui-btn-normal layui-btn-mini">${d.UserJob[i]}</span>`;
}
return h;
},
},
{
field: 'UserUUID',
title: 'UUID',
width: 300
},
{
fixed: "right",
title: "操作",
width: 300,
align: "center",
toolbar: "#TPL-treeTable-tools"
}
]
],
page: false
});
// 表头工具栏工具事件
treeTable.on("toolbar(ID-treeTable)", function(obj) {
var config = obj.config;
var tableId = config.id;
var status = treeTable.checkStatus(tableId);
// 获取选中行
if (obj.event === "FullChecked") {
Toast.success('操作成功', '成功展开内容', 3000);
treeTable.expandAll('ID-treeTable', true);
}
if (obj.event === "FullOutChecked") {
Toast.success('操作成功', '成功收起内容', 3000);
treeTable.expandAll('ID-treeTable', false);
}
});
// 单元格工具事件
treeTable.on('tool(' + inst.config.id + ')', function(obj) {
var layEvent = obj.event; // 获得 lay-event 对应的值
var trElem = obj.tr;
var trData = obj.data;
var tableId = obj.config.id;
if (layEvent === "detail") {
xadmin.add_tab_f('子成员管理 - ' + trData.name, '/SubMem/SubMemIdCard.html?UserUUID=' + trData.UserUUID);
} else if (layEvent === "addChild") {
layer.prompt({
title: '请输入子成员UUID'
}, function(value, index, elem) {
if (value === '') return elem.focus();
$.post("/API/AddChildRen.api", {
SubUserUUID: value,
ParentUserUUID: trData.UserUUID
},
function(data) {
if (!data.code) {
Toast.success('人员变更操作', '成功添加该成员至其麾下', 3000);
inst.reload();
} else {
Toast.error('人员变更操作', `添加该成员至其麾下失败,错误:${data.msg}`, 3000);
}
});
layer.close(index);
});
} else if (layEvent === "more") {
// 下拉菜单
dropdown.render({
elem: this, // 触发事件的 DOM 对象
show: true, // 外部事件触发即显示
align: "right", // 右对齐弹出
data: [{
title: "停职/复职",
id: "RePS"
},
{
title: "删除",
id: "del"
}
],
click: function(menudata) {
if (menudata.id == "del") {
Toast.debug('调试中...', '按理来说删除成员由组织决定!', 3000);
/*layer.confirm("删除该绑定你会永远失去对这个人及其子成员的控制", {title: '子成员管理系统', moveOut: true, skin: 'layui-layer-win10', btn1: function(index) {
console.log(obj);
$.post("./Post/SubMemberManagementDelete.api", { DELETEUUID: obj.data["UUID"] },
function(data){
var newNode2 = treeTable.addNodes(tableId, {
parentIndex: trData["LAY_DATA_INDEX"],
index: -1,
data: data
});
});
obj.del();
// treeTable.removeNode(tableId, trElem.attr('data-index'))
layer.close(index);
}});*/
} else if (menudata.id == "RePS") {
if (obj.data["UserPositionStatus"] == "在职") {
$.post("/API/SetPositionStatus.api", {
UserUUID: obj.data["UserUUID"],
Code: "0"
},
function(data) {
if (!data.code) {
obj.data["UserPositionStatus"] = "停职"
treeTable.updateNode('ID-treeTable', obj.data["LAY_INDEX"], {PositionStatus: '停职'});
Toast.success('人员变更操作', '已使其停职', 3000);
} else {
Toast.error('人员变更操作', `操作失败,错误:${data.msg}`, 3000);
}
});
} else if (obj.data["UserPositionStatus"] == "停职") {
$.post("/API/SetPositionStatus.api", {
UserUUID: obj.data["UserUUID"],
Code: "1"
},
function(data) {
if (!data.code) {
obj.data["UserPositionStatus"] = "在职"
treeTable.updateNode('ID-treeTable', obj.data["LAY_INDEX"], {PositionStatus: '在职'});
Toast.success('人员变更操作', '已使其复职', 3000);
} else {
Toast.error('人员变更操作', `操作失败,错误:${data.msg}`, 3000);
}
});
} else {
Toast.unknown(`人员变更操作', '未知的职位状态码:${obj.data["UserPositionStatus"]}`, 3000);
}
//inst.reload(); 上面有重置操作了,不知道能不能正常运行。
}
}
});
}
});
});
</script>
</div>
</div>
</div>
</div>
</body>
</html>