lining 3 лет назад
Родитель
Сommit
448aa9986c

+ 8 - 1
src/api/index.js

@@ -135,7 +135,13 @@ const getCustomerLock=()=>{
         method:"get"
     })
 }
-
+const controlRecord = (data) => {
+    return request({
+        baseURL:process.env.VUE_APP_API,
+        url: `/control-record/search?stationId=${data.stationId}&userName=${data.userName}&windturbineId=${data.windturbineId}&startTime=${data.startTime}&endTime=${data.endTime}&pageSize=${data.pageSize}&pageIndex=${data.pageIndex}`,
+        method: "get",
+    });
+};
 export default {
     login,
     getSnap,
@@ -155,4 +161,5 @@ export default {
     getCustomerLock,
     getWindturbinePower,
     getOriginalWindturbinePower,
+    controlRecord,
 };

+ 9 - 3
src/assets/styles/main.css

@@ -96,9 +96,15 @@ body,
     border-right:1px solid rgb(36,36,36);
   
   }
-  .el-table__body-wrapper{
-    background-color: black;
-  }
+  
   .el-table__empty-text{
     color: black;
+  }
+
+  .el-tree-node:focus>.el-tree-node__content {
+    background-color: #000000 !important;
+  }
+
+  .el-tree-node__content:hover {
+    background-color: #000000 !important;
   }

+ 4 - 0
src/components/BasicInformationDetail.vue

@@ -604,6 +604,8 @@
             this.windDetails = res.data
             this.partsName = value.name
             this.display = true;
+          }else{
+            this.windDetails = []
           }
         })
       },
@@ -624,6 +626,8 @@
             this.windDetails = res.data
             this.partsName = value.name
             this.display = true
+          }else{
+            this.windDetails = []
           }
         })
       },

+ 0 - 4
src/components/WindturbineDetailPages.vue

@@ -281,10 +281,6 @@
 	};
 </script>
 <style scoped>
-	/*   .titeldiv{
-    display: flex;
-    justify-content: space-around;
-  } */
 	.my-info-dialog {
 		box-shadow: 0px 0px 10px #05bb4c;
 	}

Разница между файлами не показана из-за своего большого размера
+ 6 - 6
src/components/basicDataDetails.vue


+ 27 - 1
src/components/check/areaCard.vue

@@ -18,6 +18,7 @@
     <div class="body">
         <img class="logo" src="../../assets/img/logo.png" alt="">
         <div class="title">{{ title }}</div>
+        <div class="record" @click="showRecord">校验记录</div>
         <div style="margin-top: 50px; margin-left: 20px; height: 80%;">
             <el-scrollbar>
                 <div class="scoll" style="margin-left: 5px;">
@@ -25,12 +26,14 @@
                 </div>
             </el-scrollbar>
         </div>
+        <OperationRecords ref="records" v-model="display" @closed="closed()"></OperationRecords>
     </div>
 </template>
 
 <script>
     import BackgroundData from 'utils/BackgroundData'
     import MatrixBlock from "../matrixBlock.vue";
+    import OperationRecords from "./operationRecords.vue";
     export default {
         props: {
             title: {
@@ -44,13 +47,15 @@
             },
         },
         components: {
-            MatrixBlock
+            MatrixBlock,
+            OperationRecords
         },
         data() {
             return {
                 showList: [],
                 arr: [],
                 list: [],
+                display:false,
             }
         },
         methods: {
@@ -86,6 +91,13 @@
                     flag = false
                 }
             },
+            showRecord(){
+                this.display = true
+                this.$refs.records.dataDeal() 
+            },
+            closed(){
+                this.display = false
+            }
         },
         watch: {
             "$store.getters.windturbinelist": {
@@ -140,6 +152,20 @@
         border-radius: 50%;
     }
 
+    .record{
+        position: absolute;
+        color: #ffffff;
+        font-size: 14px;
+        right: 0;
+        top: 23px;
+        width: 80px;
+        height: 30px;
+        display: flex;
+        align-items: center;
+        justify-content: center;
+        background-color: rgba(37, 116, 219, 1);
+    }
+
     .logo {
         position: absolute;
         top: 2px;

+ 389 - 0
src/components/check/operationRecords.vue

@@ -0,0 +1,389 @@
+<template>
+    <el-dialog width="50%" @open="getControlRecord()" @closed="closed()" :show-close="false" class="my-info-dialog">
+        <template #title>
+            <div class="showTitles">
+                <div class="titles">详情</div>
+            </div>
+        </template>
+        <div class="bodys">
+            <!-- <el-cascader ref="cascaderHandle" :options="options" :props="{ checkStrictly: true }" clearable @change="handleChange">
+            </el-cascader> -->
+            <div class="left">
+                <el-scrollbar>
+                    <el-input placeholder="输入关键字进行过滤" v-model="filterText">
+                    </el-input>
+                    <el-tree class="filter-tree" :data="showData" :props="defaultProps" :filter-node-method="filterNode"
+                        node-key="id" :default-expanded-keys="[0]" ref="tree" @node-click="handleChange">
+                    </el-tree>
+                </el-scrollbar>
+            </div>
+            <div class="rights">
+                <div class="dateBar">
+                    <el-date-picker class="pickers" @change="changes" v-model="timeValue" type="datetimerange"
+                        range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期">
+                    </el-date-picker>
+                    <div class="buttons" @click="getControlRecord()">查询</div>
+                </div>
+                <el-scrollbar style="height:86%;">
+                    <div class="tables">
+                        <el-table :data="recordData" class="table" style=" width:100%" height="49vh" :header-cell-style="{
+                            background: 'rgb(30,30,30)',
+                            color: 'rgb(220,220,220)',
+                            padding: '4px',
+                            fontSize: '14px',
+                            'border-bottom': 'solid 1px rgba(77, 77, 77, 1)',
+                          }" :cell-style="{
+                            height: '40px',
+                            background: 'rgb(30,30,30)',
+                            color: 'rgb(220,220,220)',
+                            padding: '3px',
+                            fontSize: '12px',
+                            'border-bottom': '1px solid #000000'
+                          }" @row-dblclick="itemDblclick">
+                            <el-table-column prop="time" label="日期" width="120" align="center">
+                            </el-table-column>
+                            <el-table-column prop="windturbineId" label="风机号" width="120" align="center">
+                            </el-table-column>
+                            <el-table-column prop="controls" label="控制命令" width="120" align="center">
+                            </el-table-column>
+                            <el-table-column prop="result" label="操作结果" align="center">
+                            </el-table-column>
+                            <el-table-column prop="userName" label="操作人" width="120" align="center">
+                            </el-table-column>
+
+                        </el-table>
+                    </div>
+                </el-scrollbar>
+                <div class="paginations">
+                    <el-pagination :hide-on-single-page="true" :page-size="currentPage" background
+                        layout="prev, pager, next" :total="total" @current-change="handleCurrentChange">
+                    </el-pagination>
+                </div>
+
+            </div>
+        </div>
+
+    </el-dialog>
+</template>
+<script>
+    import dayjs from 'dayjs'
+    import api from "api/index";
+    export default {
+        props: {
+
+        },
+        updated() {
+            if (this.timeValue.length === 0) {
+                let date = new Date()
+                this.timeValue[0] = date.getTime() - 28800000
+                this.timeValue[1] = date.getTime()
+            }
+        },
+        mounted() {
+
+        },
+        data() {
+            return {
+                currentPage: 10,
+                filterText: '',
+                pageIndex: 1,
+                datas: {},
+                chooseStation: {},
+                timeValue: [],
+                showData: [
+                    {
+                        id: 0,
+                        windturbineId: '全部',
+                        stationId: "",
+                        children: [
+                            {
+                                id: 1,
+                                windturbineId: '麻黄山',
+                                stationId: "MHS_FDC",
+                                children: []
+                            }, {
+                                id: 2,
+                                windturbineId: '牛首山',
+                                stationId: "NSS_FDC",
+                                children: []
+                            }, {
+                                id: 3,
+                                windturbineId: '青山',
+                                stationId: "QS_FDC",
+                                children: []
+                            }, {
+                                id: 4,
+                                windturbineId: '石板泉',
+                                stationId: "SBQ_FDC",
+                                children: []
+                            }, {
+                                id: 5,
+                                windturbineId: '香山',
+                                stationId: "XS_FDC",
+                                children: []
+                            },
+                        ]
+                    },
+                ],
+                defaultProps: {
+                    children: 'children',
+                    label: 'windturbineId'
+                },
+                recordData: [],
+                total: '',
+                controlErorCodes: [
+                    "控制成功",
+                    "控制命令发送失败",
+                    "无效的控制地址",
+                    "被控设备异常",
+                    "无效的控制功能",
+                    "网络连接错误,检查场站通信",
+                    "控制结果读取超时",
+                    "未知错误",
+                    "控制命令错误",
+                    "收到无法识别数据",
+                    "未读取到数据包",
+                    "未知错误",
+                    "风机操作过频繁",
+                    "风机被挂牌",
+                    "风机操作与风机状态不符",
+                    "需要登录",
+                ],
+            };
+        },
+        methods: {
+            dataDeal() {
+                this.datas = this.$store.state.windturbinelist ? this.$store.state.windturbinelist : {}
+                let arr = Object.keys(this.datas).sort()
+                for (let id of arr) {
+                    let item = this.datas[id];
+                    switch (item.windturbineId.slice(0, 2)) {
+                        case 'MG':
+                            this.showData[0].children[0].children.push(item)
+                            break;
+                        case 'NG':
+                            this.showData[0].children[1].children.push(item)
+                            break;
+                        case 'QG':
+                            this.showData[0].children[2].children.push(item)
+                            break;
+                        case 'SG':
+                            this.showData[0].children[3].children.push(item)
+                            break;
+                        case 'XG':
+                            this.showData[0].children[4].children.push(item)
+                            break;
+                    }
+                }
+                console.log(this.showData);
+            },
+            handleChange(value) {
+                this.chooseStation = value
+                this.pageIndex = 1
+                this.getControlRecord(value)
+            },
+            closed() {
+                this.pageIndex = 1
+                this.chooseStation = {}
+                this.showData = [
+                    {
+                        id: 0,
+                        windturbineId: '全部',
+                        stationId: "",
+                        children: [
+                            {
+                                id: 1,
+                                windturbineId: '麻黄山',
+                                stationId: "MHS_FDC",
+                                children: []
+                            }, {
+                                id: 2,
+                                windturbineId: '牛首山',
+                                stationId: "NSS_FDC",
+                                children: []
+                            }, {
+                                id: 3,
+                                windturbineId: '青山',
+                                stationId: "QS_FDC",
+                                children: []
+                            }, {
+                                id: 4,
+                                windturbineId: '石板泉',
+                                stationId: "SBQ_FDC",
+                                children: []
+                            }, {
+                                id: 5,
+                                windturbineId: '香山',
+                                stationId: "XS_FDC",
+                                children: []
+                            },
+                        ]
+                    },
+                ],
+                this.$emit('closed');
+            },
+            filterNode(value, data) {
+                if (!value) return true;
+                return data.windturbineId.indexOf(value) !== -1;
+            },
+            handleCurrentChange(val) {
+                this.pageIndex = val
+                this.getControlRecord()
+            },
+            getControlRecord() {
+                api.controlRecord({
+                    stationId: this.chooseStation.stationId ? this.chooseStation.stationId : "",
+                    userName: "",
+                    windturbineId: this.chooseStation.id ? "" : this.chooseStation.stationId ? this.chooseStation.windturbineId : "",
+                    startTime: dayjs(this.timeValue[0]).format('YYYY/MM/DD HH:mm:ss'),
+                    endTime: dayjs(this.timeValue[1]).format('YYYY/MM/DD HH:mm:ss'),
+                    pageSize: this.currentPage,
+                    pageIndex: this.pageIndex,
+                }).then(res => {
+                    if (res) {
+                        let types = {
+                            Start: '启动',
+                            Stop: '停止',
+                            Reset: '复位',
+                            Maintain: '维护',
+                            UnMaintain: '取消维护',
+                            Lock: '挂牌',
+                            UnLock: '取消挂牌',
+
+                        }
+                        res.data.dataList.forEach(item => {
+                            item.time = dayjs(item.time).format('MM-DD HH:mm:ss')
+                            item.result = this.controlErorCodes[item.errorCode]
+                            item.controls = types[item.controlType]
+                        })
+                        this.total = res.data.total
+                        this.recordData = res.data.dataList
+                    }
+                })
+            },
+        },
+        watch: {
+            filterText(val) {
+                this.$refs.tree.filter(val);
+            }
+        },
+    }
+</script>
+
+<style scoped>
+    .showTitles {
+        display: flex;
+        flex-direction: row;
+        align-items: center;
+        justify-content: space-between;
+        margin-top: -10px;
+        font-size: 18px;
+        color: #FFFFFF;
+        height: 40px;
+    }
+
+    .titles {
+        font-size: 16px;
+        color: #FFFFFF;
+    }
+
+    .el-dialog__body {
+        padding: 30px 10px 10px 10px;
+    }
+
+    .bodys {
+        display: flex;
+        flex-direction: row;
+        background-color: black;
+        width: 100%;
+        margin-top: -30px;
+        height: 60vh;
+    }
+
+    .left {
+        width: 20%;
+        height: 100%;
+        background-color: rgba(77, 77, 77, 1);
+        border-right: 2px solid #000000;
+    }
+
+    .rights {
+        width: 80%;
+        height: 100%;
+        background-color: rgba(77, 77, 77, 1);
+    }
+
+    .el-tree {
+        color: #FFFFFF !important;
+        background-color: rgba(77, 77, 77, 1) !important;
+    }
+
+    .el-tree-node:focus>.el-tree-node__content {
+        background-color: #000000 !important;
+    }
+
+    .el-tree-node__content:hover {
+        background-color: #000000 !important;
+    }
+
+    .dateBar {
+        display: flex;
+        flex-direction: row;
+        align-items: center;
+        justify-content: space-between;
+        margin-left: 20px;
+    }
+
+    .pickers {
+        margin-left: 20px;
+    }
+
+    .tables {
+        margin-top: 20px;
+        width: 95%;
+        margin-left: 3%;
+    }
+
+    .table {
+        background-color: rgba(77, 77, 77, 1) !important;
+    }
+
+    .el-table td,
+    .el-table th.is-leaf {
+        border-bottom: 1px solid rgba(77, 77, 77, 1) !important;
+    }
+
+    .el-table__header {
+        width: 100% !important;
+    }
+
+    .el-table__body-wrapper {
+        background-color: rgba(77, 77, 77, 1) !important;
+    }
+
+    .el-table::before {
+        width: 0;
+    }
+
+    tr {
+        line-height: 1.5;
+        background: #1e1e1e;
+        margin-bottom: 2px;
+        border-radius: 5px;
+    }
+
+    .table-main {
+        font-size: 14px;
+        width: 600px;
+        text-align: center;
+        background: #000000;
+        margin: 5px;
+        border-collapse: separate;
+        border-spacing: 0px 5px;
+    }
+
+    .paginations {
+        display: flex;
+        flex-direction: row-reverse;
+    }
+</style>

+ 19 - 9
src/components/focus/focusCard.vue

@@ -1,15 +1,10 @@
 /* 推荐区 */
 <template>
 	<div style="display: flex;justify-content: flex-start;flex-wrap: wrap;">
-		<!-- <table v-for="(vl , index) in values" :key="vl" @dblclick="sendMsg(vl,index)">
-				<tr>{{vl.stationName}}</tr>
-				<tr>{{vl.content}}</tr>
-				<tr>{{vl.createTime}}</tr>
-			</table> -->
 		<div class="area" v-for="(vl , index) in values" :key="vl" @dblclick="sendMsg(vl,index)">
 			<img class="imgs" src="../../assets/img/RecommendedArea/background.png" alt="">
-			<div class="content">{{vl.content}}</div>
-			<div class="">{{vl.stationName}}</div>
+			<div class="content">{{vl.showType}}</div>
+			<div class="">{{vl.name}}</div>
 			<div class="">{{vl.createTime}}</div>
 		</div>
 	</div>
@@ -57,14 +52,29 @@
 		},
 		created() {
 			this.datacontrol();
-			this.initData();
+			// this.initData();
 		},
 		methods: {
 			datacontrol() {
 				let mb = MessageBridge.getInstance();
 				let vss = [{ key: "/topic/voice-control", action: this.windturbineMessage }];
+				let attention = [{ key: "/topic/attention", action: this.attention }];
+				mb.register(attention);
 				mb.register(vss);
 			},
+			attention(msg){
+				let list = JSON.parse(msg)
+				let types = {
+					ElectricityRestrictions: '限电',
+					Offline: '离线',
+					Accident: '事故',
+				}
+				list.forEach(item => {
+					item.createTime = dayjs(item.time).format('YYYY-MM-DD HH:mm:ss')
+					item.showType = types[item.type]
+				})
+				this.values = list
+			},
 			windturbineMessage(msg) {
 				let bd = BackgroundData.getInstance();
 				let arr = []
@@ -130,7 +140,7 @@
 				that.dialogData.stationName = vl.stationName;
 			},
 			ajaxDetail(data, index) {
-				let thisKey = Photoelectric[data.values];
+				let thisKey = Photoelectric[data.id];
 				let array = []
 				thisKey.forEach(item => { item.value ? array.push(item.value) : '' })
 				let params = array.join(',')

+ 6 - 2
src/components/modeControl/modeControl.vue

@@ -39,11 +39,11 @@
             <div class="showData">
                 <div class="dataBox-right" @dblclick="dbClicks(showDate.windEnergyRate,'风能利用率')">
                     <div class="dataTitle">风能利用率</div>
-                    <div class="datas">{{showDate.windEnergyRate?.value.toFixed(2)}}%</div>
+                    <div class="datas" v-if="showDate.windEnergyRate?.value <= 100">{{showDate.windEnergyRate?.value.toFixed(2)}}%</div>
                 </div>
                 <div class="dataBox-right" @dblclick="dbClicks(showDate.curveFollowingRate,'曲线跟随率')">
                     <div class="dataTitle">曲线跟随率</div>
-                    <div class="datas">{{showDate.curveFollowingRate?.value.toFixed(2)}}%</div>
+                    <div class="datas" v-if="showDate.curveFollowingRate?.value <= 100">{{showDate.curveFollowingRate?.value.toFixed(2)}}%</div>
                 </div>
             </div>
         </div>
@@ -318,6 +318,8 @@
                         this.partsName = partsName
                         this.display = true;
                         this.modelDetails = res.data
+                    }else{
+                       this.modelDetails = []
                     }
                 })
             },
@@ -335,6 +337,8 @@
                         this.partsName = partsName
                         this.display = true;
                         this.modelDetails = res.data
+                    }else{
+                       this.modelDetails = []
                     }
                 })
             },

+ 6 - 2
src/components/warning/warningCard.vue

@@ -83,7 +83,9 @@
 						if (sleected[vl.id] == 0 && BackgroundData.getInstance().LoginUser) {
 							vl.isSelected = true;
 						}
-						this.values.push(vl);
+						if(vl.category1!=="GF"){
+							this.values.push(vl);
+						}
 					}
 				}
 			},
@@ -170,7 +172,9 @@
 	:deep(.el-table td, .el-table th) {
 		border-bottom: 2px solid black;
 	}
-
+	.el-table__body-wrapper{
+		background-color: black;
+	}
 	tr {
 		line-height: 1.5;
 		background: #1e1e1e;

+ 1 - 1
src/utils/MessageBridge.js

@@ -20,7 +20,7 @@ export default class MessageBridge {
     this.windFlag = (new Date()).getTime();
     this.reconnect()
     this.calcSocket = new WebSocket(`ws://${process.env.VUE_APP_APIS}/wisdom_service`, this.onmessage, ["/topic/suggestion", "/topic/sync-command-result", "/topic/fault-count",
-      "/topic/alarm-count", "/topic/fault-popup", "/topic/popup-remove", "/topic/heartbeat-data", "/topic/voice-control", "/topic/title-info"]);
+      "/topic/alarm-count", "/topic/fault-popup", "/topic/popup-remove", "/topic/heartbeat-data", "/topic/voice-control", "/topic/title-info", "/topic/attention"]);
     this.adapterSocket = new WebSocket(`ws://${process.env.VUE_APP_ADAPTERURLS}/wisdom`, this.onmessage, ["/topic/windturbine", "/topic/pv"]);
   }
 

+ 7 - 7
src/utils/PhotoelectricDetailPages.js

@@ -2,7 +2,7 @@
 // import {config} from '../../config';
 
 export const Photoelectric = {
-		'MHSFCJSFW.NX_GD_MHSF_XX_XX_XXX_XXX_CI0263':[
+		'MHS_BT':[
 			{name:"有功设定限值", tag:"PowerSet", value:"MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_AI0296", calc:"1"},
 			{name:"AGC可调上限", tag:"AgcUp", value:"MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_AI0294", calc:"0.1"},
 			{name:"AGC可调下限", tag:"AgcLower", value:"MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_AI0295", calc:"0.01"},
@@ -14,7 +14,7 @@ export const Photoelectric = {
 			{name:"有功增闭锁", tag:"SumLock", value:"MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_DI1209"},
 			{name:"有功减闭锁", tag:"SubLock", value:"MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_DI1210"},
 		],
-		'QSFCJSFW.NX_GD_QSF_XX_XX_XXX_XXX_CI0263':[
+		'QS_BT':[
 			{name:"有功设定限值", tag:"PowerSet", value:"QSDQ.NX_GD_QSF_DQ_P1_L1_001_AI1281", calc:"1"},
 			{name:"AGC可调上限", tag:"AgcUp", value:"QSDQ.NX_GD_QSF_DQ_P1_L1_001_AI1284", calc:"1"},
 			{name:"AGC可调下限", tag:"AgcLower", value:"QSDQ.NX_GD_QSF_DQ_P1_L1_001_AI1285", calc:"0.1"},
@@ -26,7 +26,7 @@ export const Photoelectric = {
 			{name:"有功增闭锁", tag:"SumLock", value:"QSDQ.NX_GD_QSF_DQ_P1_L1_001_DI2444"},
 			{name:"有功减闭锁", tag:"SubLock", value:"QSDQ.NX_GD_QSF_DQ_P1_L1_001_DI2445"},
 		],
-		'NSSFCJSFW.NX_GD_NSSF_XX_XX_XXX_XXX_CI0263':[
+		'NSS_BT':[
 			{name:"有功设定限值", tag:"PowerSet", value:"NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI1019", calc:"1"},
 			{name:"AGC可调上限", tag:"AgcUp", value:"NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI1010", calc:"0.001"},
 			{name:"AGC可调下限", tag:"AgcLower", value:"NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI1011", calc:"0.001"},
@@ -38,7 +38,7 @@ export const Photoelectric = {
 			{name:"有功增闭锁", tag:"SumLock", value:"NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_DI1567"},
 			{name:"有功减闭锁", tag:"SubLock", value:"NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_DI1568"},
 		],
-		"SBQFCJSFW.NX_GD_SBQF_XX_XX_XXX_XXX_CI0263":[
+		"XN6_BT":[
 			{name:"有功设定限值", tag:"PowerSet", value:"SBQXLDQ.NX_GD_SBQF_DQ_P1_L1_001_AI0818", calc:"1"},
 			{name:"AGC可调上限", tag:"AgcUp", value:"SBQXLDQ.NX_GD_SBQF_DQ_P1_L1_001_AI0819", calc:"0.1"},
 			{name:"AGC可调下限", tag:"AgcLower", value:"SBQXLDQ.NX_GD_SBQF_DQ_P1_L1_001_AI0820", calc:"0.1"},
@@ -50,7 +50,7 @@ export const Photoelectric = {
 			{name:"有功增闭锁", tag:"SumLock", value:"SBQXLDQ.NX_GD_SBQF_DQ_P1_L1_001_DI3833"},
 			{name:"有功减闭锁", tag:"SubLock", value:"SBQXLDQ.NX_GD_SBQF_DQ_P1_L1_001_DI3834"},
 		],
-		'SBQFCJSFW.NX_GD_SBQF_XX_XX_XXX_XXX_CI026X':[
+		'N5_BT':[
 			{name:"有功设定限值", tag:"PowerSet", value:"SBQNWDQ.NX_GD_SBQF_DQ_P1_L1_001_AI0818", calc:"1"},
 			{name:"AGC可调上限", tag:"AgcUp", value:"SBQNWDQ.NX_GD_SBQF_DQ_P1_L1_001_AI0819", calc:"1"},
 			{name:"AGC可调下限", tag:"AgcLower", value:"SBQNWDQ.NX_GD_SBQF_DQ_P1_L1_001_AI0820", calc:"1"},
@@ -62,7 +62,7 @@ export const Photoelectric = {
 			{name:"有功增闭锁", tag:"SumLock", value:"SBQNWDQ.NX_GD_SBQF_DQ_P1_L1_001_DI3833"},
 			{name:"有功减闭锁", tag:"SubLock", value:"SBQNWDQ.NX_GD_SBQF_DQ_P1_L1_001_DI3834"},
 		],
-		'XSFCJSFW.NX_GD_XSF_XX_XX_XXX_XXX_CI0263':[
+		'XS_BT':[
 			{name:"有功设定限值", tag:"PowerSet", value:"XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0411", calc:"1"},
 			{name:"AGC可调上限", tag:"AgcUp", value:"XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0412", calc:"1"},
 			{name:"AGC可调下限", tag:"AgcLower", value:"XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0413", calc:"1"},
@@ -74,7 +74,7 @@ export const Photoelectric = {
 			{name:"有功增闭锁", tag:"SumLock", value:"XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1753"},
 			{name:"有功减闭锁", tag:"SubLock", value:"XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1754"},
 		],
-		'SLAGC.NX_GD_QSF_DQ_P1_L1_001_DI0165':[
+		'SL_BT':[
 			{name:"有功设定限值", tag:"PowerSet", value:"SLAGC.NX_GD_QSF_DQ_P1_L1_001_AI0052", calc:"1"},
 			{name:"AGC可调上限", tag:"AgcUp", value:"SLAGC.NX_GD_QSF_DQ_P1_L1_001_AI0053", calc:"1"},
 			{name:"AGC可调下限", tag:"AgcLower", value:"SLAGC.NX_GD_QSF_DQ_P1_L1_001_AI0054", calc:"1"},

+ 4 - 0
src/views/TitleBar.vue

@@ -292,6 +292,8 @@
             this.partsName = partsName
             this.display = true;
             this.titleDetails = res.data
+          }else{
+              this.titleDetails = []
           }
         })
       },
@@ -309,6 +311,8 @@
             this.partsName = partsName
             this.display = true;
             this.titleDetails = res.data
+          }else{
+              this.titleDetails = []
           }
         })
       },