cc-jjsp-web/bns/js/home/home.js

659 lines
24 KiB
JavaScript
Raw Normal View History

2025-09-23 09:28:02 +08:00
var element, form;
var indexUrl = "";
let inde1url = '../compreDisplay/compreDisplay.html';
let inde2url = '../compreDisplay/cityHome.html';
let inde3url = '../compreDisplay/dutyHome.html';
let isClose=false;
let kjIdx = 199999; // 课件学习索引
let bgStatus = "no-need"; // 报岗状态 need需要报岗 no-need 不需要报岗
let layerIndex222 = null;
layui.use(['layer', 'form', 'element'], function () {
var $ = layui.jquery;
element = layui.element;
form = layui.form;
var user = JSON.parse(decrypt(us));
console.log(user)
// 审计日志定时查询
/*capacityTips()
setInterval( async function () {
capacityTips()
}, 1*60*60*1000);
*/
initMenu();//初始化菜单
element.render();//渲染
form.on('submit(formData)', function (data) {
submitData(data);
});
form.on('submit(formDatas)', function (data) {
bgData(data);
});
// 默认首页
initUserExam(user.userId);
getWzXx(user.orgId);
window.setTimeout(function () {
getWzXx(user.orgId);
}, 6000 * 5);
if (user.isSup != 3) {
$("#dtaxt").css("display", "none");
}
if (user.isSup == 3) {
getIsBg(user.orgId);
}
var org = user.unitName;
if (typeof (org) == "undefined") {
org = "建设分公司";
}
$("#use-org").text(user.roleName + "/" + org);
$("#dtaxt").click(function (e) {
openNewTab('../dutyTask/violationStatistics.html','19','违章管理')
})
//点击事件
$("dd>a,li>a").click(function (e) {
if ($(this).next('dl').length === 0) {
e.preventDefault();
$('ul li').each(function () {
if ($(this).hasClass('layui-that') || $(this).hasClass('layui-this')) {
$(this).removeClass('layui-that')
$(this).removeClass('layui-this')
}
})
$(this).parents('.layui-nav-child').removeClass('layui-show');
$(this).parents('.layui-nav-item').addClass('layui-that');
console.log($(this).attr("href"));
let indexUrls = $(this).attr("href");
if (indexUrls == inde1url || indexUrls == inde2url || indexUrls == inde3url) {
if (indexUrls == inde2url || indexUrls == inde3url) {//地市+值长
$('#html').css("background", 'url("../../img/cityHome/city_home_back_gs.png") no-repeat 0 0 / 100% 100% transparent');
} else if (indexUrls == inde1url) {
$('#html').css("background", 'url("../../img/back-gs.png") no-repeat 0 0 / 100% 100% transparent');
}
$("#ifr-box ").css("background-image", "");
$('#indexIframe').attr('src', indexUrls);
$("#indexIframe").show();
$("#layui-tab").hide();
} else {
if ($(".layui-tab-title li[lay-id='" + $(this).attr('idx') + "']").length > 0) {
$("#ifr-box ").css("background-image", "url('../../img/tableback.jpg')");
$("#indexIframe").hide();
$("#layui-tab").show();
element.tabChange('menu-tab', $(this).attr('idx'));
} else {
$("#indexIframe").hide();
element.tabAdd('menu-tab', {
title: $(this).text(),
content: "<iframe id='iframeMain' width='100%' height='100%' frameborder='0' src='" + $(this).attr('href') + "' class='layadmin-iframe' ></iframe>"
, id: $(this).attr('idx')
})
$("#ifr-box ").css("background-image", "url('../../img/tableback.jpg')");
$("#layui-tab").show();
element.tabChange('menu-tab', $(this).attr('idx'));
}
var tabr = $(".layui-tab-title").find("li");
let close = tabr.eq(tabr.length - 1).children("i");
close.on('click', function (e) {
//绑定关闭事件
})
}
//关闭事件监听
$(".layui-tab-close").click(function (e) {
var tabr = $(".layui-tab-title").find("li");
var length = tabr.length;
if (length == 0) {//全部关闭了则返回首页
$("#menu-childer").empty();
$("#indexIframe").show();
$("#menu-content").empty();
$("#layui-tab").hide();
$("#ifr-box ").css("background-image", "");
let nowsrc = $('#indexIframe').attr("src");
let imea = "0";
if (nowsrc == inde1url) {//综合暂时
imea = "0";
} else if (nowsrc == inde2url) {//地市首页
imea = "1";
} else if (nowsrc == inde3url) {//地市首页
imea = "2";
}
$(".layui-nav-item").each(function () {
$(this).removeClass('layui-that');
$(this).removeClass('layui-this');
console.log($(this).text());
console.log($(this).attr("idx"))
if ($(this).text() == '综合展示' && imea == 0) {
$(this).addClass('layui-that');
$(this).addClass('layui-this');
} else if ($(this).text().indexOf('首页') != '-1' && imea == 1) {
$(this).addClass('layui-that');
$(this).addClass('layui-this');
} else if ($(this).text().indexOf('值长') != '-1' && imea == 2) {
$(this).addClass('layui-that');
$(this).addClass('layui-this');
}
})
}
})
}
});
//$("#layui-tab-title").niceScroll({cursorborder:"",cursorcolor:"#c0c4cc",boxzoom:true});
})
/**
* 初始化菜单
*/
function initMenu() {
var user = JSON.parse(decrypt(us));
var menus = user.menus;
if (menus.length > 0 && menus != '[]') {
var num = 0;
var allMenus = "";
var userMenus = "";
let maxMenu=[];
var ul = '<ul class="layui-nav layout" style="width: 100%" >'
let menNums=0;
for (let i = 0; i < menus.length; i++) {
var url = menus[i].url;//路径
var menuName = menus[i].menuName;//名称
var childer = menus[i].childer;
var id = menus[i].menuId;
var homeMenu = "";
var usermenu = "";
var isLast = menus[i].last;
if (!isLast) {//默认复制
url = 'javascript:;';
}
if (menuName == '系统管理') {
var dl = "";
var um = ' <button href="javascript:;" style="margin-top: 12px" class="sys-mge-btn common-btn" title="系统管理" ></button>';
if (childer != null && childer.length > 0) {
dl1 = '<dl class="layui-nav-child ">';
var dd = "";
for (let j = 0; j < childer.length; j++) {
dd += "<dd><a index='2' idx='" + childer[j].menuId + "' href='" + childer[j].url + "' >" + childer[j].menuName + "</a></dd>"
}
var dl2 = "</dl>"
dl += dl1 + dd + dl2;
}
usermenu = um + dl;
} else {
menNums++;
if (num == 0) {//
var width = 'width:' + menuName.length * 20 + 'px;';
var li = "<li class='layui-nav-item layui-this' style='margin-right: 5px;'>" +
"<a href='" + url + "' index='1' idx='" + id + "' style='" + width + "'>" + menuName + "</a>";
if (!isLast) {
var dl = "";
if (childer != null && childer.length > 0) {
dl1 = '<dl class="layui-nav-child ">';
var dd = "";
for (let j = 0; j < childer.length; j++) {
var ind = j + 1;
if(childer[j].menuName === '课件学习'){
kjIdx = childer[j].menuId;
}
dd += "<dd><a href='" + childer[j].url + "' idx='" + childer[j].menuId + "' index='" + ind + "' >" + childer[j].menuName + "</a></dd>"
if (j == 0) {
console.log(childer[j].url)
if (childer[j].ur != '../compreDisplay/compreDisplay.html') {
$('#indexIframe').css("margin-top", "50px");
$('#indexIframe').css("height", "96.03%");
}
$('#indexIframe').attr('src', childer[j].url);
indexUrl = childer[j].url;
}
}
var dl2 = "</dl>"
dl += dl1 + dd + dl2;
}
li += dl;
} else {
indexUrl = url;
$('#indexIframe').attr('src', url);
if (url == inde2url || url == inde3url) {
$('#html').css("background", 'url("../../img/cityHome/city_home_back_gs.png") no-repeat 0 0 / 100% 100% transparent');
}
}
homeMenu += li + "</li>";
} else {
if(menNums>=9){
maxMenu.push(menus[i]);
}else{
var width = menuName.length * 20 + 'px';
var margi = "";
if (menuName.length > 4) {
margi += 'margin-right:5px';
}
var li = "<li class='layui-nav-item ' style='" + margi + "'>" +
"<a href='" + url + "' index='2' idx='" + id + "' style='width: " + width + "'>" + menuName + "</a>";
if (!isLast) {
var dl = "";
if (childer != null && childer.length > 0) {
dl1 = '<dl class="layui-nav-child">';
var dd = ""
for (let j = 0; j < childer.length; j++) {
if(childer[j].menuName === '课件学习'){
kjIdx = childer[j].menuId;
}
dd += "<dd><a index='2' idx='" + childer[j].menuId + "' href='" + childer[j].url + "'>" + childer[j].menuName + "</a></dd>"
}
var dl2 = "</dl>"
dl += dl1 + dd + dl2;
}
li += dl;
}
homeMenu += li + "</li>";
}
}
num++;
}
userMenus += usermenu;
allMenus += homeMenu;
}
if(maxMenu.length>0){
let maxdata=addMax(maxMenu);
allMenus += maxdata;
}
var dul = "</ul>"
$("#menu-title").empty();
$("#menu-title").append(ul + allMenus + dul);
$("#menu-user").empty();
$("#menu-user").append(userMenus);
}
}
function addMax(maxMenu){
if(maxMenu.length==1){
for (var i = 0; i < maxMenu.length; i++) {
var url = maxMenu[i].url;//路径
var menuName = maxMenu[i].menuName;//名称
var childer = maxMenu[i].childer;
var id = maxMenu[i].menuId;
var homeMenu = "";
var usermenu = "";
var isLast = maxMenu[i].last;
if (!isLast) {//默认复制
url = 'javascript:;';
}
var width = menuName.length * 20 + 'px';
var margi = "";
if (menuName.length > 4) {
margi += 'margin-right:5px';
}
var li = "<li class='layui-nav-item ' style='" + margi + "'>" +
"<a href='" + url + "' index='2' idx='" + id + "' style='width: " + width + "'>" + menuName + "</a>";
if (!isLast) {
var dl = "";
if (childer != null && childer.length > 0) {
dl1 = '<dl class="layui-nav-child">';
var dd = ""
for (let j = 0; j < childer.length; j++) {
dd += "<dd><a index='2' idx='" + childer[j].menuId + "' href='" + childer[j].url + "'>" + childer[j].menuName + "</a></dd>"
}
var dl2 = "</dl>"
dl += dl1 + dd + dl2;
}
li += dl;
}
homeMenu += li + "</li>";
}
return homeMenu;
}else{
var width = '更多菜单'.length * 20 + 'px';
let allMenu="";
var li = "<li class='layui-nav-item '>" +
"<a href='javascript:;' index='2' idx='" + 116655 + "' style='width: " + width + "'>" + '更多菜单' + "</a>";
li+= '<dl class="layui-nav-child">';
let childDl="";
for (var i = 0; i < maxMenu.length; i++) {
var url = maxMenu[i].url;//路径
var menuName = maxMenu[i].menuName;//名称
var childer = maxMenu[i].childer;
var id = maxMenu[i].menuId;
var homeMenu = "";
var usermenu = "";
var isLast = maxMenu[i].last;
if (!isLast) {//默认复制
url = 'javascript:;';
}
var dd ="";
if (!isLast) {
if (childer != null && childer.length > 0) {
for (let j = 0; j < childer.length; j++) {
dd += "<dd><a index='2' idx='" + childer[j].menuId + "' href='" + childer[j].url + "'>" + childer[j].menuName + "</a></dd>"
}
}
}
//结束
childDl=childDl+dd;
}
li=li+childDl;
li=li + "</dl></li>";
console.log(li);
return li;
}
}
/*日期动态展示*/
showTime();
setInterval("showTime()", 1000);//间隔多少毫秒执行一次
function showTime() {
let dateTime = new Date();
let year = dateTime.getFullYear(); //获取年份
let month = dateTime.getMonth() + 1; //获取月份
month = month < 10 ? "0" + month : month; //月份小于10则前面加个"0"
let date = dateTime.getDate(); //获取日
date = date < 10 ? "0" + date : date;
let hour = dateTime.getHours(); //获取小时
hour = hour < 10 ? "0" + hour : hour;
let minute = dateTime.getMinutes(); //获取分钟
minute = minute < 10 ? "0" + minute : minute;
let second = dateTime.getSeconds(); //获取秒
second = second < 10 ? "0" + second : second;
let day = dateTime.getDay()
//年月日时分秒赋值给dateTime
dateTime = year + "-" + month + "-" + date + " " + hour + ":" + minute + ":" + second;
$('#currentTime').html(dateTime);
}
/**
* 退出登录
* 记录日志需要调用后端
*/
/*function logout() {
localStorage.setItem("tokens", "");
localStorage.setItem("us", "");
$.ajax({
url: dataUrl + 'auth/loginOut',
type: 'post',
beforeSend:function(xhr){
xhr.setRequestHeader("Authorization",token)
},
success: function (res) {
window.location.href = "../../../login.html";
}
});
}*/
//url
function gotofx() {
window.open(jj_jc_url);
}
function getIsBg(orgId) {
$.ajax({
url: dataUrl + 'proteam/pot/home/getIsBg?token=' + token,
headers: {
"encrypt": sm3(JSON.stringify({ orgId: orgId }))
},
data: {
orgId: orgId,
},
type: 'post',
async: true,
success: function (result) {
console.log(result);
bgStatus = result.data.isNeedBg;
if (result.data.num < 1) {//为报岗则进行报岗
openBg();
}
},
});
}
function getWzXx(orgId) {
$.ajax({
url: dataUrl + 'proteam/pot/home/getWzXx?token=' + token,
headers: {
"encrypt": sm3(JSON.stringify({ orgId: orgId }))
},
data: {
orgId: orgId,
},
type: 'post',
async: true,
success: function (result) {
if (result.data > 0) {
var text = "您有" + result.data + "条违章信息,请及时处理!";
$("#dtaxt").text(text);
if (user.isSup == 3) {
if(!isClose){
openWZInfo();
}
}
} else {
$("#dtaxt").empty();
}
},
});
}
function notice() {
if ($(".layui-tab-title li[lay-id='99999999999999']").length > 0) {
$("#ifr-box ").css("background-image", "url('../../img/tableback.jpg')");
$("#indexIframe").hide();
$("#layui-tab").show();
element.tabChange('menu-tab', '99999999999999');
} else {
$("#indexIframe").hide();
element.tabAdd('menu-tab', {
title: '消息通知',
content: "<iframe id='iframeMain' width='100%' height='100%' frameborder='0' src='../../html/notice/notice.html' class='layadmin-iframe' ></iframe>"
, id: '99999999999999'
})
$("#ifr-box ").css("background-image", "url('../../img/tableback.jpg')");
$("#layui-tab").show();
element.tabChange('menu-tab', '99999999999999');
//关闭事件监听
$(".layui-tab-close").click(function (e) {
let tabr = $(".layui-tab-title").find("li");
let length = tabr.length;
if (length === 0) {//全部关闭了则返回首页
$("#menu-childer").empty();
$("#indexIframe").show();
$("#menu-content").empty();
$("#layui-tab").hide();
$("#ifr-box ").css("background-image", "");
}
})
}
}
function openNewTab(url, id, title) {
if ($(".layui-tab-title li[lay-id='" + id + "']").length > 0) {
$("#ifr-box ").css("background-image", "url('../../img/tableback.jpg')");
$("#indexIframe").hide();
$("#layui-tab").show();
element.tabChange('menu-tab', id);
} else {
$("#indexIframe").hide();
element.tabAdd('menu-tab', {
title: title,
content: "<iframe id='iframeMain' width='100%' height='100%' frameborder='0' src=" + url + " class='layadmin-iframe' ></iframe>"
, id: id
})
$("#ifr-box ").css("background-image", "url('../../img/tableback.jpg')");
$("#layui-tab").show();
element.tabChange('menu-tab', id);
}
//关闭事件监听
$(".layui-tab-close").click(function (e) {
var tabr = $(".layui-tab-title").find("li");
var length = tabr.length;
if (length == 0) {//全部关闭了则返回首页
$("#menu-childer").empty();
$("#indexIframe").show();
$("#menu-content").empty();
$("#layui-tab").hide();
$("#ifr-box ").css("background-image", "");
let nowsrc = $('#indexIframe').attr("src");
let imea = "0";
if (nowsrc == inde1url) {//综合暂时
imea = "0";
} else if (nowsrc == inde2url) {//地市首页
imea = "1";
} else if (nowsrc == inde3url) {//地市首页
imea = "2";
}
$(".layui-nav-item").each(function () {
$(this).removeClass('layui-that');
$(this).removeClass('layui-this');
console.log($(this).text());
console.log($(this).attr("idx"))
if ($(this).text() == '综合展示' && imea == 0) {
$(this).addClass('layui-that');
$(this).addClass('layui-this');
} else if ($(this).text().indexOf('首页') != '-1' && imea == 1) {
$(this).addClass('layui-that');
$(this).addClass('layui-this');
} else if ($(this).text().indexOf('值长') != '-1' && imea == 2) {
$(this).addClass('layui-that');
$(this).addClass('layui-this');
}
})
}
})
}
function closePage(){
element.tabDelete('menu-tab', '160000');
element.tabDelete('menu-tab', '190000');
}
function initUserExam(){
}
function test() {
$("#indexIframe").hide();
element.tabAdd('menu-tab', {
title: '消息通知',
content: "<iframe id='iframeMain' width='100%' height='100%' frameborder='0' src='../../html/notice/notice.html' class='layadmin-iframe' ></iframe>"
, id: '99999999999999'
})
$("#ifr-box ").css("background-image", "url('../../img/tableback.jpg')");
$("#layui-tab").show();
element.tabChange('menu-tab', '99999999999999');
//关闭事件监听
$(".layui-tab-close").click(function (e) {
let tabr = $(".layui-tab-title").find("li");
let length = tabr.length;
if (length === 0) {//全部关闭了则返回首页
$("#menu-childer").empty();
$("#indexIframe").show();
$("#menu-content").empty();
$("#layui-tab").hide();
$("#ifr-box ").css("background-image", "");
}
})
}
// 校验密码
function verifyPass(){
openIframeByParamObj6("verifyPass", '校验', "verifyPass.html", "28%", "35%", {});
}
//初始化默认考试
function initUserExam(param){
$.ajax({
url: dataUrl + 'proteam/sys/exam/initUserExam',
headers: {
"Authorization": token
},
data: {
userId: param,
},
type: 'post',
async: true,
success: function (result) {
console.log(result);
// 查询当前账号是否完成当日考试
getIsFinishDayExam(param);
},
});
}
// 查询当前账号是否完成当日考试
function getIsFinishDayExam(userId){
try {
$('#dayExam').empty();
$('#studyTask').empty();
let url = dataUrl + "proteam/sys/exam/getAnswerStatusByUser";
let params = { userId: userId}
ajaxRequest2(url, "POST", params, true, function (result) {
if (result.code === 200) {
let answerStatus = result.data.answerStatus,
studyTaskStatus = result.data.studyTaskStatus;
if(answerStatus === 0){
let scroll = '<marquee behavior="scroll" style="color: #f12d2d; letter-spacing:1px;cursor: pointer;font-weight: bold;font-size: 16px;">当日考试未完成,请尽快完成考试!!!</marquee>';
$('.datas').before('<div id="dayExam" style="width:16%;padding: 0 20px;" onclick="openDayExam()">'+scroll+'</div>');
$('.datas').css({'width':'17%'});
}else if(answerStatus === 1){
$('.datas').before('<div id="dayExam" style="width:16%;color:#52CA68;cursor: pointer;text-align: center;" onclick="openDayExam()">当日考试已完成</div>');
$('.datas').css({'width':'17%'});
}
if(studyTaskStatus === 1){
let scroll2 = '<marquee behavior="scroll" style="color: #f12d2d; letter-spacing:1px;cursor: pointer;font-weight: bold;font-size: 16px;">您有新的学习任务,请尽快完成学习!!!</marquee>';
$('.datas').before('<div id="studyTask" style="width:16%;padding: 0 20px;" onclick="openStudyTask()">'+scroll2+'</div>');
$('.datas').css({'width':'17%'});
}else if(studyTaskStatus === 0){
$('.datas').before('<div id="studyTask" style="width:16%;color:#52CA68;cursor: pointer;text-align: center;" onclick="openStudyTask()">学习任务已完成</div>');
$('.datas').css({'width':'17%'});
}
}
}, function (xhr) {
error(xhr)
}, null, token);
} catch (error) {
console.error('发生错误:', error.message);
}
}
// 打开每日考试
function openDayExam(){
openIframeByParamObj("openDayExam", '每日考试', "../../html/studyExam/dayExam.html", "82%", "80%", {});
}
// 刷新每日考试状态
function reloadDayExamStatus(){
var user = JSON.parse(decrypt(us));
$('#dayExam').remove();
getIsFinishDayExam(user.userId);
}
// 打开学习任务
function openStudyTask(){
openNewTab('../studyExam/studyCourseware.html',kjIdx,'课件学习')
}