Authored by 王涛

修改图标消失的问题

Showing 47 changed files with 370 additions and 1 deletions
<title>告警意见处理</title>
<iframe src="/vue3/index.html#/alarmsApply" frameborder="0" class="layadmin-iframe" style="height: 99.5%!important;"/>
... ...
<title>告警意见处理</title>
<iframe src="/vue3/index.html#/alarmsKnowledge" frameborder="0" class="layadmin-iframe" style="height: 99.5%!important;"/>
... ...
... ... @@ -51,7 +51,7 @@
.container .cm-card .search .condition div {
margin-right: 2px !important;
margin-bottom: 3px !important;
width: 250px !important;
/*width: 250px !important;*/
}
.container .cm-card .search .btns {
... ...
... ... @@ -83,6 +83,21 @@ const routes = [{
name: 'alarmsClearEditor',
component: () => myImport('views/alarmsClearEditor/index'),
},
{
path: '/alarmsApply',
name: 'alarmsApply',
component: () => myImport('views/alarmsClearEditor/apply/index'),
},
{
path: '/alarmsKnowledge',
name: 'alarmsKnowledge',
component: () => myImport('views/alarmsClearEditor/knowledge/index'),
},
{
path: '/res/list',
name: 'resList',
component: () => myImport('views/res/list/index')
},
];
// hash模式: createWebHashHistory
... ...
<div class="container" :style="{'height':height+'px','max-height':height+'px'}">
<div class="cm-card" :style="{'min-height':height+'px','max-height':height+'px','height':'100%'}">
<div class="search">
<div class="condition">
<el-form-item>
<el-button-group class="ml-4">
<el-button :type="search.status == 0 ? 'primary' : ''" @click="getDataList(0)">草稿</el-button>
<el-button :type="search.status == 1 ? 'primary' : ''" @click="getDataList(1)">审批中</el-button>
<el-button :type="search.status == 2 ? 'primary' : ''" @click="getDataList(2)">已审批</el-button>
<el-button :type="search.status == 3 ? 'primary' : ''" @click="getDataList(3)">驳回</el-button>
</el-button-group>
</el-form-item>
<el-form-item >
<el-input v-else v-model="search.keyword" placeholder="请输入关键字"></el-input>
</el-form-item>
<el-form-item >
<el-button @click="getDataList">查询</el-button>
</el-form-item>
</div>
</div>
<div class="search-table">
<cm-table-page :columns="tableData.columns" :dataList="tableData.dataList"
:showIndex="true"
@loaddata = "loaddata"
:total="tableData.count"
:showSelection="true"
:showBorder="true"
:loading="false"
:pageSize="pageSize"
:showPage="true"
:showTools="true"
:height="height - 110">
<template #default="{row,prop,column}">
<div v-if="prop == 'resName'">
<resNameComponents :textString="row.resName" :resTypeId="row.resType" :resId="resId"/>
</div>
</template>
<template #tools="{scope}">
<div class="list-handle">
<span class="icon-bg">
<i class="el-icon-delete" title="处理" @click="handleDelete(scope.row)"></i>
</span>
</div>
</template>
</cm-table-page>
</div>
</div>
</div>
<!--新增编辑弹框-->
<cm-dialog :title="titleName" width="40%" :showDialogVisible="cacheVisible" @hidedialog="cancelBtn" :showFooter="false">
<template v-slot>
</template>
</cm-dialog>
... ...
export default {
name: 'alarmsClearEditorApply',
template: '',
components: {
'resNameComponents': Vue.defineAsyncComponent(
() => myImport('components/page/res/resNameComponents/index')
)
},
props:[],
setup(props, {attrs, slots, emit}){
const {proxy} = Vue.getCurrentInstance();
let height = Vue.ref(window.innerHeight);
let search = Vue.ref({
status:0,
keyword:'',
page:1,
limit:10,
});
//表格字段
let tableData = Vue.ref({
count:0,
dataList:[],
columns : [
{
prop: 'alarmNo',
label: '告警编号',
sortable: true,
align: 'center',
width:'150'
},
{
prop: 'resName',
label: '资源名称',
sortable: true,
align: 'center',
width:'250',
},
{
prop: 'resType',
label: '资源类型',
sortable: true,
align: 'center',
width:'150'
},{
prop: 'managenameName',
label: '处理人',
sortable: true,
align: 'center',
width:'100'
},{
prop: 'approverName',
label: '审批人',
sortable: true,
align: 'center',
width:'100'
},{
prop: 'reason',
label: '消除原因',
sortable: true,
align: 'center',
width:'300'
}
]
})
//获取aj配置信息
let getDataList=(status)=>{
if(status == undefined){
status = 0
}
search.value.status = status;
proxy.$http.get(`/api-web/bAlarmManage/page`,{
page:search.value.page,
limit:search.value.limit,
keyword:search.value.keyword,
status:search.value.status
}, function (res) {
if (res && res.data) {
tableData.value.dataList = res.data;
tableData.value.count = res.count;
} else {
tableData.value.dataList = [];
tableData.value.count = 0;
}
});
}
let loaddata = ({ page, limit}) =>{
search.value.page = page;
search.value.limit = limit;
}
// 挂载完
Vue.onMounted(() => {
getDataList();
})
return {
height,
search,
tableData,
loaddata,
getDataList
}
}
}
... ...
<div class="container" :style="{'height':height+'px','max-height':height+'px'}">
<div class="cm-card" :style="{'min-height':height+'px','max-height':height+'px','height':'100%'}">
<div class="search">
<div class="condition">
<el-form-item >
<el-input v-else v-model="" placeholder="请输入关键字"></el-input>
</el-form-item>
<el-form-item >
<el-button @click="loadResList">查询</el-button>
</el-form-item>
</div>
</div>
<div class="search-table">
<cm-table-page :columns="tableData.columns" :dataList="tableData.dataList"
:showIndex="true"
:total="tableData.count"
@loaddata = "loaddata"
:showSelection="true"
:showBorder="true"
:loading="false"
:pageSize="pageSize"
:showPage="true"
:showTools="true"
:height="height - 110">
<template #default="{row,prop,column}">
<div v-if="prop == 'resName'">
<resNameComponents :textString="row.resName" :resTypeId="row.resType" :resId="resId"/>
</div>
</template>
<template #tools="{scope}">
<div class="list-handle">
<span class="icon-bg">
<i class="el-icon-delete" title="处理" @click="handleDelete(scope.row)"></i>
</span>
</div>
</template>
</cm-table-page>
</div>
</div>
</div>
<!--新增编辑弹框-->
<cm-dialog :title="titleName" width="40%" :showDialogVisible="cacheVisible" @hidedialog="cancelBtn" :showFooter="false">
<template v-slot>
</template>
</cm-dialog>
... ...
export default {
name: 'alarmsClearEditorApply',
template: '',
components: {
'resNameComponents': Vue.defineAsyncComponent(
() => myImport('components/page/res/resNameComponents/index')
)
},
props: [],
setup(props, {attrs, slots, emit}) {
const {proxy} = Vue.getCurrentInstance();
let height = Vue.ref(window.innerHeight);
let search = Vue.ref({
status: 0,
keyword: '',
page: 1,
limit: 10,
});
//表格字段
let tableData = Vue.ref({
count:0,
dataList: [],
columns: [
{
prop: 'reason',
label: '原因',
sortable: true,
align: 'center',
width: '300'
}, {
prop: 'managenameName',
label: '贡献人',
sortable: true,
align: 'center',
width: '100'
}, {
prop: 'approverName',
label: '审批人',
sortable: true,
align: 'center',
width: '100'
}, {
prop: 'manageTime',
label: '处理时间',
sortable: true,
align: 'center',
width: '150'
}, {
prop: 'browseNum',
label: '浏览量',
sortable: true,
align: 'center',
width: '150'
}, {
prop: 'citationNum',
label: '引用次数',
sortable: true,
align: 'center',
width: '150'
},
{
prop: 'keyword',
label: '关键字',
sortable: true,
align: 'center',
width: '250',
render: function (row) {
}
},
{
prop: 'lastAlarmTime',
label: '最后一次告警时间',
sortable: true,
align: 'center',
width: '150'
},
]
})
//获取aj配置信息
let getDataList = () => {
proxy.$http.get(`/api-web//bAlarmManageRepository/page`, {
page: search.value.page,
limit: search.value.limit,
keyword: search.value.keyword,
status: search.value.status
}, function (res) {
if (res && res.data) {
tableData.value.dataList = res.data;
tableData.value.count = res.count;
} else {
tableData.value.dataList = [];
tableData.value.count = 0;
}
});
}
let loaddata = ({page, limit}) => {
search.value.page = page;
search.value.limit = limit;
}
// 挂载完
Vue.onMounted(() => {
getDataList();
})
return {
height,
search,
loaddata,
tableData,
getDataList
}
}
}
... ...
... ... @@ -185,6 +185,15 @@ const routes = [{
name: 'alarmsClearEditor',
component: () => myImport('views/alarmsClearEditor/index'),
},
{
path: '/alarmsApply',
name: 'alarmsApply',
component: () => myImport('views/alarmsClearEditor/apply/index'),
},{
path: '/alarmsKnowledge',
name: 'alarmsKnowledge',
component: () => myImport('views/alarmsClearEditor/knowledge/index'),
}
];
// hash模式: createWebHashHistory
... ...