diff --git a/ui/dasadmin/src/views/backend/home/home.vue b/ui/dasadmin/src/views/backend/home/home.vue
index 18a64530..4364a6fe 100644
--- a/ui/dasadmin/src/views/backend/home/home.vue
+++ b/ui/dasadmin/src/views/backend/home/home.vue
@@ -23,14 +23,14 @@
实时无功:{{ realData.attributeMap.windfarmreactivepower}}kVar
日发电量:{{ realData.attributeMap.windfarmdayprodenergy}}万kWh
月发电量:{{ realData.attributeMap.windfarmmonthprodenergy}}万kWh
- 年发电量:{{ realData.attributeMap.windfarmyearprodenergy}}万kWh
+ 年发电量:{{ realData.attributeMap.windfarmyearprodenergy}}万kWh
-
并网:{{ realData.attributeMap.turbinecountpowerprod}}台
-
停机/待机:{{ realData.attributeMap.turbinecountidle}}台
-
故障:{{ realData.attributeMap.turbinecountfaulted}}台
-
维护:{{ realData.attributeMap.turbinecountservice}}台
-
无通讯:{{ realData.attributeMap.turbinecountdisconnected}}台
+
并网:{{ realData.attributeMap.turbinecountpowerprod}}台
+
停机/待机:{{ realData.attributeMap.turbinecountidle}}台
+
故障:{{ realData.attributeMap.turbinecountfaulted}}台
+
维护:{{ realData.attributeMap.turbinecountservice}}台
+
无通讯:{{ realData.attributeMap.turbinecountdisconnected}}台
@@ -359,23 +359,6 @@ const StatusListData = () => {
})
}
let malFunctionEnums: any = {}
-/*const getMalfunctionEnums = () => {
- windList.value.forEach((item)=> {
- console.log({madeinfactory: item.madeinfactory, model: item.model })
- queryfaultCodeDict({madeinfactory: item.madeinfactory, model: item.model }).then((res) => {
- if (res.code == 200) {
- const data: any = {}
- res.data.forEach((item: any) => {
- data[item.code] = item.description
- })
- malFunctionEnums = data
- } else {
- console.warn('查询故障代码字典失败:', res.message);
- }
- })
- })
-
-}*/
/*const requestedParams = new Set();
@@ -535,40 +518,69 @@ $labelHeight: 30px;
height: v-bind('computedHeight.centerHeight');
margin-bottom: 0;
.el-scrollbar {
- height: calc(100% - 20px);
+ height: calc(100% - 50px);
}
.homeHeader{
display: flex;
- justify-content: space-between;
+ justify-content: flex-start;
+ /*justify-content: space-between;*/
.cardLabel{
margin-right: 10px;
white-space: nowrap;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ vertical-align: middle
}
.cardBtn{
white-space: nowrap;
:deep(.el-radio-group){
flex-wrap: nowrap;
-
}
:deep(.el-radio){
- margin-right: 12px;
+ margin-right: 10px;
}
}
.headerRight{
- width: 100%;
+ /*width: 100%;*/
+ margin-left: auto;
+ text-align: right;
display: flex;
background: #F0F6FF;
border-radius: 8px;
line-height: 30px;
padding: 0 10px;
.overviewItem{
- display: inline-block;
.small-base{
display: inline-block;
- padding-right: 8px;
+ padding-right: 15px;
color: #4E5969;
+ i{
+ width: 10px;
+ height: 10px;
+ aspect-ratio: 1 / 1;
+ border-radius: 50%;
+ display: inline-block;
+ margin-right: 5px;
+ }
+ .powerprod{
+ background-color: #0277B3;
+ }
+ .idle{
+ background-color: #FFB600;
+ }
+ .faulted{
+ background-color: #FE3731;
+ }
+ .service{
+ background-color: #00A096;
+ }
+ .disconnected{
+ background-color: #999999;
+ }
span{
color: #000000;
+ font-weight: 600;
}
}
}
diff --git a/ui/dasadmin/src/views/backend/home/windMatrix.vue b/ui/dasadmin/src/views/backend/home/windMatrix.vue
index b270485d..92703362 100644
--- a/ui/dasadmin/src/views/backend/home/windMatrix.vue
+++ b/ui/dasadmin/src/views/backend/home/windMatrix.vue
@@ -1,10 +1,11 @@
-
-
-
+
-->
+
+
-
-
-
+
+
+
+
+
![]()
+
+
+
+
+
+
+ {{ item.attributeMap.iwindspeed }}
+ m/s
+
+
+ {{ item.attributeMap.igenpower }}
+ kW
+
+
+ {{ item.attributeMap.ikwhthisday }}
+ kWh
+
+
@@ -48,8 +80,9 @@
-
-
+
+
@@ -105,6 +138,31 @@ const props = defineProps({
default: () => [],
},
})
+const getAnimationStyle = (item) => {
+ const irotorspeed = item.attributeMap?.irotorspeed ?? 0
+ let animationDuration;
+ animationDuration = 60 / irotorspeed / 3
+ const processedoperationmode = item.attributeMap?.processedoperationmode ?? 0
+ if(processedoperationmode==33){
+ return {
+ 'animation-duration': `0s`,
+ 'animation-timing-function': 'linear',
+ 'animation-iteration-count': 'infinite',
+ 'animation-direction': 'normaL',
+ }
+ }else{
+
+ return {
+ 'animation-duration': `${animationDuration}s`,
+ 'animation-timing-function': 'linear',
+ 'animation-iteration-count': 'infinite',
+ 'animation-direction': 'normaL',
+ }
+ }
+
+
+
+}
const handleClick = (row) => {
if (!router.hasRoute('windTurbine')) {
router.addRoute('admin', {
@@ -264,6 +322,92 @@ const hexToRgba = (hex, alpha) => {
}
return `rgba(${r}, ${g}, ${b}, ${alpha})`;
}
+const imagePathMap = {
+ '#9C27B0': {
+ heart: 'heart1.png',
+ leaf: 'leaf1.png',
+ fan: 'fan1.png',
+ },
+ '#673AB7': {
+ heart: 'heart2.png',
+ leaf: 'leaf2.png',
+ fan: 'fan2.png',
+ },
+ '#3F51B5': {
+ heart: 'heart3.png',
+ leaf: 'leaf3.png',
+ fan: 'fan3.png',
+ },
+ '#3059EC': {
+ heart: 'heart4.png',
+ leaf: 'leaf4.png',
+ fan: 'fan4.png',
+ },
+ '#0277B3': {
+ heart: 'heart5.png',
+ leaf: 'leaf5.png',
+ fan: 'fan5.png',
+ },
+ '#00A096': {
+ heart: 'heart6.png',
+ leaf: 'leaf6.png',
+ fan: 'fan6.png',
+ },
+ '#06B429': {
+ heart: 'heart7.png',
+ leaf: 'leaf7.png',
+ fan: 'fan7.png',
+ },
+ '#64DD17': {
+ heart: 'heart8.png',
+ leaf: 'leaf8.png',
+ fan: 'fan8.png',
+ },
+ '#EEFF41': {
+ heart: 'heart9.png',
+ leaf: 'leaf9.png',
+ fan: 'fan9.png',
+ },
+ '#FFB600': {
+ heart: 'heart10.png',
+ leaf: 'leaf10.png',
+ fan: 'fan10.png',
+ },
+ '#FF7E00': {
+ heart: 'heart11.png',
+ leaf: 'leaf11.png',
+ fan: 'fan11.png',
+ },
+ '#FE3731': {
+ heart: 'heart12.png',
+ leaf: 'leaf12.png',
+ fan: 'fan12.png',
+ },
+ '#999999': {
+ heart: 'heart13.png',
+ leaf: 'leaf13.png',
+ fan: 'fan13.png',
+ }
+};
+
+const getImagePath = (item, type) => {
+ const color = item.attributeMap.color;
+ return imagePathMap[color]?.[type];
+};
+
+const getSafeImagePath = (item, type) => {
+ const path = getImagePath(item, type);
+ if (!getSafeImagePath.cache) {
+ getSafeImagePath.cache = {};
+ }
+ if (getSafeImagePath.cache[path]) {
+ return getSafeImagePath.cache[path];
+ }
+ const imagePath = new URL(`/src/assets/dashboard/fan/${path}`, import.meta.url).href;
+ getSafeImagePath.cache[path] = imagePath;
+ return imagePath;
+
+};