let layer;
let zNodes1 = [];
let storageMode = "平台存储";
let typeQuery = 'videoQuery';
let typeStorage;
let eventType = 0;
localStorage.removeItem("ballIndex");
localStorage.removeItem("puid");
localStorage.removeItem("userId");
// 勾选展示-全局变量
let ballsList = [],checkBallsList = [],noCheckBallsList = [],parentId;
layui.use(['element', 'form', 'tree', 'layer'], function () {
let element = layui.element;
let form = layui.form;
let tree = layui.tree;
layer = layui.layer;
// initTypeSelect();
storageType(0);
queryType(typeQuery)
});
$("#selectType").change(function () {
localStorage.removeItem("ballIndex");
localStorage.removeItem("puid");
localStorage.removeItem("userId");
let ifr = $('#ifr');
let val = $("#selectType").val();
if (val === "设备上下线") {
eventType = 0;
initTreeData();
ifr.attr("src", "eventQueryDeviceList.html");
} else if (val === "用户登录登出") {
userTree();
eventType = 1;
ifr.attr("src", "eventQueryUserList.html");
}
});
/**
* 选择存储类型
*/
function storageType(type) {
let ifr = $('#ifr');
localStorage.removeItem("ballIndex");
localStorage.removeItem("puid");
localStorage.removeItem("userId");
typeStorage = type;
if (type === 1) {
$('#eventRecordQuery').hide();
ifr.attr("src", "videoQueryWebList.html");
} else {
$('#eventRecordQuery').show();
ifr.attr("src", "videoQueryList.html");
}
}
/**
* 选择存储数据类型
*/
function queryType(t) {
setTimeout("initTreeData()", 2000);
localStorage.removeItem("ballIndex");
localStorage.removeItem("puid");
localStorage.removeItem("userId");
let ifr = $('#ifr');
$.each($('.query'), function (index, item) {
$(item).removeClass("selectedContent")
});
typeQuery = t;
$("#" + t).addClass("selectedContent");
//平台存储
if (typeStorage === 0) {
switch (typeQuery) {
case "videoQuery":
$('#seltecTypeDiv').hide();
ifr.attr("src", "videoQueryList.html");
break;
case "pictureQuery":
$('#seltecTypeDiv').hide();
ifr.attr("src", "pictureQuery.html");
break;
case "eventRecordQuery":
$('#seltecTypeDiv').show();
if (eventType === 0) {
ifr.attr("src", "eventQueryDeviceList.html");
} else {
ifr.attr("src", "eventQueryUserList.html");
}
break;
}
}
//前端存储
if (typeStorage === 1) {
switch (typeQuery) {
case "videoQuery":
ifr.attr("src", "videoQueryWebList.html");
break;
case "pictureQuery":
ifr.attr("src", "pictureQueryWeb.html");
break;
}
}
}
/*function initTypeSelect() {
$.ajax({
url: ctxPath + "/base/getOrgListByUserId",
type: "POST",
data: {token: token},
success: function (data) {
if (data.resMsg === 'success') {
let str = '';
for (let i = 0; i < data.obj.length; i++) {
if (i === 0) {
str += '';
} else {
str += '';
}
}
$("#typeSelect").html(str);
}
}, error: function (error) {
}
});
$("#typeSelect").bind("change", function () {
if (eventType === 0) {
initTreeData();
} else {
userTree();
}
});
}*/
// 勾选展示
/*function isCheck(_that){
if($(_that).is(':checked')) {
checkBallsList.splice(0,checkBallsList.length);
if(ballsList.length){
ballsList.forEach(item=>{
if(item.name === '施工单位' || item.name === '建设单位' || item.puid || item.userId){
if(item.name !== '施工单位' && item.name !== '建设单位'){
item.pId = parentId;
checkBallsList.push(item);
}else{
checkBallsList.push(item);
}
}
})
}
$.fn.zTree.init($("#resourceTree"), setting1, checkBallsList);
}else{
$.fn.zTree.init($("#resourceTree"), setting1, noCheckBallsList);
}
}*/
//树的设置
let setting1 = {
view: {
selectedMulti: true,
},
data: {
simpleData: {
enable: true
}
},
edit: {
enable: false,
},
callback: {
onClick: onTreeClick,
// 点击前
beforeClick: beforeClick,
// 不允许拖拽
beforeDrag: beforeDrag,
}
};
function beforeClick(treeId, treeNode) {
return true;
}
//不允许拖拽
function beforeDrag(treeId, treeNodes) {
return false;
}
/**
* 获取树数据
*/
function initTreeData() {
let dialog = showDialog();
$.ajax({
url: dataUrl + 'video/getBallTreeData',
type: "POST",
data: {
},
success: function (data) {
if (data.resMsg === 'success') {
treeData = data;
let dataTree = parseTreeData(data.obj);
let nodes = zNodes1.concat(dataTree);
// isCheck($('.check_show'));
$.fn.zTree.init($("#resourceTree"), setting1, nodes);
}
}, error: function (error) {
}
})
layer.close(dialog);
}
//平台存储,事件记录查询 设备上下线
function userTree() {
let dialog = showDialog();
let orgId = $("#typeSelect").find("option:selected").val();
$.ajax({
url: ctxPath + "/downLoad/getUserTreeByOrgId",
type: "POST",
data: {
orgId: orgId,
token: token,
name: ""
},
success: function (data) {
if (data.resMsg === 'success') {
treeData = data;
let dataTree = parseTreeData(data.obj);
let nodes = zNodes1.concat(dataTree);
// isCheck($('.check_show'));
// $.fn.zTree.init($("#resourceTree"), setting1, nodes);
}
}, error: function (error) {
console.log("树查询:" + error)
}
})
layer.close(dialog);
}
/**
* 树点击事件
* @param event
* @param treeId
* @param treeNode
* @param clickFlag
*/
function onTreeClick(event, treeId, treeNode, clickFlag) {
localStorage.removeItem("ballIndex");
localStorage.removeItem("puid");
localStorage.removeItem("userId");
let ifr = $("#ifr");
let ballIndex = treeNode.ballIndex;
let puid = treeNode.puid;
let userId = treeNode.userId;
localStorage.setItem("ballIndex", ballIndex);
localStorage.setItem("puid", puid);
localStorage.setItem("userId", userId);
//平台存储
if (typeStorage === 0) {
switch (typeQuery) {
case "videoQuery":
ifr.attr("src", "videoQueryList.html");
break;
case "pictureQuery":
ifr.attr("src", "pictureQuery.html");
break;
}
}
//前端存储
if (typeStorage === 1) {
switch (typeQuery) {
case "videoQuery":
ifr.attr("src", "videoQueryWebList.html");
break;
case "pictureQuery":
ifr.attr("src", "pictureQueryWeb.html");
break;
}
}
}
// 解析球机视频/移动视频树
function parseTreeData(data) {
let onlineNum = 0;
let noOnlineNum = 0;
for (var i = 0; i < data.length; i++) {
if(data[i].ballType == '1'){ //球机
var isOnline = data[i].status;
if(isOnline == '1'){
data[i].icon = "../../../img/video/selected/camera.png";
onlineNum++;
}else if(isOnline == '0'){
data[i].icon = "../../../img/video/noselected/camera.png";
noOnlineNum ++
}
}else if(data[i].ballType == '2'){ //安全帽
var isOnline = data[i].status;
if(isOnline == '1'){
data[i].icon = "../../../img/video/safetyHat.png";
onlineNum++;
}else if(isOnline == '0'){
data[i].icon = "../../../img/video/";
noOnlineNum ++
}
}else if(data[i].ballType == '3'){ //执法仪
var isOnline = data[i].status;
if(isOnline == '1'){
data[i].icon = "../../../img/video/Recorder.png";
onlineNum++;
}else if(isOnline == '0'){
data[i].icon = "../../../img/video/";
noOnlineNum ++
}
}
}
$("#onlineBall").html("在线:" + onlineNum);
$("#noOnlineBall").html("离线:" + noOnlineNum);
$("#allBall").html("总数:" + (onlineNum + noOnlineNum));
ballsList.splice(0,ballsList.length);
noCheckBallsList.splice(0,noCheckBallsList.length);
if(data && data.length){
data.forEach(item=>{
ballsList.push(item);
noCheckBallsList.push(JSON.parse(JSON.stringify(item)));
})
}
return data;
}
function showDialog() {
return layer.load(1, {
icon: 2,
shade: [0.5, 'transparent']
});
}