|
@@ -175,12 +175,19 @@
|
|
|
>
|
|
|
机舱信息
|
|
|
</div>
|
|
|
- <div
|
|
|
+ <!-- <div
|
|
|
class="title-item part-right"
|
|
|
:class="{ active: current === 'qt' }"
|
|
|
@click="handleClick('qt')"
|
|
|
>
|
|
|
其他
|
|
|
+ </div> -->
|
|
|
+ <div
|
|
|
+ class="title-item part-right"
|
|
|
+ :class="{ active: current === 'zz' }"
|
|
|
+ @click="handleClick('zz')"
|
|
|
+ >
|
|
|
+ 主轴
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="part-imgs" v-if="otherInfo?.model == 'XE100-2000'">
|
|
@@ -305,29 +312,30 @@
|
|
|
<div class="point point-right bottom"></div>
|
|
|
<span style="font-size: 16px;position: relative;top: -5px;">故障分类</span>
|
|
|
<div class="problemSeach">
|
|
|
- <el-input v-model="inputcv" placeholder="请输入" />
|
|
|
- <el-button
|
|
|
- round
|
|
|
- size="mini"
|
|
|
- class="buttons"
|
|
|
- @click="gerWxssl"
|
|
|
- ><span class="button">搜索</span></el-button>
|
|
|
- <el-button
|
|
|
- round
|
|
|
- size="mini"
|
|
|
- class="buttons"
|
|
|
- @click="gerWxssl"
|
|
|
- ><span class="button">重置</span></el-button>
|
|
|
+ <el-input v-model="inputcv" clearable placeholder="请输入" />
|
|
|
+ <div class="seachBtn">
|
|
|
+ <el-icon :size="18" :color="color">
|
|
|
+ <Search />
|
|
|
+ </el-icon>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="problemMain">
|
|
|
<div class="problemWarn">
|
|
|
<div class="warn">
|
|
|
<div class="warnCom">
|
|
|
+ <div class="circle-container">
|
|
|
+ <svg class="circle-segment segment-1" viewBox="0 0 100 100">
|
|
|
+ <circle cx="50" cy="50" r="40"></circle>
|
|
|
+ </svg>
|
|
|
+ </div>
|
|
|
<div class="warnComImg">
|
|
|
<img src="@/assets/imgs/danger.png" alt="">
|
|
|
</div>
|
|
|
- <div class="warnComNum"></div>
|
|
|
+ <div class="warnComNum">
|
|
|
+ <div class="numTop">42</div>
|
|
|
+ <div class="numBot">总故障</div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<div class="warnItems" v-for="(it, index) in 7" :key="index">
|
|
|
<div class="warnItemLeft">20</div>
|
|
@@ -336,11 +344,41 @@
|
|
|
</div>
|
|
|
<div class="warn" v-for="(it, index) in 2" :key="index">
|
|
|
<div class="warnItems" v-for="(it, index) in 10" :key="index">
|
|
|
- <div class="warnItemLeft">20</div>
|
|
|
- <div class="warnItemRight">防雷保护类</div>
|
|
|
+ <div class="warnItemLeft" :class="isRed(index)">20</div>
|
|
|
+ <div class="warnItemRight" :class="isRed(index)">防雷保护类</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <div class="warnTable">
|
|
|
+ <el-table
|
|
|
+ size="mini"
|
|
|
+ :data="tableData"
|
|
|
+ style="width: 100%; height: calc(100% - 310px)"
|
|
|
+ max-height="520px"
|
|
|
+ stripe>
|
|
|
+ <el-table-column
|
|
|
+ v-for="item in tableHeader"
|
|
|
+ :label="item.name"
|
|
|
+ :prop="item.code"
|
|
|
+ :key="item.code"
|
|
|
+ :width="item.width || ''"
|
|
|
+ show-overflow-tooltip
|
|
|
+ header-align="center"
|
|
|
+ align="center"
|
|
|
+ >
|
|
|
+ <template #default="scope">
|
|
|
+ <span v-if="item.code == 'status'">
|
|
|
+ <span :style="scope.row.status === 0 ? 'color: red' : ''">{{scope.row.status === 0 ? "异常" : "正常"}}</span>
|
|
|
+ </span>
|
|
|
+ <span v-else>
|
|
|
+ {{
|
|
|
+ scope.row[item.code] != "NULL" ? scope.row[item.code] : ""
|
|
|
+ }}
|
|
|
+ </span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<alarmDialog ref="alarmDialog" />
|
|
@@ -395,6 +433,124 @@ export default {
|
|
|
name: "防雷保护类",
|
|
|
value: 10
|
|
|
}
|
|
|
+ ],
|
|
|
+ tableData: [
|
|
|
+ {
|
|
|
+ code: "1000",
|
|
|
+ name: "变桨电池充电故障",
|
|
|
+ message: "error_battery_charger",
|
|
|
+ status: 1
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1002",
|
|
|
+ name: "转子侧变流器电流故障",
|
|
|
+ message: "error_converter_error_inu_flag",
|
|
|
+ status: 0
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1000",
|
|
|
+ name: "变桨电池充电故障",
|
|
|
+ message: "error_battery_charger",
|
|
|
+ status: 1
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1002",
|
|
|
+ name: "转子侧变流器电流故障",
|
|
|
+ message: "error_converter_error_inu_flag",
|
|
|
+ status: 0
|
|
|
+ },
|
|
|
+
|
|
|
+ {
|
|
|
+ code: "1000",
|
|
|
+ name: "变桨电池充电故障",
|
|
|
+ message: "error_battery_charger",
|
|
|
+ status: 1
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1002",
|
|
|
+ name: "转子侧变流器电流故障",
|
|
|
+ message: "error_converter_error_inu_flag",
|
|
|
+ status: 0
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1000",
|
|
|
+ name: "变桨电池充电故障",
|
|
|
+ message: "error_battery_charger",
|
|
|
+ status: 1
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1002",
|
|
|
+ name: "转子侧变流器电流故障",
|
|
|
+ message: "error_converter_error_inu_flag",
|
|
|
+ status: 0
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1000",
|
|
|
+ name: "变桨电池充电故障",
|
|
|
+ message: "error_battery_charger",
|
|
|
+ status: 1
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1002",
|
|
|
+ name: "转子侧变流器电流故障",
|
|
|
+ message: "error_converter_error_inu_flag",
|
|
|
+ status: 0
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1000",
|
|
|
+ name: "变桨电池充电故障",
|
|
|
+ message: "error_battery_charger",
|
|
|
+ status: 1
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1002",
|
|
|
+ name: "转子侧变流器电流故障",
|
|
|
+ message: "error_converter_error_inu_flag",
|
|
|
+ status: 0
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1000",
|
|
|
+ name: "变桨电池充电故障",
|
|
|
+ message: "error_battery_charger",
|
|
|
+ status: 1
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1002",
|
|
|
+ name: "转子侧变流器电流故障",
|
|
|
+ message: "error_converter_error_inu_flag",
|
|
|
+ status: 0
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1000",
|
|
|
+ name: "变桨电池充电故障",
|
|
|
+ message: "error_battery_charger",
|
|
|
+ status: 1
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "1002",
|
|
|
+ name: "转子侧变流器电流故障",
|
|
|
+ message: "error_converter_error_inu_flag",
|
|
|
+ status: 0
|
|
|
+ },
|
|
|
+
|
|
|
+ ],
|
|
|
+ tableHeader: [
|
|
|
+ {
|
|
|
+ code: "code",
|
|
|
+ name: "报警编号"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "name",
|
|
|
+ name: "PCL变量名"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "message",
|
|
|
+ name: "报警文字信息"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: "status",
|
|
|
+ name: "报警状态"
|
|
|
+ },
|
|
|
]
|
|
|
};
|
|
|
},
|
|
@@ -480,6 +636,11 @@ export default {
|
|
|
// console.log(wind);
|
|
|
this.$refs.powerAndSpeed && this.$refs.powerAndSpeed.init(wind);
|
|
|
},
|
|
|
+ isRed(val) {
|
|
|
+ if (val === 2 || val === 6) {
|
|
|
+ return 'redsty'
|
|
|
+ }
|
|
|
+ },
|
|
|
cancle() {
|
|
|
this.windInfo = {};
|
|
|
this.windname = "";
|
|
@@ -1080,6 +1241,24 @@ export default {
|
|
|
top: -4px;
|
|
|
margin-right: 5px;
|
|
|
}
|
|
|
+ .seachBtn{
|
|
|
+ width: 30px;
|
|
|
+ height: 30px;
|
|
|
+ background: rgba(0, 70, 199, 0.48);
|
|
|
+ border-radius: 30px;
|
|
|
+ position: relative;
|
|
|
+ margin-left: 5px;
|
|
|
+ cursor: pointer;
|
|
|
+ .el-icon{
|
|
|
+ position: absolute;
|
|
|
+ top: 6px;
|
|
|
+ left: 7px;
|
|
|
+ }
|
|
|
+ &:hover {
|
|
|
+ background-color: rgba(16, 81, 219, 0.5);
|
|
|
+ color: #ffffff;
|
|
|
+ }
|
|
|
+ }
|
|
|
.buttons {
|
|
|
background-color: rgba(5, 187, 76, 0.2);
|
|
|
border: 1px solid #3b6c53;
|
|
@@ -1118,6 +1297,73 @@ export default {
|
|
|
margin-bottom: 5px;
|
|
|
box-shadow: inset 0px 0px 40px 0px red;
|
|
|
animation: flash 1s infinite alternate; /* 闪烁动画 */
|
|
|
+ .warnComImg{
|
|
|
+ width: 50px;
|
|
|
+ height: 50px;
|
|
|
+ text-align: center;
|
|
|
+ border-radius: 50px;
|
|
|
+ border: 1px solid rgba(255,0,0,.3);
|
|
|
+ position: relative;
|
|
|
+ top: -74px;
|
|
|
+ left: 22px;
|
|
|
+ img{
|
|
|
+ position: relative;
|
|
|
+ top: 5px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .warnComNum{
|
|
|
+ position: relative;
|
|
|
+ top: -119px;
|
|
|
+ left: 88px;
|
|
|
+ width: 55px;
|
|
|
+ .numTop{
|
|
|
+ font-size: 22px;
|
|
|
+ font-weight: bold;
|
|
|
+ color: red;
|
|
|
+ text-align: end;
|
|
|
+ }
|
|
|
+ .numBot{
|
|
|
+ font-size: 14px;
|
|
|
+ color: rgb(136, 136, 136);
|
|
|
+ position: absolute;
|
|
|
+ right: 0;
|
|
|
+ top: 21px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .circle-container {
|
|
|
+ width: 100px;
|
|
|
+ height: 100px;
|
|
|
+ position: relative;
|
|
|
+ }
|
|
|
+ .circle-segment {
|
|
|
+ position: absolute;
|
|
|
+ top: 20%;
|
|
|
+ left: 17%;
|
|
|
+ width: 60px;
|
|
|
+ height: 60px;
|
|
|
+ transform-origin: center;
|
|
|
+ transform: translate(-50%, -50%);
|
|
|
+ stroke-width: 5;
|
|
|
+ fill: none;
|
|
|
+ stroke-dasharray: 50, 30; /* 圆周长三分之一加间隔 */
|
|
|
+ stroke-dashoffset: 0;
|
|
|
+ animation: rotate 4s linear infinite;
|
|
|
+
|
|
|
+ }
|
|
|
+ .segment-1 {
|
|
|
+ stroke: red;
|
|
|
+ transform: rotate(0deg);
|
|
|
+ }
|
|
|
+
|
|
|
+ @keyframes rotate {
|
|
|
+ from {
|
|
|
+ transform: rotate(0deg);
|
|
|
+ }
|
|
|
+ to {
|
|
|
+ transform: rotate(360deg);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
@keyframes flash {
|
|
|
from {
|
|
@@ -1147,8 +1393,16 @@ export default {
|
|
|
border: 1px solid #817c7c;
|
|
|
padding-left: 5px;
|
|
|
}
|
|
|
+
|
|
|
+ .redsty{
|
|
|
+ border: 1px solid red;
|
|
|
+ color: red;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
+ .warnTable{
|
|
|
+ margin-top: 10px;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|