jyyhq/witDisplay/js/management/gateSubpage.js

170 lines
6.1 KiB
JavaScript
Raw Normal View History

2025-02-10 12:18:11 +08:00
var example = null;
var pers = null;
var layer;
var table;
var laydate;
let phyTimeStart;
let phyTimeEnd;
let keyWord;
$(function () {
layui.use(['layer','form','table','laydate'], function () {
layer = layui.layer;
table = layui.table;
var form = layui.form;
laydate = layui.laydate;
// 获取URL中的查询字符串参数
function getQueryString(name) {
var url = window.location.search.substring(1);
var params = url.split('&');
for (var i = 0; i < params.length; i++) {
var param = params[i].split('=');
if (param[0] === name) {
return param[1];
}
}
return null;
}
// 获取参数并根据参数值来获取相应的数据
var type = getQueryString('type');
getDataByType(type);
initTime();
});
});
// 使用Ajax请求从后端获取数据
function getDataByType(type) {
table.render({
elem: '#layuiTable'
, url: dataUrl + "secondary/getPersonInfo" //数据接口
, method: 'post' //方式默认是get
, toolbar: 'default' //开启工具栏,此处显示默认图标,可以自定义模板,详见文档
, where: {
type: type,
phyTimeStart : getNowTime(),
phyTimeEnd : getNowTime(),
} //post请求必须加where post请求需要的参数
, cellMinWidth: 80
, cols: getTypeCols(type)
, id: 'menuTable'
, page: true //开启分页
, loading: true //数据加载中。。。
, limits: [50, 100, 200] //一页选择显示3,5或10条数据
, limit: 7 //一页显示5条数据
, response: {
statusCode: 200 //规定成功的状态码默认0
}, parseData: function (res) { //将原始数据解析成 table 组件所规定的数据res为从url中get到的数据
tableData = res.data
let result;
if (res.data !== '' && res.data != null && res.data !== "null") {
if (this.page.curr) {
result = res.data.slice(this.limit * (this.page.curr - 1), this.limit * this.page.curr);
} else {
result = res.data.slice(0, this.limit);
}
}
return {
"code": res.code, //解析接口状态
"msg": res.msg, //解析提示文本
"count": res.count, //解析数据长度
"data": result, //解析数据列表
};
},
toolbar: "#toolbar"
});
table.on('toolbar(contact)', function (obj) {
console.log(obj);
// 获取当前表格被选中的记录对象,返回数据
var checkStatus = table.checkStatus(obj.config.id);
//获取事件名,执行对应的代码
var eventName = obj.event;
switch (eventName) {
case "searchBt":
document.getElementById("searchBt").click();//按钮自动点击一次
phyTimeStart = $("#phyTimeStart").val();
phyTimeEnd = $("#phyTimeEnd").val();
keyWord = $("#keyWord").val();
table.reload('menuTable', {
url: dataUrl + 'secondary/getPersonInfo'
, method: 'post' //方式默认是get
, page: true
, where: {
phyTimeStart: phyTimeStart,
phyTimeEnd: phyTimeEnd,
keyWord: keyWord,
type: type,
} //设定异步数据接口的额外参数
});
/**二次赋值-- 点击搜索按钮之后会进行一次刷新操作*/
initTime();
$("#phyTimeStart").val(phyTimeStart);
$("#phyTimeEnd").val(phyTimeEnd);
$("#keyWord").val(keyWord);
break;
}
});
initTime();
}
function getTypeCols(type) {
switch (type) {
case 'content1':
return [[
{
field: 'number', width: '100', title: '序号', templet: function (res) {
return res.LAY_INDEX;
}
},
{field: 'name',width:150, align: 'center', title: '人员姓名'},
{field: 'userType',width:150, align: 'center', title: '人员类型'},
{field: 'gender',width:150, align: 'center', title: '性别'},
{field: 'beginTime',width:250, align: 'center', title: '有效期开始时间'},
{field: 'endTime',width:250, align: 'center', title: '有效期结束时间'}
]];
case 'content2':
return [[
{
field: 'number', width: '100', title: '序号', templet: function (res) {
return res.LAY_INDEX;
}
},
{field: 'anyIndex',width:200, align: 'center', title: '人员姓名'},
{field: 'userType',width:250, align: 'center', title: '人员类型'},
{field: 'entryExitTime',width:250, align: 'center', title: '进出场时间'},
{field: 'type',width:250, align: 'center', title: '进出状态'}
]];
case 'content3':
return colsType3;
case 'other':
return [[
{
field: 'number', align: 'center', title: '序号', templet: function (res) {
return res.LAY_INDEX;
}
},
{field: 'anyIndex',align: 'center', title: '车牌号'},
{field: 'entryExitTime',align: 'center', title: '进出场时间'},
{field: 'type',align: 'center', title: '进出状态'}
]];
default:
return [];
}
}
function initTime() {
laydate.render({
elem: '#ID-laydate-range',
range: ['#phyTimeStart', '#phyTimeEnd'],
value: [getNowTime(),getNowTime()] // 设置默认日期范围为今天
});
}