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

369 lines
10 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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;
}