From 4fc0cf19e9759e188a910f2c7865a2ab14c95bd6 Mon Sep 17 00:00:00 2001 From: lb Date: Tue, 19 Dec 2023 15:15:10 +0800 Subject: [PATCH] update --- package-lock.json | 41 +++++- package.json | 2 + src/App.js | 2 +- src/assets/Icon/temp.svg | 14 ++ src/assets/offline.png | Bin 0 -> 13501 bytes src/assets/online.png | Bin 0 -> 13728 bytes src/components/Common/AmenSelector/index.jsx | 5 + .../Common/Company/index.module.scss | 7 +- src/components/Common/CurrentTemp/index.jsx | 2 +- src/components/Common/Energy/index.jsx | 9 +- .../Common/FanRunFrequence/index.jsx | 108 +++++++------- src/components/Common/GasFlow/index.jsx | 124 +++++++--------- .../Common/GasFlow/index.module.css | 19 ++- .../Common/GraphBase/index.module.css | 4 +- src/components/Common/KilnInfo/Kiln.jsx | 4 +- .../Common/KilnInfo/kiln.module.scss | 13 ++ .../Common/NatGasFlow/gridList/index.jsx | 4 +- .../NatGasFlow/gridList/index.module.css | 23 ++- .../Common/NatGasFlow/index.module.css | 3 +- .../Common/TodayFaultTotal/index.jsx | 135 ++++++++++-------- .../Common/TodayFaultType/index.jsx | 14 +- src/components/container.module.scss | 6 +- src/hooks/useIcon.js | 5 +- src/index.css | 10 ++ src/utils/index.ts | 3 +- 25 files changed, 341 insertions(+), 216 deletions(-) create mode 100644 src/assets/Icon/temp.svg create mode 100644 src/assets/offline.png create mode 100644 src/assets/online.png create mode 100644 src/components/Common/AmenSelector/index.jsx diff --git a/package-lock.json b/package-lock.json index e310069..eff884f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -65,6 +65,7 @@ "style-loader": "^3.3.1", "tailwindcss": "^3.0.2", "terser-webpack-plugin": "^5.2.5", + "uuid": "^9.0.1", "webpack": "^5.64.4", "webpack-dev-server": "^4.6.0", "webpack-manifest-plugin": "^4.0.2", @@ -72,6 +73,7 @@ }, "devDependencies": { "@babel/plugin-proposal-private-property-in-object": "^7.21.11", + "@types/uuid": "^9.0.7", "less": "^4.2.0", "less-loader": "^11.1.3", "typescript": "^5.3.3" @@ -4786,6 +4788,12 @@ "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz", "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA==" }, + "node_modules/@types/uuid": { + "version": "9.0.7", + "resolved": "https://registry.npmmirror.com/@types/uuid/-/uuid-9.0.7.tgz", + "integrity": "sha512-WUtIVRUZ9i5dYXefDEAI7sh9/O7jGvHg7Df/5O/gtH3Yabe5odI3UWopVR1qbPXQtvOxWu3mM4XxlYeZtMWF4g==", + "dev": true + }, "node_modules/@types/ws": { "version": "8.5.10", "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", @@ -17485,6 +17493,14 @@ "websocket-driver": "^0.7.4" } }, + "node_modules/sockjs/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmmirror.com/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, "node_modules/source-list-map": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", @@ -18785,9 +18801,9 @@ } }, "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "version": "9.0.1", + "resolved": "https://registry.npmmirror.com/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", "bin": { "uuid": "dist/bin/uuid" } @@ -23064,6 +23080,12 @@ "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz", "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA==" }, + "@types/uuid": { + "version": "9.0.7", + "resolved": "https://registry.npmmirror.com/@types/uuid/-/uuid-9.0.7.tgz", + "integrity": "sha512-WUtIVRUZ9i5dYXefDEAI7sh9/O7jGvHg7Df/5O/gtH3Yabe5odI3UWopVR1qbPXQtvOxWu3mM4XxlYeZtMWF4g==", + "dev": true + }, "@types/ws": { "version": "8.5.10", "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", @@ -32061,6 +32083,13 @@ "faye-websocket": "^0.11.3", "uuid": "^8.3.2", "websocket-driver": "^0.7.4" + }, + "dependencies": { + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmmirror.com/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + } } }, "source-list-map": { @@ -33024,9 +33053,9 @@ "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" }, "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + "version": "9.0.1", + "resolved": "https://registry.npmmirror.com/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==" }, "v8-to-istanbul": { "version": "8.1.1", diff --git a/package.json b/package.json index 7130c00..d3610f2 100644 --- a/package.json +++ b/package.json @@ -60,6 +60,7 @@ "style-loader": "^3.3.1", "tailwindcss": "^3.0.2", "terser-webpack-plugin": "^5.2.5", + "uuid": "^9.0.1", "webpack": "^5.64.4", "webpack-dev-server": "^4.6.0", "webpack-manifest-plugin": "^4.0.2", @@ -90,6 +91,7 @@ }, "devDependencies": { "@babel/plugin-proposal-private-property-in-object": "^7.21.11", + "@types/uuid": "^9.0.7", "less": "^4.2.0", "less-loader": "^11.1.3", "typescript": "^5.3.3" diff --git a/src/App.js b/src/App.js index 3a6e5e1..2a1487d 100644 --- a/src/App.js +++ b/src/App.js @@ -15,7 +15,7 @@ function App() { return ( <> -
+
setNavActive(v)} /> diff --git a/src/assets/Icon/temp.svg b/src/assets/Icon/temp.svg new file mode 100644 index 0000000..12ff393 --- /dev/null +++ b/src/assets/Icon/temp.svg @@ -0,0 +1,14 @@ + + + 温度 + + + + + + + + + + + \ No newline at end of file diff --git a/src/assets/offline.png b/src/assets/offline.png new file mode 100644 index 0000000000000000000000000000000000000000..96e68b809349aa3e4b4722783293162dc5e6c217 GIT binary patch literal 13501 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 rMrgf`c2olGfTx{29qrU|SN8t_{mK_4tnyP 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

o-+>MW!Db(+QkozncQ0 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 literal 0 HcmV?d00001 diff --git a/src/components/Common/AmenSelector/index.jsx b/src/components/Common/AmenSelector/index.jsx new file mode 100644 index 0000000..d8d95a6 --- /dev/null +++ b/src/components/Common/AmenSelector/index.jsx @@ -0,0 +1,5 @@ +function AmenSelector() { + return

; +} + +export default AmenSelector; diff --git a/src/components/Common/Company/index.module.scss b/src/components/Common/Company/index.module.scss index 13c60f7..e86e956 100644 --- a/src/components/Common/Company/index.module.scss +++ b/src/components/Common/Company/index.module.scss @@ -38,9 +38,10 @@ .TopSideLeftTxt { margin-right: 120px; margin-top: 15px; - color: rgb(255, 255, 255, 0.8); + color: rgb(255, 255, 255, 0.6); font-size: 20px; font-weight: 300px; + letter-spacing: 1px; line-height: 22.174976px; } } @@ -77,9 +78,9 @@ } .TopTitleText { - margin-top: 16px; + margin-top: 40px; letter-spacing: 8px; - font-size: 32px; + font-size: 34px; color: #00fff7; text-align: center; letter-spacing: 2px; diff --git a/src/components/Common/CurrentTemp/index.jsx b/src/components/Common/CurrentTemp/index.jsx index a66b237..6f14df0 100644 --- a/src/components/Common/CurrentTemp/index.jsx +++ b/src/components/Common/CurrentTemp/index.jsx @@ -59,7 +59,7 @@ function WindFrequence(props) { return ( +
- 余 热 发 电 + 余 热 发 电 {energyInfo?.elecQty1 || 0}kWh
diff --git a/src/components/Common/FanRunFrequence/index.jsx b/src/components/Common/FanRunFrequence/index.jsx index c668b5f..1b1f7ad 100644 --- a/src/components/Common/FanRunFrequence/index.jsx +++ b/src/components/Common/FanRunFrequence/index.jsx @@ -10,7 +10,62 @@ function WindFrequence(props) { const runState = useSelector((state) => state.fanFrequence.runtime); const hisState = useSelector((state) => state.fanFrequence.history); - let dataList = []; + const [options, dataList] = getOptions(showChart, hisState, runState); + + function handleSwitchChange(val) { + if (val) { + setShowChart(true); + } else { + setShowChart(false); + } + } + return ( + +
+ {/* {showChart && ( + + )} */} + {!showChart && ( +
+ {dataList.map((item) => ( +
+ {item.name} + + {item.value} + +
+ ))} +
+ )} +
+
+ ); +} + +export default WindFrequence; + +function getOptions(showChart, hisState, runState) { + let dataList = null; let seriesData = []; const colors = [ "#12FFF5", @@ -134,54 +189,5 @@ function WindFrequence(props) { ]; } - function handleSwitchChange(val) { - if (val) { - setShowChart(true); - } else { - setShowChart(false); - } - } - return ( - -
- {/* {showChart && ( - - )} */} - {!showChart && ( -
- {dataList.map((item) => ( -
- {item.name} - - {item.value} - -
- ))} -
- )} -
-
- ); + return [options, dataList]; } - -export default WindFrequence; diff --git a/src/components/Common/GasFlow/index.jsx b/src/components/Common/GasFlow/index.jsx index fe955ac..1ce07a8 100644 --- a/src/components/Common/GasFlow/index.jsx +++ b/src/components/Common/GasFlow/index.jsx @@ -7,45 +7,59 @@ import { Switch } from "antd"; import { useState, useEffect } from "react"; import { useSelector, useDispatch } from "react-redux"; -// function mockData(type = "runtime") { -// const RUNTIME_DATA_LENGTH = 8; -// const MAX_HISTORY_DATA_LENGTH = 8; -// const WEEK = 7; - -// switch (type) { -// case "runtime": -// return [ -// ...Array.from( -// { length: RUNTIME_DATA_LENGTH }, -// () => Math.floor(Math.random() * 100) + "m³/h" -// ), -// ]; -// case "history": -// return { -// ...Array.from( -// { length: Math.floor(Math.random() * MAX_HISTORY_DATA_LENGTH) }, -// (_, index) => ({ -// ["GAS_" + index]: [ -// ...Array.from({ length: WEEK }, () => -// Math.floor(Math.random() * 100) -// ), -// ], -// }) -// ).reduce((arr, curr) => ({ ...arr, ...curr }), {}), -// }; -// default: -// break; -// } -// } - /** 助燃风流量 */ function GasI(props) { const [showChart, setShowChart] = useState(true); const runState = useSelector((state) => state.combustionAir.runtime); const hisState = useSelector((state) => state.combustionAir.history); - let dataList = []; - let seriesData = []; + let [options, dataList] = getOptions(showChart, hisState, runState); + + function handleSwitchChange(val) { + if (val) { + setShowChart(true); + } else { + setShowChart(false); + } + } + return ( + +
+
+ + {showChart && 历史详情} + {!showChart && 实时流量} +
+
+ +
+ {showChart && ( + + )} + {!showChart && ( +
+ {dataList.map((item) => ( +
+ {item.name} + {item.value} + {/* {item.name}: {item.value} */} +
+ ))} +
+ )} +
+
+ ); +} + +export default GasI; + +function getOptions(showChart, hisState, runState) { const colors = [ "#12FFF5", "#2760FF", @@ -56,7 +70,10 @@ function GasI(props) { "#8cd26d", "#2aa1ff", ]; + let seriesData = null; + let dataList = null; let options = null; + if (showChart) { // keys() 结果不是按照顺序,需要 sort() seriesData = @@ -167,44 +184,5 @@ function GasI(props) { ]; } - function handleSwitchChange(val) { - if (val) { - setShowChart(true); - } else { - setShowChart(false); - } - } - return ( - -
-
- - {showChart && 历史详情} - {!showChart && 实时流量} -
-
- -
- {showChart && ( - - )} - {!showChart && ( -
- {dataList.map((item) => ( -
- {item.name}: {item.value} -
- ))} -
- )} -
-
- ); + return [options, dataList]; } - -export default GasI; diff --git a/src/components/Common/GasFlow/index.module.css b/src/components/Common/GasFlow/index.module.css index 0936646..f9b9218 100644 --- a/src/components/Common/GasFlow/index.module.css +++ b/src/components/Common/GasFlow/index.module.css @@ -26,9 +26,10 @@ position: absolute; /* background: #00ee33; */ top: 20px; + left: 180px; right: 24px; height: 32px; - width: 190px; + width: 128px; text-align: right; } @@ -62,7 +63,21 @@ padding: 12px 0; text-align: center; color: #fff; - box-shadow: inset 0 0 16px 4px rgba(255, 255, 255, 0.197); + box-shadow: inset 0 0 12px 2px rgba(255, 255, 255, 0.197); + + display: flex; + align-items: center; + gap: 12px; +} + +.item_label { + flex: 5; + text-align: right; +} + +.item_value { + flex: 4; + text-align: left; } .headWidget { diff --git a/src/components/Common/GraphBase/index.module.css b/src/components/Common/GraphBase/index.module.css index b8827bd..0d1b914 100644 --- a/src/components/Common/GraphBase/index.module.css +++ b/src/components/Common/GraphBase/index.module.css @@ -63,7 +63,7 @@ } .graphBaseTitle > img { - width: 20px; + width: 24px; } .graphBaseTitle > h2 { @@ -72,7 +72,7 @@ 'Source Han Sans SC', 'Noto Sans CJK SC', 'WenQuanYi Micro Hei', sans-serif; margin: 0; margin-left: 6px; - font-size: 20px; + font-size: 22px; color: #fff; letter-spacing: 2px; font-weight: 500; diff --git a/src/components/Common/KilnInfo/Kiln.jsx b/src/components/Common/KilnInfo/Kiln.jsx index 22d8557..6829640 100644 --- a/src/components/Common/KilnInfo/Kiln.jsx +++ b/src/components/Common/KilnInfo/Kiln.jsx @@ -16,7 +16,9 @@ export default function Kiln() {
{infos.map((item) => (
- {item.label}: {item.value} + {item.label} + {item.value} + {/* {item.label}: {item.value} */}
))}
diff --git a/src/components/Common/KilnInfo/kiln.module.scss b/src/components/Common/KilnInfo/kiln.module.scss index dec379a..b2a1f18 100644 --- a/src/components/Common/KilnInfo/kiln.module.scss +++ b/src/components/Common/KilnInfo/kiln.module.scss @@ -24,6 +24,19 @@ line-height: 40px; text-align: center; user-select: none; + display: flex; + align-items: center; + gap: 12px; + + .label { + flex: 6; + text-align: right; + } + + .value { + flex: 4; + text-align: left; + } } } } diff --git a/src/components/Common/NatGasFlow/gridList/index.jsx b/src/components/Common/NatGasFlow/gridList/index.jsx index 7786083..b0152e5 100644 --- a/src/components/Common/NatGasFlow/gridList/index.jsx +++ b/src/components/Common/NatGasFlow/gridList/index.jsx @@ -46,7 +46,9 @@ function GridList(props) {
{dataList.map((item) => (
- {item.name}: {item.value} + {item.name} + {item.value} + {/* {item.name}: {item.value} */}
))}
diff --git a/src/components/Common/NatGasFlow/gridList/index.module.css b/src/components/Common/NatGasFlow/gridList/index.module.css index 536b3da..60ffd9c 100644 --- a/src/components/Common/NatGasFlow/gridList/index.module.css +++ b/src/components/Common/NatGasFlow/gridList/index.module.css @@ -1,14 +1,27 @@ .gridList { margin-top: 12px; - display: grid; - grid-template-columns: 1fr 1fr; - gap: 8px; + display: grid; + grid-template-columns: 1fr 1fr; + gap: 8px; } .listItem { border-radius: 2px; padding: 12px 0; text-align: center; - color: #fff; - box-shadow: inset 0 0 16px 4px rgba(255, 255, 255, 0.197); + color: #fff; + box-shadow: inset 0 0 16px 4px rgba(255, 255, 255, 0.197); + display: flex; + align-items: center; + gap: 12px; +} + +.item_label { + flex: 5; + text-align: right; +} + +.item_value { + flex: 6; + text-align: left; } diff --git a/src/components/Common/NatGasFlow/index.module.css b/src/components/Common/NatGasFlow/index.module.css index 63e0a05..1fa1f50 100644 --- a/src/components/Common/NatGasFlow/index.module.css +++ b/src/components/Common/NatGasFlow/index.module.css @@ -26,7 +26,8 @@ top: 22px; right: 24px; height: 32px; - width: 410px; + width: 400px; + /* background: #12fff5; */ display: flex; align-items: center; justify-content: space-between; diff --git a/src/components/Common/TodayFaultTotal/index.jsx b/src/components/Common/TodayFaultTotal/index.jsx index e5f10c4..7de2381 100644 --- a/src/components/Common/TodayFaultTotal/index.jsx +++ b/src/components/Common/TodayFaultTotal/index.jsx @@ -4,6 +4,65 @@ import ReactECharts from "echarts-for-react"; import { useSelector } from "react-redux"; import { useState } from "react"; +function FaultTotal(props) { + const [currentSelect, setCurrentSelect] = useState("日"); + const isra = useSelector((state) => state.isra); + + const currentStatistic = + currentSelect == "日" + ? isra.dayStatistic + : currentSelect == "周" + ? isra.weekStatistic + : currentSelect == "月" + ? isra.monthStatistic + : currentSelect == "月" + ? isra.yearStatistic + : []; + + const series = preHandleStatisticData(currentStatistic, isra.checkType); + const options = getOptions(series, isra, currentStatistic); + + function handleDateChange(v) { + setCurrentSelect(v); + } + + // 根据使用的页面决定背景的大小 + const bgSize = + props.page == "home" ? ["middle", "short"] : ["middle", "long"]; + + return ( + +
+ {currentStatistic.length != 0 && ( + + )} + {currentStatistic.length == 0 && ( +

+ 暂无数据 +

+ )} +
+
+ ); +} + +export default FaultTotal; + function preHandleStatisticData(data, legend) { const obj = {}; data.forEach((item) => { @@ -28,7 +87,15 @@ function preHandleStatisticData(data, legend) { legend.forEach((item, index) => { series[index].name = item; - data.forEach((d) => { + data.forEach((d, index) => { + if (index == 0) { + series[index].label = { + show: true, + position: "top", + distance: 10, + color: "#fffc", + }; + } series[index].data.push(obj[d.name][item] || 0); }); }); @@ -57,7 +124,7 @@ function getOptions(series, isra, currentStatistic) { type: "category", data: currentStatistic.map((item) => item.name), axisLabel: { - color: "#fff", + color: "#fffc", fontSize: 12, }, axisTick: { show: false }, @@ -96,65 +163,11 @@ function getOptions(series, isra, currentStatistic) { series, tooltip: { trigger: "axis", + axisPointer: { + type: "shadow", + }, + className: "xc-chart-tooltip", + // backgroundColor: '' }, }; } - -function FaultTotal(props) { - const [currentSelect, setCurrentSelect] = useState("日"); - const isra = useSelector((state) => state.isra); - - const currentStatistic = - currentSelect == "日" - ? isra.dayStatistic - : currentSelect == "周" - ? isra.weekStatistic - : currentSelect == "月" - ? isra.monthStatistic - : currentSelect == "月" - ? isra.yearStatistic - : []; - - const series = preHandleStatisticData(currentStatistic, isra.checkType); - const options = getOptions(series, isra, currentStatistic); - - function handleDateChange(v) { - setCurrentSelect(v); - } - - // 根据使用的页面决定背景的大小 - const bgSize = - props.page == "home" ? ["middle", "short"] : ["middle", "long"]; - - return ( - -
- {currentStatistic.length != 0 && ( - - )} - {currentStatistic.length == 0 && ( -

- 暂无数据 -

- )} -
-
- ); -} - -export default FaultTotal; diff --git a/src/components/Common/TodayFaultType/index.jsx b/src/components/Common/TodayFaultType/index.jsx index d048303..a68f610 100644 --- a/src/components/Common/TodayFaultType/index.jsx +++ b/src/components/Common/TodayFaultType/index.jsx @@ -45,7 +45,7 @@ function FaultType(props) { return ( item.value), }, ], diff --git a/src/components/container.module.scss b/src/components/container.module.scss index 5609e4e..e175358 100644 --- a/src/components/container.module.scss +++ b/src/components/container.module.scss @@ -11,10 +11,10 @@ align-items: center; img { - width: 20px; + width: 24px; &.bigger { - width: 24px; + width: 28px; } } @@ -25,7 +25,7 @@ sans-serif; margin: 0; margin-left: 6px; - font-size: 18px; + font-size: 22px; color: #fff; letter-spacing: 2px; font-weight: 500; diff --git a/src/hooks/useIcon.js b/src/hooks/useIcon.js index e15ba9b..bf06639 100644 --- a/src/hooks/useIcon.js +++ b/src/hooks/useIcon.js @@ -6,13 +6,14 @@ import IconChart from '../assets/Icon/icon-chart.png'; import IconPuzzle from '../assets/Icon/icon-puzzle.png'; import IconPause from '../assets/Icon/icon-pause.png'; import IconDefault from '../assets/Icon/icon-puzzle.png'; +import IconTemp from '../assets/Icon/temp.svg'; function useIcon(iconName) { // const icon = require(`../assets/icons/${iconName}.svg`).default; // return icon; return iconName == 'kiln' ? IconStack - : iconName == 'goods' + : iconName == 'good' ? IconGood : iconName == 'battery' ? IconCharger @@ -24,6 +25,8 @@ function useIcon(iconName) { ? IconPuzzle : iconName == 'pause' ? IconPause + : iconName == 'temp' + ? IconTemp : IconDefault; } diff --git a/src/index.css b/src/index.css index 844937d..a1e8af2 100644 --- a/src/index.css +++ b/src/index.css @@ -115,3 +115,13 @@ body { .bgQuality { background: url(./assets/ZL.png) no-repeat; } + +.xc-chart-tooltip { + background: #0a2b4f77 !important; + border: none !important; + backdrop-filter: blur(12px); +} + +.xc-chart-tooltip * { + color: #fff !important; +} diff --git a/src/utils/index.ts b/src/utils/index.ts index 66bf2ef..515ac17 100644 --- a/src/utils/index.ts +++ b/src/utils/index.ts @@ -1,5 +1,6 @@ import { store } from "../store"; import { MessageItem } from "./checkTypeHelper"; +import { v4 as uuidv4 } from 'uuid' export function randomInt(min: number, max: number, includeMax = false) { let Fn = includeMax ? Math.ceil : Math.floor; @@ -175,7 +176,7 @@ new XClient( } ); -const newUser = crypto.randomUUID(); +const newUser = uuidv4() console.log("websocket user:", newUser); new XClient( "ws://10.70.2.2:8080/websocket/message?userId=ENERGY" + newUser,