@@ -258,7 +258,7 @@ watch(
.consumables-container {
width: 100%;
box-sizing: border-box;
- padding: 0 30px;
+ padding: 15px 20px;
display: flex;
flex-direction: column;
background-color: #ffffff;
@@ -269,55 +269,54 @@ watch(
.row-first {
display: flex;
align-items: center;
- justify-content: flex-start;
-
- // 急诊按钮
- .emergency-button {
- background: #ff6b6b;
- border-radius: 20px;
- display: flex;
- align-items: center;
- justify-content: center;
- cursor: pointer;
- transition: all 0.3s ease;
- box-shadow: 0 4px 15px rgba(255, 107, 107, 0.3);
-
- span {
- font-size: 32px;
- color: #ffffff;
- font-weight: bold;
- }
- }
+ margin-bottom: 10px;
- // 试管架区域
- .test-tube-rack-area {
+ .emergency-area {
display: flex;
+ gap: 8px;
align-items: center;
- gap: 20px;
- .tube-project-tab {
+ .emergency-button {
+ width: 80px;
+ height: 80px;
+ background: #ff6b6b;
+ border-radius: 20px;
display: flex;
align-items: center;
justify-content: center;
- font-weight: bold;
- color: #1976d2;
- position: relative;
- box-shadow: 0 2px 8px rgba(25, 118, 210, 0.1);
- &::after {
- content: '';
- width: 3px;
- height: 120px;
- background: lightgray;
- position: absolute;
- right: -30px;
+ transition: all 0.3s ease;
+ box-shadow: 0 4px 15px rgba(255, 107, 107, 0.3);
+
+ span {
+ font-size: 24px;
+ color: #ffffff;
+ font-weight: bold;
}
}
+ .emergency-tube {
+ }
+ }
+ .split {
+ width: 4px;
+ height: 100px;
+ background-color: #CCC;
+ margin: 0 10px;
+ }
+ .tube-items {
+ display: flex;
+ flex-wrap: nowrap;
+ justify-content: space-between;
+ align-items: center;
+ height: auto;
+ column-gap: 5px;
+ // padding: 0 10px;
}
}
//第二行
.row-second {
display: grid;
+ gap: 15px;
grid-template-columns: 3fr 4fr 2fr 1fr;
padding: 10px 0;
@@ -378,7 +377,7 @@ watch(
background-color: #d9534f;
}
.waste-text {
- font-size: 28px;
+ font-size: 26px;
font-weight: 600;
color: #ffffff;
writing-mode: vertical-rl;
@@ -394,47 +393,6 @@ watch(
}
}
}
-
- // 添加响应式设计
- @media screen and (max-width: 800px) {
- padding: 15px 20px; // 修改padding值以适应小屏幕
-
- .row-first {
- margin-bottom: 10px;
- gap: 20px;
-
- .emergency-button {
- width: 200px;
- height: 100px;
-
- span {
- font-size: 28px;
- }
- }
- }
-
- .row-second {
- gap: 15px;
-
- .tips-item {
- width: 180px;
- height: 120px;
-
- .tip-text {
- font-size: 32px;
- }
- }
-
- .waste-area {
- width: 90px;
- height: 285px;
-
- .waste-text {
- font-size: 24px;
- }
- }
- }
- }
}
}
@@ -522,15 +480,6 @@ watch(
}
}
-.tube-container {
- display: flex;
- flex-wrap: nowrap;
- justify-content: space-around;
- align-items: center;
- height: auto;
- padding: 0 20px;
- width: 100%;
-}
.plate-temp {
position: fixed;
top: 140px;
diff --git a/src/pages/Index/Regular/TestTube.vue b/src/pages/Index/Regular/TestTube.vue
index aa87fae..aa192c8 100644
--- a/src/pages/Index/Regular/TestTube.vue
+++ b/src/pages/Index/Regular/TestTube.vue
@@ -10,7 +10,7 @@
项目选择
{
const active = isProjElemActive(proj)
if (active) {
return {
- border: 'solid 1px #FFF',
- backgroundColor: proj.color,
+ border: 'solid 1px transparent',
+ backgroundColor: consumablesStore.projIdColorMap[proj.projId!],
color: '#FFF',
}
} else {
return {
- border: `solid 1px ${proj.color}`,
+ border: `solid 1px ${consumablesStore.projIdColorMap[proj.projId!]}`,
backgroundColor: '#FFF',
- color: proj.color,
+ color: consumablesStore.projIdColorMap[proj.projId!],
}
}
}
@@ -315,6 +315,9 @@ const updateTubeSettings = async (rackIdx: number, tubeIdx: number) => {