335 lines
11 KiB
Plaintext
335 lines
11 KiB
Plaintext
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="JZYScreen.aspx.cs" Inherits="FineUIPro.Web.HSSE.KqShowScreen.JZYScreen" %>
|
||
|
||
<!DOCTYPE html>
|
||
<html lang="en">
|
||
|
||
<head runat="server">
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<title>Document</title>
|
||
<script src="../..//res/lib/flex.js"></script>
|
||
<link rel="stylesheet" href="../../res/css/jzyscreen.css">
|
||
</head>
|
||
<style>
|
||
.header{
|
||
position: relative;
|
||
}
|
||
.b-wrap{
|
||
position: absolute;
|
||
top:6px;
|
||
right:6px;
|
||
font-size: 12px;
|
||
padding:2px 6px;
|
||
border: 1px solid #ffffff;
|
||
text-align: center;
|
||
color:#fff;
|
||
}
|
||
</style>
|
||
<body>
|
||
<div class="wrap">
|
||
<div class="header">
|
||
<h1><%=ProjectName%>现场人员动态看板</h1>
|
||
<div style="position: absolute;top: 0.5rem;right: 0.2rem;color: #ffffff;" id="divTime"></div>
|
||
<div class="b-wrap">全屏</div>
|
||
</div>
|
||
<div class="conterner">
|
||
<div class="row">
|
||
<div class="row-1">
|
||
|
||
<div class="label">距离12·31中交目标还剩余(天)</div>
|
||
<div class="number" id ="divDayRel">0</div>
|
||
|
||
|
||
</div>
|
||
<div class="row-1" style="margin-top: .25rem;">
|
||
<div class="label">累计安全人工时</div>
|
||
<div class="number" id ="divSafeTotal">0</div>
|
||
</div>
|
||
<div class="row-1" style="margin-top: .25rem;">
|
||
<div class="label">一周安全人工时</div>
|
||
<div class="number"id ="divSafeWeek">0</div>
|
||
</div>
|
||
|
||
<div id="rs">
|
||
|
||
</div>
|
||
</div>
|
||
<div class="c-row">
|
||
<div class="table">
|
||
<div class="table-head">
|
||
<div class="th" style="width: 20%;">
|
||
<span>施工单位名称</span>
|
||
</div>
|
||
<div class="th" style="width: 20%;">
|
||
<span>当日总数/系统总数</span>
|
||
</div>
|
||
<div class="th" style="width: 60%;">
|
||
<div class="th-1">特种作业人员</div>
|
||
<div class="th-2">
|
||
<span style="width: 50%;">特岗名称</span>
|
||
<span style="width: 25%;">系统登记人数</span>
|
||
<span style="width: 25%;">当前在场人数</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="table-body">
|
||
<div class="scroll-box">
|
||
<div class="t" id="divScroller">
|
||
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</body>
|
||
|
||
</html>
|
||
|
||
<script src="../../res/lib/echarts.min.js"></script>
|
||
<script src="../../res/lib/jquery.js"></script>
|
||
<script>
|
||
var projectid = '<%=ProjectId%>'
|
||
var timer = null;
|
||
|
||
function isScroll() {
|
||
let mainEle = document.querySelector('.table-body')
|
||
let serollEle = document.querySelector('.scroll-box')
|
||
if (serollEle.children[0].children.length < 6) {
|
||
return
|
||
}
|
||
serollEle.appendChild(serollEle.children[0].cloneNode(true))
|
||
|
||
function Marquee() {
|
||
if (mainEle.offsetHeight + mainEle.scrollTop < serollEle.offsetHeight) {
|
||
mainEle.scrollTop++
|
||
console.log(mainEle.offsetHeight, serollEle.offsetHeight)
|
||
} else {
|
||
serollEle.appendChild(serollEle.children[0].cloneNode(true))
|
||
serollEle.removeChild(serollEle.children[0])
|
||
}
|
||
}
|
||
|
||
timer = setInterval(Marquee, 90)
|
||
mainEle.onmouseover = function () { clearInterval(timer) }
|
||
mainEle.onmouseout = function () { timer = setInterval(Marquee, 90) }
|
||
}
|
||
|
||
|
||
var temp=[]
|
||
function createSM(value1) {
|
||
var chartDom = document.getElementById('rs');
|
||
var myChart = echarts.init(chartDom);
|
||
var option;
|
||
|
||
let leftLabel = ['施工人员 ', '天辰管理人员', '监理管理人员', '业主管理人员', '当前现场人数', '当日最高人数']
|
||
option = {
|
||
grid: {
|
||
top: 4,
|
||
left: 4,
|
||
right: 4,
|
||
bottom: 4,
|
||
containLabel: true
|
||
},
|
||
xAxis: {
|
||
type: 'value',
|
||
splitLine: {
|
||
show: false
|
||
},
|
||
axisLabel: {
|
||
show: false,
|
||
}
|
||
},
|
||
yAxis: [
|
||
{
|
||
type: 'category',
|
||
position: 'left',
|
||
axisLine: {
|
||
show: false
|
||
},
|
||
axisTick: {
|
||
show: false
|
||
},
|
||
splitLine: {
|
||
show: false
|
||
},
|
||
axisLabel: {
|
||
color: "#ffffff",
|
||
fontWeight: "bolder",
|
||
fontSize: 24,
|
||
textShadowColor: '#000000', // 设置阴影颜色
|
||
textShadowBlur: 1, // 设置阴影模糊度
|
||
textShadowOffsetX: 1, // 设置阴影水平偏移
|
||
textShadowOffsetY: 1 // 设置阴影垂直偏移
|
||
},
|
||
data: leftLabel,
|
||
|
||
}, {
|
||
type: '',
|
||
position: 'right',
|
||
axisLine: {
|
||
show: false
|
||
},
|
||
axisTick: {
|
||
show: false
|
||
},
|
||
splitLine: {
|
||
show: false
|
||
},
|
||
axisLabel: {
|
||
fontFamily: "DIN",
|
||
color: "#CCCCCC",
|
||
fontWeight: "bolder",
|
||
fontSize: 30,
|
||
textShadowColor: '#000000', // 设置阴影颜色
|
||
textShadowBlur: 1, // 设置阴影模糊度
|
||
textShadowOffsetX: 1, // 设置阴影水平偏移
|
||
textShadowOffsetY: 1 // 设置阴影垂直偏移
|
||
},
|
||
data: value1,
|
||
|
||
}
|
||
],
|
||
series: [
|
||
{
|
||
name: '人数',
|
||
type: 'bar',
|
||
// stack: 'total',
|
||
barWidth: 30,
|
||
label: {
|
||
show: false,
|
||
fontSize: 30,
|
||
fontFamily: "DIN",
|
||
align: "left",
|
||
|
||
},
|
||
itemStyle: {
|
||
color: "#1e7bc9"
|
||
},
|
||
emphasis: {
|
||
focus: 'series'
|
||
},
|
||
data: value1
|
||
}
|
||
]
|
||
};
|
||
|
||
if (temp.length != value1.length || (temp[0] != value1[0] || temp[1] != value1[1] || temp[2] != value1[2] || temp[3] != value1[3] || temp[4] != value1[4] || temp[5] != value1[5])) {
|
||
myChart.clear();
|
||
temp = value1;
|
||
option && myChart.setOption(option);
|
||
}
|
||
}
|
||
|
||
|
||
getData();
|
||
function getData() {
|
||
$.ajax({
|
||
url: "JZYScreen.aspx/getData",
|
||
type: "POST",
|
||
contentType: "application/json; charset=utf-8",
|
||
dataType: "json",
|
||
data: JSON.stringify({
|
||
projectId: projectid
|
||
}),
|
||
success: function (data) {
|
||
if (data.d != null) {
|
||
var company = data.d.company;
|
||
if (company != null) {
|
||
$("#divScroller").html(data.d.company);
|
||
//if (timer != null) {
|
||
// clearInterval(timer);
|
||
//}
|
||
//isScroll();
|
||
}
|
||
debugger
|
||
createSM(data.d.num)
|
||
$("#divSafeTotal").html(data.d.safeTotal);
|
||
$("#divSafeWeek").html(data.d.safeTotalWeek);
|
||
|
||
const now = new Date();
|
||
const yearEnd = new Date(now.getFullYear(), 11, 31);
|
||
const diff = yearEnd - now;
|
||
var dayRes = diff > 0 ? Math.ceil(diff / (1000 * 60 * 60 * 24)) + 1 : 0;
|
||
$("#divDayRel").html(dayRes);
|
||
|
||
|
||
}
|
||
}
|
||
})
|
||
}
|
||
setInterval(function () { //执行任务
|
||
getData();
|
||
}, 10000);
|
||
|
||
setInterval(function () { //执行任务
|
||
var now = new Date(); // 获取当前时间
|
||
var years = now.getFullYear(); // 小时
|
||
var months = now.getMonth()+1; // 小时
|
||
var days = now.getDate(); // 小时
|
||
var hours = now.getHours(); // 小时
|
||
var minutes = now.getMinutes(); // 分钟
|
||
var seconds = now.getSeconds(); // 秒
|
||
|
||
// 确保时间总是以两位数显示
|
||
hours = hours < 10 ? '0' + hours : hours;
|
||
minutes = minutes < 10 ? '0' + minutes : minutes;
|
||
seconds = seconds < 10 ? '0' + seconds : seconds;
|
||
|
||
// 更新时钟显示
|
||
var clock = years + '-' + months+'-'+days+' ' + hours + ':' + minutes + ':' + seconds;
|
||
$("#divTime").html(clock);
|
||
|
||
}, 1000);
|
||
|
||
|
||
|
||
|
||
|
||
|
||
$('.b-wrap').on('click', function () {
|
||
if (isFullScreen()) {
|
||
// 处于全屏
|
||
exitFullScreen()
|
||
} else {
|
||
// 未处于全屏
|
||
requestFullScreen(document.querySelector(".wrap"));
|
||
}
|
||
|
||
|
||
})
|
||
|
||
function isFullScreen() {
|
||
return !!(document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement);
|
||
}
|
||
|
||
|
||
function requestFullScreen(element) {
|
||
if (element.requestFullscreen) {
|
||
element.requestFullscreen();
|
||
} else if (element.mozRequestFullScreen) {
|
||
element.mozRequestFullScreen();
|
||
} else if (element.webkitRequestFullscreen) {
|
||
element.webkitRequestFullscreen();
|
||
} else if (element.msRequestFullscreen) {
|
||
element.msRequestFullscreen();
|
||
}
|
||
$('.b-wrap').text("退出全屏")
|
||
}
|
||
|
||
// 退出全屏
|
||
function exitFullScreen() {
|
||
if (document.exitFullscreen) {
|
||
document.exitFullscreen();
|
||
} else if (document.mozCancelFullScreen) {
|
||
document.mozCancelFullScreen();
|
||
} else if (document.webkitExitFullscreen) {
|
||
document.webkitExitFullscreen();
|
||
} else if (document.msExitFullscreen) {
|
||
document.msExitFullscreen();
|
||
}
|
||
$('.b-wrap').text("全屏")
|
||
}
|
||
</script> |