diff --git a/src/assets/box-chart.png b/src/assets/box-chart.png index b93b178..cf3f9ca 100644 Binary files a/src/assets/box-chart.png and b/src/assets/box-chart.png differ diff --git a/src/assets/box-table.png b/src/assets/box-table.png index 3f65ebe..c3374be 100644 Binary files a/src/assets/box-table.png and b/src/assets/box-table.png differ diff --git a/src/components/boxes/BottomTemp.vue b/src/components/boxes/BottomTemp.vue index 9151ca3..c9b2eb5 100644 --- a/src/components/boxes/BottomTemp.vue +++ b/src/components/boxes/BottomTemp.vue @@ -55,8 +55,8 @@ export default { } .vertical-line { - margin: 0 adjust(3px); - width: adjust(3px); + margin: 0 6px; + width: 6px; background: radial-gradient( ellipse at center, #3565ff, diff --git a/src/components/boxes/FanRuntime.vue b/src/components/boxes/FanRuntime.vue index 5b69039..c708879 100644 --- a/src/components/boxes/FanRuntime.vue +++ b/src/components/boxes/FanRuntime.vue @@ -24,13 +24,13 @@ - + - - - + + + @@ -39,7 +39,14 @@ v-for="row in tableData1" :key="row && 'length' in row ? row[0] : Math.random()" > - @@ -120,6 +129,8 @@ export default { [9, "风机9", "未运行", "正常" /**or 0,1*/], [10, "风机10", "86423Hz", "正常" /**or 0,1*/], ], + cursorX: 0, + cursorY: 0 }; }, computed: { @@ -150,7 +161,17 @@ export default { if (inData) this.tableData1.splice(this.tableData1.length, 0, inData); }, 200); if (outData) this.tableCache.push(outData); - }, 3000); + }, 1000 * 60 * 2); + }, + methods: { + // handleMouseOver(e) { + // if (e.target.dataset.title) { + // // 获取鼠标位置 + // console.log("handleMouseOver", e.clientX, e.pageX, e.layorX, e.offsetX); // e.target.dataset.title); + // this.cursorX = e.offsetX + 10 + // this.cursorY = e.offsetY + 10 + // } + // }, }, }; @@ -189,30 +210,24 @@ export default { } .table-wrapper { - height: 400px; + height: 420px; overflow: hidden; // background: #f001; } table { + table-layout: fixed; width: 100%; - border-spacing: adjust(1px); + border-spacing: 2px; } -// .table-1 { -// background: #00f3; -// } - -// tr, td, th { -// max-height: 13.88px !important; -// } - .t-row { - height: adjust(14px); + height: 50px; } .tables { overflow: hidden; + padding: 12px 32px 32px; } .tables > table { @@ -228,38 +243,67 @@ thead > tr th:first-child { } thead > tr th { - font-size: adjust(8px); + font-size: 36px; font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Microsoft YaHei, Source Han Sans SC, Noto Sans CJK SC, WenQuanYi Micro Hei, "微软雅黑", Arial, Helvetica, sans-serif; - line-height: 1.25; + line-height: 1; letter-spacing: 1px; - padding: adjust(3px) adjust(8px); + padding: 8px 48px; font-weight: 600; background: #4288df23; color: #030609d6; text-align: left; + user-select: none; } tbody > tr:nth-child(even) { - background: #4288df13; + background: #4288df13; } +// tbody > tr td:not(:nth-child(2)) { tbody > tr td { + user-select: none; font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Microsoft YaHei, Source Han Sans SC, Noto Sans CJK SC, WenQuanYi Micro Hei, "微软雅黑", Arial, Helvetica, sans-serif; color: #030609d6; - font-size: adjust(8px); - height: adjust(8px * 1.2); - line-height: 1.2; - padding: adjust(2px) adjust(8px); - font-weight: 400; - overflow: hidden; + font-size: 32px; + line-height: 1; background: inherit; + padding: 0 48px; } -tbody > tr td:first-child { - text-align: center; +tbody > tr td > span.eqName { + display: inline-block; + width: 100%; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; +} + +[data-title] { + position: relative; +} + +[data-title]::after { + content: attr(data-title); + position: absolute; + padding: 12px 24px; + background: #000; + color: #fff; + border-radius: 12px; + left: 70%; + top: 100%; + white-space: nowrap; + opacity: 0; + transition: all 0.3s ease-out; + z-index: 9999; + visibility: hidden; +} + +[data-title]:hover::after { + visibility: visible; + opacity: 1; } diff --git a/src/components/boxes/GasFlow.vue b/src/components/boxes/GasFlow.vue index 91b5ea9..68ec572 100644 --- a/src/components/boxes/GasFlow.vue +++ b/src/components/boxes/GasFlow.vue @@ -3,11 +3,23 @@
- +
- +
@@ -43,12 +55,14 @@ export default { } .vertical-line { - margin: 0 adjust(3px); - width: adjust(3px); - background: radial-gradient(ellipse at center, - #3565ff, - #3565ff51, - transparent, - transparent); + margin: 0 6px; + width: 6px; + background: radial-gradient( + ellipse at center, + #3565ff, + #3565ff51, + transparent, + transparent + ); } diff --git a/src/components/boxes/OilFlow.vue b/src/components/boxes/OilFlow.vue index 19f3b38..091a539 100644 --- a/src/components/boxes/OilFlow.vue +++ b/src/components/boxes/OilFlow.vue @@ -81,15 +81,6 @@ export default { OT008: Array(24) .fill(1) .map((_) => randomInt()), - OT009: Array(24) - .fill(1) - .map((_) => randomInt()), - OT000: Array(24) - .fill(1) - .map((_) => randomInt()), - OT011: Array(24) - .fill(1) - .map((_) => randomInt()), }, }; }, @@ -108,8 +99,8 @@ export default { } .vertical-line { - margin: 0 adjust(3px); - width: adjust(3px); + margin: 0 6px; + width: 6px; background: radial-gradient( ellipse at center, #3565ff, diff --git a/src/components/boxes/TopTemp.vue b/src/components/boxes/TopTemp.vue index d466cc9..8b8d2da 100644 --- a/src/components/boxes/TopTemp.vue +++ b/src/components/boxes/TopTemp.vue @@ -3,11 +3,23 @@
- +
- +
@@ -31,8 +43,8 @@ export default { computed: { ...mapState(["kilnTop1", "kilnTop2"]), legend_1() { - return Object.keys(this.kilnTop1) - } + return Object.keys(this.kilnTop1); + }, }, watch: { kilnTop1(val) { @@ -51,12 +63,14 @@ export default { } .vertical-line { - margin: 0 adjust(3px); - width: adjust(3px); - background: radial-gradient(ellipse at center, - #3565ff, - #3565ff51, - transparent, - transparent); + margin: 0 6px; + width: 6px; + background: radial-gradient( + ellipse at center, + #3565ff, + #3565ff51, + transparent, + transparent + ); } diff --git a/src/components/charts/LineChart.vue b/src/components/charts/LineChart.vue index 9fc3e8e..d38b016 100644 --- a/src/components/charts/LineChart.vue +++ b/src/components/charts/LineChart.vue @@ -1,33 +1,37 @@ @@ -257,119 +276,116 @@ export default { @import "../../assets/styles/functions"; ::-webkit-scrollbar { - // display: none; - height: adjust(2px); + height: adjust(2px); } ::-webkit-scrollbar-thumb { - height: adjust(2px); - border-radius: adjust(2px); - background: #ccc3; -} - -// ::-webkit-scrollbar-track { -// height: adjust(1px); -// background: blue; -// } - -ul, -li { - margin: 0; - padding: 0; - list-style: none; - min-width: adjust(20px); -} - -ul { - // background: #0005; - width: 100%; - height: adjust(14px); - white-space: pre-wrap; - padding-bottom: 0; - padding-left: adjust(6px); - display: grid; - grid-template-columns: repeat(5, 1fr); - column-gap: 6px; - // column-span: none; - justify-items: end; - align-items: end; -} - -li { - padding-left: adjust(1px); - position: relative; - // background: #f003; - user-select: none; -} - -.line-chart__custom-legend { - position: absolute; - top: adjust(-20px); - right: 0; - font-size: adjust(5px); - font-family: Ubuntu, sans-serif; - padding: 0; - // max-width: 100%; - width: 75%; - align-items: flex-end; - justify-content: flex-end; -} - -li::before { - content: ""; - position: absolute; - top: adjust(.5px); - left: adjust(-5px); - width: adjust(5px); - height: adjust(5px); - border-radius: adjust(1px); - background: #eee6; -} - -li:nth-child(1)::before { - background: #18c7f3; -} -li:nth-child(2)::before { - background: #ffd160; -} -li:nth-child(3)::before { - background: #f31868; -} -li:nth-child(4)::before { - background: #30e89a; -} -li:nth-child(5)::before { - background: #2760ff; -} -li:nth-child(6)::before { - background: #7138FF; -} -li:nth-child(7)::before { - background: #F318D8; -} -li:nth-child(8)::before { - background: #C0F318; -} -li:nth-child(9)::before { - background: #f77; -} -li:nth-child(10)::before { - background: #19f; -} -li:nth-child(11)::before { - background: #98f; -} -li:nth-child(12)::before { - background: #38f; + height: adjust(2px); + border-radius: adjust(2px); + background: #ccc3; } .line-chart__wrapper { - position: relative; - background: #3564ff0f; - border-radius: adjust(4px); - backdrop-filter: blur(adjust(2px)); - box-shadow: inset 0 0 adjust(10px) adjust(2px) rgba($color: #fff, $alpha: 0.1); - height: 100%; - width: adjust(1px); + position: relative; + background: #3564ff0f; + border-radius: 12px; + backdrop-filter: 2px; + box-shadow: inset 0 0 12px 4px rgba($color: #fff, $alpha: 0.1); + height: 96%; + width: 1px; +} + +.line-chart__custom-legend { + position: absolute; + top: -42px; + right: 18px; + font-family: Ubuntu, sans-serif; + font-size: 28px; + line-height: 1; + padding: 0; + color: #3b4d87; + // width: 75%; + width: 55%; + align-items: flex-end; + justify-content: flex-end; +} + +ul, +li { + margin: 0; + padding: 0; + list-style: none; + min-width: 20px; +} + +ul { + // background: #0005; + width: 100%; + height: 32px; + line-height: 32px; + white-space: pre-wrap; + padding-bottom: 0; + padding-left: 12px; + display: grid; + grid-template-columns: repeat(5, 1fr); + column-gap: 12px; + // column-span: none; + justify-items: end; + align-items: end; +} + +li { + padding-left: 12px; + position: relative; + // background: #f003; + user-select: none; +} + +li::before { + content: ""; + position: absolute; + top: 4px; + left: -20px; + width: 24px; + height: 24px; + border-radius: 4px; + background: #eee6; +} + +li:nth-child(1)::before { + background: #18c7f3; +} +li:nth-child(2)::before { + background: #ffd160; +} +li:nth-child(3)::before { + background: #f31868; +} +li:nth-child(4)::before { + background: #30e89a; +} +li:nth-child(5)::before { + background: #2760ff; +} +li:nth-child(6)::before { + background: #7138ff; +} +li:nth-child(7)::before { + background: #f318d8; +} +li:nth-child(8)::before { + background: #c0f318; +} +li:nth-child(9)::before { + background: #f77; +} +li:nth-child(10)::before { + background: #19f; +} +li:nth-child(11)::before { + background: #98f; +} +li:nth-child(12)::before { + background: #38f; } diff --git a/src/components/groups/data.vue b/src/components/groups/data.vue index ebe0be6..1b56e25 100644 --- a/src/components/groups/data.vue +++ b/src/components/groups/data.vue @@ -1,12 +1,12 @@ @@ -40,32 +40,30 @@ export default { @import "../../assets/styles/functions"; section { - background: url('../../assets/middle-under.png') left 110px top 4px / 380px 22px no-repeat; - width: adjust(w(13700px)); - height: adjust(h(830px)); - // width: adjust(w(13500px)); - // height: adjust(h(960px)); - position: absolute; - top: adjust(h(3390px)); - // top: adjust(h(3265px)); - left: adjust(w(3700px)); -} - -section::before { - content: '数据组'; - font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Microsoft YaHei, Source Han Sans SC, Noto Sans CJK SC, WenQuanYi Micro Hei, "微软雅黑", Arial, Helvetica, sans-serif; - font-size: adjust(h(64px)); - font-weight: 400; - letter-spacing: 1px; - position: absolute; - color: $main-color; - top: 0; + // background: url('../../assets/middle-under.png') left 110px top 4px / 380px 22px no-repeat; + background: rgba(124, 63, 238, 0.722); + width: 100%; + position: absolute; + bottom: 0; left: 0; + display: flex; + justify-content: space-around; + align-items: flex-end; + padding: 24px; } -.data-group { - display: flex; - justify-content: space-between; - align-items: flex-end; -} +// section::before { +// // content: "数据组"; +// content: ""; +// font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, +// Microsoft YaHei, Source Han Sans SC, Noto Sans CJK SC, WenQuanYi Micro Hei, +// "微软雅黑", Arial, Helvetica, sans-serif; +// font-size: adjust(h(64px)); +// font-weight: 400; +// letter-spacing: 1px; +// position: absolute; +// color: $main-color; +// top: 0; +// left: 0; +// } diff --git a/src/components/groups/monitor2.vue b/src/components/groups/monitor2.vue index 8c3b7b5..1667025 100644 --- a/src/components/groups/monitor2.vue +++ b/src/components/groups/monitor2.vue @@ -24,25 +24,24 @@ export default { @import "../../assets/styles/functions"; section { - background: url('../../assets/middle1.png') left 144px top 4px / 97% 420px no-repeat, #ccc7; - width: adjust(w(13700px)); - height: adjust(h(1600px)); - // width: adjust(w(13500px)); - // height: adjust(h(1470px)); + background: rgba(47, 203, 255, 0.225); + width: 100%; + height: 1178px; position: absolute; - top: adjust(h(1740px)); - left: adjust(w(3700px)); -} - -section::before { - content: '监控组 2'; - font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Microsoft YaHei, Source Han Sans SC, Noto Sans CJK SC, WenQuanYi Micro Hei, "微软雅黑", Arial, Helvetica, sans-serif; - font-size: adjust(h(64px)); - font-weight: 400; - letter-spacing: 1px; - position: absolute; - color: $main-color; - top: 0; + bottom: 720px; left: 0; } + +// section::before { +// // content: '监控组 2'; +// content: ''; +// font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Microsoft YaHei, Source Han Sans SC, Noto Sans CJK SC, WenQuanYi Micro Hei, "微软雅黑", Arial, Helvetica, sans-serif; +// font-size: adjust(h(64px)); +// font-weight: 400; +// letter-spacing: 1px; +// position: absolute; +// color: $main-color; +// top: 0; +// left: 0; +// } diff --git a/src/components/layout/Container.vue b/src/components/layout/Container.vue index 5cfe7a2..29cc12b 100644 --- a/src/components/layout/Container.vue +++ b/src/components/layout/Container.vue @@ -27,14 +27,14 @@ export default { cls: { // 'NumberOrDate': {}, NumberOrDate: "number-or-date", - Table: 'tables', - Charts: 'charts', - NumberAndChart: 'number-and-chart', + Table: "tables", + Charts: "charts", + NumberAndChart: "number-and-chart", }, }; }, - created() { }, - mounted() { }, + created() {}, + mounted() {}, methods: {}, }; @@ -50,22 +50,20 @@ export default { .tables { display: inline-block; - // width: adjust(w(1115px)); - width: adjust(w(1400px)); - height: adjust(h(700px)); + width: 1145px; + height: 618px; background: url(../../assets/box-table.png); background-position: 0 0; - /** top left */ background-size: 100% 100%; } .charts { display: inline-block; - width: adjust(w(2440px)); - height: adjust(h(700px)); + height: 618px; + width: 2452px; + // width: 2400px; background: url(../../assets/box-chart.png); background-position: 0 0; - /** top left */ background-size: 100% 100%; } @@ -75,4 +73,4 @@ export default { height: adjust(h(931px)); background: url(../../assets/box-right.png) 0 0 / 100% 100% no-repeat; } - \ No newline at end of file + diff --git a/src/components/layout/Main.vue b/src/components/layout/Main.vue index ab090df..116656a 100644 --- a/src/components/layout/Main.vue +++ b/src/components/layout/Main.vue @@ -1,8 +1,5 @@
序号序号 设备名称运行频率设备状态设备名称运行频率设备状态
+ + @@ -48,7 +55,9 @@