openatc-components 0.5.13 → 0.5.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -19,15 +19,25 @@
19
19
  :style="{position: 'absolute', left: '310px', top: '198px', zIndex: '10'}"
20
20
  >
21
21
  <defs>
22
- <filter id="shadow-effect" x="-50%" y="-50%" width="200%" height="200%">
23
- <!-- 对应 box-shadow: 0 0 6px 6px #10B800 -->
24
- <feDropShadow
25
- dx="0"
26
- dy="0"
27
- stdDeviation="4"
28
- flood-color="#10B800"
29
- flood-opacity="1"/>
30
- </filter>
22
+ <filter id="shadow-effect-side"
23
+ x="-10%"
24
+ y="-10%"
25
+ width="200%"
26
+ height="200%">
27
+ <feFlood flood-color="#10B800" flood-opacity="1" result="glowColor" />
28
+ <feComposite in="glowColor"
29
+ in2="SourceGraphic"
30
+ operator="in"
31
+ result="glowMask" />
32
+ <feGaussianBlur in="glowMask" stdDeviation="2" result="blurredGlow" />
33
+ <feComponentTransfer in="blurredGlow" result="brightGlow">
34
+ <feFuncA type="linear" slope="2" />
35
+ </feComponentTransfer>
36
+ <feMerge>
37
+ <feMergeNode in="brightGlow" />
38
+ <feMergeNode in="SourceGraphic" />
39
+ </feMerge>
40
+ </filter>
31
41
  </defs>
32
42
  <g
33
43
  id="西行人"
@@ -1224,7 +1234,7 @@ export default {
1224
1234
  }
1225
1235
  }
1226
1236
  clickedPath.setAttribute('fill', this.clickedColor)
1227
- clickedPath.setAttribute('filter', 'url(#shadow-effect)')
1237
+ clickedPath.setAttribute('filter', 'url(#shadow-effect-side)')
1228
1238
  }
1229
1239
  this.$emit('handleClickSidewalkIcon', this.sidewalkData, curChoosePed)
1230
1240
  }
@@ -1239,7 +1249,7 @@ export default {
1239
1249
  let data = this.sidewalkData.filter(ele => ele.id === side.id)[0]
1240
1250
  if (data && data.clicked === true) {
1241
1251
  dom.setAttribute('fill', this.clickedColor)
1242
- dom.setAttribute('filter', 'url(#shadow-effect)')
1252
+ dom.setAttribute('filter', 'url(#shadow-effect-side)')
1243
1253
  }
1244
1254
  if (this.clickMode && data && data.disabled === true) {
1245
1255
  dom.setAttribute('fill', this.disabledColor)
@@ -1411,8 +1411,8 @@ export default {
1411
1411
  } else {
1412
1412
  nextSelected = this.inneChoosedDirection.filter(d => d !== id)
1413
1413
  }
1414
- // 第三方信号机检查是否冲突,冲突提示是否确定;非第三方不进冲突检查
1415
- if (this.isThirdSignal && this.checkConflict(nextSelected)) {
1414
+ // 检查是否冲突,冲突提示是否确定
1415
+ if (this.checkConflict(nextSelected)) {
1416
1416
  try {
1417
1417
  await this.$confirm(this.$t('openatccomponents.overview.conflictdirectionstips'), this.$t('openatccomponents.common.tipsmodaltitle'), {
1418
1418
  confirmButtonText: this.$t('openatccomponents.button.OK'),
@@ -18,14 +18,24 @@
18
18
  </svg> -->
19
19
  <svg xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="0 0 36 26" :width="IconLengh" :height="IconWdith">
20
20
  <defs>
21
- <filter id="shadow-effect" x="-50%" y="-50%" width="200%" height="200%">
22
- <!-- 对应 box-shadow: 0 0 6px 6px #10B800 -->
23
- <feDropShadow
24
- dx="0"
25
- dy="0"
26
- stdDeviation="4"
27
- flood-color="#10B800"
28
- flood-opacity="1"/>
21
+ <filter id="shadow-effect"
22
+ x="-10%"
23
+ y="-10%"
24
+ width="200%"
25
+ height="200%">
26
+ <feFlood flood-color="#10B800" flood-opacity="1" result="glowColor" />
27
+ <feComposite in="glowColor"
28
+ in2="SourceGraphic"
29
+ operator="in"
30
+ result="glowMask" />
31
+ <feGaussianBlur in="glowMask" stdDeviation="2" result="blurredGlow" />
32
+ <feComponentTransfer in="blurredGlow" result="brightGlow">
33
+ <feFuncA type="linear" slope="2" />
34
+ </feComponentTransfer>
35
+ <feMerge>
36
+ <feMergeNode in="brightGlow" />
37
+ <feMergeNode in="SourceGraphic" />
38
+ </feMerge>
29
39
  </filter>
30
40
  </defs>
31
41
  <!-- 东相位 -->
@@ -148,8 +158,7 @@ export default {
148
158
  default: false
149
159
  },
150
160
  beforeSelect: {
151
- type: Function,
152
- required: true
161
+ type: Function
153
162
  }
154
163
  },
155
164
  methods: {
@@ -0,0 +1,2 @@
1
+ import OptimizeKanban from './OptimizeKanban.vue'
2
+ export default OptimizeKanban
@@ -0,0 +1,369 @@
1
+ /**
2
+ * Copyright (c) 2020 kedacom
3
+ * OpenATC is licensed under Mulan PSL v2.
4
+ * You can use this software according to the terms and conditions of the Mulan PSL v2.
5
+ * You may obtain a copy of Mulan PSL v2 at:
6
+ * http://license.coscl.org.cn/MulanPSL2
7
+ * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
8
+ * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
9
+ * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
10
+ * See the Mulan PSL v2 for more details.
11
+ **/
12
+ <template>
13
+ <div class="kanbanOptimize">
14
+ <div v-if="this.nowNumber === 1" class="optimizetype">
15
+ <span>{{$t('openatccomponents.pattern.optimizetype')}}</span>
16
+ <el-select v-model="value" clearable :placeholder="$t('openatccomponents.common.select')">
17
+ <el-option
18
+ v-for="item in typeOptions"
19
+ :key="item.value"
20
+ :label="$t('openatccomponents.overview.type' + item.value)"
21
+ :value="item.value"
22
+ >
23
+ </el-option>
24
+ </el-select>
25
+ <span class="optimiNum">{{$t('openatccomponents.pattern.optimizecycle')}}</span>
26
+ <el-input v-model="optimizecycle" clearable :placeholder="$t('openatccomponents.common.enter')"></el-input>
27
+ <!-- <el-button type="primary" @click="onOptimizeClick()">{{$t('openatccomponents.pattern.inoptimize')}}</el-button> -->
28
+ </div>
29
+ <div class="common-board-column" :style="{marginTop:this.nowNumber === 1 ? 0 : '50px',marginLeft:this.nowNumber === 1 ? 0 : 0}">
30
+ <div class="common-board-column-header">
31
+ {{headerText}}
32
+ </div>
33
+ <div class="openatccomponents-board-table-header">
34
+ <el-row :gutter="13">
35
+ <el-col :span="4">{{this.$t('openatccomponents.overview.phase')}}
36
+ </el-col>
37
+ <el-col :span="10">{{this.$t('openatccomponents.overview.flow')}}
38
+ </el-col>
39
+ <el-col :span="10">{{this.$t('openatccomponents.overview.saturationflow')}}
40
+ </el-col>
41
+ </el-row>
42
+ </div>
43
+ <draggable
44
+ class="common-board-column-content"
45
+ :list="list"
46
+ :options="options">
47
+ <div class="common-board-item" v-for="element in list" :key="element.id">
48
+ <el-row :gutter="13">
49
+ <el-col :span="4">
50
+ <el-tooltip class="item" effect="dark" placement="left">
51
+ <div slot="content">{{element.name}}</div>
52
+ <div class="common-phase-description">
53
+ <xdrdirselector Width="70px" Height="70px" Widths="58px" Heights="58px" :Datas="styles" :Data="showStyle" :showlist="element.desc" :ISActiveMask="ISActiveMask" :MaskColor="MaskColor"></xdrdirselector>
54
+ </div>
55
+ </el-tooltip>
56
+ </el-col>
57
+ <el-col :span="10">
58
+ <el-input-number :controls="false" class="col-content" size="small" :step="1" v-model.number="element.flowperhour" ref="type" :disabled="element.mode === 7"></el-input-number>
59
+ </el-col>
60
+ <el-col :span="10">
61
+ <el-input-number :controls="false" class="col-content" size="small" :step="1" v-model.number="element.saturation" ref="types" :disabled="element.mode === 7"></el-input-number>
62
+ </el-col>
63
+ </el-row>
64
+ </div>
65
+ </draggable>
66
+ </div>
67
+ </div>
68
+ </template>
69
+ <script>
70
+ import draggable from 'vuedraggable'
71
+ import { getDuration } from '@/api/cross'
72
+ import xdrdirselector from '@/components/XRDDirSelector'
73
+
74
+ export default {
75
+ name: 'patternOptimize',
76
+ components: {
77
+ draggable,
78
+ xdrdirselector
79
+ },
80
+ data () {
81
+ return {
82
+ showStyle: {
83
+ left: '7px',
84
+ top: '0px'
85
+ },
86
+ styles: {
87
+ left: '7px',
88
+ top: '0px'
89
+ },
90
+ typeOptions: [{
91
+ value: 'flow-split-opt'
92
+ }, {
93
+ value: 'cycle-opt'
94
+ }],
95
+ value: 'flow-split-opt',
96
+ optimizecycle: 0
97
+ }
98
+ },
99
+ props: {
100
+ headerText: {
101
+ type: String,
102
+ default: 'Header'
103
+ },
104
+ id: {
105
+ type: Number
106
+ },
107
+ rings: {
108
+ type: Array
109
+ },
110
+ nowNumber: {
111
+ type: Number
112
+ },
113
+ phaseList: {
114
+ type: Array
115
+ },
116
+ options: {
117
+ type: Object,
118
+ default () {
119
+ return {}
120
+ }
121
+ },
122
+ list: {
123
+ type: Array,
124
+ default () {
125
+ return []
126
+ }
127
+ },
128
+ // index: {
129
+ // type: Number
130
+ // },
131
+ ISActiveMask: {
132
+ type: Boolean,
133
+ default: true
134
+ },
135
+ // 当phase的描述为空时,显示的图形颜色。
136
+ MaskColor: {
137
+ type: String,
138
+ default: '#000000'
139
+ }
140
+ },
141
+ created () {
142
+ // this.addMinSplit()
143
+ this.addMin()
144
+ },
145
+ computed () {
146
+
147
+ },
148
+ watch: {
149
+ list: {
150
+ handler: function () {
151
+ // let list = this.$refs.type
152
+ // let flow = this.$refs.types
153
+ // console.log(this.list, 'list')
154
+ // let cycle = 0
155
+ // let n = this.index
156
+ // for (let i = 0; i < list.length; i++) {
157
+ // cycle = cycle + Number(list[i].currentValue)
158
+ // }
159
+ // const globalParamModel = this.$store.getters.globalParamModel
160
+ // // let MaxCycle = globalParamModel.getParamsByType('patternList')[n].cycle
161
+ // let pattern = globalParamModel.getParamsByType('patternList')[n]
162
+ // globalParamModel.getParamsByType('patternList')[n].cycle = this.getMaxCycle(pattern)
163
+ // this.addMinSplit()
164
+ // this.$emit('handleSplit', n)
165
+ },
166
+ deep: true
167
+ }
168
+ },
169
+ methods: {
170
+ onOptimizeClick () {
171
+ let msg = this.$t('openatccomponents.pattern.algorithmEngineOptimization')
172
+ const loading = this.$loading({
173
+ lock: true,
174
+ text: msg,
175
+ spinner: 'el-icon-loading',
176
+ background: 'rgba(0, 0, 0, 0.7)'
177
+ })
178
+ setTimeout(() => {
179
+ loading.close()
180
+ this.handeleOptimizeClick()
181
+ }, 1000)
182
+ },
183
+ handeleOptimizeClick () {
184
+ let newPha = []
185
+ for (let i = 0; i < this.rings.length; i++) {
186
+ newPha.push(...this.rings[i])
187
+ }
188
+ let phaseData = newPha.map(item => {
189
+ return {
190
+ id: item.id,
191
+ flowperhour: item.flowperhour,
192
+ saturation: item.saturation
193
+ }
194
+ })
195
+ let patternList = this.$store.state.globalParam.tscParam.patternList
196
+ let pattern = patternList.filter((item) => item.id === this.id)[0]
197
+ let reqData = {
198
+ 'type': this.value,
199
+ 'optcycle': this.optimizecycle ? this.optimizecycle : 0,
200
+ 'phaseList': this.phaseList,
201
+ 'pattern': pattern,
202
+ 'phases': phaseData
203
+ }
204
+ let isValidata = []
205
+ for (let j = 0; j < newPha.length; j++) {
206
+ let comNum = (newPha[j].length / 4) * 1700 * 0.8
207
+ isValidata.push(newPha[j].flowperhour > comNum)
208
+ }
209
+ if (isValidata.includes(true)) {
210
+ this.$confirm(this.$t('openatccomponents.overview.maxFlow'),
211
+ this.$t('openatccomponents.common.alarm'), {
212
+ confirmButtonText: this.$t('eopenatccomponentsdge.common.confirm'),
213
+ cancelButtonText: this.$t('openatccomponents.common.cancel'),
214
+ type: 'warning'
215
+ }).then(() => {
216
+ getDuration(reqData).then(data => {
217
+ if (data.data.success) {
218
+ this.$message({
219
+ type: 'success',
220
+ message: this.$t('openatccomponents.pattern.success')
221
+ })
222
+ for (let i = 0; i < this.rings.length; i++) {
223
+ for (let j = 0; j < this.rings[i].length; j++) {
224
+ for (let h = 0; h < data.data.data.phase.length; h++) {
225
+ if (this.rings[i][j].id === data.data.data.phase[h].id) {
226
+ this.rings[i][j].value = data.data.data.phase[h].duration
227
+ // this.rings[i][j].cycle = data.data.data.phase[h].cycle
228
+ }
229
+ }
230
+ }
231
+ }
232
+ }
233
+ }).catch(error => {
234
+ console.log(error)
235
+ })
236
+ }).catch(() => {
237
+ })
238
+ } else {
239
+ getDuration(reqData).then(data => {
240
+ if (data.data.success) {
241
+ this.$message({
242
+ type: 'success',
243
+ message: this.$t('openatccomponents.pattern.success')
244
+ })
245
+ for (let i = 0; i < this.rings.length; i++) {
246
+ for (let j = 0; j < this.rings[i].length; j++) {
247
+ for (let h = 0; h < data.data.data.phase.length; h++) {
248
+ if (this.rings[i][j].id === data.data.data.phase[h].id) {
249
+ this.rings[i][j].value = data.data.data.phase[h].duration
250
+ // this.rings[i][j].cycle = data.data.data.phase[h].cycle
251
+ }
252
+ }
253
+ }
254
+ }
255
+ }
256
+ }).catch(error => {
257
+ console.log(error)
258
+ })
259
+ }
260
+ },
261
+ addMin () {
262
+ for (let i of this.list) {
263
+ if (!i.flowperhour || !i.saturation) {
264
+ i.length = this.list.length
265
+ i.flowperhour = 0
266
+ i.saturation = 1700
267
+ }
268
+ }
269
+ }
270
+ // addMinSplit () {
271
+ // const globalParamModel = this.$store.getters.globalParamModel
272
+ // let phaseList = globalParamModel.getParamsByType('phaseList')
273
+ // for (let ls of this.list) {
274
+ // let phase = phaseList.filter((item) => {
275
+ // return item.id === ls.id
276
+ // })[0]
277
+ // if (!phase.redyellow) {
278
+ // phase.redyellow = 0
279
+ // }
280
+ // if (!phase.yellow) {
281
+ // phase.yellow = 0
282
+ // }
283
+ // if (!phase.redclear) {
284
+ // phase.redclear = 0
285
+ // }
286
+ // if (!phase.flashgreen) {
287
+ // phase.flashgreen = 0
288
+ // }
289
+ // if (!phase.phasewalk) {
290
+ // phase.phasewalk = 0
291
+ // }
292
+ // if (!phase.pedclear) {
293
+ // phase.pedclear = 0
294
+ // }
295
+ // // let temp1 = phase.redyellow + phase.yellow + phase.redclear + phase.flashgreen // 绿信比的最小值要大于最小绿+黄灯+全红+绿闪
296
+ // // let temp2 = phase.phasewalk + phase.pedclear
297
+ // // if (temp1 > temp2) {
298
+ // // ls.minSplit = temp1
299
+ // // } else {
300
+ // // ls.minSplit = temp2
301
+ // // }
302
+ // // if (ls.mode !== 7 && ls.value < ls.minSplit) {
303
+ // // ls.value = ls.minSplit
304
+ // // }
305
+ // // let temp1 = phase.yellow + phase.redclear + phase.flashgreen // 绿信比的最小值要大于最小绿+黄灯+全红+绿闪
306
+ // let temp1 = phase.yellow + phase.redclear + phase.mingreen
307
+ // let temp2 = phase.yellow + phase.redclear + phase.phasewalk + phase.pedclear
308
+ // ls.minSplit = temp1 > temp2 ? temp1 : temp2
309
+ // if (ls.mode !== 7 && ls.value < ls.minSplit) {
310
+ // ls.value = ls.minSplit
311
+ // this.$message.error(this.$t('openatccomponents.pattern.splitCheckMsg'))
312
+ // }
313
+ // }
314
+ // },
315
+ // getMaxCycle (pattern) {
316
+ // let rings = pattern.rings
317
+ // let maxCycle = 0
318
+ // for (let ring of rings) {
319
+ // if (ring.length === 0) continue
320
+ // let cycle = 0
321
+ // for (let r of ring) {
322
+ // if (r.mode === 7) { // 忽略相位不计周期
323
+ // continue
324
+ // }
325
+ // cycle = cycle + r.value
326
+ // }
327
+ // if (cycle > maxCycle) {
328
+ // maxCycle = cycle
329
+ // }
330
+ // }
331
+ // return maxCycle
332
+ // },
333
+ // doChange (val) {
334
+ // // if (val.mode === 7) {
335
+ // // val.value = 0
336
+ // // } else {
337
+ // // val.value = 30
338
+ // // }
339
+ // }
340
+ }
341
+ }
342
+ </script>
343
+ <style lang="scss" scoped>
344
+ .col-content {
345
+ width: 100%;
346
+ }
347
+ .kanbanOptimize {
348
+ .common-board-column {
349
+ max-width: unset !important;
350
+ }
351
+ }
352
+ .optimizetype{
353
+ // float: left;
354
+ font-size: 14PX;
355
+ margin:0 0 10PX 0;
356
+ .el-input {
357
+ width: 80PX;
358
+ }
359
+ .el-select{
360
+ width: 145PX;
361
+ }
362
+ .el-button {
363
+ margin-left: 10PX;
364
+ }
365
+ .optimiNum {
366
+ padding-left: 10PX;
367
+ }
368
+ }
369
+ </style>
@@ -222,7 +222,7 @@ export default {
222
222
  this.agentId = val
223
223
  this.resetcomponent = false
224
224
  setIframdevid(val)
225
- this.registerMessage() // 注册消息
225
+ // this.registerMessage() // 注册消息
226
226
  await this.getIntersectionInfo(val)
227
227
  this.$nextTick(() => {
228
228
  this.resetcomponent = true
@@ -249,7 +249,7 @@ export default {
249
249
  this.CrossDiagramMgr = new CrossDiagramMgr()
250
250
  this.agentId = this.AgentId
251
251
  setIframdevid(this.agentId)
252
- this.registerMessage() // 注册消息
252
+ // this.registerMessage() // 注册消息
253
253
  this.getIntersectionInfo(this.agentId)
254
254
  },
255
255
  mounted () {
@@ -380,8 +380,8 @@ export default {
380
380
  })
381
381
  },
382
382
  registerMessage () {
383
- registerMessage(this.agentId).then(data => {
384
- if (!data.data.success) {
383
+ registerMessage(this.agentId, this.protocol).then(data => {
384
+ if (!data.data.success && this.protocol !== 'rcp') {
385
385
  // this.devStatus = 2
386
386
  if (data.data.code === '4002' && data.data.data.errorCode === '4209') {
387
387
  let success = data.data.data.content.success
@@ -406,6 +406,20 @@ export default {
406
406
  this.reSend()
407
407
  }
408
408
  return
409
+ } else {
410
+ if (data.data.code === '4002' && data.data.data.errorCode === '4210') {
411
+ let successArray = data.data.data.content
412
+ successArray.forEach(success => {
413
+ let dataType = this.$t('edge.common.datatype') + ':' + success.DataClass // 数据类
414
+ let objectID = this.$t('edge.common.objectid') + ':' + success.ObjectID // 对象
415
+ let propertyID = this.$t('edge.common.propertyid') + ':' + success.PropertyID // 属性
416
+ let elementID = this.$t('edge.common.elementid') + ':' + success.ElementID // 元素
417
+ let returnCode = this.$t('edge.common.returncode') + ':' + this.getError(success.ReturnCode) // 数据值
418
+ let errormsg = `${dataType} ${objectID} ${propertyID} ${elementID} ${returnCode}`
419
+ this.$message.error(this.$t(errormsg))
420
+ })
421
+ return
422
+ }
409
423
  }
410
424
  // this.devStatus = 3
411
425
  this.clearPatternInterval() // 清除其他定时器
@@ -418,6 +432,31 @@ export default {
418
432
  this.getPhase()
419
433
  })
420
434
  },
435
+ getError (val) {
436
+ if (val === 'Status_BadValue') {
437
+ return this.$t('edge.common.statusbadvalue')
438
+ } else if (val === 'Status_WrongLength') {
439
+ return this.$t('edge.common.statuswronglength')
440
+ } else if (val === 'Status_Overflow') {
441
+ return this.$t('edge.common.statusvverflow')
442
+ } else if (val === 'Status_ReadOnly') {
443
+ return this.$t('edge.common.statusreadonly')
444
+ } else if (val === 'Status_NullValue') {
445
+ return this.$t('edge.common.statusnullvalue')
446
+ } else if (val === 'Status_Error') {
447
+ return this.$t('edge.common.statuserror')
448
+ } else if (val === 'Status_ControlFail') {
449
+ return this.$t('edge.common.statuscontrolfail')
450
+ } else if (val === 'Status_AccessDenied') {
451
+ return this.$t('edge.common.statusaccessdenied')
452
+ } else if (val === 'Status_InvalidKey') {
453
+ return this.$t('edge.common.statusinvalidkey')
454
+ } else if (val === 'Status_ChecksumError') {
455
+ return this.$t('edge.common.statuschecksumerror')
456
+ } else {
457
+ return ''
458
+ }
459
+ },
421
460
  reSend () { // 设备掉线重连机制
422
461
  // this.devStatus = 1
423
462
  this.clearRegisterMessageTimer()
@@ -725,36 +764,36 @@ export default {
725
764
  reconnectionDev () {
726
765
  this.registerMessage()
727
766
  },
728
- queryDevParams () {
729
- queryDevice(this.AgentId).then(res => {
730
- if (!res.data.success) {
731
- this.isShowMessage && this.$message.error(getMessageByCode(res.data.code, this.$i18n.locale))
732
- return
733
- }
734
- let devParams = res.data.data.jsonparam
735
- this.ip = devParams.ip
736
- this.port = String(devParams.port)
737
- this.protocol = res.data.data.protocol
738
- this.agentId = res.data.data.agentid
739
- if (res.data.data.name) {
740
- this.agentName = res.data.data.name
741
- }
742
- this.platform = res.data.data.platform
743
- let state = res.data.data.state
744
- if (state === 'UP') {
745
- this.stateName = this.$t('openatccomponents.overview.online')
746
- } else {
747
- this.stateName = this.$t('openatccomponents.overview.offline')
748
- }
749
- this.registerMessage() // 注册消息
750
- this.initData()
751
- // 配置工具没参数的时候
752
- this.getIntersectionInfo(this.agentId)
753
- if (this.curHomePage === 'Channelization') {
754
- this.getDetectorStatus()
755
- }
756
- })
757
- },
767
+ // queryDevParams () {
768
+ // queryDevice(this.AgentId).then(res => {
769
+ // if (!res.data.success) {
770
+ // this.isShowMessage && this.$message.error(getMessageByCode(res.data.code, this.$i18n.locale))
771
+ // return
772
+ // }
773
+ // let devParams = res.data.data.jsonparam
774
+ // this.ip = devParams.ip
775
+ // this.port = String(devParams.port)
776
+ // this.protocol = res.data.data.protocol
777
+ // this.agentId = res.data.data.agentid
778
+ // if (res.data.data.name) {
779
+ // this.agentName = res.data.data.name
780
+ // }
781
+ // this.platform = res.data.data.platform
782
+ // let state = res.data.data.state
783
+ // if (state === 'UP') {
784
+ // this.stateName = this.$t('openatccomponents.overview.online')
785
+ // } else {
786
+ // this.stateName = this.$t('openatccomponents.overview.offline')
787
+ // }
788
+ // this.registerMessage() // 注册消息
789
+ // this.initData()
790
+ // // 配置工具没参数的时候
791
+ // this.getIntersectionInfo(this.agentId)
792
+ // if (this.curHomePage === 'Channelization') {
793
+ // this.getDetectorStatus()
794
+ // }
795
+ // })
796
+ // },
758
797
  getPhase () {
759
798
  uploadSingleTscParam('phase', this.agentId).then(data => {
760
799
  let res = data.data
@@ -800,6 +839,7 @@ export default {
800
839
  this.agentName = res.data.data.name
801
840
  }
802
841
  this.platform = res.data.data.platform
842
+ this.registerMessage() // 注册消息
803
843
  })
804
844
  },
805
845
  getDetectorStatus () {