617 lines
19 KiB
HTML
617 lines
19 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<link rel="stylesheet" href="../../css/font.css">
|
||
<link rel="stylesheet" href="../../plugin/layui-v2.9.7/layui/css/layui.css">
|
||
<link rel="stylesheet" href="../../css/dataAnalysis/dataAnalysis.css">
|
||
<link rel="stylesheet" href="../../css/shuiYin/shuiYin.css">
|
||
<link rel="stylesheet" href="../../css/coreTable.css"/>
|
||
<link rel="stylesheet" href="../../css/accessMge/accessMge.css">
|
||
<script src="../../js/publics/sm4.js" type="text/javascript"></script>
|
||
<script src="../../js/publics/jquery-3.6.0.min.js" type="text/javascript"></script>
|
||
<script src="../../js/publics/public.js"></script>
|
||
<script src="../../plugin/scroll/jquery.nicescroll.min.js"></script>
|
||
<script src="../../js/publics/echarts.js"></script>
|
||
<script src="../../plugin/layui-v2.9.7/layui/layui.js"></script>
|
||
<script src="../../js/publics/aescbc.js"></script>
|
||
<script src="../../js/publics/sm3.js"></script>
|
||
<script src="../../api/commonRequest.js"></script>
|
||
<title>资源利用率分析</title>
|
||
</head>
|
||
|
||
<style>
|
||
#proQuality {
|
||
width: 100%;
|
||
height: 100%;
|
||
display: flex;
|
||
flex-direction: column;
|
||
}
|
||
|
||
.left-box {
|
||
width: 49.5%;
|
||
hegiht: 100%;
|
||
display: flex;
|
||
}
|
||
|
||
.right-box {
|
||
margin-left: 1%;
|
||
width: 49.5%;
|
||
hegiht: 100%;
|
||
display: flex;
|
||
}
|
||
|
||
.box-one {
|
||
width: 100%;
|
||
height: 100%;
|
||
}
|
||
|
||
.box-two {
|
||
width: 100%;
|
||
height: 15%;
|
||
margin-top: 1%;
|
||
}
|
||
|
||
.box-three {
|
||
width: 100%;
|
||
height: 50%;
|
||
margin-top: 1%;
|
||
}
|
||
|
||
.overallSituation {
|
||
background: url("../../img/dataAnalysisOctober/overallSituation.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
display: flex;
|
||
justify-content: space-around;
|
||
align-items: center;
|
||
}
|
||
|
||
.equipmentStatus {
|
||
background: url("../../img/dataAnalysisOctober/equipmentStatus.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
}
|
||
|
||
.equipmentStatus-box {
|
||
display: flex;
|
||
justify-content: space-around;
|
||
align-items: center;
|
||
height: 72%;
|
||
margin-top: 4%;
|
||
width: 98%;
|
||
}
|
||
|
||
.equipment-card {
|
||
display: flex;
|
||
align-items: center;
|
||
}
|
||
|
||
.equipment-card-icon {
|
||
width: 55px;
|
||
height: 60px;
|
||
flex-shrink: 0;
|
||
}
|
||
|
||
.material-icon {
|
||
width: 55px;
|
||
height: 60px;
|
||
flex-shrink: 0;
|
||
background: url("../../img/dataAnalysisOctober/material.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
}
|
||
|
||
.inventory-icon {
|
||
width: 55px;
|
||
height: 60px;
|
||
flex-shrink: 0;
|
||
background: url("../../img/dataAnalysisOctober/inventory.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
}
|
||
|
||
.decline-icon {
|
||
width: 55px;
|
||
height: 60px;
|
||
flex-shrink: 0;
|
||
background: url("../../img/dataAnalysisOctober/decline.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
}
|
||
|
||
.equipment-card:nth-child(1) .equipment-card-icon {
|
||
background: url("../../img/dataAnalysisOctober/ofDevices.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
}
|
||
|
||
.equipment-card:nth-child(2) .equipment-card-icon {
|
||
background: url("../../img/dataAnalysisOctober/deviceTotal.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
}
|
||
|
||
/*.equipment-card:nth-child(3) .equipment-card-icon {*/
|
||
/* background: url("../../img/dataAnalysisOctober/monthRate.png") no-repeat 0 0 / 100% 100%;*/
|
||
/* background-position: center center !important;*/
|
||
/* background: conic-gradient( from 135deg at 100% 50%, #FFFFFF 29%, #3BE6E6 51%);*/
|
||
/*}*/
|
||
|
||
|
||
.equipment-card:nth-child(3) .equipment-card-icon {
|
||
background: conic-gradient(
|
||
from -15deg,
|
||
#3BE6E6 0%,
|
||
#ffffff 85%,
|
||
rgba(252, 254, 254, 0.2) 80%,
|
||
rgba(255, 255, 255, 0.2) 100%
|
||
);
|
||
border-radius: 50%;
|
||
position: relative;
|
||
}
|
||
|
||
.equipment-card:nth-child(3) .equipment-card-icon::after {
|
||
content: '';
|
||
position: absolute;
|
||
top: 50%;
|
||
left: 50%;
|
||
transform: translate(-50%, -50%);
|
||
width: 24px;
|
||
height: 24px;
|
||
background: rgba(13, 34, 37, 1);
|
||
border-radius: 50%;
|
||
}
|
||
|
||
.equipment-card:nth-child(4) .equipment-card-icon {
|
||
background: url("../../img/dataAnalysisOctober/onYear.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
}
|
||
|
||
.equipment-card-content {
|
||
display: flex;
|
||
flex-direction: column;
|
||
}
|
||
|
||
.equipment-card-label {
|
||
font-size: 14px;
|
||
color: #ffffff;
|
||
line-height: 1.2;
|
||
}
|
||
|
||
.equipment-card-value {
|
||
font-size: 16px;
|
||
font-weight: bold;
|
||
color: #79FFFF;
|
||
line-height: 1.2;
|
||
}
|
||
|
||
.personnelStatus {
|
||
background: url("../../img/dataAnalysisOctober/personnelStatus.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
}
|
||
|
||
.efficiencyAnalysis {
|
||
background: url("../../img/dataAnalysisOctober/efficiencyAnalysis.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
}
|
||
|
||
.materialSituation {
|
||
background: url("../../img/dataAnalysisOctober/materialSituation.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
}
|
||
|
||
.optimizationReminder {
|
||
background: url("../../img/dataAnalysisOctober/optimizationReminder.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
}
|
||
|
||
.layout {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
}
|
||
|
||
.monitor-data {
|
||
width: 16%;
|
||
height: 60%;
|
||
margin-top: 3%;
|
||
flex-direction: column;
|
||
justify-content: space-around;
|
||
padding: 10px 30px;
|
||
box-shadow: 0px 0px 4px 0px rgba(8, 220, 224, 0.8);
|
||
border-radius: 2px 2px 2px 2px;
|
||
}
|
||
|
||
.monitor-data p:nth-child(1) span:nth-child(1) {
|
||
font-size: 24px;
|
||
color: #79FFFFFF;
|
||
font-weight: bold;
|
||
line-height: 50px;
|
||
}
|
||
|
||
.monitor-data p:nth-child(1) span:nth-child(2) {
|
||
margin-left: 5px;
|
||
color: #79FFFFFF;
|
||
}
|
||
|
||
.monitor-icon {
|
||
width: 100%;
|
||
height: 60%;
|
||
}
|
||
|
||
.monitor-data:nth-child(1) .monitor-icon {
|
||
background: url("../../img/dataAnalysisOctober/personnelUtilizationRate.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
background-size: initial;
|
||
}
|
||
|
||
.monitor-data:nth-child(2) .monitor-icon {
|
||
background: url("../../img/dataAnalysisOctober/equipmentUtilizationRate.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
background-size: initial;
|
||
}
|
||
|
||
.monitor-data:nth-child(3) .monitor-icon {
|
||
background: url("../../img/dataAnalysisOctober/materialUtilizationRate.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
background-size: initial;
|
||
}
|
||
|
||
.personnelStatus-top {
|
||
height: 28%;
|
||
width: 94%;
|
||
margin-top: 7%;
|
||
margin-left: 3%;
|
||
display: flex;
|
||
}
|
||
|
||
.personnelStatus-top-box {
|
||
box-shadow: 0px 0px 4px 0px rgba(8, 220, 224, 0.8);
|
||
border-radius: 2px 2px 2px 2px;
|
||
height: 50%;
|
||
width: 32%;
|
||
display: flex;
|
||
flex-direction: column;
|
||
}
|
||
|
||
.personnelStatus-bottom {
|
||
height: 48%;
|
||
width: 94%;
|
||
margin-top: 2%;
|
||
margin-left: 3%;
|
||
box-shadow: 0px 0px 4px 0px rgba(8, 220, 224, 0.8);
|
||
border-radius: 2px 2px 2px 2px;
|
||
}
|
||
|
||
.personnel-card-title {
|
||
font-size: 18px;
|
||
margin: 50px 0 10px 20px;
|
||
text-align: left;
|
||
}
|
||
|
||
.personnel-stat-row {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: space-between;
|
||
margin-bottom: 8px;
|
||
}
|
||
|
||
.personnel-stat-row:last-child {
|
||
margin-bottom: 0;
|
||
}
|
||
|
||
.personnel-stat-label {
|
||
display: flex;
|
||
align-items: center;
|
||
font-size: 14px;
|
||
margin-left: 13%;
|
||
}
|
||
|
||
.personnel {
|
||
width: 23px;
|
||
height: 21px;
|
||
background: url("../../img/dataAnalysisOctober/personnel.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
margin-right: 5px;
|
||
}
|
||
|
||
.personnelSetup {
|
||
margin-left: 5px;
|
||
width: 20px;
|
||
height: 21px;
|
||
background: url("../../img/dataAnalysisOctober/personnelSetup.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
margin-right: 5px;
|
||
}
|
||
|
||
.now {
|
||
width: 23px;
|
||
height: 21px;
|
||
background: url("../../img/dataAnalysisOctober/now.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
margin-right: 5px;
|
||
}
|
||
|
||
.yesterday {
|
||
width: 23px;
|
||
height: 21px;
|
||
background: url("../../img/dataAnalysisOctober/yesterday.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
margin-right: 5px;
|
||
}
|
||
|
||
.personnel-stat-value {
|
||
font-size: 18px;
|
||
font-weight: bold;
|
||
color: #79FFFF;
|
||
margin-right: 3%;
|
||
}
|
||
|
||
.personnel-stat-value span {
|
||
font-size: 12px;
|
||
margin-left: 2px;
|
||
font-weight: normal;
|
||
}
|
||
|
||
.personnel-chart-container {
|
||
flex: 1;
|
||
background: rgba(17, 66, 69, 0.4);
|
||
border: 1px solid #1a4d51;
|
||
border-radius: 4px;
|
||
padding: 15px;
|
||
display: flex;
|
||
flex-direction: column;
|
||
}
|
||
|
||
.personnel-chart-title {
|
||
font-size: 14px;
|
||
color: rgba(255, 255, 255, 0.8);
|
||
margin-bottom: 10px;
|
||
display: flex;
|
||
align-items: center;
|
||
}
|
||
|
||
.personnel-chart-title::before {
|
||
content: '';
|
||
width: 3px;
|
||
height: 14px;
|
||
background: #00d4ff;
|
||
border-radius: 2px;
|
||
}
|
||
|
||
.personnel-chart {
|
||
flex: 1;
|
||
min-height: 200px;
|
||
}
|
||
|
||
.optimization-card {
|
||
padding: 15px 20px;
|
||
margin-top: 2%;
|
||
box-shadow: 0px 0px 4px 0px rgba(8,220,224,0.8);
|
||
border-radius: 2px 2px 2px 2px;
|
||
}
|
||
|
||
.optimization-card-header {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: center;
|
||
margin-bottom: 10px;
|
||
}
|
||
|
||
.optimization-card-title {
|
||
font-size: 15px;
|
||
color: #ffffff;
|
||
font-weight: 500;
|
||
}
|
||
|
||
.optimization-card-time {
|
||
font-size: 12px;
|
||
color: #FFFFFF;
|
||
}
|
||
|
||
.optimization-card-description {
|
||
font-size: 13px;
|
||
color: rgba(255, 255, 255, 0.7);
|
||
line-height: 1.6;
|
||
}
|
||
|
||
.layout {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
}
|
||
|
||
.monitor-data {
|
||
width: 16%;
|
||
height: 60%;
|
||
margin-top: 3%;
|
||
flex-direction: column;
|
||
justify-content: space-around;
|
||
border: 3px solid #114245;
|
||
padding: 10px 30px;
|
||
border-radius: 5px 5px;
|
||
}
|
||
|
||
.monitor-data p:nth-child(1) span:nth-child(1) {
|
||
font-size: 24px;
|
||
color: #79FFFFFF;
|
||
font-weight: bold;
|
||
line-height: 50px;
|
||
}
|
||
|
||
.monitor-data p:nth-child(1) span:nth-child(2) {
|
||
margin-left: 5px;
|
||
color: #79FFFFFF;
|
||
}
|
||
|
||
.monitor-icon {
|
||
width: 100%;
|
||
height: 60%;
|
||
}
|
||
|
||
.monitor-data:nth-child(1) .monitor-icon {
|
||
background: url("../../img/dataAnalysisOctober/personnelUtilizationRate.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
background-size: initial;
|
||
}
|
||
|
||
.monitor-data:nth-child(2) .monitor-icon {
|
||
background: url("../../img/dataAnalysisOctober/equipmentUtilizationRate.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
background-size: initial;
|
||
}
|
||
|
||
.monitor-data:nth-child(3) .monitor-icon {
|
||
background: url("../../img/dataAnalysisOctober/materialUtilizationRate.png") no-repeat 0 0 / 100% 100%;
|
||
background-position: center center !important;
|
||
background-size: initial;
|
||
}
|
||
|
||
</style>
|
||
|
||
<body>
|
||
<div id="proQuality">
|
||
|
||
<div style="height: 30%;width: 100%; display: flex;flex-direction: row">
|
||
<div class="left-box">
|
||
<div class="box-one overallSituation ">
|
||
<div class="layout monitor-data">
|
||
<p><span id="workerUtilization">0%</span></p>
|
||
<p>人员利用率</p>
|
||
<div class="monitor-icon"></div>
|
||
</div>
|
||
<div class="layout monitor-data">
|
||
<p><span id="deviceUtilization">0%</span></p>
|
||
<p>设备利用率</p>
|
||
<div class="monitor-icon"></div>
|
||
</div>
|
||
<!-- <div class="layout monitor-data">-->
|
||
<!-- <p><span id="zs">90%</span></p>-->
|
||
<!-- <p>材料利用率</p>-->
|
||
<!-- <div class="monitor-icon"></div>-->
|
||
<!-- </div>-->
|
||
|
||
</div>
|
||
</div>
|
||
<div class="right-box">
|
||
<div class="box-one efficiencyAnalysis">
|
||
<div style="height: 70%;width: 96%;overflow: auto;margin-top: 6%;margin-left: 2%;">
|
||
<table id="dome1" lay-filter="test"></table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div style="height: 35%;width: 100%; display: flex;margin-top: 1%; " class="personnelStatus">
|
||
<div style="height: 100%;width: 30%;">
|
||
<div class="personnel-card-title">到岗情况</div>
|
||
<div class="personnelStatus-top-box" style="margin-left: 5%;float: left;margin-right: 10%;">
|
||
<div class="personnel-stat-value" id="todayDutyRate" style="text-align: center;margin-top: 20%;"></div>
|
||
<div class="personnel-stat-label" style="margin-top: 20%;" >
|
||
<div class="now"></div>
|
||
<span>今日到岗率</span>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="personnelStatus-top-box" >
|
||
<div class="personnel-stat-value" id="yesterdayDutyRate" style="text-align: center;margin-top: 20%;"></div>
|
||
<div class="personnel-stat-label" style="margin-top: 20%;" >
|
||
<div class="yesterday"></div>
|
||
<span>昨日到岗率</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div style="height: 100%;width: 70%;">
|
||
<div style="height: 95%;width: 100%;margin-top: 2%;" id="trend"></div>
|
||
</div>
|
||
</div>
|
||
<div style="height: 33%;width: 100%; display: flex;margin-top: 1%;" class="equipmentStatus"></div>
|
||
|
||
|
||
<!-- <div class="left-box">
|
||
|
||
|
||
<div class="box-three personnelStatus" style="display: flex;flex-direction: column ;">
|
||
<div class="personnelStatus-top">
|
||
<div class="personnelStatus-top-box">
|
||
<div class="personnel-card-title">人员总数统计</div>
|
||
<div class="personnel-stat-row">
|
||
<div class="personnel-stat-label">
|
||
<div class="personnelSetup"></div>
|
||
<span>管理人员</span>
|
||
</div>
|
||
<div class="personnel-stat-value">22<span>人</span></div>
|
||
</div>
|
||
<div class="personnel-stat-row">
|
||
<div class="personnel-stat-label">
|
||
<div class="personnel"></div>
|
||
<span>工人</span>
|
||
</div>
|
||
<div class="personnel-stat-value">387<span>人</span></div>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="personnelStatus-top-box" style="margin-left: 2%;">
|
||
<div class="personnel-card-title">到岗人员统计</div>
|
||
<div class="personnel-stat-row">
|
||
<div class="personnel-stat-label">
|
||
<div class="personnelSetup"></div>
|
||
<span>管理人员</span>
|
||
</div>
|
||
<div class="personnel-stat-value">22<span>人</span></div>
|
||
</div>
|
||
<div class="personnel-stat-row">
|
||
<div class="personnel-stat-label">
|
||
<div class="personnel"></div>
|
||
<span>工人</span>
|
||
</div>
|
||
<div class="personnel-stat-value">387<span>人</span></div>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
<div class="personnelStatus-bottom">
|
||
<div style="height: 100%;width: 100%;" id="trend"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="right-box">
|
||
|
||
|
||
<div class="box-three optimizationReminder">
|
||
<div style="width: 96%;height: 85%;margin-top: 6%;margin-left: 2%;">
|
||
<div class="optimization-card">
|
||
<div class="optimization-card-header">
|
||
<div class="optimization-card-title">设备调度优化</div>
|
||
<div class="optimization-card-time">2025-08-18 10:32:17</div>
|
||
</div>
|
||
<div class="optimization-card-description">
|
||
近期机12易用率偏低,建议安排此设备,提高设备运转效率
|
||
</div>
|
||
</div>
|
||
|
||
<div class="optimization-card">
|
||
<div class="optimization-card-header">
|
||
<div class="optimization-card-title">材料库存优化</div>
|
||
<div class="optimization-card-time">2025-08-18 10:32:17</div>
|
||
</div>
|
||
<div class="optimization-card-description">
|
||
2号仓库水泥入库一个月未使用,建议尽快出库,避免材料被浪费
|
||
</div>
|
||
</div>
|
||
|
||
<div class="optimization-card">
|
||
<div class="optimization-card-header">
|
||
<div class="optimization-card-title">班组使用优化</div>
|
||
<div class="optimization-card-time">2025-08-18 10:32:17</div>
|
||
</div>
|
||
<div class="optimization-card-description">
|
||
安装电气、养护子班、连续三天同时未达60%,建议调整工作计划,提高人员使用率
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
</div>-->
|
||
</div>
|
||
</body>
|
||
<script src="../../js/pages/dataAnalysisOctober/resourceRateAnalysis.js" type="text/javascript"></script>
|
||
</html>
|