.group-detail-container {
|
display: flex;
|
flex-direction: column;
|
height: 100vh;
|
background-color: #F5F5F5;
|
}
|
|
/* 页面标题样式 */
|
.page-header {
|
background-color: #FFFFFF;
|
padding: 30rpx;
|
box-shadow: 0 2rpx 10rpx rgba(0, 0, 0, 0.05);
|
margin-bottom: 20rpx;
|
}
|
|
.header-content {
|
display: flex;
|
flex-direction: column;
|
}
|
|
.project-info {
|
display: flex;
|
flex-direction: column;
|
}
|
|
.project-name {
|
font-size: 28rpx;
|
color: #666666;
|
margin-bottom: 10rpx;
|
display: flex;
|
align-items: center;
|
}
|
|
.project-label {
|
color: #999999;
|
margin-right: 8rpx;
|
}
|
|
.group-name {
|
font-size: 36rpx;
|
font-weight: bold;
|
color: #333333;
|
}
|
|
/* 取水口列表容器 */
|
.valve-list-container {
|
flex: 1;
|
padding: 0 30rpx;
|
overflow: hidden;
|
}
|
|
/* 取水口列表 */
|
.valve-list {
|
height: 100%;
|
}
|
|
/* 取水口项目 */
|
.valve-item {
|
background-color: #FFFFFF;
|
border-radius: 12rpx;
|
padding: 30rpx;
|
margin-bottom: 20rpx;
|
display: flex;
|
justify-content: space-between;
|
align-items: center;
|
box-shadow: 0 2rpx 10rpx rgba(0, 0, 0, 0.05);
|
}
|
|
.valve-info {
|
flex: 1;
|
margin-right: 20rpx;
|
overflow: hidden;
|
}
|
|
.valve-name-container {
|
font-size: 32rpx;
|
font-weight: 500;
|
color: #333333;
|
margin-bottom: 12rpx;
|
width: 100%;
|
overflow: hidden;
|
}
|
|
.name-text {
|
display: inline-block;
|
max-width: 100%;
|
overflow: hidden;
|
text-overflow: ellipsis;
|
white-space: nowrap;
|
}
|
|
.valve-rtu-addr {
|
font-size: 24rpx;
|
color: #666666;
|
display: flex;
|
align-items: center;
|
}
|
|
.rtu-label {
|
color: #999999;
|
white-space: nowrap;
|
}
|
|
.rtu-value {
|
overflow: hidden;
|
text-overflow: ellipsis;
|
white-space: nowrap;
|
}
|
|
.valve-status-container {
|
display: flex;
|
flex-direction: column;
|
align-items: flex-end;
|
justify-content: center;
|
min-width: 100rpx;
|
}
|
|
.valve-status {
|
padding: 8rpx 20rpx;
|
border-radius: 30rpx;
|
font-size: 24rpx;
|
font-weight: 500;
|
margin-bottom: 10rpx;
|
}
|
|
.valve-status.online {
|
background-color: rgba(82, 196, 26, 0.1);
|
color: #52C41A;
|
}
|
|
.valve-status.offline {
|
background-color: rgba(245, 34, 45, 0.1);
|
color: #F5222D;
|
}
|
|
/* 内联状态样式 */
|
.valve-status-inline {
|
font-size: 24rpx;
|
font-weight: 500;
|
padding: 8rpx 20rpx;
|
border-radius: 30rpx;
|
display: flex;
|
align-items: center;
|
justify-content: center;
|
height: 36rpx;
|
line-height: 1;
|
min-width: 80rpx;
|
text-align: center;
|
white-space: nowrap;
|
}
|
|
.valve-status-inline.online {
|
background-color: rgba(82, 196, 26, 0.1);
|
color: #52C41A;
|
border: 1rpx solid rgba(82, 196, 26, 0.3);
|
}
|
|
.valve-status-inline.offline {
|
background-color: rgba(245, 34, 45, 0.1);
|
color: #F5222D;
|
border: 1rpx solid rgba(245, 34, 45, 0.3);
|
}
|
|
/* 命令状态样式 */
|
.command-status {
|
padding: 8rpx 20rpx;
|
border-radius: 30rpx;
|
font-size: 24rpx;
|
font-weight: 500;
|
text-align: center;
|
min-width: 160rpx;
|
display: flex;
|
align-items: center;
|
justify-content: center;
|
height: 40rpx;
|
line-height: 1;
|
}
|
|
.command-status.sent {
|
background-color: rgba(82, 196, 26, 0.1);
|
color: #52C41A;
|
}
|
|
.command-status.unsent {
|
background-color: rgba(250, 173, 20, 0.1);
|
color: #FAAD14;
|
}
|
|
/* 加载中样式 */
|
.loading-container {
|
display: flex;
|
flex-direction: column;
|
justify-content: center;
|
align-items: center;
|
height: 300rpx;
|
}
|
|
.loading-icon {
|
width: 80rpx;
|
height: 80rpx;
|
border: 6rpx solid #f3f3f3;
|
border-top: 6rpx solid #3498db;
|
border-radius: 50%;
|
animation: spin 1s linear infinite;
|
margin-bottom: 20rpx;
|
}
|
|
@keyframes spin {
|
0% { transform: rotate(0deg); }
|
100% { transform: rotate(360deg); }
|
}
|
|
.loading-text {
|
font-size: 28rpx;
|
color: #666666;
|
}
|
|
/* 空状态样式 */
|
.empty-state {
|
display: flex;
|
flex-direction: column;
|
justify-content: center;
|
align-items: center;
|
height: 400rpx;
|
}
|
|
.empty-icon {
|
width: 120rpx;
|
height: 120rpx;
|
margin-bottom: 20rpx;
|
}
|
|
.empty-text {
|
font-size: 28rpx;
|
color: #999999;
|
}
|
|
/* 底部按钮样式 */
|
.bottom-button {
|
padding: 20rpx 30rpx 40rpx;
|
}
|
|
.back-button {
|
width: 100%;
|
height: 88rpx;
|
line-height: 88rpx;
|
text-align: center;
|
background-color: #fff;
|
color: #1890FF;
|
font-size: 30rpx;
|
border-radius: 44rpx;
|
border: 1rpx solid #1890FF;
|
}
|
|
.back-button-hover {
|
opacity: 0.8;
|
}
|