Authored by 鲁尚清

告警消除页面联调修改

... ... @@ -38,6 +38,7 @@
.info-item-statistics{
margin:8px 0;
text-align: left;
width:100%;
}
.info-content{
margin-bottom: 5px;
... ... @@ -121,7 +122,7 @@
text-align: left;
padding-bottom: 10px;
}
.update-icon{
.update-icon,.more-style{
cursor: pointer;
color:#409EFF;
}
\ No newline at end of file
... ...
... ... @@ -27,8 +27,17 @@
<div class="info-content">
<div class="info-content-body">
<div class="content-body-info">
<div class="info-item">
同类型告警处理过程:{{processingData[0]}} <i class="el-icon-more"></i>
<div class="info-item-statistics">
<!-- 同类型告警处理过程:{{processingData[0].alarmContent}} <i class="el-icon-more more-style" v-if="processingData.length>1"></i>-->
<el-collapse v-model="activeName" accordion>
<el-collapse-item :title="'同类型告警处理过程:'" name="1">
<div v-for="(item,index) in processingData" :key="index">
{{index+1}}.{{item.alarmContent}}
</div>
</el-collapse-item>
</el-collapse>
</div>
</div>
</div>
... ...
... ... @@ -13,6 +13,7 @@ export default {
},
setup(props, {attrs, slots, emit}) {
const {proxy} = Vue.getCurrentInstance();
const activeName = Vue.ref('');
//获取统计信息
let statisticsData=Vue.ref('');
let getStatisticsData=()=>{
... ... @@ -32,13 +33,6 @@ export default {
proxy.$http.get(`/api-web/bAlarmManage/alarm/course`, {alarmId:props.alarmId}, function (res) {
if (res && res.code == 0) {
if(res.data){
let arr=res.data;
let processArr=[];
arr.map(item=>{
processArr.push({
})
})
processingData.value=res.data
}
}else{
... ... @@ -57,7 +51,8 @@ export default {
getStatisticsData,
statisticsData,
getProcessing,
processingData
processingData,
activeName
}
}
}
... ...
... ... @@ -48,7 +48,7 @@
<!--新增编辑弹框-->
<cm-dialog :title="dialog.title" :showDialogVisible="dialog.show" @hidedialog="hideDialog" :showFooter="false">
<template v-slot>
<alarmsClearEditor :isExamine=true :status="dialog.amStatus" :amId="dialog.amId" />
<alarmsClearEditor :isExamine="true" @saveback='saveback' :status="dialog.amStatus" :amId="dialog.amId" />
</template>
</cm-dialog>
... ...
... ... @@ -114,7 +114,10 @@ export default {
dialog.value.amId = row.id;
dialog.value.amStatus = row.status;
}
//审核保存后关闭弹框
let saveback=(val)=>{
hideDialog(val)
}
// 挂载完
Vue.onMounted(() => {
getDataList();
... ... @@ -129,7 +132,8 @@ export default {
tableData,
loaddata,
getDataList,
handle
handle,
saveback
}
}
... ...
... ... @@ -82,8 +82,8 @@
<div class="alarmsClearEditor-scheme">
<div class="scheme-title-per">
<span class="title-handle-per">处理方案</span>
<span class="title-handle-per" v-if="isExamine">处理人:{{loginName}}</span>
<span class="title-handle-per" v-if="isExamine">时间:{{alarmInfo.dateTime}}</span>
<span class="title-handle-per" v-if="isExamine">处理人:{{alarmInfo.manageName}}</span>
<span class="title-handle-per" v-if="isExamine">时间:{{alarmInfo.manageTime}}</span>
<el-tooltip :content="'是否入知识库'" placement="top" v-if="!isExamine">
<el-switch
... ... @@ -114,7 +114,7 @@
</div>
<cm-wang-editor v-if="!isExamine" v-model="detail" :repositoryInfo="repositoryInfo" :isDisabled="repositoryInto" :isClear="isClear" @change="change" @changetext="changetext"></cm-wang-editor>
<div class="editor_detail" v-if="isExamine" >de3333
<div v-html="detail"></div>
<div v-html="alarmInfo.pcontent"></div>
</div>
</div>
<div class="detail_comments" v-if="isExamine">
... ...
... ... @@ -10,6 +10,11 @@ export default {
amId:{
type: String,
default: ''
},
//0-草稿
amStatus:{
type:Number,
default:1
}
},
data () {
... ... @@ -61,8 +66,6 @@ export default {
approver:approverName.value,//审批人
// dateTime:dateTime.value,//当前时间
keyword:dynamicTagsStr,//关键字
managetime:dateTime.value,//处理时间
managename:loginName.value,//处理人
repositoryinto:repositoryInto.value?1:0,//是否入知识库 1入,0不入
citecover:citeCover.value?1:0,//引用是否覆盖 0 未覆盖 1已覆盖
reason:reason.value,//消除原因
... ... @@ -70,6 +73,14 @@ export default {
alarmType:alarmInfo.value.alarmTypeCustom,//告警类型,active活动告警,his历史告警
}
if(val==2 || val==3){
params.id=props.amId;
params.managetime=alarmInfo.managetime;//处理时间
params.managename=alarmInfo.managename;//处理人
}else{
params.managetime=dateTime.value;
params.managename=loginName.value;
}
if(opinion.value){
params.opinion=opinion.value;//审批意见
}
... ... @@ -88,7 +99,11 @@ export default {
}
//取消按钮
let cancleBtn=()=>{
window.parent.layer.closeAll();
if(props.isExamine){
emit('saveback',false)
}else {
window.parent.layer.closeAll();
}
}
//关键字标签
... ... @@ -193,6 +208,7 @@ export default {
}
proxy.userList.push({
nickname:v.nickname,
value: v.username,
type:'USER',
desc: `${desc.join(' / ')}`,
... ... @@ -204,42 +220,16 @@ export default {
},function (){},false)
}
let getCheckedFile = () => {
let arr = dataList.value.filter(function (v) {
if (v.checked != undefined && v.checked == true) {
return v;
}
})
if (arr.length == 0) {
proxy.$global.showMsg('请选择需要操作的文档!', 'warning');
return;
}
if (arr.length == 1) {
// 查询文件的权限
proxy.$http.get(`/inspection-report/file/auth/getGrant`, {docId: arr[0].id}, function (res) {
if (res && res.code == 0) {
let map = res.map;
if (map) {
let all = map.allIds;
userFileRight.value = all;
}
}
})
} else {
// 多文件不查询权限
if(alarmInfo.approver){
userFileRight.value = [alarmInfo.approver];
}else{
userFileRight.value = [];
}
return arr;
}
// 用户授权弹框
let showUserDialog = (flg) => {
if (flg) {
// let arr = getCheckedFile();
// if (arr && arr.length > 0) {
// showUserDialogVisible.value = flg;
// }
// getUserList();
getCheckedFile();
showUserDialogVisible.value = flg;
} else {
... ... @@ -276,11 +266,19 @@ export default {
let getAlarmInfo=()=>{
if(props.isExamine){
//审核告警消除
// if(props.amId){
if(props.amStatus){
//草稿
}else{
// getAlarmStatis();
}
getAlarmStatis();
// }
}else {
alarmInfo.value=proxy.$route.query;
getUserByToken();
getUser();
}
getUserByToken();
getUser();
}
//级联选择器
const cascaderValue = Vue.ref([])
... ... @@ -420,6 +418,26 @@ export default {
},1000);
getAlarmInfo();
})
//知识库获取详情
let getAlarmStatis=()=>{
proxy.$http.get(`/api-web/bAlarmManage/alarm/getAlarmStatisByamId`, {amId:props.amId}, function (res) {
if (res && res.code == 0) {
let data=res.object;
if(data){
alarmInfo.value=data;
if( alarmInfo.value.approver){
approverName.value=alarmInfo.value.approver;
userList.value.map(item=>{
if(item.userName== alarmInfo.value.approver){
approverLabel.value=item.nickname;
}
})
}
}
}
})
}
Vue.onUnmounted(()=>{
timer.value=null;
})
... ... @@ -430,7 +448,7 @@ export default {
title, dialogVisible, height, dataList, columns, closeDetail,okfunc, getPage,selectionChange,dynamicTagsAppend,
showUserDialog,showUserDialogVisible,userFileRight,userList,selectUser,getUserList,titles,
getAlarmInfo,alarmInfo,cascaderValue,propsTrigger,handleChange,cascaderOptions,noticeFlag,
getUserByToken,getUser,cancleBtn,repositoryInfo,repositoryId,opinion
getUserByToken,getUser,cancleBtn,repositoryInfo,repositoryId,opinion,getAlarmStatis
}
}
... ...