作者 朱兆平

Merge remote-tracking branch 'origin/message_bus' into message_bus

@@ -24,7 +24,7 @@ module.exports = { @@ -24,7 +24,7 @@ module.exports = {
24 }, 24 },
25 dev: { 25 dev: {
26 env: require('./dev.env'), 26 env: require('./dev.env'),
27 - port: 12020, 27 + port: 12021,
28 autoOpenBrowser: true, 28 autoOpenBrowser: true,
29 assetsSubDirectory: 'static', 29 assetsSubDirectory: 'static',
30 assetsPublicPath: '/', 30 assetsPublicPath: '/',
@@ -88,6 +88,8 @@ import UserInfo from "./views/bus/UserInfo.vue" @@ -88,6 +88,8 @@ import UserInfo from "./views/bus/UserInfo.vue"
88 import QueueView from "./views/bus/view/QueueView.vue" 88 import QueueView from "./views/bus/view/QueueView.vue"
89 import ExchangeView from "./views/bus/view/ExchangeView.vue" 89 import ExchangeView from "./views/bus/view/ExchangeView.vue"
90 import ElasticSearchInfo from "./views/bus/ElasticSearchInfo.vue" 90 import ElasticSearchInfo from "./views/bus/ElasticSearchInfo.vue"
  91 +import ConfigureS from "./views/bus/Configure.vue"
  92 +
91 93
92 let routes = [ 94 let routes = [
93 { 95 {
@@ -159,9 +161,9 @@ let routes = [ @@ -159,9 +161,9 @@ let routes = [
159 {path: '/note', component: MessageNote, name: '消息记录管理'}, 161 {path: '/note', component: MessageNote, name: '消息记录管理'},
160 {path: '/note_search', component: MessageNoteSearch, name: '消息记录搜索'}, 162 {path: '/note_search', component: MessageNoteSearch, name: '消息记录搜索'},
161 {path: '/es', component: ElasticSearchInfo, name: 'ES信息管理'}, 163 {path: '/es', component: ElasticSearchInfo, name: 'ES信息管理'},
  164 + {path: '/configures', component: ConfigureS, name: '消息路由批量配置'}
162 ] 165 ]
163 }, 166 },
164 -  
165 { 167 {
166 path: '/bus/view', 168 path: '/bus/view',
167 component: Home, 169 component: Home,
  1 +<template>
  2 + <el-container>
  3 + <el-main>
  4 + <div style="border: 6px solid #6F8294;">
  5 + <el-row style="margin: -2px">
  6 + <el-col :span="6">
  7 + <el-row class="bt">
  8 + <span>选择消息发送端</span>
  9 + </el-row>
  10 + <el-row>
  11 + <el-tree
  12 + :data="send"
  13 + show-checkbox
  14 + node-key="id"
  15 + :props="defaultProps">
  16 + </el-tree>
  17 + </el-row>
  18 + </el-col>
  19 + <el-col :span="6" align="center">
  20 + <el-row class="bt">
  21 + <span>选择要发送的消息</span>
  22 + </el-row>
  23 + <el-row>
  24 + <el-tree
  25 + :data="ready"
  26 + show-checkbox
  27 + node-key="id"
  28 + :props="defaultProps">
  29 + </el-tree>
  30 + </el-row>
  31 + </el-col>
  32 + <el-col :span="6">
  33 + <el-row class="bt">
  34 + <span>选择消息接收端</span>
  35 + </el-row>
  36 + <el-row>
  37 + <el-tree
  38 + :data="send"
  39 + show-checkbox
  40 + node-key="id"
  41 + :props="defaultProps">
  42 + </el-tree>
  43 + </el-row>
  44 + </el-col>
  45 + <el-col :span="6">
  46 + <el-row class="bt">
  47 + <span>消息路由配置其他属性</span>
  48 + </el-row>
  49 + <el-row>
  50 + <el-form :inline="true" :rules="rules" :model="formInline" class="demo-form-inline" align="center" style="border:3px solid #6F8294;height: 800px;padding-top: 15px">
  51 + <el-form-item label="路由状态:">
  52 + <el-select v-model="formInline.state" placeholder="请选择" style="width: 150px" size="mini">
  53 + <el-option label="启用" value="01"></el-option>
  54 + <el-option label="关闭" value="02"></el-option>
  55 + </el-select>
  56 + </el-form-item>
  57 + <el-form-item label="路由用途:">
  58 + <el-select v-model="formInline.purpose" placeholder="请选择" style="width: 150px" size="mini">
  59 + <el-option label="生产用" value="03"></el-option>
  60 + </el-select>
  61 + </el-form-item>
  62 + <el-form-item label="路由描述:">
  63 + <el-input type="textarea" v-model="formInline.describe" style="width: 150px" size="mini"></el-input>
  64 + </el-form-item>
  65 + </el-form>
  66 + </el-row>
  67 + </el-col>
  68 + </el-row>
  69 +
  70 + </div>
  71 + </el-main>
  72 + </el-container>
  73 +</template>
  74 +
  75 +<script>
  76 + export default {
  77 + name: "Configure",
  78 +
  79 + data() {
  80 + return {
  81 + formInline: {
  82 + state: '',
  83 + purpose:'',
  84 + describe:''
  85 + },
  86 + send: [{
  87 + id: 1,
  88 + label: '代理人系统接收账号(AGTR)',
  89 + }, {
  90 + id: 2,
  91 + label: '代理人接收中外运预配(AGTZ)',
  92 + }, {
  93 + id: 3,
  94 + label: '【测试】舱单自动化解析系统(AMDB)',
  95 + }],
  96 + ready: [{
  97 + id: 1,
  98 + label: '航班动态(1)',
  99 + children: [{
  100 + id: 7,
  101 + label: '',
  102 + children: [{
  103 + id: 8,
  104 + label: ''
  105 + }, {
  106 + id: 9,
  107 + label: ''
  108 + }]
  109 + }]
  110 + }, {
  111 + id: 2,
  112 + label: '航班历史(2)',
  113 + children: [{
  114 + id: 7,
  115 + label: '',
  116 + children: [{
  117 + id: 8,
  118 + label: ''
  119 + }, {
  120 + id: 9,
  121 + label: ''
  122 + }]
  123 + }]
  124 + }, {
  125 + id: 3,
  126 + label: '卡口业务交换信息(80)',
  127 + children: [{
  128 + id: 4,
  129 + label: '卡口业务数据(KAKO)',
  130 + children: [{
  131 + id: 5,
  132 + label: 'ALL'
  133 + }, {
  134 + id: 6,
  135 + label: '卡口车单绑定关系数据(CARB)'
  136 + }]
  137 + }]
  138 + }],
  139 + defaultProps: {
  140 + children: 'children',
  141 + label: 'label'
  142 + }
  143 + }
  144 + },
  145 + methods: {
  146 + onSubmit() {
  147 + console.log('submit!');
  148 + }
  149 + }
  150 + }
  151 +</script>
  152 +
  153 +<style>
  154 + .bt {
  155 + font-weight: bold;
  156 + background-color: #6F8294;
  157 + color: #ffffff;
  158 + text-align: center
  159 + }
  160 + .el-col {
  161 + margin-right: 0px;
  162 + }
  163 + .el-tree {
  164 + padding-top: 15px;
  165 + border:3px solid #6F8294;
  166 + height: 800px
  167 + }
  168 + .el-row .el-col .el-row {
  169 + margin-top: 0px;
  170 + }
  171 +</style>
@@ -17,52 +17,66 @@ @@ -17,52 +17,66 @@
17 </el-col> 17 </el-col>
18 </el-row> 18 </el-row>
19 </div> 19 </div>
20 - <div :index="item.msgid+''" v-for="item in messageNote_page.messageNoteList" :key="item.msgid" style="margin-left: 30px;margin-top: 30px">  
21 - <el-row>  
22 - <el-col :span="4">  
23 - <span>消息id:</span>  
24 - <el-tag>{{item.msgid}}</el-tag>  
25 - </el-col>  
26 - <el-col :span="2">  
27 - <span>发送人:</span>  
28 - <el-tag>{{item.sndr}}</el-tag>  
29 - </el-col>  
30 - <el-col :span="1">  
31 - <span>消息大类:</span>  
32 - <el-tag type="success">{{item.btype}}</el-tag>  
33 - </el-col>  
34 - <el-col :span="1">  
35 - <span>消息子类:</span>  
36 - <el-tag type="success">{{item.stype}}</el-tag>  
37 - </el-col>  
38 - <el-col :span="2">  
39 - <span>发送时间:</span>  
40 - <el-tag>{{item.ddtm}}</el-tag>  
41 - </el-col>  
42 - <el-col :span="6">  
43 - <span>路由接收者:</span>  
44 - <template v-for="reciver in item.rcvrs">  
45 - <el-tag type="danger">{{reciver.username}}</el-tag>  
46 - </template> 20 + <div class="ft" :index="item.msgid+''" v-for="item in messageNote_page.messageNoteList" :key="item.msgid" style="margin-left: 30px;margin-top: 30px">
  21 + <el-row style="min-height: 200px">
  22 + <el-row>
  23 + <el-col :span="7">
  24 + <span>消息id:</span>
  25 + <el-tag>{{item.msgid}}</el-tag>
  26 + </el-col>
  27 + <el-col :span="8">
  28 + <span>发送时间:</span>
  29 + <el-tag>{{item.ddtm}}</el-tag>
  30 + </el-col>
47 31
48 - </el-col>  
49 - <el-col :span="6">  
50 - <span>消息接收者:</span>  
51 - <template v-for="logitem in item.rcvlog">  
52 - <el-tag type="warning">{{logitem.username}} [{{logitem.rvtm}}]</el-tag>  
53 - </template>  
54 -  
55 - </el-col>  
56 - <el-col :span="2">  
57 - <el-button type="primary" @click="messageNote_toViewContentDialogDialog(item)" size="small">查看内容  
58 - </el-button>  
59 - </el-col>  
60 - </el-row>  
61 - <el-row>  
62 - <el-col style="width: 90%" :span="22">  
63 - <el-input v-model="item.msg" readonly type="textarea" :rows="3"></el-input>  
64 - </el-col> 32 + </el-row>
  33 + <el-row>
  34 + <el-col :span="7">
  35 + <span>发送人:</span>
  36 + <el-tag>{{item.sndr}}</el-tag>
  37 + </el-col>
  38 + <el-col :span="3">
  39 + <span>消息大类:</span>
  40 + <el-tag type="success">{{item.btype}}</el-tag>
  41 + </el-col>
  42 + <el-col :span="3">
  43 + <span>消息子类:</span>
  44 + <el-tag type="success">{{item.stype}}</el-tag>
  45 + </el-col>
  46 + <el-col :span="4">
  47 + <div>
  48 + <span>路由接收者:</span>
  49 + </div>
  50 + <template v-for="reciver in item.rcvrs">
  51 + <el-tag type="danger">{{reciver.username}}</el-tag>
  52 + </template>
  53 + </el-col>
  54 + <el-col :span="4">
  55 + <div>
  56 + <span >消息接收者:</span>
  57 + </div>
  58 + <template v-for="logitem in item.rcvlog">
  59 + <el-tag type="warning">{{logitem.username}} [{{logitem.rvtm}}]</el-tag>
  60 + </template>
  61 + </el-col>
  62 + </el-row>
65 </el-row> 63 </el-row>
  64 + <div class="sun">
  65 + <el-row>
  66 + <el-col :span="2">
  67 + <el-button type="primary" @click="messageNote_toViewContentDialogDialog(item)" size="small">查看内容
  68 + </el-button>
  69 + </el-col>
  70 + <el-col style="width: 45%;margin-left: -10px" :span="14">
  71 + <el-input v-model="item.msg" readonly type="textarea" :rows="3"></el-input>
  72 + </el-col>
  73 + </el-row>
  74 + <el-row>
  75 +
  76 + </el-row>
  77 + </div>
  78 +
  79 +
66 <el-divider></el-divider> 80 <el-divider></el-divider>
67 </div> 81 </div>
68 82
@@ -209,7 +223,7 @@ @@ -209,7 +223,7 @@
209 if (res.code !== '200') { 223 if (res.code !== '200') {
210 // 关闭加载 224 // 关闭加载
211 _this.messageNote_loading.listLoading = false; 225 _this.messageNote_loading.listLoading = false;
212 - return _this.$message.error(res.msg); 226 + return _this.$message.error('获取消息收发记录,失败!');
213 } 227 }
214 // 获取列表数据 228 // 获取列表数据
215 _this.messageNote_page.messageNoteList = res.data.content; 229 _this.messageNote_page.messageNoteList = res.data.content;
@@ -253,5 +267,12 @@ @@ -253,5 +267,12 @@
253 </script> 267 </script>
254 268
255 <style scoped> 269 <style scoped>
256 - 270 + .ft{
  271 + position: relative;
  272 + }
  273 + .sun{
  274 + position: absolute;
  275 + top:100px;
  276 + width: 100%;
  277 + }
257 </style> 278 </style>