NEZ-947 feat;alert rule增加 state 页面开发
This commit is contained in:
@@ -99,6 +99,16 @@
|
|||||||
<el-form-item :label="$t('alert.summary')" prop="summary">
|
<el-form-item :label="$t('alert.summary')" prop="summary">
|
||||||
<el-input id="alert-box-input-summary" v-model="editAlertRule.summary" maxlength="512" placeholder="" rows="3" show-word-limit size="small" type="textarea"></el-input>
|
<el-input id="alert-box-input-summary" v-model="editAlertRule.summary" maxlength="512" placeholder="" rows="3" show-word-limit size="small" type="textarea"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item :label='$t("config.dc.state")' prop="state">
|
||||||
|
<el-switch
|
||||||
|
id="dc-box-input-name"
|
||||||
|
v-model="editAlertRule.state"
|
||||||
|
:active-value="1"
|
||||||
|
:inactive-value="0"
|
||||||
|
active-color="#ee9d3f"
|
||||||
|
>
|
||||||
|
</el-switch>
|
||||||
|
</el-form-item>
|
||||||
<!--description-->
|
<!--description-->
|
||||||
<el-form-item :label="$t('overall.remark')" prop="description">
|
<el-form-item :label="$t('overall.remark')" prop="description">
|
||||||
<el-input id="alert-box-input-description" v-model="editAlertRule.description" maxlength="256" placeholder="" rows="4" show-word-limit size="small" type="textarea"></el-input>
|
<el-input id="alert-box-input-description" v-model="editAlertRule.description" maxlength="256" placeholder="" rows="4" show-word-limit size="small" type="textarea"></el-input>
|
||||||
|
|||||||
@@ -54,6 +54,16 @@
|
|||||||
<template v-else-if="item.prop === 'receivers'">
|
<template v-else-if="item.prop === 'receivers'">
|
||||||
<el-tag v-for="(user, index) in scope.row[item.prop]" v-if="user&&user.username" :key="index" class="alert-rule-tag" effect="dark" size="mini">{{user.username}} </el-tag>
|
<el-tag v-for="(user, index) in scope.row[item.prop]" v-if="user&&user.username" :key="index" class="alert-rule-tag" effect="dark" size="mini">{{user.username}} </el-tag>
|
||||||
</template>
|
</template>
|
||||||
|
<template v-else-if="item.prop === 'state'">
|
||||||
|
<el-switch
|
||||||
|
v-model="scope.row.state"
|
||||||
|
:disabled="!hasButton('dc_edit') || !hasButton('dc_edit') || !!Number(scope.row.buildIn)"
|
||||||
|
active-color="#ee9d3f"
|
||||||
|
:active-value="1"
|
||||||
|
:inactive-value="0"
|
||||||
|
@change="(val)=>{$emit('statusChange', scope.row)}"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
<span v-else-if="scope.row[item.prop]">{{scope.row[item.prop]}}</span>
|
<span v-else-if="scope.row[item.prop]">{{scope.row[item.prop]}}</span>
|
||||||
<template v-else>-</template>
|
<template v-else>-</template>
|
||||||
</template>
|
</template>
|
||||||
@@ -70,9 +80,9 @@
|
|||||||
<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 v-has="'alertRule_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="!scope.row.buildIn" v-has="'alertRule_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="'alertRule_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
|
<el-dropdown-item v-if="!scope.row.buildIn" v-has="'alertRule_delete'" :command="['delete', scope.row]"><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="'alertRule_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
|
<el-dropdown-item v-if="!scope.row.buildIn"v-has="'alertRule_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
|
||||||
<el-dropdown-item v-has="'alertSilence_add'" :command="['fastSilence', scope.row, 'alertRule']"><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, 'alertRule']"><i class="nz-icon nz-icon-fast-silence"></i><span class="operation-dropdown-text">{{$t('overall.silenceAlert')}}</span></el-dropdown-item>
|
||||||
</el-dropdown-menu>
|
</el-dropdown-menu>
|
||||||
</el-dropdown>
|
</el-dropdown>
|
||||||
@@ -156,6 +166,12 @@ export default {
|
|||||||
prop: 'method',
|
prop: 'method',
|
||||||
show: false,
|
show: false,
|
||||||
minWidth: 100
|
minWidth: 100
|
||||||
|
}, {
|
||||||
|
label: this.$t('config.dc.state'),
|
||||||
|
prop: 'state',
|
||||||
|
show: true,
|
||||||
|
minWidth: 100,
|
||||||
|
sortable: 'custom'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -49,6 +49,7 @@
|
|||||||
@queryMessage="queryMessage"
|
@queryMessage="queryMessage"
|
||||||
@reload="getTableData"
|
@reload="getTableData"
|
||||||
@addSilence="addSilence"
|
@addSilence="addSilence"
|
||||||
|
@statusChange='statusChange'
|
||||||
@selectionChange="selectionChange"
|
@selectionChange="selectionChange"
|
||||||
@showBottomBox="(targetTab, object) => { $refs.dataList.showBottomBox(targetTab, object) }"></alert-rule-table>
|
@showBottomBox="(targetTab, object) => { $refs.dataList.showBottomBox(targetTab, object) }"></alert-rule-table>
|
||||||
</template>
|
</template>
|
||||||
@@ -179,6 +180,18 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
statusChange (alertRule) {
|
||||||
|
const params = { ...alertRule, severity: null }
|
||||||
|
this.$put(this.url, params).then(response => {
|
||||||
|
if (response.code === 200) {
|
||||||
|
this.rightBox.show = false
|
||||||
|
this.$message({ duration: 1000, type: 'success', message: this.$t('tip.saveSuccess') })
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.msg)
|
||||||
|
}
|
||||||
|
this.getTableData()
|
||||||
|
})
|
||||||
|
},
|
||||||
edit (u, copyFlag) {
|
edit (u, copyFlag) {
|
||||||
this.$get(`${this.url}/${u.id}`).then(response => {
|
this.$get(`${this.url}/${u.id}`).then(response => {
|
||||||
if (response.code === 200) {
|
if (response.code === 200) {
|
||||||
|
|||||||
Reference in New Issue
Block a user