新增页面:巡检管理—-巡检点管理—-关联隐患排查项

main
yupeng 2 days ago
parent 7f83dcb869
commit f1aa893cd3

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.1 MiB

@ -1,48 +1,35 @@
import InspectionTaskPlan from "@/pages/inspectionmanagement/components/Inspectiontaskplan/InspectionTaskPlan"; import InspectionTaskPlan from '@/pages/inspectionmanagement/components/Inspectiontaskplan/InspectionTaskPlan';
import { ConfigProvider, Tabs } from "antd"; import { ConfigProvider, Tabs } from 'antd';
import styles from './InspectionManagement.less' import styles from './InspectionManagement.less';
import InspectionRecords from "@/pages/inspectionmanagement/components/Inspectionrecords/inspectionRecords"; import InspectionRecords from '@/pages/inspectionmanagement/components/Inspectionrecords/inspectionRecords';
const items = [ const items = [
{ {
key: 1, key: '1',
label: '巡检管理类型', label: '巡检管理类型',
children: <InspectionTaskPlan></InspectionTaskPlan> children: <InspectionTaskPlan />
}, },
// {
// key:2,
// label:'巡检管理执行',
// children: <InspectionTaskPlan></InspectionTaskPlan>
// },
{ {
key: 3, key: '3',
label: '巡检点管理', label: '巡检点管理',
children: <InspectionRecords></InspectionRecords> children: <InspectionRecords />
},
]
export const Title = (props) => {
return (
<div style={{ fontSize: '20px', fontWeight: '400' }}>
<span style={{ borderRight: '3px solid rgba(0,102,101,1)', marginRight: '20px' }}></span>
{props.title}
</div>
)
} }
];
const InspectionManagement = () => { const InspectionManagement = () => {
const customTheme = { const customTheme = {
token: { token: {
// 核心主题色修改这里Input 等组件的激活态会自动同步) primaryColor: '#00b42a',
primaryColor: '#00b42a', // 例如修改为蓝色(默认),可改为 #f50、#00b42a 等 colorPrimaryHover: '#39c574',
// 可选:补充其他相关变量(如聚焦时的边框色,默认继承 primaryColor colorPrimaryActive: '#008743'
colorPrimaryHover: '#39c574', // hover 时的颜色
colorPrimaryActive: '#008743', // 点击时的颜色
}, },
components: { components: {
Switch: { Switch: {
colorPrimary: '#008743', // 开启状态颜色 colorPrimary: '#008743',
colorBg: '#333', // 关闭状态颜色(默认灰色) colorBg: '#333'
}, },
Pagination: { Pagination: {
colorPrimary: '#39c574', colorPrimary: '#39c574'
}, },
Tree: { Tree: {
colorPrimary: '#006665', colorPrimary: '#006665',
@ -50,8 +37,7 @@ const InspectionManagement = () => {
checkboxBorderColor: '#006665' checkboxBorderColor: '#006665'
}, },
Table: { Table: {
headerBg: '#F0F7F7', headerBg: '#F0F7F7'
// bodyBg:'#F0F7F7',
}, },
Menu: { Menu: {
activeBarHeight: 0 activeBarHeight: 0
@ -59,15 +45,16 @@ const InspectionManagement = () => {
Select: { Select: {
activeBorderColor: '#2C9E9D' activeBorderColor: '#2C9E9D'
} }
}, }
}; };
const onChange = () => {
} const onChange = () => {};
return <>
return (
<ConfigProvider theme={customTheme}> <ConfigProvider theme={customTheme}>
<Tabs className={styles['tabs']} defaultActiveKey={'1'} items={items} onChange={onChange}> </Tabs> <Tabs className={styles.tabs} defaultActiveKey="1" items={items} onChange={onChange} />
</ConfigProvider> </ConfigProvider>
</> );
} };
export default InspectionManagement; export default InspectionManagement;

@ -1,94 +1,124 @@
.header{ /* 巡检点管理组件样式 */
display: flex; .container {
backdrop-filter: blur(3.4000000953674316px); padding: 20px;
box-shadow: 1px 2px 5px 0 rgba(0, 102, 101, 0.25); background-color: #ffffff;
border: 1px solid; min-height: 100vh;
border-radius: 10px;
border-image-source: linear-gradient(96.54deg, #FFFFFF -0.94%, rgba(255, 255, 255, 0) 25.28%, rgba(167, 229, 228, 0) 59.69%, #A7E5E4 79.76%);
border-top-left-radius: 20px;
background-color: #fff;
} }
.logo{
width: 298px; /* 进度条容器 */
background-position: -56px -6px; .progressContainer {
margin-bottom: 20px;
width: 810px;
height: 48px;
background-image: url('~@/assets/img/progress1.svg');
background-position: left top;
background-repeat: no-repeat; background-repeat: no-repeat;
height: 54px; overflow: hidden;
font-size: 20px; }
font-weight: 400;
color: #fff; /* 主体内容容器 */
.contentContainer {
display: flex; display: flex;
align-items: center; gap: 20px;
justify-content: center;
} }
.menu{
:global(.ant-menu-title-content){ /* 主体内容容器 */
color: rgba(0, 102, 101, 1); .contentContainer {
font-size:16px; display: flex;
gap: 20px;
} }
:global(.parallelogram-container___Lxkxf){
height:30px; /* 左侧树形结构区域 */
margin-top: 12px; .leftSide {
flex: 0 0 300px;
background: #e8f1ec;
padding: 20px;
max-height: calc(100vh - 150px);
overflow-y: auto;
border-radius: 4px;
border: 1px solid;
border-image-source: linear-gradient(96.54deg, #FFFFFF -0.94%, rgba(255, 255, 255, 0) 25.28%, rgba(0, 143, 142, 0) 59.69%, #008F8E 79.76%);
box-shadow: 1px 2px 5px 0px rgba(0, 102, 101, 0.25);
box-shadow: -2px 4px 10px 0px rgba(145, 145, 145, 0.05);
box-shadow: -7px 17px 18px 0px rgba(145, 145, 145, 0.04);
box-shadow: -15px 37px 24px 0px rgba(145, 145, 145, 0.03);
box-shadow: -27px 66px 29px 0px rgba(145, 145, 145, 0.01);
box-shadow: -42px 103px 31px 0px rgba(145, 145, 145, 0);
backdrop-filter: blur(3.4000000953674316px)
} }
.leftSide .ant-tree-list {
background: #e8f1ec;
} }
.state1{
color:#4E5856 .tree {
background: #e8f1ec;
} }
.state2{
color:#2C9E9D /* 树形结构标题 */
.treeTitle {
font-size: 16px;
font-weight: 500;
margin-bottom: 16px;
color: #333;
padding-bottom: 8px;
border-bottom: 1px solid #f0f0f0;
} }
.state3{
color:#999999 /* 树形结构样式 */
.tree {
.ant-tree-treenode {
margin-bottom: 4px;
} }
.state1,.state2,.state3{
font-size: 16px; .ant-tree-node-content-wrapper {
padding: 4px 8px;
border-radius: 4px;
transition: all 0.2s;
&:hover {
background-color: #f0f7f7;
} }
.inspection-table{
:global(.ant-table-cell){
background-color:#F0F7F7;
padding:16px 1px !important;
border-bottom: 0.5px solid #DBE8E5 !important;
} }
.ant-tree-checkbox-checked .ant-tree-checkbox-inner {
background-color: #006665;
border-color: #006665;
} }
.inspection-table1{
:global(.ant-table-cell){ .ant-tree-checkbox:hover .ant-tree-checkbox-inner {
background-color:#F0F7F7; border-color: #006665;
padding:12px 1px !important;
border-bottom: 0.5px solid #DBE8E5 !important;
} }
.ant-tree-selected .ant-tree-node-content-wrapper {
background-color: #f0f7f7;
color: #006665;
font-weight: 500;
} }
.paiBanState{
border: 1px solid;
border-image-source: conic-gradient(from 102.75deg at 50% 52.91%, rgba(249, 249, 249, 0.5) -32.95deg, rgba(140, 160, 156, 0.5) 10.52deg, rgba(140, 160, 156, 0.35) 32.12deg, rgba(255, 255, 255, 0.5) 60.28deg, rgba(255, 255, 255, 0.5) 107.79deg, rgba(140, 160, 156, 0.35) 187.59deg, #F9F9F9 207.58deg, rgba(255, 255, 255, 0.5) 287.31deg, rgba(249, 249, 249, 0.5) 327.05deg, rgba(140, 160, 156, 0.5) 370.52deg);
background: #828C8833;
backdrop-filter: blur(8px);
box-shadow: -2px 4px 10px 0 #9191910D;
border-radius: 4px;
opacity: 1;
padding:6px 8px;
margin-top: 10px;
font-size: 12px;
} }
.paiBanState1{
border: 1px solid; /* 右侧表格区域 */
border-image-source: conic-gradient(from 102.75deg at 50% 52.91%, rgba(249, 249, 249, 0.5) -32.95deg, rgba(140, 160, 156, 0.5) 10.52deg, rgba(140, 160, 156, 0.35) 32.12deg, rgba(255, 255, 255, 0.5) 60.28deg, rgba(255, 255, 255, 0.5) 107.79deg, rgba(140, 160, 156, 0.35) 187.59deg, #F9F9F9 207.58deg, rgba(255, 255, 255, 0.5) 287.31deg, rgba(249, 249, 249, 0.5) 327.05deg, rgba(140, 160, 156, 0.5) 370.52deg); .rightSide {
background: #05454480; flex: 1;
backdrop-filter: blur(8px); background: white;
box-shadow: -2px 4px 10px 0 #9191910D; padding: 20px;
border-radius: 4px; display: flex;
opacity: 1; flex-direction: column;
padding:6px 8px;
margin-top: 10px;
color:#fff;
font-size: 12px;
} }
.addBtn{
background-size:cover; /* 顶部按钮区域 */
background-position:center; .topButtons {
color:#fff; display: flex;
opacity:0.7; margin-bottom: 20px;
border-radius:4px;
height: 36px;
} }
.delBtn { .delBtn {
background-size: cover; background-size: cover;
background-position: center; background-position: center;
@ -98,37 +128,193 @@
width: 88px; width: 88px;
height: 36px; height: 36px;
} }
.exportBtn{
background-size:cover; /* 按钮样式 */
.button {
border: none;
// background-color: transparent;
padding: 6px 16px;
font-size: 14px;
color: #fff;
transition: all 0.3s;
background-position: center; background-position: center;
background-size: cover;
height: 36px;
&:hover {
opacity: 0.9;
}
&.ant-btn-danger {
color: #fff; color: #fff;
opacity:0.7; }
}
/* 搜索区域 */
.searchContainer {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
}
/* 搜索框样式 */
.searchBox {
display: flex;
align-items: center;
border: 1px solid #d9d9d9;
border-radius: 4px; border-radius: 4px;
width: 88px; padding: 0 12px;
width: 300px;
height: 36px; height: 36px;
transition: all 0.3s;
&:focus-within {
border-color: #006665;
box-shadow: 0 0 0 2px rgba(0, 102, 101, 0.1);
} }
.resetBtn{
background-size:cover; .anticon {
background-position:center; color: #999;
color:#006665; margin-right: 8px;
//opacity:0.7; }
.searchInput {
border: none;
outline: none;
flex: 1;
height: 100%;
font-size: 14px;
&::placeholder {
color: #bfbfbf;
}
}
}
/* 新增按钮 */
.addButton {
background-color: #006665;
border-color: #006665;
border-radius: 4px; border-radius: 4px;
width: 88px; padding: 6px 20px;
font-size: 14px;
transition: all 0.3s;
height: 36px; height: 36px;
&:hover {
background-color: #00876e;
border-color: #00876e;
transform: translateY(-1px);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
} }
.customDrawer{
:global(.ant-drawer-header){
background-color:#B8E0D833 !important;
} }
/* 表格样式 */
.table {
margin-bottom: 20px;
.ant-table-thead>tr>th {
background-color: #f0f7f7;
color: #333;
font-weight: 500;
border-bottom: 1px solid #e8e8e8;
padding: 12px 16px;
} }
.drawerRow{
margin: 10px 0 20px 0; .ant-table-tbody>tr>td {
:global(.ant-col){ padding: 12px 16px;
margin-top: 10px; border-bottom: 1px solid #f0f0f0;
color: #000;
span{ &:last-child {
color: #999999; padding-right: 24px;
}
}
.ant-table-tbody>tr:hover {
background-color: #fafafa;
}
/* 自定义序号列宽度 */
.ant-table-column-has-actions {
width: 80px;
}
}
/* 分页区域 */
.pagination {
display: flex;
justify-content: flex-end;
align-items: center;
margin-top: auto;
padding-top: 20px;
border-top: 1px solid #f0f0f0;
>span {
margin-right: 20px;
color: #666;
font-size: 14px; font-size: 14px;
} }
.ant-pagination {
display: flex;
align-items: center;
.ant-pagination-item-active {
border-color: #006665;
a {
color: #006665;
font-weight: 500;
}
}
.ant-pagination-item:hover {
border-color: #006665;
a {
color: #006665;
}
}
.ant-pagination-prev:hover .ant-pagination-item-link,
.ant-pagination-next:hover .ant-pagination-item-link {
color: #006665;
border-color: #006665;
}
}
}
/* 响应式设计 */
@media (max-width: 1200px) {
.contentContainer {
flex-direction: column;
}
.leftSide {
flex: none;
max-height: 400px;
}
}
@media (max-width: 768px) {
.container {
padding: 10px;
}
.searchContainer {
flex-direction: column;
gap: 12px;
align-items: stretch;
}
.searchBox {
width: 100%;
}
.pagination {
flex-direction: column;
align-items: center;
gap: 12px;
} }
} }
Loading…
Cancel
Save