作者 xudada

路由管理

... ... @@ -49,7 +49,12 @@ export const updateRoutingKey = params =>{return http.put(`${baseUrl}/routing/up
export const deleteRoutingKey = params =>{return http.del(`${baseUrl}/routing/delete`, params);};
// MQ路由键,批量删除
export const batchRemoveRoutingKey = params =>{return http.get(`${baseUrl}/routing/batchRemove`, params);};
//路由管理查询
export const queRouter=params=>{return http.get(`${baseUrl}/routermanage/queRouter`, params);};
// 路由管理,删除
export const deleteRouter = params =>{return http.get(`${baseUrl}/routermanage/delRouter`, params);};
// 路由管理,添加
export const addRouter = params =>{return http.post(`${baseUrl}/routermanage/addRouter`, params);};
// MQ消息队列,分页查询列表
export const selectBusQueueList = params =>{return http.get(`${baseUrl}/queue/list`, params);};
... ...
... ... @@ -89,6 +89,10 @@ import ExchangeView from "./views/bus/view/ExchangeView.vue"
import ElasticSearchInfo from "./views/bus/ElasticSearchInfo.vue"
import RouterBatch from "./views/bus/RouterBatch.vue"
import MessageManagement from "./views/bus/MessageManagement.vue"
import RouterManage from "./views/bus/RouterManage"
//组件练习
//import Page7 from "./views/nav3/Page7.vue"
... ... @@ -160,6 +164,7 @@ let routes = [
// {path: '/exchange', component: Exchange, name: '交换机管理'},
// {path: '/routing', component: RoutingKey, name: '路由键管理'},
{path: '/umb', component: UserMessageBinding, name: '路由配置管理'},
{path: '/routermanage', component: RouterManage, name: '路由配置'},
{path: '/note', component: MessageNote, name: '消息记录管理'},
{path: '/note_search', component: MessageNoteSearch, name: '消息记录搜索'},
{path: '/es', component: ElasticSearchInfo, name: 'ES信息管理'},
... ... @@ -178,6 +183,15 @@ let routes = [
// {path: '/exchangeView', component: ExchangeView, name: '交换机监控'},
]
},
{
path: '/nav3',
component: Home,
name: '组件练习',
iconCls: 'el-icon-view',
children: [
{path: '/page7', component: Page7, name: '组件'},
]
},
// {
... ...
<template>
<el-container>
<el-main>
<el-card style="background-color: #F5F7FA">
<!-- 搜素区域 -->
<el-row>
<el-col :span="6">
<el-input v-model="umb_queryInfo.sndr"
size="medium"
placeholder="帐户名称" clearable>
<template slot="prepend" ><i class="el-icon-user"></i>帐户名称</template>
</el-input>
</el-col>
<el-col :span="6">
<el-input v-model="umb_queryInfo.btype"
size="medium"
placeholder="消息大类" clearable>
<template slot="prepend"><i class="el-icon-s-platform"></i>消息大类</template>
</el-input>
</el-col>
<el-col :span="6">
<el-input v-model="umb_queryInfo.stype"
size="medium"
placeholder="消息子类" clearable>
<template slot="prepend"><i class="el-icon-s-operation"></i>消息子类</template>
</el-input>
</el-col>
<el-col :span="6">
<el-button type="warning" size="medium" icon="el-icon-search" @click="queryRouterList">
查询
</el-button>
<el-button type="primary" size="medium" icon="el-icon-plus" @click="dialogFormVisible = true">
添加
</el-button>
</el-col>
</el-row>
<el-row>
<el-table
:data="umb_queryData.tableData"
border
:header-cell-style="{background:'#6F8294',color:'#FFFFFF'}"
style="width: 100%">
<el-table-column
prop="sndr"
label="帐户名称"
>
</el-table-column>
<el-table-column
prop="btype"
label="消息大类"
>
</el-table-column>
<el-table-column
prop="stype"
label="消息子类"
>
</el-table-column>
<el-table-column
prop="rcvr_topic"
label="订阅主题"
>
<template slot-scope="scope">
<div v-for="reciver in scope.row.rcvrList">
{{reciver.rcvrTopic}}<!--,{{reciver.filterList.filter}}-->
<!-- <div v-for="filters in reciver.filterList">{{filters.filter}}</div>-->
</div>
</template>
</el-table-column>
<el-table-column
prop="filter"
label="过滤规则"
>
<template slot-scope="scope">
<div v-for="reciver in scope.row.rcvrList">
<!-- {{reciver.rcvrTopic}},{{reciver.filterList.filter}}-->
<div v-for="filters in reciver.filterList">{{reciver.rcvrTopic}}:[{{filters.filter}}]</div>
</div>
</template>
</el-table-column>
<el-table-column label="操作" width="145px" align="center" fixed="right">
<template slot-scope="scope">
<el-button type="danger" size="mini" @click="delRouter(scope.$index,scope.row)">删除</el-button>
</template>
</el-table-column>
</el-table>
</el-row>
<el-row>
<div class="block">
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="umb_queryInfo.pageNum"
:page-sizes="[100, 200, 300, 400]"
:page-size="umb_queryInfo.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="umb_queryData.total">
</el-pagination>
</div>
</el-row>
<el-row>
<el-dialog title="路由消息添加" :visible.sync="dialogFormVisible">
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="账户名称" prop="sndr">
<el-input v-model="ruleForm.sndr"></el-input>
</el-form-item>
<el-form-item label="消息大类" prop="btype">
<el-input v-model="ruleForm.btype"></el-input>
</el-form-item>
<el-form-item label="消息子类" prop="stype">
<el-input v-model="ruleForm.stype"></el-input>
</el-form-item>
<el-form-item label="订阅主题">
<el-input v-model="ruleForm.reciver.rcvrTopic"></el-input>
</el-form-item>
<el-form-item label="过滤规则">
<el-input v-model="ruleForm.reciver.reciverFilter.filter"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="dialogFormVisible = false">取 消</el-button>
<el-button type="primary" @click="submitForm('ruleForm')">确 定</el-button>
</div>
</el-dialog>
</el-row>
</el-card>
</el-main>
</el-container>
</template>
<script>
import {queRouter, deleteRouter, addRouter} from "../../api/message_bus";
export default {
data(){
return{
dialogFormVisible:false,
ruleForm:{
sndr:undefined,
btype:undefined,
stype:undefined,
reciver:{
rcvrTopic:undefined,
reciverFilter:{
filter:undefined
}
},
},
rules: {
sndr: [
{ required: true, message: '请输入账户名称', trigger: 'blur' },
{ min: 3, max: 10, message: '长度在 3 到 10 个字符', trigger: 'blur' }
],
btype: [
{ required: true, message: '请输入消息大类', trigger: 'blur' }
],
stype: [
{ required: true, message: '请输入消息子类', trigger: 'blur' }
]
},
user_cloud: {
cloudUserList: [],
queryInfo: {
pageNum: 1,
pageSize: 10000,
}
},
umb_queryInfo: {
// 用户名称
sndr: undefined,
// 消息大类
btype: undefined,
// 消息子类
stype: undefined,
// 当前页数
pageNum: 1,
// 每页条数
pageSize: 10
},
umb_queryData: {
tableData: [],
total:0
}
}
},
methods: {
handleSizeChange(val) {
this.umb_queryInfo.pageSize=val;
this.queryRouterList();
},
handleCurrentChange(val) {
this.umb_queryInfo.pageNum=val;
this.queryRouterList();
},
queryRouterList(){
queRouter(this.umb_queryInfo).then((response) => {
let res = response.data;
this.umb_queryData.tableData=res.data.list;
this.umb_queryData.total=res.data.total;
}).catch(error => {
});
},
delRouter(index,row){
// 弹框询问是否删除?
this.$confirm('此操作永久删除该消息收发记录, 是否继续?', '警告', {
confirmButtonText: '确定删除',
cancelButtonText: '取消',
type: 'warning'
}
).then(() => {
deleteRouter({id:row.id}).then((response) => {
let res = response.data;
this.$message.success(res.msg);
this.queryRouterList();
}).catch(error => {
this.$message.error(res.msg);
});
}).catch(() => {
});
},
submitForm(formName){
this.$refs[formName].validate((valid) => {
if (valid) {
addRouter(this.ruleForm).then((response) => {
let res = response.data;
this.dialogFormVisible=false;
this.$message.success(res.msg);
this.queryRouterList();
}).catch(error => {
this.$message.error(res.msg);
});
} else {
console.log('error submit!!');
return false;
}
});
}
}
}
</script>
... ...
... ... @@ -49,11 +49,6 @@
<template slot="prepend" ><i class="el-icon-user"></i>路由键名称</template>
</el-input>
</el-col>
<!-- <el-col :span="4">-->
<!-- <el-input v-model="umb_queryInfo.subscriber" prefix-icon="el-icon-search"-->
<!-- size="medium"-->
<!-- placeholder="订阅者名称" clearable></el-input>-->
<!-- </el-col>-->
<el-col :span="8">
<el-button type="warning" style="width:150px" size="medium" icon="el-icon-search" @click="umb_getList">
查询配置信息
... ... @@ -140,20 +135,6 @@
<el-form :inline="true" label-width="120px" status-icon style="margin-top: -30px" align="center"
:model="umb_addForm" :rules="umb_addFormRules" ref="umb_addFormRef">
<!-- <el-form-item label="用户名称:" prop="userIds">-->
<!-- <el-select v-model="umb_addForm.userIds" prefix-icon="el-icon-search" clearable-->
<!-- @change="umb_userInfo_addChange"-->
<!-- style="width:400px" size="medium" filterable multiple-->
<!-- placeholder="请选择用户">-->
<!-- <el-option-->
<!-- v-for="item in (umb_config.userInfoList)"-->
<!-- :key="item.id"-->
<!-- :label="item.username"-->
<!-- :value="item.id">-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item label="" prop="usernames">
<el-select v-model="umb_addForm.usernames" prefix-icon="el-icon-search" clearable
@change="umb_userInfo_addChange"
... ... @@ -169,12 +150,6 @@
</el-option>
</el-select>
</el-form-item>
<!-- <el-form-item label="订阅者名称:" prop="subscriber">-->
<!-- <el-input v-model="umb_addForm.subscriber" style="width:240px" size="small" clearable-->
<!-- placeholder="请输入订阅者名称">-->
<!-- </el-input>-->
<!-- </el-form-item>-->
<el-form-item label="" prop="serverId">
<el-select v-model="umb_addForm.serverId" prefix-icon="el-icon-search" clearable
style="width:300px" size="medium" filterable
... ...