jyyhq/witDisplay/js/video/child/hisVioPhotosList.js

369 lines
10 KiB
JavaScript
Raw Normal View History

2025-02-10 12:18:11 +08:00
var example = null;
var pers = null;
var layer;
var form;
var laydate;
layui.use(['layer','form'], function () {
layer = layui.layer;
form = layui.form;
laydate = layui.laydate;
getDeviceTypeSelect();
init();
var minListDate = $('#hidMinListDate').val();//最小可选时间1990-02-01
var maxListDate = $('#hidMaxListDate').val();//最大可选时间2200-12-31
// $('#startTime').val(getNowTime());
// $('#endTime').val(getNowTime());
var begin = "#startTime", end = "#endTime";//开始时间选择框、结束时间选择框:文本框
var endChange = function (val, date) {
if (date && date.year)
begindate.config.max = {
year: date.year,
month: date.month - 1,//必须减1才是正确值
date: date.date,
hours: date.hours,
minutes: date.minutes,
seconds: date.seconds
};
else {
var dateInit = new Date(maxListDate.replace(/-/g, "/"));
begindate.config.max = {
year: dateInit.getFullYear(),
month: dateInit.getMonth(),
date: dateInit.getDate(),
hours: dateInit.getHours(),
minutes: dateInit.getMinutes(),
seconds: dateInit.getSeconds()
};
}
};
var beginChange = function (val, date) {
if (date && date.year)
enddate.config.min = {
year: date.year,
month: date.month - 1,
date: date.date,
hours: date.hours,
minutes: date.minutes,
seconds: date.seconds
};
else {
var dateInit = new Date(minListDate.replace(/-/g, "/"));
enddate.config.min = {
year: dateInit.getFullYear(),
month: dateInit.getMonth(),
date: dateInit.getDate(),
hours: dateInit.getHours(),
minutes: dateInit.getMinutes(),
seconds: dateInit.getSeconds()
};
}
};
var enddate = laydate.render({
elem: end,
type: 'datetime',
format: 'yyyy-MM-dd HH:mm:ss',
min: minListDate,
max: maxListDate,
done: endChange
});
var begindate = laydate.render({
elem: begin,
type: 'datetime',
format: 'yyyy-MM-dd HH:mm:ss',
min: minListDate,
max: maxListDate,
done: beginChange
});
});
function search(){
var keyWord = $("#keyWord").val();
var deviceType = $("#deviceType").val();
var startTime = $("#startTime").val();
var endTime = $("#endTime").val();
var opt = {
url: dataUrl + "video/getHisVioPhotosList",
silent: true,
query: {
keyWord: keyWord,
deviceType: deviceType,
startTime: startTime,
endTime: endTime
}
};
$("#table").bootstrapTable('refresh', opt);
}
function responseHandler(res) {
var datas=[];
datas.push({total:res.total,rows:res.list});
return datas[0];
}
function init() {
//初始化Table
$("#table").bootstrapTable({
classes: 'table table-hover',
url: dataUrl + "video/getHisVioPhotosList",
method: 'post',
responseHandler: responseHandler, //处理服务器返回的数据格式
height: $(window).height() - ($(window).height() * 0.13),
undefinedText: '', //当数据为 undefined 时显示的字符
queryParams: function(param) {
var a=this;
param = {
// subName: subName,
pageSize: param.limit,
pageNum: param.offset / param.limit + 1,
sort: param.sort, //排序列名
sortOrder: param.order //排位命令descasc
}
return param;
},
sortable: false, //是否启用排序
sortOrder: "asc", //排序方式
cache: false, //是否使用缓存默认为true所以一般情况下需要设置一下这个属性*
pagination: true,
pageNumber: 1,
pageSize: 50,
pageList: [50, 100, 200, 300],
smartDisplay: false,
showColumns: false,
sidePagination: "server", //分页方式client客户端分页server服务端分页*
contentType: "application/x-www-form-urlencoded",
minimumCountColumns: 2, //最少允许的列数
uniqueId: "no", //每一行的唯一标识,一般为主键列
columns: [{
title: '序号',
formatter: function(value, row, index) {
return index + 1;
},
rowspan: 1,
align: 'center',
valign: 'middle',
width: 50
},
{
title: '工程名称',
field: 'proName',
rowspan: 1,
align: 'center',
valign: 'middle',
sortable: true,
width: 100
},
{
title: '承包商名称',
field: 'consName',
rowspan: 1,
align: 'center',
valign: 'middle',
sortable: true,
width: 230
},
{
title: '班组名称',
field: 'teamName',
rowspan: 1,
align: 'center',
valign: 'middle',
sortable: true,
width: 100
},
{
title: '姓名',
field: 'violators',
rowspan: 1,
align: 'center',
valign: 'middle',
sortable: true,
width: 150
},
{
title: '设备类型',
formatter: function(value, row, index) {
var html = '';
var deviceType = row.deviceType;
var type = '';
if(deviceType == '1'){
type = '球机';
}
if(deviceType == '2'){
type = '安全帽';
}
if(deviceType == '3'){
type = '执法仪';
}
html += '<div style="color:#fff;">' + type + '</div>';
return html;
},
rowspan: 1,
align: 'center',
valign: 'middle',
sortable: true,
width: 200
},
{
title: '设备名称',
field: 'deviceName',
rowspan: 1,
align: 'center',
valign: 'middle',
sortable: true,
width: 200
},
{
title: '违章类型',
field: 'violationType',
rowspan: 1,
align: 'center',
valign: 'middle',
sortable: true,
width: 100
},
{
title: '违章时间',
field: 'violationTime',
rowspan: 1,
align: 'center',
valign: 'middle',
sortable: true,
width: 200
},
{
title: '违章照片',
formatter: function(value, row, index) {
var html = '';
var violationAddress = row.violationAddress;
html += '<img src="' + violationAddress + '" width="100px"/>';
return html;
},
rowspan: 1,
align: 'center',
valign: 'middle',
sortable: true,
},
{
title: '操作',
formatter: function(value, row, index) {
var html = '';
var id = row.id;
html += '<div onclick="delBtn(' + id + ')" style="color:#fff;background-color:#02A7F0;cursor: pointer;">删除</div>';
return html;
},
rowspan: 1,
align: 'center',
valign: 'middle',
sortable: true,
width: 100
},
],
onLoadSuccess: function(data) {
$("#dataCount").html("数量:" + data.total);
},
onLoadError: function() {
$("#dataCount").html("数量:0");
$("#table").bootstrapTable('removeAll');
top.layer.close(index);
}
});
}
//删除
function delBtn(id){
layer.confirm("确认删除吗?", function () {
$.ajax({
type: 'post',
url: dataUrl + 'video/delById',
data:{
id: id
},
success: function (data) {
if(data.code == '200'){
layer.alert(data.msg,{icon:1});
search();
}else{
layer.alert(data.msg,{icon:2});
}
},
error: function (err) {
console.log("获取设备类型下拉列表出错:", err);
}
});
})
}
/**
* 导出数据
*/
function exportBtn() {
var index = layer.msg('数据较多,请稍等。。。', {
icon: 4,
time: 100000 //2秒关闭如果不配置默认是3秒
});
var keyWord = $("#keyWord").val();
var deviceType = $("#deviceType").val();
var startTime = $("#startTime").val();
var endTime = $("#endTime").val();
window.location.href = dataUrl + "video/exportHisVioPhotos?keyWord=" + keyWord + "&deviceType=" + deviceType + "&startTime=" + startTime+"&endTime=" + endTime;
}
function getDeviceTypeSelect(id) {
$("#deviceType").html("");
$("#deviceType").empty();
$.ajax({
type: 'post',
url: dataUrl + 'video/getDeviceTypeSelect',
async: false,
success: function (data) {
var html = '';
if (data.length > 1) {
html = '<option value="">--请选择设备类型--</option>';
}
for (var i = 0; i < data.length; i++) {
if (id=null && id== data[i].deviceId) {
html += '<option selected value=\'' + data[i].deviceId + '\'>' + data[i].deviceName + '</option>';
} else {
html += '<option value="' + data[i].deviceId + '">' + data[i].deviceName + '</option>';
}
}
$("#deviceType").html(html);
form.render();
},
error: function (err) {
console.log("获取设备类型下拉列表出错:", err);
}
});
}
/**
* 获得当前时间 yyyy-MM-dd
* @returns {string}
*/
function getNowTime() {
var time = new Date();
var year = time.getFullYear();
var month = time.getMonth() + 1 >= 10 ? time.getMonth() + 1 : '0' + (time.getMonth() + 1);
var day = time.getDate() >= 10 ? time.getDate() : '0' + time.getDate();
var hours = time.getHours() >= 10 ? time.getHours() : '0' + time.getHours();
var minutes = time.getMinutes() >= 10 ? time.getMinutes() : '0' + time.getMinutes();
var seconds = time.getSeconds() >= 10 ? time.getSeconds() : '0' + time.getSeconds();
return year + "-" + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds;
}
/**
* 获取当月第一天
* @returns {string}
*/
function getCurrentMonthFirst() {
var date = new Date();
date.setDate(1);
var year = date.getFullYear();
var month = date.getMonth() + 1 > 10 ? date.getMonth() + 1 : '0' + (date.getMonth() + 1);
var day = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
return year + "-" + month + "-" + day;
}