hb_zhgd_screen/pages/dataAnalysisOctober/projectProgress.html

1005 lines
33 KiB
HTML
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.

<!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">
<link rel="stylesheet" href="../../css/tipCommon.css">
<script src="../../js/publics/4.3.0/echarts.min.js"></script>
<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>
<link rel="stylesheet" href="../../css/newDataAnalysis/projectProgress.css">
<title>工程进度分析</title>
</head>
<body>
<div id="proQuality">
<!-- 顶部日期筛选区域 -->
<div class="top-date-filter">
<div class="date-filter-label">日期范围:</div>
<div class="date-range-wrapper">
<input type="text" id="dateRange" class="search-input date-input" placeholder="请选择日期范围" readonly>
</div>
</div>
<!-- 左右两个面板容器 -->
<div class="panels-container">
<!-- 左侧面板:变电土建专业 -->
<div class="panel panel-left">
<!-- 左上:工序整体进度(环形图+统计卡片) -->
<div class="module module-top-left">
<div class="module-title">
<span class="title-indicator"></span>
<span class="title-text">变电土建专业</span>
</div>
<div class="module-content">
<div class="progress-chart-wrapper">
<div class="sub-module-title">
<span style="flex: 1;">
土建专业工序整体进度
</span>
<span class="info-icon">
<img src="../../img/dataAnalysisOctober/common_icon.png" alt=""
style="cursor: pointer; width: 20px; height: 20px;margin-right: 10px;margin-top: 5px;">
</span>
</div>
<div class="tooltip-box">
土建专业工序整体进度率= 土建已完成工
序数÷土建总工序数× 100%
</div>
<div id="civilProgressChart" class="chart-container"></div>
</div>
<div class="statistics-wrapper">
<div class="sub-module-title">
<span style="flex: 1;">
土建专业工序情况统计
</span>
<span class="info-icon">
<img src="../../img/dataAnalysisOctober/common_icon.png" alt=""
style="cursor: pointer; width: 20px; height: 20px;margin-right: 10px;margin-top: 5px;">
</span>
</div>
<div class="tooltip-box">
土建总工序:统计土建专业所有工序数量 <br>
已完成工序:统计土建专业已完成工序的数量 <br>
异常:到计划完成时间未完成的工序自动标记为异常 <br>
异常工序:统计土建专业所有异常工序数量
</div>
<div class="statistics-container">
<div class="stat-item">
<div class="stat-content">
<div class="stat-value" id="civilTotalProcesses">10</div>
<div class="stat-label">土建总工序</div>
</div>
<div class="stat-icon">
<img src="../../img/dataAnalysisOctober/projectProgress/left_1.png" alt="总工序">
</div>
</div>
<div class="stat-item">
<div class="stat-content">
<div class="stat-value" id="civilCompletedProcesses">5</div>
<div class="stat-label">已完成工序</div>
</div>
<div class="stat-icon">
<img src="../../img/dataAnalysisOctober/projectProgress/left_right_2.png"
alt="已完成">
</div>
</div>
<div class="stat-item stat-item-abnormal">
<div class="stat-content">
<div class="stat-value" id="civilAbnormalProcesses">3</div>
<div class="stat-label">异常工序</div>
</div>
<div class="stat-icon">
<img src="../../img/dataAnalysisOctober/projectProgress/left_right_3.png"
alt="异常">
</div>
</div>
</div>
</div>
</div>
</div>
<!-- 中间:进度展示 -->
<div class="module module-middle">
<div class="module-title">
<span class="title-indicator"></span>
<span class="title-text">进度展示</span>
<span class="info-icon">
<img src="../../img/dataAnalysisOctober/common_icon.png" alt=""
style="cursor: pointer; width: 20px; height: 20px;margin-right: 10px;margin-top: 5px;">
</span>
</div>
<div class="tooltip-box">
计划进度与实际进度基础数据取自e基建2.0-计划-项
目建设进度管理模块中的进度数据
</div>
<div class="module-content">
<div id="civilProgressBarChart" class="chart-container"></div>
</div>
</div>
<!-- 左下:进度偏差分析 -->
<div class="module module-bottom-left">
<div class="module-title">
<span class="title-indicator"></span>
<span class="title-text">进度偏差分析</span>
<span class="info-icon">
<img src="../../img/dataAnalysisOctober/common_icon.png" alt=""
style="cursor: pointer; width: 20px; height: 20px;margin-right: 10px;margin-top: 5px;">
</span>
</div>
<div class="tooltip-box">
度相差10%及以上进行分析预警 <br>
按照当前日期实际进度与计划进度对比,进行分析预警
</div>
<div class="module-content">
<div class="table-container">
<table id="civilDeviationTable" lay-filter="civilDeviationTable"></table>
</div>
</div>
</div>
</div>
<!-- 右侧面板:变电电气专业 -->
<div class="panel panel-right">
<!-- 右上:工序整体进度(环形图+统计卡片) -->
<div class="module module-top-right">
<div class="module-title">
<span class="title-indicator"></span>
<span class="title-text">变电电气专业</span>
</div>
<div class="module-content">
<div class="progress-chart-wrapper">
<div class="sub-module-title">
<span style="flex: 1;">
变电专业工序整体进度
</span>
<span class="info-icon">
<img src="../../img/dataAnalysisOctober/common_icon.png" alt=""
style="cursor: pointer; width: 20px; height: 20px;margin-right: 10px;margin-top: 5px;">
</span>
</div>
<div class="tooltip-box">
电气专业工序整体进度率=电气已完成工
序数÷土建总工序数 × 100%
</div>
<div id="electricalProgressChart" class="chart-container"></div>
</div>
<div class="statistics-wrapper">
<div class="sub-module-title">
<span style="flex: 1;">
电气专业工序情况统计
</span>
<span class="info-icon">
<img src="../../img/dataAnalysisOctober/common_icon.png" alt=""
style="cursor: pointer; width: 20px; height: 20px;margin-right: 10px;margin-top: 5px;">
</span>
</div>
<div class="tooltip-box">
电气总工序:统计电气专业所有工序数量 <br>
已完成工序:统计电气专业已完成工序的数量 <br>
异常:到计划完成时间未完成的工序自动标记为异常 <br>
异常工序:统计电气专业所有异常工序数量
</div>
<div class="statistics-container">
<div class="stat-item">
<div class="stat-content">
<div class="stat-value" id="electricalTotalProcesses">10</div>
<div class="stat-label">电气总工序</div>
</div>
<div class="stat-icon">
<img src="../../img/dataAnalysisOctober/projectProgress/right_1.png" alt="总工序">
</div>
</div>
<div class="stat-item">
<div class="stat-content">
<div class="stat-value" id="electricalCompletedProcesses">5</div>
<div class="stat-label">已完成工序</div>
</div>
<div class="stat-icon">
<img src="../../img/dataAnalysisOctober/projectProgress/left_right_2.png"
alt="已完成">
</div>
</div>
<div class="stat-item stat-item-abnormal">
<div class="stat-content">
<div class="stat-value" id="electricalAbnormalProcesses">3</div>
<div class="stat-label">异常工序</div>
</div>
<div class="stat-icon">
<img src="../../img/dataAnalysisOctober/projectProgress/left_right_3.png"
alt="异常">
</div>
</div>
</div>
</div>
</div>
</div>
<!-- 中间:进度展示 -->
<div class="module module-middle">
<div class="module-title">
<span class="title-indicator"></span>
<span class="title-text">进度展示</span>
<span class="info-icon">
<img src="../../img/dataAnalysisOctober/common_icon.png" alt=""
style="cursor: pointer; width: 20px; height: 20px;margin-right: 10px;margin-top: 5px;">
</span>
</div>
<div class="tooltip-box">
计划进度与实际进度基础数据取自e基建2.0-计划-项
目建设进度管理模块中的进度数据
</div>
<div class="module-content">
<div id="electricalProgressBarChart" class="chart-container"></div>
</div>
</div>
<!-- 右下:进度偏差分析 -->
<div class="module module-bottom-right">
<div class="module-title">
<span class="title-indicator"></span>
<span class="title-text">进度偏差分析</span>
<span class="info-icon">
<img src="../../img/dataAnalysisOctober/common_icon.png" alt=""
style="cursor: pointer; width: 20px; height: 20px;margin-right: 10px;margin-top: 5px;">
</span>
</div>
<div class="tooltip-box">
度相差10%及以上进行分析预警 <br>
按照当前日期实际进度与计划进度对比,进行分析预警
</div>
<div class="module-content">
<div class="table-container">
<table id="electricalDeviationTable" lay-filter="electricalDeviationTable"></table>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- 工序详情弹框 -->
<div id="processDetailModal" class="process-detail-modal">
<div class="modal-overlay" onclick="closeProcessDetailModal()"></div>
<div class="modal-content">
<div class="modal-header">
<span class="modal-title" id="processDetailModalTitle">工序详情</span>
<span class="modal-close" onclick="closeProcessDetailModal()">×</span>
</div>
<div class="modal-body">
<div class="modal-search-bar">
<input type="text" id="modalProcessKeywordInput" class="search-input" placeholder="输入关键字">
<button type="button" class="search-btn" onclick="queryModalProcessRecords()">查询</button>
</div>
<div class="modal-table-container">
<table id="modalProcessDetailTable" lay-filter="modalProcessDetailTable"></table>
</div>
</div>
</div>
</div>
</body>
<style>
#proQuality {
width: 100%;
height: 100%;
/* padding: 1%; */
box-sizing: border-box;
overflow: hidden;
display: flex;
flex-direction: column;
}
/* 顶部日期筛选区域(与工程质量分析保持一致) */
.top-date-filter {
display: flex;
align-items: center;
gap: 10px;
padding: 4px 20px;
background: rgba(13, 34, 37, 0.8);
border-bottom: 1px solid rgba(6, 189, 221, 0.3);
flex-shrink: 0;
}
.date-filter-label {
font-size: 14px;
color: #FFFFFF;
font-weight: bold;
white-space: nowrap;
}
.panels-container {
flex: 1;
height: 0;
min-height: 0;
width: 100%;
height: 100%;
display: flex;
gap: 1%;
overflow: hidden;
}
.panel {
flex: 1;
height: 100%;
display: grid;
grid-template-columns: 1fr;
grid-template-rows: 1.8fr 2fr 2fr;
gap: 1%;
overflow: hidden;
}
.module {
position: relative;
display: flex;
flex-direction: column;
box-sizing: border-box;
overflow: hidden;
min-height: 0;
background-image: url("../../img/dataAnalysisOctober/proQualityAnalysis/common_bg.png");
}
.module-title {
display: flex;
align-items: center;
height: 40px;
min-height: 40px;
margin-bottom: 10px;
padding-left: 18px;
flex-shrink: 0;
}
.title-indicator {
width: 4px;
height: 20px;
background: linear-gradient(180deg, #FF9C65 0%, #FFD700 100%);
margin-right: 10px;
flex-shrink: 0;
}
.title-text {
font-size: 16px;
font-weight: bold;
color: #FFFFFF;
white-space: nowrap;
flex: 1;
}
.module-content {
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden;
min-height: 0;
height: 0;
padding: 0 10px 10px 10px;
}
/* 左上/右上模块:环形图+统计卡片布局 */
.module-top-left .module-content,
.module-top-right .module-content {
flex-direction: row;
align-items: center;
justify-content: space-between;
/* gap: 30px; */
padding: 0 20px 10px 20px;
}
.progress-chart-wrapper {
flex: 0 0 40%;
height: 100%;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-start;
min-width: 0;
position: relative;
}
.sub-module-title {
font-size: 14px;
color: #FFFFFF;
font-weight: bold;
margin-bottom: 8px;
padding-left: 5px;
flex-shrink: 0;
display: flex;
align-items: center;
gap: 8px;
width: 100%;
}
/* .sub-module-title::after {
content: '';
width: 18px;
height: 18px;
border-radius: 50%;
background: rgba(6, 189, 221, 0.6);
color: #FFFFFF;
font-size: 12px;
display: flex;
align-items: center;
justify-content: center;
cursor: help;
flex-shrink: 0;
} */
.chart-container {
width: 100%;
flex: 1;
height: 0;
position: relative;
min-height: 0;
}
/* 统计指标容器 */
.statistics-wrapper {
flex: 0 0 60%;
height: 100%;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-start;
min-width: 0;
margin-right: 20px;
}
.statistics-container {
flex: 1;
height: 0;
display: flex;
justify-content: space-around;
gap: 15px;
min-width: 0;
width: 100%;
}
.stat-item {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 15px;
padding: 0 14px;
/* background: rgba(13, 34, 37, 0.6); */
/* border: 1px solid rgba(6, 189, 221, 0.4); */
/* border-radius: 8px; */
flex-shrink: 0;
transition: all 0.3s;
position: relative;
box-sizing: border-box;
}
.stat-item:hover {
background: rgba(13, 34, 37, 0.8);
border-color: rgba(6, 189, 221, 0.7);
box-shadow: 0 2px 12px rgba(6, 189, 221, 0.2);
}
.stat-icon {
width: 60px;
height: 60px;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
position: relative;
}
.stat-icon::before {
content: '';
position: absolute;
width: 100%;
height: 100%;
border-radius: 50%;
background: rgba(6, 189, 221, 0.2);
box-shadow: 0 0 15px rgba(6, 189, 221, 0.5);
z-index: 0;
}
.stat-icon img {
width: 80%;
height: 80%;
object-fit: contain;
position: relative;
z-index: 1;
filter: drop-shadow(0 0 8px rgba(6, 189, 221, 0.8));
}
.stat-content {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 5px;
min-width: 0;
}
.stat-value {
font-size: 36px;
font-weight: bold;
color: #00FFB8;
line-height: 1;
}
.stat-label {
font-size: 14px;
color: #FFFFFF;
line-height: 1.3;
}
/* 异常工序特殊样式 */
.stat-item-abnormal {
border-color: rgba(255, 107, 107, 0.4);
}
.stat-item-abnormal:hover {
border-color: rgba(255, 107, 107, 0.7);
box-shadow: 0 2px 12px rgba(255, 107, 107, 0.2);
}
.stat-item-abnormal .stat-icon::before {
background: rgba(255, 107, 107, 0.2);
box-shadow: 0 0 15px rgba(255, 107, 107, 0.5);
}
.stat-item-abnormal .stat-icon img {
filter: drop-shadow(0 0 8px rgba(255, 107, 107, 0.8));
}
.stat-item-abnormal .stat-value {
color: #FF6B6B;
}
.stat-item-abnormal .stat-label {
color: #FF6B6B;
}
/* 搜索栏 */
.search-bar {
display: flex;
align-items: center;
gap: 10px;
margin-bottom: 15px;
flex-shrink: 0;
}
/* 进度搜索栏 */
.progress-search-bar {
display: flex;
align-items: center;
gap: 10px;
margin-bottom: 15px;
flex-shrink: 0;
padding: 0 10px;
}
.date-range-wrapper {
display: flex;
align-items: center;
gap: 8px;
flex-shrink: 0;
}
.date-input {
width: 240px;
}
.search-input {
width: 160px;
height: 32px;
padding: 0 12px;
background: rgba(25, 62, 68, 0.6);
border: 1px solid rgba(6, 189, 221, 0.6);
border-radius: 2px;
color: #FFFFFF;
font-size: 14px;
transition: all 0.3s;
flex-shrink: 0;
}
.search-input:focus {
outline: none;
border-color: rgba(6, 189, 221, 1);
background: rgba(25, 62, 68, 0.8);
}
.search-input::placeholder {
color: rgba(255, 255, 255, 0.5);
}
.date-input {
width: 240px;
}
.search-btn {
height: 32px;
padding: 0 24px;
background: linear-gradient(135deg, #207E75 0%, #2A9D8F 100%);
border: none;
border-radius: 2px;
color: #FFFFFF;
cursor: pointer;
font-size: 14px;
transition: all 0.3s;
flex-shrink: 0;
}
.search-btn:hover {
background: linear-gradient(135deg, #2A9D8F 0%, #3AB5A5 100%);
box-shadow: 0 2px 8px rgba(6, 189, 221, 0.3);
}
.search-btn:active {
transform: translateY(1px);
}
/* 表格容器 */
.table-container {
flex: 1;
overflow-y: auto;
overflow-x: hidden;
position: relative;
min-height: 0;
}
/* 警告列表容器 */
.module-bottom-right .module-content {
overflow: hidden;
padding: 0 15px;
position: relative;
}
.warning-list {
width: 100%;
display: flex;
flex-direction: column;
position: relative;
overflow: hidden;
}
.warning-list-scroll {
gap: 0;
will-change: transform;
}
.warning-list-scroll .warning-item {
margin-bottom: 10px;
}
.warning-item {
display: flex;
align-items: flex-start;
padding: 10px 15px;
background: rgba(25, 62, 68, 0.3);
border-left: 3px solid #FF6B6B;
border-radius: 2px;
flex-shrink: 0;
}
.warning-icon {
width: 20px;
height: 20px;
margin-right: 10px;
flex-shrink: 0;
background-image: url("../../img/dataAnalysisOctober/proQualityAnalysis/icon.png");
background-size: contain;
background-repeat: no-repeat;
background-position: center;
}
.warning-text {
flex: 1;
font-size: 14px;
color: #FFFFFF;
line-height: 1.5;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
min-width: 0;
}
/* 无缝滚动动画 */
@keyframes scrollWarning {
from {
transform: translateY(0);
}
to {
transform: translateY(-50%);
}
}
.warning-list-scroll {
animation-name: scrollWarning;
animation-timing-function: linear;
animation-iteration-count: infinite;
}
.module-bottom-right:hover .warning-list-scroll {
animation-play-state: paused;
}
/* Layui表格样式覆盖 */
.module .layui-table {
background-color: transparent !important;
}
.module .layui-table thead tr {
background-color: rgba(13, 34, 37, 0.8) !important;
}
.module .layui-table thead th {
background-color: transparent !important;
color: #FFFFFF !important;
border-color: rgba(6, 189, 221, 0.3) !important;
font-weight: bold;
}
.module .layui-table tbody tr {
background-color: rgba(25, 62, 68, 0.3) !important;
}
.module .layui-table tbody tr:hover {
background-color: rgba(25, 62, 68, 0.6) !important;
}
.module .layui-table tbody td {
color: #FFFFFF !important;
border-color: rgba(6, 189, 221, 0.2) !important;
}
.module .layui-table-page {
background-color: transparent !important;
border-top: 1px solid rgba(6, 189, 221, 0.3) !important;
padding: 10px 0 !important;
}
.module .layui-table-page .layui-laypage {
margin: 0 !important;
}
.module .layui-table-page .layui-laypage a,
.module .layui-table-page .layui-laypage span {
color: #FFFFFF !important;
background-color: rgba(25, 62, 68, 0.6) !important;
border-color: rgba(6, 189, 221, 0.5) !important;
}
.module .layui-table-page .layui-laypage .layui-laypage-curr em {
background-color: #207E75 !important;
color: #FFFFFF !important;
}
.module .layui-table-page .layui-laypage a:hover {
background-color: rgba(6, 189, 221, 0.6) !important;
border-color: rgba(6, 189, 221, 0.8) !important;
}
.module .layui-table-page input {
background-color: rgba(25, 62, 68, 0.6) !important;
border-color: rgba(6, 189, 221, 0.5) !important;
color: #FFFFFF !important;
}
/* 滚动条样式 */
.module-content::-webkit-scrollbar,
.table-container::-webkit-scrollbar,
.warning-list::-webkit-scrollbar {
width: 6px;
height: 6px;
}
.module-content::-webkit-scrollbar-track,
.table-container::-webkit-scrollbar-track,
.warning-list::-webkit-scrollbar-track {
background: rgba(13, 34, 37, 0.5);
border-radius: 3px;
}
.module-content::-webkit-scrollbar-thumb,
.table-container::-webkit-scrollbar-thumb,
.warning-list::-webkit-scrollbar-thumb {
background: rgba(6, 189, 221, 0.5);
border-radius: 3px;
}
.module-content::-webkit-scrollbar-thumb:hover,
.table-container::-webkit-scrollbar-thumb:hover,
.warning-list::-webkit-scrollbar-thumb:hover {
background: rgba(6, 189, 221, 0.8);
}
/* 工序详情弹框样式 */
.process-detail-modal {
display: none;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 9999;
}
.process-detail-modal.show {
display: flex;
align-items: center;
justify-content: center;
}
.process-detail-modal .modal-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.6);
backdrop-filter: blur(4px);
}
.process-detail-modal .modal-content {
position: relative;
width: 80%;
height: 70%;
background: rgba(13, 34, 37, 0.95);
border: 1px solid rgba(6, 189, 221, 0.6);
border-radius: 8px;
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
display: flex;
flex-direction: column;
overflow: hidden;
z-index: 10000;
}
.process-detail-modal .modal-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 15px 20px;
background: rgba(13, 34, 37, 0.9);
border-bottom: 1px solid rgba(6, 189, 221, 0.3);
flex-shrink: 0;
}
.process-detail-modal .modal-title {
font-size: 18px;
font-weight: bold;
color: #FFFFFF;
}
.process-detail-modal .modal-close {
font-size: 28px;
color: #FFFFFF;
cursor: pointer;
line-height: 1;
transition: color 0.3s;
width: 30px;
height: 30px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 4px;
}
.process-detail-modal .modal-close:hover {
color: #00FFB8;
background: rgba(6, 189, 221, 0.2);
}
.process-detail-modal .modal-body {
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden;
padding: 20px;
min-height: 0;
}
.process-detail-modal .modal-search-bar {
display: flex;
gap: 10px;
margin-bottom: 15px;
align-items: center;
flex-shrink: 0;
}
.process-detail-modal .modal-table-container {
flex: 1;
overflow-y: auto;
overflow-x: hidden;
min-height: 0;
}
/* 弹框内表格样式 */
#modalProcessDetailTable .layui-table {
background-color: transparent !important;
}
#modalProcessDetailTable .layui-table thead tr {
background-color: rgba(13, 34, 37, 0.8) !important;
}
#modalProcessDetailTable .layui-table thead th {
background-color: transparent !important;
color: #FFFFFF !important;
border-color: rgba(6, 189, 221, 0.3) !important;
font-weight: bold;
}
#modalProcessDetailTable .layui-table tbody tr {
background-color: rgba(25, 62, 68, 0.3) !important;
}
#modalProcessDetailTable .layui-table tbody tr:hover {
background-color: rgba(25, 62, 68, 0.6) !important;
}
#modalProcessDetailTable .layui-table tbody td {
color: #FFFFFF !important;
border-color: rgba(6, 189, 221, 0.2) !important;
}
#modalProcessDetailTable .layui-table-page {
background-color: transparent !important;
border-top: 1px solid rgba(6, 189, 221, 0.3) !important;
padding: 10px 0 !important;
}
#modalProcessDetailTable .layui-table-page .layui-laypage {
margin: 0 !important;
}
#modalProcessDetailTable .layui-table-page .layui-laypage a,
#modalProcessDetailTable .layui-table-page .layui-laypage span {
color: #FFFFFF !important;
background-color: rgba(25, 62, 68, 0.6) !important;
border-color: rgba(6, 189, 221, 0.5) !important;
}
#modalProcessDetailTable .layui-table-page .layui-laypage .layui-laypage-curr em {
background-color: #207E75 !important;
color: #FFFFFF !important;
}
#modalProcessDetailTable .layui-table-page .layui-laypage a:hover {
background-color: rgba(6, 189, 221, 0.6) !important;
border-color: rgba(6, 189, 221, 0.8) !important;
}
#modalProcessDetailTable .layui-table-page input {
background-color: rgba(25, 62, 68, 0.6) !important;
border-color: rgba(6, 189, 221, 0.5) !important;
color: #FFFFFF !important;
}
/* 为饼图和统计卡片添加点击样式 */
.chart-container,
.stat-item {
cursor: pointer;
}
.stat-item:hover {
background: rgba(13, 34, 37, 0.8);
border-color: rgba(6, 189, 221, 0.7);
box-shadow: 0 2px 12px rgba(6, 189, 221, 0.2);
}
</style>
<script src="../../js/pages/dataAnalysisOctober/projectProgress.js" type="text/javascript"></script>
</html>