yn_img_tool/target/classes/static/js/system/staff.js

237 lines
7.9 KiB
JavaScript
Raw Normal View History

2025-03-31 10:10:11 +08:00
let form, layer, table, tableIns;
let pageNum = 1, limitSize = 10; // 默认第一页分页数量为10
layui.use(['form', 'layer', 'table', 'laydate'], function () {
form = layui.form;
layer = layui.layer;
table = layui.table;
layui.form.render();
pages(1, 10, 1);
})
function pages(pageNum, pageSize, typeNum) {
let params = getReqParams(pageNum, pageSize, typeNum);
$.ajax({
url: dataUrl + "/sys/staff/getList",
headers: {
"token": tokens
},
data: params,
type: 'POST',
async: false,
success: function (result) {
if (result.status === 200) {
if (result.data) {
initTable(result.data, result.limit, result.curr)
laypages(result.count, result.curr, result.limit)
}
} else if (result.status === 500) {
layer.alert(result.msg, {icon: 2})
}
}, error: function (xhr) {
error(xhr);
}
});
}
function laypages(total, page, limit) {
layui.use(['laypage'], function () {
let laypage = layui.laypage;
laypage.render({
elem: 'voi-page',
count: total,
curr: page,
limit: limit,
limits: [10, 20, 50, 100, 200, 500],
layout: ['prev', 'page', 'next', 'skip', 'count', 'limit'],
groups: 5,
jump: function (obj, first) {
if (!first) {
pageNum = obj.curr, limitSize = obj.limit;
pages(obj.curr, obj.limit, null);
}
}
});
})
}
/*初始化表格*/
function initTable(dataList, limit, page) {
let loadingMsg = layer.msg("数据加载中,请稍候...", {icon: 16, scrollbar: false, time: 0,});
tableIns = table.render({
elem: "#table_data",
height: "full-130",
data: dataList,
limit: limit,
cols: [
[
//表头
{
title: "序号", width: '5%', unresize: true, align: "center",
templet: function (d) {
return (page - 1) * limit + d.LAY_INDEX;
}
},
{field: "userName", title: "姓名", unresize: true, align: "center", width: '10%'},
{field: "sex", title: "性别", unresize: true, align: "center", width: '5%'},
{field: "userCode", title: "员工编码", unresize: true, align: "center", width: '9%'},
{field: "cardNumber", title: "员工卡号", unresize: true, align: "center", width: '14%'},
{field: "phone", title: "手机号", unresize: true, align: "center", width: '10%'},
{field: "orgName", title: "组织机构", unresize: true, align: "center", width: '10%'},
{field: "state", title: "员工状态", unresize: true, align: "center", width: '7%'},
{
field: "qrCode", title: "门禁二维码", unresize: true, align: "center", width: '8%',
// templet: '#qcCodeView'
templet: function (d) {
return "<a style='color: #3E689A;font-weight: bold;' onclick='staffQrCode(\"" + d.cardNumber + "\",2)'>查看</a>";
}
},
{
field: "imageUrl", title: "人脸信息", unresize: true, align: "center",
// templet: '#imageView',
width: '7%',
templet: function (d) {
let html = '';
if (!d.imageUrl) {
html += "<p style='color: #ef0d3f;font-weight: bold;'>未上传</p>";
} else {
html += "<a style='color: #3E689A;font-weight: bold;' onclick='updateFaceInfo(\"" + d.id + "\",2)'>已上传</a>";
}
return html;
}
},
{
title: "操作", unresize: true, width: '15%', align: "center",
templet: function (d) {
let html = '';
var url = d.imageUrl;
console.log(url)
html += "<a class='layui-icon layui-icon-username' title='更新人脸信息' onclick='updateFaceInfo(\"" + d.id + "\",1)'></a>" +
"<a class='layui-icon layui-icon-edit' title='编辑' onclick=\"addData('" + d.id + "','" + d.orgId + "')\"></a>" +
"<a class='layui-icon layui-icon-delete' title='删除' onclick=\"delData('" + d.id + "','" + d.userCode + "','" + d.doorIps + "')\"></a>";
return html;
}
},
],
],
done: function (res, curr, count) {
layer.close(loadingMsg);
table.resize("table_data");
count || this.elem.next(".layui-table-view").find(".layui-table-header").css("display", "inline-block");
count || this.elem.next(".layui-table-view").find(".layui-table-box").css("overflow", "auto");
},
});
}
// 获取参数
function getReqParams(page, limit, type) {
let obj = {};
if (!type) {
obj = {
page: page + "",
limit: limit + "",
userName: $('#userName').val(),
userCode: $('#userCode').val(),
cardNumber: $('#cardNumber').val(),
phone: $('#phone').val(),
};
} else {
obj = {
page: '1',
limit: '10',
userName: '',
userCode: '',
cardNumber: '',
phone: '',
};
}
obj = {
encryptedData: encryptCBC(JSON.stringify(obj))
}
return obj;
}
// 查询/重置
function query() {
pageNum = 1;
pages(1, limitSize);
}
function reloadData() {
pages(pageNum, limitSize);
}
// 新增/修改 员工
function addData(id, orgId) {
let title = '新增员工'
if (id) {
title = '修改员工';
}
let param = {
'id': id,
'orgId': orgId
}
openIframe2("addOrEditStaff", title, "child/staffForm.html", '1000px', '680px', param);
}
// 更新人脸信息
function updateFaceInfo(id, type) {
let param = {
'id': id,
'type': type
}
let title = '更新人脸信息', content = 'child/faceInfoForm.html', width = '825px', height = '575px';
if (type === 2) {
title = '人脸信息', content = 'child/faceInfo.html', width = '575px', height = '425px';
}
openIframe2("updateFaceInfo", title, content, width, height, param);
}
function staffQrCode(qrCode) {
let param = {
'qrCode': qrCode,
}
openIframe2("staffQrCode", '门禁二维码', 'child/staffQRCodeView.html', '575px', '425px', param);
}
/*删除员工*/
function delData(id,userCode,doorIps) {
layer.confirm("确定删除吗?", {
move: false
}, function () {
let loadingMsg = layer.msg('数据删除中,请稍候...', {icon: 16, scrollbar: false, time: 0});
let url = dataUrl + "/sys/staff/delStaffById";
let params = {
'id': id,
'userCode': userCode,
'doorIps': doorIps
}
params = {
encryptedData: encryptCBC(JSON.stringify(params))
}
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)
});
})
}