From 94e38d0b7e270a072d942d2bc0f90a2ee08c9473 Mon Sep 17 00:00:00 2001 From: yupeng Date: Tue, 11 Nov 2025 11:11:51 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9A=E4=BB=AA=E5=99=A8?= =?UTF-8?q?=E4=BB=AA=E8=A1=A8=E9=87=87=E9=9B=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InspectionTaskPlan.less | 159 +-- .../Inspectiontaskplan/SmartInspectionPlan.js | 1078 +++++------------ 2 files changed, 406 insertions(+), 831 deletions(-) diff --git a/src/pages/smartinspection/components/Inspectiontaskplan/InspectionTaskPlan.less b/src/pages/smartinspection/components/Inspectiontaskplan/InspectionTaskPlan.less index 4021ae9..a44332a 100644 --- a/src/pages/smartinspection/components/Inspectiontaskplan/InspectionTaskPlan.less +++ b/src/pages/smartinspection/components/Inspectiontaskplan/InspectionTaskPlan.less @@ -1,6 +1,6 @@ - -.header{ +.header { display: flex; + align-self: center; backdrop-filter: blur(3.4000000953674316px); box-shadow: 1px 2px 5px 0 rgba(0, 102, 101, 0.25); border: 1px solid; @@ -9,7 +9,8 @@ border-top-left-radius: 20px; background-color: #fff; } -.logo{ + +.logo { position: relative; font-size: 20px; font-weight: 400; @@ -21,10 +22,11 @@ height: 54px; width: 258px; } -.logo::before{ + +.logo::before { position: absolute; display: block; - content:''; + content: ''; top: -7px; left: -57px; width: 327px; @@ -37,16 +39,19 @@ border-top-left-radius: 20px; z-index: -1; } -.menu{ - :global(.ant-menu-title-content){ + +.menu { + :global(.ant-menu-title-content) { color: rgba(0, 102, 101, 1); - font-size:16px; + font-size: 16px; } - :global(.parallelogram-container___Lxkxf){ - height:30px; + + :global(.parallelogram-container___Lxkxf) { + height: 30px; margin-top: 12px; } } + .parallelogram-container { /* 平行四边形变换 */ transform: skewX(-45deg); @@ -56,16 +61,17 @@ display: inline-flex; align-items: center; padding: 0 34px; - background-color: #e0f0f0; /* 浅蓝底色 */ + background-color: #e0f0f0; + /* 浅蓝底色 */ //border: none; cursor: pointer; /* 文字样式重置(因为容器有倾斜,内部文字需要反向倾斜) */ font-size: 16px; - color:#006665; + color: #006665; border: 1px solid; - border-image-slice:1; + border-image-slice: 1; border-image-source: linear-gradient(96.05deg, #FFFFFF 9.52%, rgba(255, 255, 255, 0) 27.03%, rgba(0, 143, 142, 0) 60.86%, #0E5A4B 72.09%); @@ -77,29 +83,32 @@ //-webkit-transform: skewX(15deg); margin-right: 8px; } -.addBtn{ - background-size:cover; - background-position:center; - color:#fff; - opacity:0.7; - border-radius:4px; + +.addBtn { + background-size: cover; + background-position: center; + color: #fff; + opacity: 0.7; + border-radius: 4px; height: 36px; } -.delBtn{ - background-size:cover; - background-position:center; - color:#000; + +.delBtn { + background-size: cover; + background-position: center; + color: #000; //opacity:0.7; - border-radius:4px; + border-radius: 4px; width: 88px; height: 36px; } -.exportBtn{ - background-size:cover; - background-position:center; - color:#fff; - opacity:0.7; - border-radius:4px; + +.exportBtn { + background-size: cover; + background-position: center; + color: #fff; + opacity: 0.7; + border-radius: 4px; width: 88px; height: 36px; } @@ -138,75 +147,87 @@ color: black; } -.resetBtn{ - background-size:cover; - background-position:center; - color:#006665; +.resetBtn { + background-size: cover; + background-position: center; + color: #006665; //opacity:0.7; - border-radius:4px; + border-radius: 4px; width: 88px; height: 36px; } -.view{ - background-color:#B7E5D533; - margin-right:30px; - border:none; + +.view { + background-color: #B7E5D533; + margin-right: 30px; + border: none; } -.paibanBg{ + +.paibanBg { background-size: cover; background-position: center; width: 100%; height: 631px; } -.tree{ + +.tree { background-color: #E7F2ED; - :global(.ant-tree-switcher-leaf-line::after){ - border-bottom:1px solid #006665; + + :global(.ant-tree-switcher-leaf-line::after) { + border-bottom: 1px solid #006665; } - :global(.ant-tree-switcher-leaf-line::before){ - border-inline-end:1px solid #006665; + + :global(.ant-tree-switcher-leaf-line::before) { + border-inline-end: 1px solid #006665; } - :global(.ant-tree-checkbox-inner){ - border:1px solid #006665 !important; + + :global(.ant-tree-checkbox-inner) { + border: 1px solid #006665 !important; } - :global(.ant-tree-indent-unit::before){ - border-inline-end:none !important; + + :global(.ant-tree-indent-unit::before) { + border-inline-end: none !important; } } -.font1{ + +.font1 { color: #999999; font-size: 14px; } -.box{ - display:flex; - flex-wrap:wrap; - margin:20px 0; + +.box { + display: flex; + flex-wrap: wrap; + margin: 20px 0; } -.tag{ - margin-right:20px; + +.tag { + margin-right: 20px; margin-bottom: 10px; } -.ul{ - li{ + +.ul { + li { margin-bottom: 10px; } } -.customDrawer{ - :global(.ant-drawer-header){ - background-color:#B8E0D833 !important; + +.customDrawer { + :global(.ant-drawer-header) { + background-color: #B8E0D833 !important; } } // 仪表盘容器样式 - 复杂边框和阴影效果 -.dashboardContainer{ +.dashboardContainer { border: 1px solid; border-image-slice: 1; border-image-source: conic-gradient(from 102.21deg at 52.75% 38.75%, rgba(249, 249, 249, 0.5) -32.95deg, rgba(64, 64, 64, 0.5) 10.52deg, rgba(64, 64, 64, 0.35) 32.12deg, #FFFFFF 60.28deg, rgba(255, 255, 255, 0.5) 107.79deg, rgba(64, 64, 64, 0.35) 187.59deg, #F9F9F9 207.58deg, #FFFFFF 287.31deg, rgba(249, 249, 249, 0.5) 327.05deg, rgba(64, 64, 64, 0.5) 370.52deg); backdrop-filter: blur(15px); box-shadow: -2px 4px 10px 0px rgba(145, 145, 145, 0.05), - -7px 17px 18px 0px rgba(145, 145, 145, 0.04), - -15px 37px 24px 0px rgba(145, 145, 145, 0.03); + -7px 17px 18px 0px rgba(145, 145, 145, 0.04), + -15px 37px 24px 0px rgba(145, 145, 145, 0.03); } // 阈值配置区样式 - 带背景、边框和阴影效果 @@ -216,8 +237,8 @@ border-image-source: conic-gradient(from 102.21deg at 52.75% 38.75%, rgba(249, 249, 249, 0.5) -32.95deg, rgba(64, 64, 64, 0.5) 10.52deg, rgba(64, 64, 64, 0.35) 32.12deg, #FFFFFF 60.28deg, rgba(255, 255, 255, 0.5) 107.79deg, rgba(64, 64, 64, 0.35) 187.59deg, #F9F9F9 207.58deg, #FFFFFF 287.31deg, rgba(249, 249, 249, 0.5) 327.05deg, rgba(64, 64, 64, 0.5) 370.52deg); backdrop-filter: blur(15px); box-shadow: -2px 4px 10px 0px rgba(145, 145, 145, 0.05), - -7px 17px 18px 0px rgba(145, 145, 145, 0.04), - -15px 37px 24px 0px rgba(145, 145, 145, 0.03); + -7px 17px 18px 0px rgba(145, 145, 145, 0.04), + -15px 37px 24px 0px rgba(145, 145, 145, 0.03); } .chartContainer { @@ -226,6 +247,6 @@ border-image-source: conic-gradient(from 102.21deg at 52.75% 38.75%, rgba(249, 249, 249, 0.5) -32.95deg, rgba(64, 64, 64, 0.5) 10.52deg, rgba(64, 64, 64, 0.35) 32.12deg, #FFFFFF 60.28deg, rgba(255, 255, 255, 0.5) 107.79deg, rgba(64, 64, 64, 0.35) 187.59deg, #F9F9F9 207.58deg, #FFFFFF 287.31deg, rgba(249, 249, 249, 0.5) 327.05deg, rgba(64, 64, 64, 0.5) 370.52deg); backdrop-filter: blur(15px); box-shadow: -2px 4px 10px 0px rgba(145, 145, 145, 0.05), - -7px 17px 18px 0px rgba(145, 145, 145, 0.04), - -15px 37px 24px 0px rgba(145, 145, 145, 0.03); -} + -7px 17px 18px 0px rgba(145, 145, 145, 0.04), + -15px 37px 24px 0px rgba(145, 145, 145, 0.03); +} \ No newline at end of file diff --git a/src/pages/smartinspection/components/Inspectiontaskplan/SmartInspectionPlan.js b/src/pages/smartinspection/components/Inspectiontaskplan/SmartInspectionPlan.js index 8bce2db..0a49576 100644 --- a/src/pages/smartinspection/components/Inspectiontaskplan/SmartInspectionPlan.js +++ b/src/pages/smartinspection/components/Inspectiontaskplan/SmartInspectionPlan.js @@ -107,460 +107,146 @@ const Drawers = (props) => { ) } -// 员工表格组件 -const EmployeeTable = () => { - // 状态管理 - const [dataSource, setDataSource] = useState([]); // 表格数据 - const [loading, setLoading] = useState(false); // 加载状态 - const [total, setTotal] = useState(0); // 总条数 - const [currentPage, setCurrentPage] = useState(1); // 当前页码 - const [pageSize, setPageSize] = useState(10); // 每页条数 - const [selectedRowKeys, setSelectedRowKeys] = useState([]); // 选中的行ID - - // 表格列配置 - const columns = [ - { - title: '序号', - dataIndex: 'index', - key: 'index', - width: 100, - align: 'center', - render: (text, record, index) => (index + 1) + (currentPage - 1) * pageSize - }, - { - title: '工号', - dataIndex: 'employeeId', - key: 'employeeId', - align: 'center', - }, - { - title: '姓名', - dataIndex: 'name', - key: 'name', - align: 'center', - }, - { - title: '性别', - dataIndex: 'gender', - key: 'gender', - align: 'center', - }, - { - title: '所属部门', - dataIndex: 'department', - key: 'department', - align: 'center', - }, - { - title: '岗位', - dataIndex: 'position', - key: 'position', - align: 'center', - }, - { - title: '手机号码', - dataIndex: 'phone', - key: 'phone', - align: 'center', - }, - { - title: '状态', - dataIndex: 'status', - key: 'status', - align: 'center', - render: (status) => ( - - ) - }, - { - title: '入职时间', - dataIndex: 'hireDate', - key: 'hireDate', - align: 'center', - }, - { - title: '操作', - key: 'action', - align: 'center', - render: (_, record) => ( - - handleView(record)} style={{ color: '#2C9E9D' }}> - 查看详情 - - handleEdit(record)} style={{ color: '#2C9E9D' }}> - 编辑 - - handleDelete(record)} style={{ color: '#ff4d4f' }}> - 删除 - - - ), - }, - ]; - - // 选择框配置 - const rowSelection = { - selectedRowKeys, - onChange: (newSelectedRowKeys) => { - setSelectedRowKeys(newSelectedRowKeys); - }, - }; - - // 获取表格数据 - const fetchTableData = async () => { - try { - setLoading(true); - // 这里是预留的接口调用位置 - // 实际项目中替换为真实接口请求 - // const response = await api.getEmployeeList({ - // page: currentPage, - // pageSize: pageSize - // }); - - // 模拟数据 - 实际项目中删除 - const mockData = [ - { - key: '1', - employeeId: 'GH001', - name: '钱佳仪', - gender: '女', - department: '运行部', - position: '巡检员', - phone: '189 7731 3118', - status: true, - hireDate: '2025-09-13' - }, - { - key: '2', - employeeId: 'GH002', - name: '孙兆洪', - gender: '女', - department: '安保部', - position: '安全员', - phone: '156 9747 2741', - status: true, - hireDate: '2025-09-12' - }, - { - key: '3', - employeeId: 'GH003', - name: '季丹', - gender: '男', - department: '设备部', - position: '维修工', - phone: '151 4456 8916', - status: true, - hireDate: '2025-08-16' - }, - { - key: '4', - employeeId: 'GH004', - name: '赵晓辉', - gender: '男', - department: '调度室', - position: '调度员', - phone: '181 8511 3486', - status: true, - hireDate: '2025-08-15' - }, - { - key: '5', - employeeId: 'GH005', - name: '何扑金', - gender: '女', - department: '消防班', - position: '消防员', - phone: '183 3220 4078', - status: true, - hireDate: '2025-07-20' - }, - { - key: '6', - employeeId: 'GH006', - name: '吴国立', - gender: '男', - department: '综合部', - position: '文员', - phone: '187 5703 5618', - status: false, - hireDate: '2025-07-17' - } - ]; - - // 模拟接口返回 - 实际项目中使用接口数据 - setDataSource(mockData); - setTotal(85); // 总条数,实际项目中从接口获取 - } catch (error) { - console.error('获取员工数据失败:', error); - } finally { - setLoading(false); - } - }; - - // 初始加载和分页变化时重新获取数据 - useEffect(() => { - fetchTableData(); - }, [currentPage, pageSize]); - - // 处理查看详情 - const handleView = (record) => { - // 预留查看详情逻辑 - console.log('查看详情:', record); - }; - - // 处理编辑 - const handleEdit = (record) => { - // 预留编辑逻辑 - console.log('编辑:', record); - }; - - // 处理删除 - const handleDelete = (record) => { - // 预留删除逻辑 - console.log('删除:', record); - }; - - // 渲染表格 - return ( - - ); -}; -const GroupTable = () => { - //状态管理 - const [dataSource, setDataSource] = useState([]) //表格数据 - const [loading, setLoading] = useState(false) //加载状态 - const [total, setTotal] = useState(0) - const [currentPage, setCurrentPage] = useState(1) - const [pageSize, setPageSize] = useState(10) - const [selectedRowKeys, setSelectedRowKeys] = useState([])//选中行的id - - const columns = [ - { - title: '序号', - dataIndex: 'index', - key: 'index', - width: 100, - align: 'center', - render: (text, record, index) => (index + 1) + (currentPage - 1) * pageSize - }, - { - title: '班组编号', - dataIndex: 'groupId', - key: 'groundId', - align: 'center', - }, - { - title: '班组姓名', - dataIndex: 'groupName', - key: 'groupName', - align: 'center', - }, - { - title: '班组长', - dataIndex: 'groupHeader', - key: 'groupHeader', - align: 'center', - }, - { - title: '成员数量', - dataIndex: 'num', - key: 'num', - align: 'center', - }, - { - title: '负责区域', - dataIndex: 'position', - key: 'position', - align: 'center', - }, - { - title: '联系电话', - dataIndex: 'phone', - key: 'phone', - align: 'center', - }, - { - title: '班组状态', - dataIndex: 'status', - key: 'status', - align: 'center', - render: (status) => ( - - ) - }, - { - title: '创建时间', - dataIndex: 'createTime', - key: 'createTime', - align: 'center', - }, - { - title: '备注', - dataIndex: 'remarks', - key: 'remarks', - align: 'center' - }, - { - title: '操作', - key: 'action', - align: 'center', - render: (_, record) => ( - - handleView(record)} style={{ color: '#2C9E9D' }}> - 查看详情 - - handleEdit(record)} style={{ color: '#2C9E9D' }}> - 编辑 - - handleDelete(record)} style={{ color: '#ff4d4f' }}> - 删除 - - - ), - }, - ] - // 选择框配置 - const rowSelection = { - selectedRowKeys, - onChange: (newSelectedRowKeys) => { - setSelectedRowKeys(newSelectedRowKeys); - }, - }; - const fetchTableData = () => { - try { - setLoading(true) - const mockData = [ - { - key: '1', - groupId: 'GH001', - groupName: '输油运行一班', - groupHeader: '钱佳仪', - num: '8', - position: '油罐储存区 A、B 区', - phone: '189 7731 3118', - status: true, - createTime: '2025-09-13', - remarks: '负责日常输油设备巡检与操作', - }, - { - key: '2', - groupId: 'GH002', - groupName: '消防应急班组', - groupHeader: '何颖颀', - num: '6', - position: '全厂区消防系统', - phone: '156 9747 2741', - status: true, - createTime: '2025-09-12', - remarks: '含2 名持证消防设施操作员', - }, - { - key: '3', - groupId: 'GH003', - groupName: '设备维保班组', - groupHeader: '周遵武', - num: '10', - position: '泵房、工艺设备区', - phone: '151 4456 8916', - status: true, - createTime: '2025-08-16', - remarks: '擅长油泵、输油管道维护', - }, - { - key: '4', - groupId: 'GH004', - groupName: '装卸作业班组', - groupHeader: '钱博西', - num: '7', - position: '油品装卸区站台', - phone: '181 8511 3486', - status: true, - createTime: '2025-08-15', - remarks: '专注装卸作业安全监护', - }, - { - key: '5', - groupId: 'GH005', - groupName: '工艺调和班组', - groupHeader: '周缙绅', - num: '9', - position: '调和工艺区 1-3 号罐', - phone: '183 3220 4078', - status: true, - createTime: '2025-07-20', - remarks: '负责油品调和工艺参数管控', - }, - { - key: '6', - groupId: 'GH006', - groupName: '临时支援班组', - groupHeader: '周江', - num: '4', - position: '全厂区(机动)', - phone: '187 5703 5618', - status: false, - createTime: '2025-07-17', - remarks: '项目结束,暂停用待复用', - } - ] - setDataSource(mockData) - setTotal(85) - - } catch (error) { - console.error(error) - } finally { - setLoading(false) - } - } - // 初始加载和分页变化时重新获取数据 - useEffect(() => { - fetchTableData(); - }, [currentPage, pageSize]); - // 处理查看详情 - const handleView = (record) => { - // 预留查看详情逻辑 - console.log('查看详情:', record); - }; - - // 处理编辑 - const handleEdit = (record) => { - // 预留编辑逻辑 - console.log('编辑:', record); - }; - // 处理删除 - const handleDelete = (record) => { - // 预留删除逻辑 - console.log('删除:', record); - }; - return ( -
- ) -} + +// +// +// ), + +// ] +// // 选择框配置 +// const rowSelection = { +// selectedRowKeys, +// onChange: (newSelectedRowKeys) => { +// setSelectedRowKeys(newSelectedRowKeys); +// }, +// }; +// const fetchTableData = () => { +// try { +// setLoading(true) +// const mockData = [ +// { +// key: '1', +// groupId: 'GH001', +// groupName: '输油运行一班', +// groupHeader: '钱佳仪', +// num: '8', +// position: '油罐储存区 A、B 区', +// phone: '189 7731 3118', +// status: true, +// createTime: '2025-09-13', +// remarks: '负责日常输油设备巡检与操作', +// }, +// { +// key: '2', +// groupId: 'GH002', +// groupName: '消防应急班组', +// groupHeader: '何颖颀', +// num: '6', +// position: '全厂区消防系统', +// phone: '156 9747 2741', +// status: true, +// createTime: '2025-09-12', +// remarks: '含2 名持证消防设施操作员', +// }, +// { +// key: '3', +// groupId: 'GH003', +// groupName: '设备维保班组', +// groupHeader: '周遵武', +// num: '10', +// position: '泵房、工艺设备区', +// phone: '151 4456 8916', +// status: true, +// createTime: '2025-08-16', +// remarks: '擅长油泵、输油管道维护', +// }, +// { +// key: '4', +// groupId: 'GH004', +// groupName: '装卸作业班组', +// groupHeader: '钱博西', +// num: '7', +// position: '油品装卸区站台', +// phone: '181 8511 3486', +// status: true, +// createTime: '2025-08-15', +// remarks: '专注装卸作业安全监护', +// }, +// { +// key: '5', +// groupId: 'GH005', +// groupName: '工艺调和班组', +// groupHeader: '周缙绅', +// num: '9', +// position: '调和工艺区 1-3 号罐', +// phone: '183 3220 4078', +// status: true, +// createTime: '2025-07-20', +// remarks: '负责油品调和工艺参数管控', +// }, +// { +// key: '6', +// groupId: 'GH006', +// groupName: '临时支援班组', +// groupHeader: '周江', +// num: '4', +// position: '全厂区(机动)', +// phone: '187 5703 5618', +// status: false, +// createTime: '2025-07-17', +// remarks: '项目结束,暂停用待复用', +// } +// ] +// setDataSource(mockData) +// setTotal(85) + +// } catch (error) { +// console.error(error) +// } finally { +// setLoading(false) +// } +// } +// // 初始加载和分页变化时重新获取数据 +// useEffect(() => { +// fetchTableData(); +// }, [currentPage, pageSize]); +// // 处理查看详情 +// const handleView = (record) => { +// // 预留查看详情逻辑 +// console.log('查看详情:', record); +// }; + +// // 处理编辑 +// const handleEdit = (record) => { +// // 预留编辑逻辑 +// console.log('编辑:', record); +// }; + +// // 处理删除 +// const handleDelete = (record) => { +// // 预留删除逻辑 +// console.log('删除:', record); +// }; +// return ( +//
+// ) +// } const TimeTable = () => { //状态管理 const [dataSource, setDataSource] = useState([]) //表格数据 @@ -1062,283 +748,10 @@ export const TablePagination = ({ currentPage, pageSize, total, onPageChange, on ); }; -const PeopleMange = () => { - const [currentPage, setCurrentPage] = useState(1); - const [pageSize, setPageSize] = useState(10); - const [total, setTotal] = useState(85); // 总条数,实际项目中从接口获取 - - // 处理页码变化 - const handlePageChange = (page, pageSize) => { - setCurrentPage(page); - setPageSize(pageSize); - }; - - // 处理每页条数变化 - const handlePageSizeChange = (current, size) => { - setPageSize(size); - setCurrentPage(1); // 重置到第一页 - }; - return ( -
- - - - - - - - - - - -
- ) -} -const ClassMange = () => { - const [currentPage, setCurrentPage] = useState(1); - const [pageSize, setPageSize] = useState(10); - const [total, setTotal] = useState(85); // 总条数,实际项目中从接口获取 - - // 处理页码变化 - const handlePageChange = (page, pageSize) => { - setCurrentPage(page); - setPageSize(pageSize); - }; - - // 处理每页条数变化 - const handlePageSizeChange = (current, size) => { - setPageSize(size); - setCurrentPage(1); // 重置到第一页 - }; - return ( -
- - - - - - - - - - - -
- ) -} -const TimeMange = () => { - const [viewState, setViewState] = useState('view0') - const view0 = useRef(null) - const view1 = useRef(null) - const checkView = (viewState) => { - setViewState(viewState) - } - useEffect(() => { - view0.current.classList.remove('view-active') - view1.current.classList.remove('view-active') - if (viewState === 'view0') { - view0.current.style.backgroundColor = '#045F5E80' - view1.current.style.backgroundColor = '#B7E5D533' - view0.current.style.color = '#fff' - view1.current.style.color = '#000' - } else { - view0.current.style.backgroundColor = '#B7E5D533' - view1.current.style.backgroundColor = '#045F5E80' - view0.current.style.color = '#000' - view1.current.style.color = '#fff' - } - }, [viewState]) - return ( -
- - -
- -
- < - 2025年8月 - > -
-
- 上次编辑: - 李朔   - 2025-7-22 09:34 -
- - - - - - - - - - {/**/} - - -
- 岗位类型} - name="type" - > - - - 姓名} - name="type1" - - > - - - 班组} - name="type2" - - > - - - - -
- - - - - - - - -
- -
- - - ) -} -const PatrolRouteQuery = () => { - const [currentPage, setCurrentPage] = useState(1); - const [pageSize, setPageSize] = useState(10); - const [total, setTotal] = useState(85); // 总条数,实际项目中从接口获取 - - // 处理页码变化 - const handlePageChange = (page, pageSize) => { - setCurrentPage(page); - setPageSize(pageSize); - }; - - // 处理每页条数变化 - const handlePageSizeChange = (current, size) => { - setPageSize(size); - setCurrentPage(1); // 重置到第一页 - }; - const treeData = [ - { - title: '班次', - key: '班次', - children: [ - { title: '白班', key: '白班', }, - { title: '中班', key: '中班', }, - { title: '夜班', key: '夜班', }, - { title: '中班巡检', key: '中班巡检', }, - { title: '夜班二巡检', key: '夜班二巡检', }, - ] - }, - { - title: '专业', - key: '专业', - children: [ - { title: '电器专业', key: '电器专业', }, - { title: '水处理', key: '水处理', }, - ] - }, - { - title: '区域', - key: '区域', - children: [ - { title: '发电机区域', key: '发电机区域', }, - { title: '中水处区', key: '中水处区', }, - { title: '除盐水区域', key: '除盐水区域', }, - ] - }, - ] - - - return ( -
- -
- - -
- - -
- - - - - - - - - - - - - - - - - - - ) -} +// TimeMange component removed +// PatrolRouteQuery component removed const SmartInspectionRange = () => { // 巡检范围树形数据,根据参考图更新 @@ -1401,7 +814,7 @@ const SmartInspectionRange = () => { ]; return ( -
+
{/* 左侧树形结构 */}
@@ -1665,7 +1078,7 @@ const SmartInspectionContent = () => {
- + @@ -2294,7 +1707,7 @@ const SmartInspectionContent = () => { marginTop: '10px' }}> - +
序号 故障时间 检测区域
{ ); case '仪器仪表采集': + return ( +
+ {/* 顶部批量编辑按钮 */} +
+
| 仪器仪表采集
+ +
+ + {/* 状态统计卡片 */} +
+

状态统计卡片

+
+ {/* 正常仪表卡片 */} +
+
+
正常仪表
+
28
+
+
+
+ + {/* 超限仪表卡片 */} +
+
+
超限仪表
+
2
+
+
+
+ + {/* 待确认卡片 */} +
+
+
待确认
+
0
+
+
+
+
+
+ + {/* 采集数据列表 */} +
+

统计数据列表

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
序号仪表名称采集值设备位置状态报警阈值
11# 罐液位计8.2m高危罐区 3# 罐 + 正常 + 0-10m
22# 泵出口压力表0.5MPa1# 泵房 + 正常 + 0.4-0.8MPa
+
+
+ + {/* 分页控件 */} +
+
共95条 10/95页
+
+ + + ... + + + + +
+
+
+ ); case '环境监测': return (
@@ -2553,7 +2133,7 @@ const SmartInspectionContent = () => { // 任务规划与执行流程组件 const TaskPlanningFlow = () => { return ( -
+
{/* 顶部标题 */}
@@ -2960,46 +2540,20 @@ const DeviceAttributeSettings = () => { ) } const items = [ - { - label: }>, - key: '人员管理', - - children: [ - { label: '人员管理', key: '人员管理' }, - { label: '班组管理', key: '班组管理' }, - ], - }, - { - label: , - key: '排班管理', - }, - { - label: }>, - key: '巡检路线管理', - children: [ - { label: '巡视路线查询', key: '巡视路线查询' }, - { label: '巡检标准管理', key: '巡检标准管理' }, - { label: '设备属性设置', key: '设备属性设置' }, - ] - }, { label: , key: '智能巡检范围监控', }, - { - label: , - key: '巡检内容', - }, { label: , key: '任务规划与执行流程', }, + { + label: , + key: '巡检内容', + }, ] const list = { - '人员管理': , - '班组管理': , - '排班管理': , - '巡视路线查询': , '巡检标准管理': , '设备属性设置': , '智能巡检范围监控': , @@ -3007,7 +2561,7 @@ const list = { '任务规划与执行流程': , } const InspectionTaskPlan = () => { - const [current, setCurrent] = useState('人员管理') + const [current, setCurrent] = useState('智能巡检范围监控') const onclick = (e) => { console.log(e.key) setCurrent(e.key)