NEZ-787 fix: 修复Asset model页面,点击Open terminal,Duplicate,Silence alert按钮无反应

This commit is contained in:
@changcode
2021-07-01 17:56:01 +08:00
parent f2277d7014
commit c715a96321
6 changed files with 82 additions and 25 deletions

View File

@@ -26,10 +26,12 @@
:height="mainTableHeight" :height="mainTableHeight"
:now-time="nowTime" :now-time="nowTime"
:table-data="tableData" :table-data="tableData"
:alertMessageTabNew="true"
@del="del" @del="del"
@edit="edit" @edit="edit"
@orderBy="tableDataSort" @orderBy="tableDataSort"
@reload="getTableData" @reload="getTableData"
@addSilence="addSilence"
@selectionChange="selectionChange" @selectionChange="selectionChange"
@showBottomBox="(target, item) => { $refs.dataList.showBottomBox(target, item) }" @showBottomBox="(target, item) => { $refs.dataList.showBottomBox(target, item) }"
@toDelete="toDeleteMessage" @toDelete="toDeleteMessage"
@@ -55,6 +57,7 @@
</div> </div>
<chart ref="messageChart" :unit="chartUnit" name="alertMessageChart"></chart> <chart ref="messageChart" :unit="chartUnit" name="alertMessageChart"></chart>
</el-dialog> </el-dialog>
<transition name="right-box"><alert-silence-box v-if='silenceBoxShow' :alert-silence="objectSilence" @close="closeSilenceBox"></alert-silence-box></transition>
</div> </div>
</template> </template>
@@ -69,6 +72,7 @@ import alertMessageTable from '@/components/common/table/alert/alertMessageTable
import chartDataFormat from '@/components/charts/chartDataFormat' import chartDataFormat from '@/components/charts/chartDataFormat'
import chart from '@/components/page/dashboard/overview/chart' import chart from '@/components/page/dashboard/overview/chart'
import { alertMessage as alertMessageConstant, fromRoute } from '@/components/common/js/constants' import { alertMessage as alertMessageConstant, fromRoute } from '@/components/common/js/constants'
import alertSilenceBox from '@/components/common/rightBox/alertSilenceBox'
export default { export default {
name: 'alertMessageTab', name: 'alertMessageTab',
@@ -76,6 +80,7 @@ export default {
components: { components: {
nzBottomDataList, nzBottomDataList,
alertMessageTable, alertMessageTable,
alertSilenceBox,
chart chart
}, },
props: { props: {
@@ -97,6 +102,22 @@ export default {
url: 'alert/message', url: 'alert/message',
tableId: 'alertMessageModule', // 需要分页的table的id用于记录每页数量 tableId: 'alertMessageModule', // 需要分页的table的id用于记录每页数量
state: '1', state: '1',
blankSilenceObject: {
id: '',
startAt: '',
endAt: '',
ruleId: '',
type: 'asset',
linkId: '',
remark: '',
time: [],
matchers: [
{ name: '', value: '', regex: 0 }
],
name: ''
},
objectSilence: {},
silenceBoxShow: false,
searchMsg: { // 给搜索框子组件传递的信息 searchMsg: { // 给搜索框子组件传递的信息
searchLabelList: [ searchLabelList: [
{ {

View File

@@ -22,6 +22,9 @@
:assetTab="true" :assetTab="true"
@del="del" @del="del"
@edit="edit" @edit="edit"
@cli="cli"
@duplicate="duplicate"
@addSilence="addSilence"
@orderBy="tableDataSort" @orderBy="tableDataSort"
@reload="getTableData" @reload="getTableData"
@selectionChange="selectionChange" @selectionChange="selectionChange"
@@ -45,6 +48,7 @@
@close="closeRightBox" @close="closeRightBox"
@refresh="getTableData"></asset-box> @refresh="getTableData"></asset-box>
</transition> </transition>
<transition name="right-box"><alert-silence-box v-if='silenceBoxShow' :alert-silence="objectSilence" @close="closeSilenceBox"></alert-silence-box></transition>
</div> </div>
</template> </template>
@@ -55,13 +59,16 @@ import nzBottomDataList from '@/components/common/bottomBox/nzBottomDataList'
import assetTable from '@/components/common/table/asset/assetTable' import assetTable from '@/components/common/table/asset/assetTable'
import assetBox from '@/components/common/rightBox/asset/assetBox' import assetBox from '@/components/common/rightBox/asset/assetBox'
import { fromRoute } from "@/components/common/js/constants"; import { fromRoute } from "@/components/common/js/constants";
import alertSilenceBox from '@/components/common/rightBox/alertSilenceBox'
export default { export default {
name: 'assetTab', name: 'assetTab',
mixins: [dataListMixin, subDataListMixin], mixins: [dataListMixin, subDataListMixin],
components: { components: {
nzBottomDataList, nzBottomDataList,
assetTable, assetTable,
assetBox assetBox,
alertSilenceBox
}, },
data () { data () {
return { return {
@@ -96,6 +103,11 @@ export default {
disabled: false disabled: false
}] }]
}, },
blankSilenceObject: {
startAt: ''
},
objectSilence: {},
silenceBoxShow: false,
searchLabel: { dcIds: this.obj.id }, searchLabel: { dcIds: this.obj.id },
brandData: [], brandData: [],
modelData: [], modelData: [],
@@ -107,6 +119,10 @@ export default {
} }
}, },
methods: { methods: {
duplicate (row) {
this.object = { ...row, id: '', name: `${row.name}-copy` }
this.rightBox.show = true
},
getStateData () { getStateData () {
return new Promise(resolve => { return new Promise(resolve => {
this.$get('asset/stateConf').then(response => { this.$get('asset/stateConf').then(response => {
@@ -176,8 +192,15 @@ export default {
resolve() resolve()
}) })
}) })
},
cli (row) {
const consoleParam = {
id: row.id,
host: row.manageIp,
port: row.authProtocolPort
}
this.$store.commit('addConsole', consoleParam)
} }
}, },
watch: { watch: {
obj: { obj: {

View File

@@ -25,6 +25,7 @@
@del="del" @del="del"
@edit="edit" @edit="edit"
@orderBy="tableDataSort" @orderBy="tableDataSort"
@addSilence="addSilence"
@reload="getTableData" @reload="getTableData"
@selectionChange="selectionChange" @selectionChange="selectionChange"
></endpoint-table> ></endpoint-table>
@@ -36,6 +37,7 @@
<transition name="right-box"> <transition name="right-box">
<edit-endpoint-box-new v-if="rightBox.editShow" :module="object" @close="closeRightEditBox" :disabled="true" :optionType="'edit'"></edit-endpoint-box-new> <edit-endpoint-box-new v-if="rightBox.editShow" :module="object" @close="closeRightEditBox" :disabled="true" :optionType="'edit'"></edit-endpoint-box-new>
</transition> </transition>
<transition name="right-box"><alert-silence-box v-if='silenceBoxShow' :alert-silence="objectSilence" @close="closeSilenceBox"></alert-silence-box></transition>
</div> </div>
</template> </template>
@@ -46,6 +48,7 @@ import nzBottomDataList from '@/components/common/bottomBox/nzBottomDataList'
import endpointTable from '@/components/common/table/settings/endpointTable' import endpointTable from '@/components/common/table/settings/endpointTable'
import EditEndpointBoxNew from '@/components/common/rightBox/editEndpointBoxNew' import EditEndpointBoxNew from '@/components/common/rightBox/editEndpointBoxNew'
import { fromRoute } from "@/components/common/js/constants"; import { fromRoute } from "@/components/common/js/constants";
import alertSilenceBox from '@/components/common/rightBox/alertSilenceBox'
export default { export default {
name: 'terminalLogTab', name: 'terminalLogTab',
@@ -53,7 +56,8 @@ export default {
components: { components: {
nzBottomDataList, nzBottomDataList,
endpointTable, endpointTable,
EditEndpointBoxNew EditEndpointBoxNew,
alertSilenceBox
}, },
watch: { watch: {
obj: { obj: {
@@ -87,6 +91,11 @@ export default {
} }
] ]
}, },
blankSilenceObject: {
startAt: ''
},
objectSilence: {},
silenceBoxShow: false,
nowTime: '', nowTime: '',
rightBox: { rightBox: {
editShow: false, editShow: false,

View File

@@ -148,7 +148,8 @@ export default {
showOption: { showOption: {
type: Boolean, type: Boolean,
default: true default: true
} },
alertMessageTabNew: Boolean
}, },
mixins: [table, bus], mixins: [table, bus],
data () { data () {

View File

@@ -167,6 +167,9 @@ export default {
] ]
} }
}, },
mounted () {
console.log(this.userData)
},
methods: { methods: {
showTableTooltip, showTableTooltip,
hideTableTooltip, hideTableTooltip,

View File

@@ -107,7 +107,7 @@
<i class="nz-icon nz-icon-more3"></i> <i class="nz-icon nz-icon-more3"></i>
</div> </div>
<el-dropdown-menu slot="dropdown"> <el-dropdown-menu slot="dropdown">
<el-dropdown-item :command="['endpointQuery', scope.row]"><i class="nz-icon nz-icon-search"></i><span class="operation-dropdown-text">{{$t('overall.query')}}</span></el-dropdown-item> <el-dropdown-item v-if="!endpointTab" :command="['endpointQuery', scope.row]"><i class="nz-icon nz-icon-search"></i><span class="operation-dropdown-text">{{$t('overall.query')}}</span></el-dropdown-item>
<el-dropdown-item v-if="!endpointTab" v-has="'monitor_endpoint_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item> <el-dropdown-item v-if="!endpointTab" v-has="'monitor_endpoint_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'monitor_endpoint_delete'" :command="['delete', scope.row, `sys/endpoint?ids=${scope.row.id}`]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> <el-dropdown-item v-has="'monitor_endpoint_delete'" :command="['delete', scope.row, `sys/endpoint?ids=${scope.row.id}`]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'alertSilence_add'" :command="['fastSilence', scope.row, 'endpoint']"><i class="nz-icon nz-icon-fast-silence"></i><span class="operation-dropdown-text">{{$t('overall.silenceAlert')}}</span></el-dropdown-item> <el-dropdown-item v-has="'alertSilence_add'" :command="['fastSilence', scope.row, 'endpoint']"><i class="nz-icon nz-icon-fast-silence"></i><span class="operation-dropdown-text">{{$t('overall.silenceAlert')}}</span></el-dropdown-item>