From 8036251eed208eac0c3dc6039f1e39308cc23d1c Mon Sep 17 00:00:00 2001
From: wangyunfei <1224056307@qq,com>
Date: Thu, 9 Oct 2025 17:21:07 +0800
Subject: [PATCH] =?UTF-8?q?=E6=B6=88=E9=98=B2=E5=9F=BA=E7=A1=80=E9=A1=B5?=
=?UTF-8?q?=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../business_basic/module/EvaluationReport.js | 292 ++++++++++++------
.../module/EvaluationReport.less | 230 +++++++++++---
.../module/ResponsibilityImplementation.less | 2 +
.../business_basic/module/RiskAssessment.less | 1 +
4 files changed, 394 insertions(+), 131 deletions(-)
diff --git a/src/pages/business_basic/module/EvaluationReport.js b/src/pages/business_basic/module/EvaluationReport.js
index 7818aa1..1d61812 100644
--- a/src/pages/business_basic/module/EvaluationReport.js
+++ b/src/pages/business_basic/module/EvaluationReport.js
@@ -1,6 +1,6 @@
import React, { useEffect, useRef, useState } from 'react';
-import { Card, Result, Select, Button, Segmented } from 'antd';
-import { CheckCircleOutlined, ExportOutlined, HeartFilled, LineHeightOutlined } from '@ant-design/icons';
+import { Card, Result, Select, Button, Segmented, Progress, Input } from 'antd';
+import { CheckCircleOutlined, ExportOutlined, HeartFilled, LineHeightOutlined, ExclamationCircleOutlined, SearchOutlined } from '@ant-design/icons';
import * as echarts from 'echarts';
import StandardTable from '@/components/StandardTable';
import styles from './EvaluationReport.less';
@@ -27,9 +27,10 @@ const EvaluationReport = () => {
const [dataSource, setDataSource] = useState([]);
const [pagination, setPagination] = useState({
current: 1,
- pageSize: 5,
+ pageSize: 8,
total: 0,
});
+ const [searchText, setSearchText] = useState('');
// 柱状图初始化
useEffect(() => {
@@ -140,7 +141,7 @@ const EvaluationReport = () => {
axisPointer: {
type: 'shadow'
},
- formatter: function(params) {
+ formatter: function (params) {
return `${params[0].name}
使用次数: ${params[0].value}`;
}
}
@@ -175,6 +176,7 @@ const EvaluationReport = () => {
legend: {
show: true,
+ top: '5%',
left: 'center',
itemWidth: 20,
itemHeight: 8,
@@ -187,7 +189,7 @@ const EvaluationReport = () => {
left: '5%',
right: '5%',
bottom: '10%',
- top: '15%',
+ top: '20%',
containLabel: true
},
xAxis: {
@@ -444,7 +446,7 @@ const EvaluationReport = () => {
width: 60,
render: (text, record, index) => {
const page = pagination.current || 1;
- const pageSize = pagination.pageSize || 5;
+ const pageSize = pagination.pageSize || 8;
const number = (page - 1) * pageSize + index + 1;
return `0${number}`.slice(-2);
}
@@ -462,26 +464,27 @@ const EvaluationReport = () => {
width: 110,
},
{
- title: '型号规格',
+ title: '类型',
dataIndex: 'modelSpec',
key: 'modelSpec',
- width: 140,
+ width: 120,
},
{
title: '安装位置',
dataIndex: 'installLocation',
key: 'installLocation',
- width: 200,
+ width: 100,
},
{
title: '状态',
dataIndex: 'status',
key: 'status',
- width: 80,
+ width: 100,
render: (text) => {
const statusMap = {
- '故障': { color: '#FF4D4F', bg: '#FFF2F0' },
- '预警': { color: '#FAAD14', bg: '#FFF3E9' },
+ '报废': { color: '#FF3E48', bg: '#FFE0E2' },
+ '待维修': { color: '#FF8800', bg: '#FFF3E9' },
+ '已使用': { color: '#00AAFA', bg: '#DAF3FF' },
'正常': { color: '#44BB5F', bg: '#D8F7DE' }
};
const status = statusMap[text] || { color: '#333', bg: '#F5F5F5' };
@@ -499,7 +502,7 @@ const EvaluationReport = () => {
}
},
{
- title: '最后维护',
+ title: '最后维护时间',
dataIndex: 'lastMaintenance',
key: 'lastMaintenance',
width: 150,
@@ -510,9 +513,9 @@ const EvaluationReport = () => {
width: 140,
render: (_, record) => (
-
-
),
@@ -540,122 +544,162 @@ const EvaluationReport = () => {
key: '1',
id: '001',
deviceId: 'HQ-XF-01-001',
- deviceName: '消防水泵',
- modelSpec: 'XBD5.0/30-125',
- installLocation: '总部大楼1层大厅',
- status: '故障',
+ deviceName: '干粉灭火器',
+ modelSpec: '灭火设备',
+ installLocation: '1层大厅',
+ status: '报废',
lastMaintenance: '2025-09-10',
},
{
key: '2',
id: '002',
- deviceId: 'HQ-XF-01-001',
- deviceName: '消防水泵',
- modelSpec: 'XBD5.0/30-125',
- installLocation: '总部大楼3层 东区',
- status: '预警',
+ deviceId: 'HQ-XF-02-015',
+ deviceName: '室内消火栓',
+ modelSpec: '灭火设备',
+ installLocation: '3层东区',
+ status: '已使用',
lastMaintenance: '2025-09-10',
},
{
key: '3',
id: '003',
- deviceId: 'HQ-XF-01-001',
- deviceName: '消防水泵',
- modelSpec: 'XBD5.0/30-125',
- installLocation: '总部大楼地下一层',
+ deviceId: 'HQ-XF-03-007',
+ deviceName: '火警报警器',
+ modelSpec: '报警设备',
+ installLocation: '地下一层',
status: '正常',
lastMaintenance: '2025-09-10',
},
{
key: '4',
id: '004',
- deviceId: 'HQ-XF-01-001',
- deviceName: '消防水泵',
- modelSpec: 'XBD5.0/30-125',
- installLocation: '总部大楼地下一层',
- status: '故障',
+ deviceId: 'HQ-XF-03-008',
+ deviceName: '火警报警器',
+ modelSpec: '报警设备',
+ installLocation: '地下一层',
+ status: '待维修',
lastMaintenance: '2025-09-10',
},
{
key: '5',
id: '005',
- deviceId: 'HQ-XF-01-001',
- deviceName: '消防水泵',
- modelSpec: 'XBD5.0/30-125',
- installLocation: '总部大楼地下一层',
- status: '正常',
+ deviceId: 'HQ-XF-01-009',
+ deviceName: '干粉灭火器',
+ modelSpec: '灭火设备',
+ installLocation: '地下一层',
+ status: '报废',
lastMaintenance: '2025-09-10',
},
{
key: '6',
id: '006',
- deviceId: 'HQ-XF-01-001',
- deviceName: '消防水泵',
- modelSpec: 'XBD5.0/30-125',
- installLocation: '总部大楼地下一层',
- status: '预警',
+ deviceId: 'HQ-XF-01-010',
+ deviceName: '室内消火栓',
+ modelSpec: '灭火设备',
+ installLocation: '地下一层',
+ status: '已使用',
lastMaintenance: '2025-09-10',
},
{
key: '7',
id: '007',
- deviceId: 'HQ-XF-01-001',
- deviceName: '消防水泵',
- modelSpec: 'XBD5.0/30-125',
- installLocation: '总部大楼地下一层',
- status: '故障',
+ deviceId: 'HQ-XF-01-011',
+ deviceName: '火警报警器',
+ modelSpec: '报警设备',
+ installLocation: '地下一层',
+ status: '待维修',
lastMaintenance: '2025-09-10',
},
{
key: '8',
id: '008',
- deviceId: 'HQ-XF-01-001',
- deviceName: '消防水泵',
- modelSpec: 'XBD5.0/30-125',
- installLocation: '总部大楼地下一层',
+ deviceId: 'HQ-XF-01-012',
+ deviceName: '火警报警器',
+ modelSpec: '报警设备',
+ installLocation: '地下一层',
status: '正常',
lastMaintenance: '2025-09-10',
},
{
key: '9',
id: '009',
- deviceId: 'HQ-XF-01-001',
- deviceName: '消防水泵',
- modelSpec: 'XBD5.0/30-125',
- installLocation: '总部大楼地下一层',
- status: '预警',
+ deviceId: 'HQ-XF-01-013',
+ deviceName: '干粉灭火器',
+ modelSpec: '灭火设备',
+ installLocation: '地下一层',
+ status: '已使用',
lastMaintenance: '2025-09-10',
},
{
key: '10',
id: '010',
- deviceId: 'HQ-XF-01-001',
- deviceName: '消防水泵',
- modelSpec: 'XBD5.0/30-125',
- installLocation: '总部大楼地下一层',
- status: '故障',
+ deviceId: 'HQ-XF-01-014',
+ deviceName: '室内消火栓',
+ modelSpec: '灭火设备',
+ installLocation: '地下一层',
+ status: '待维修',
lastMaintenance: '2025-09-10',
},
{
key: '11',
id: '011',
- deviceId: 'HQ-XF-01-001',
- deviceName: '消防水泵',
- modelSpec: 'XBD5.0/30-125',
- installLocation: '总部大楼地下一层',
+ deviceId: 'HQ-XF-01-015',
+ deviceName: '火警报警器',
+ modelSpec: '报警设备',
+ installLocation: '地下一层',
status: '正常',
lastMaintenance: '2025-09-10',
},
{
key: '12',
id: '012',
- deviceId: 'HQ-XF-01-001',
- deviceName: '消防水泵',
- modelSpec: 'XBD5.0/30-125',
- installLocation: '总部大楼地下一层',
- status: '预警',
+ deviceId: 'HQ-XF-01-016',
+ deviceName: '火警报警器',
+ modelSpec: '报警设备',
+ installLocation: '地下一层',
+ status: '已使用',
lastMaintenance: '2025-09-10',
},
+ {
+ key: '13',
+ id: '013',
+ deviceId: 'HQ-XF-01-017',
+ deviceName: '干粉灭火器',
+ modelSpec: '灭火设备',
+ installLocation: '2层西区',
+ status: '报废',
+ lastMaintenance: '2024-08-15',
+ },
+ {
+ key: '14',
+ id: '014',
+ deviceId: 'HQ-XF-02-018',
+ deviceName: '室内消火栓',
+ modelSpec: '灭火设备',
+ installLocation: '4层南区',
+ status: '报废',
+ lastMaintenance: '2024-07-20',
+ },
+ {
+ key: '15',
+ id: '015',
+ deviceId: 'HQ-XF-03-019',
+ deviceName: '火警报警器',
+ modelSpec: '报警设备',
+ installLocation: '地下二层',
+ status: '报废',
+ lastMaintenance: '2024-06-10',
+ },
+ {
+ key: '16',
+ id: '016',
+ deviceId: 'HQ-XF-01-020',
+ deviceName: '干粉灭火器',
+ modelSpec: '灭火设备',
+ installLocation: '5层北区',
+ status: '报废',
+ lastMaintenance: '2024-05-05',
+ },
];
// 初始化数据
@@ -698,9 +742,16 @@ const EvaluationReport = () => {
}));
};
+ // 搜索处理
+ const handleSearchChange = (e) => {
+ setSearchText(e.target.value);
+ console.log('搜索:', e.target.value);
+ // TODO: 实现搜索逻辑,根据设备名称、编号等筛选数据
+ };
+
return (
- {/* 第二个div - 高度39% */}
+ {/* 第1个div - 高度39% */}
@@ -741,7 +792,7 @@ const EvaluationReport = () => {
- {/* 第三个div - 占满剩余位置 */}
+ {/* 第2个div - 占满剩余位置 */}
@@ -751,14 +802,57 @@ const EvaluationReport = () => {
近期维护提醒
-
+
+
+
+
SH-MHQ-023-C 干粉灭火器
+
位置: 4楼办公区丨维护类型: 季度检查
+
负责人: 张三
+
+
+
+
+
+
SH-XHS-045-D 室内消火栓
+
位置: 2楼东侧走廊丨维护类型: 水压测试
+
负责人: 李四
+
+
+
+
-
+
+ {/* 进度条区域 */}
+
+
+
月度维护计划
+
+
+
季度维护计划
+
+
+
+
年度维护计划
+
+
+
+ {/* 警告提示框 */}
+
+
+ 本月有5项维护任务即将到期
+
+
+
+
@@ -768,21 +862,35 @@ const EvaluationReport = () => {
-
-
-
-
+
消防设施与器材列表
+
+ {/* 操作按钮 */}
+
+
+ }
+ />
+
+
+
+
+
+
+
{/* 表格 */}
tr:hover > td) {
diff --git a/src/pages/business_basic/module/ResponsibilityImplementation.less b/src/pages/business_basic/module/ResponsibilityImplementation.less
index 19e59b3..d94eca3 100644
--- a/src/pages/business_basic/module/ResponsibilityImplementation.less
+++ b/src/pages/business_basic/module/ResponsibilityImplementation.less
@@ -892,6 +892,8 @@
padding: 8px 12px;
border-bottom: 1px solid #f0f0f0;
text-align: center;
+ color: #666666;
+ // color: pink;
}
:global(.ant-table-tbody > tr:hover > td) {
diff --git a/src/pages/business_basic/module/RiskAssessment.less b/src/pages/business_basic/module/RiskAssessment.less
index a90b7c4..db5b47e 100644
--- a/src/pages/business_basic/module/RiskAssessment.less
+++ b/src/pages/business_basic/module/RiskAssessment.less
@@ -576,6 +576,7 @@
padding: 8px 12px;
border-bottom: 1px solid #f0f0f0;
text-align: center;
+ color: #666666;
}
:global(.ant-table-tbody > tr:hover > td) {