作者 王勇

编辑方法,不可修改项添加disable

@@ -100,3 +100,5 @@ export const getServerAndHostAndExchangeList = params =>{return http.get(`${base @@ -100,3 +100,5 @@ export const getServerAndHostAndExchangeList = params =>{return http.get(`${base
100 export const getDeleteTime = params =>{return http.get(`${baseUrl}/scheduling/get`, params);}; 100 export const getDeleteTime = params =>{return http.get(`${baseUrl}/scheduling/get`, params);};
101 export const setDeleteTime = params =>{return http.get(`${baseUrl}/scheduling/set`, params);}; 101 export const setDeleteTime = params =>{return http.get(`${baseUrl}/scheduling/set`, params);};
102 102
  103 +// 用户信息,获取用户信息列表
  104 +export const getUserInfoList = params =>{return http.get(`${baseUrl}/user/userList`, params);};
@@ -12,7 +12,7 @@ @@ -12,7 +12,7 @@
12 </el-col> 12 </el-col>
13 <el-col :span="4"> 13 <el-col :span="4">
14 <el-cascader 14 <el-cascader
15 - size="medium" 15 + size="medium" filterable
16 v-model="exchange_queryInfo.virtualHostId" 16 v-model="exchange_queryInfo.virtualHostId"
17 :options="exchange_config.cascade.server_hostList" 17 :options="exchange_config.cascade.server_hostList"
18 :show-all-levels="false" 18 :show-all-levels="false"
@@ -130,14 +130,16 @@ @@ -130,14 +130,16 @@
130 </el-form-item> 130 </el-form-item>
131 <el-form-item label="所属虚拟主机:" prop="virtualHostId"> 131 <el-form-item label="所属虚拟主机:" prop="virtualHostId">
132 <el-cascader 132 <el-cascader
133 - clearable style="width: 240px" size="small" 133 + clearable filterable
  134 + style="width: 240px" size="small"
134 v-model="exchange_addForm.virtualHostId" 135 v-model="exchange_addForm.virtualHostId"
135 @change="cascadeAddChange" 136 @change="cascadeAddChange"
136 :options="exchange_config.cascade.server_hostList" 137 :options="exchange_config.cascade.server_hostList"
137 :show-all-levels="false" 138 :show-all-levels="false"
138 :change-on-select="false" 139 :change-on-select="false"
139 :props="exchange_config.cascade.defaultParams" 140 :props="exchange_config.cascade.defaultParams"
140 - placeholder="请选择所属虚拟主机"></el-cascader> 141 + placeholder="请选择所属虚拟主机">
  142 + </el-cascader>
141 </el-form-item> 143 </el-form-item>
142 <el-form-item label="交换机类型:" prop="exchangeType"> 144 <el-form-item label="交换机类型:" prop="exchangeType">
143 <el-select v-model="exchange_addForm.exchangeType" style="width: 240px" clearable 145 <el-select v-model="exchange_addForm.exchangeType" style="width: 240px" clearable
@@ -186,11 +188,13 @@ @@ -186,11 +188,13 @@
186 </el-form-item> 188 </el-form-item>
187 <el-form-item label="扩展参数:" prop="arguments"> 189 <el-form-item label="扩展参数:" prop="arguments">
188 <el-input v-model="exchange_addForm.arguments" style="width:240px" clearable size="small" 190 <el-input v-model="exchange_addForm.arguments" style="width:240px" clearable size="small"
  191 + type="textarea" autosize :rows="1"
189 placeholder="扩展参数(JSON格式)"> 192 placeholder="扩展参数(JSON格式)">
190 </el-input> 193 </el-input>
191 </el-form-item> 194 </el-form-item>
192 <el-form-item label="相关描述:" prop="description"> 195 <el-form-item label="相关描述:" prop="description">
193 <el-input v-model="exchange_addForm.description" style="width:240px" clearable size="small" 196 <el-input v-model="exchange_addForm.description" style="width:240px" clearable size="small"
  197 + type="textarea" autosize :rows="1"
194 placeholder="相关描述"> 198 placeholder="相关描述">
195 </el-input> 199 </el-input>
196 </el-form-item> 200 </el-form-item>
@@ -221,7 +225,8 @@ @@ -221,7 +225,8 @@
221 </el-form-item> 225 </el-form-item>
222 <el-form-item label="所属虚拟主机:" prop="virtualHostId"> 226 <el-form-item label="所属虚拟主机:" prop="virtualHostId">
223 <el-cascader 227 <el-cascader
224 - disabled clearable style="width: 240px" size="small" 228 + disabled filterable
  229 + clearable style="width: 240px" size="small"
225 v-model="exchange_editForm.virtualHostId" 230 v-model="exchange_editForm.virtualHostId"
226 @change="cascadeEditChange" 231 @change="cascadeEditChange"
227 :options="exchange_config.cascade.server_hostList" 232 :options="exchange_config.cascade.server_hostList"
@@ -267,7 +272,8 @@ @@ -267,7 +272,8 @@
267 </el-select> 272 </el-select>
268 </el-form-item> 273 </el-form-item>
269 <el-form-item label="是否仅内部使用:" prop="internal"> 274 <el-form-item label="是否仅内部使用:" prop="internal">
270 - <el-select v-model="exchange_editForm.internal" style="width: 240px" disabled clearable size="small" 275 + <el-select v-model="exchange_editForm.internal" style="width: 240px" disabled clearable
  276 + size="small"
271 placeholder="是否仅内部使用"> 277 placeholder="是否仅内部使用">
272 <el-option 278 <el-option
273 v-for="item in booleanList" 279 v-for="item in booleanList"
@@ -278,12 +284,14 @@ @@ -278,12 +284,14 @@
278 </el-select> 284 </el-select>
279 </el-form-item> 285 </el-form-item>
280 <el-form-item label="扩展参数:" prop="arguments"> 286 <el-form-item label="扩展参数:" prop="arguments">
281 - <el-input v-model="exchange_editForm.arguments" style="width:240px" disabled clearable size="small" 287 + <el-input v-model="exchange_editForm.arguments" style="width:240px" disabled clearable
  288 + size="small" type="textarea" autosize :rows="1"
282 placeholder="扩展参数(JSON格式)"> 289 placeholder="扩展参数(JSON格式)">
283 </el-input> 290 </el-input>
284 </el-form-item> 291 </el-form-item>
285 <el-form-item label="相关描述:" prop="description"> 292 <el-form-item label="相关描述:" prop="description">
286 <el-input v-model="exchange_editForm.description" style="width:240px" clearable size="small" 293 <el-input v-model="exchange_editForm.description" style="width:240px" clearable size="small"
  294 + type="textarea" autosize :rows="1"
287 placeholder="相关描述"> 295 placeholder="相关描述">
288 </el-input> 296 </el-input>
289 </el-form-item> 297 </el-form-item>
@@ -10,6 +10,25 @@ @@ -10,6 +10,25 @@
10 size="medium" 10 size="medium"
11 placeholder="队列名称" clearable></el-input> 11 placeholder="队列名称" clearable></el-input>
12 </el-col> 12 </el-col>
  13 +
  14 +<!-- <el-col :span="4">-->
  15 +<!-- <el-select v-model="queue_queryInfo.username" prefix-icon="el-icon-search" clearable-->
  16 +<!-- size="medium" filterable remote-->
  17 +<!-- placeholder="请选择用户">-->
  18 +<!-- <el-option-->
  19 +<!-- v-for="item in (queue_config.userInfoList)"-->
  20 +<!-- :key="item.id"-->
  21 +<!-- :label="item.username"-->
  22 +<!-- :value="item.username">-->
  23 +<!-- </el-option>-->
  24 +<!-- </el-select>-->
  25 +<!-- </el-col>-->
  26 +
  27 + <el-col :span="4">
  28 + <el-input v-model="queue_queryInfo.username" prefix-icon="el-icon-search"
  29 + size="medium"
  30 + placeholder="所属用户" clearable></el-input>
  31 + </el-col>
13 <el-col :span="4"> 32 <el-col :span="4">
14 <el-cascader 33 <el-cascader
15 size="medium" 34 size="medium"
@@ -24,10 +43,10 @@ @@ -24,10 +43,10 @@
24 </el-col> 43 </el-col>
25 <el-col :span="8"> 44 <el-col :span="8">
26 <el-button type="success" style="width:150px" size="medium" @click="queue_getList"> 45 <el-button type="success" style="width:150px" size="medium" @click="queue_getList">
27 - 查询交换机 46 + 查询队列
28 </el-button> 47 </el-button>
29 <el-button type="primary" style="width:150px" size="medium" @click="queue_toAddDialog"> 48 <el-button type="primary" style="width:150px" size="medium" @click="queue_toAddDialog">
30 - 添加交换机 49 + 添加队列
31 </el-button> 50 </el-button>
32 </el-col> 51 </el-col>
33 </el-row> 52 </el-row>
@@ -41,8 +60,11 @@ @@ -41,8 +60,11 @@
41 <el-table-column type="index" align="center"></el-table-column> 60 <el-table-column type="index" align="center"></el-table-column>
42 <el-table-column label="队列名称" prop="queueName" align="center" 61 <el-table-column label="队列名称" prop="queueName" align="center"
43 width="220"></el-table-column> 62 width="220"></el-table-column>
  63 + <el-table-column label="所属用户" prop="username" align="center"
  64 + width="220"></el-table-column>
44 <el-table-column label="所属虚拟主机" prop="virtualHost.virtualHostName" align="center" 65 <el-table-column label="所属虚拟主机" prop="virtualHost.virtualHostName" align="center"
45 width="220"></el-table-column> 66 width="220"></el-table-column>
  67 + <el-table-column label="相关描述" prop="description" align="center" width="280"></el-table-column>
46 <el-table-column label="是否持久化" prop="durability" align="center" width="145"> 68 <el-table-column label="是否持久化" prop="durability" align="center" width="145">
47 <template slot-scope="scope"> 69 <template slot-scope="scope">
48 <span v-if="scope.row.durability ===false">否</span> 70 <span v-if="scope.row.durability ===false">否</span>
@@ -55,9 +77,9 @@ @@ -55,9 +77,9 @@
55 <span v-if="scope.row.autoDelete ===true">是</span> 77 <span v-if="scope.row.autoDelete ===true">是</span>
56 </template> 78 </template>
57 </el-table-column> 79 </el-table-column>
58 - <el-table-column label="扩展参数" prop="arguments" align="center" width="200">  
59 - </el-table-column>  
60 - <el-table-column label="相关描述" prop="description" align="center" width="280"></el-table-column> 80 + <!-- <el-table-column label="扩展参数" prop="arguments" align="center" width="200">-->
  81 + <!-- </el-table-column>-->
  82 +
61 <!-- fixed="right" --> 83 <!-- fixed="right" -->
62 <el-table-column label="操作" width="225px" align="center" fixed="right"> 84 <el-table-column label="操作" width="225px" align="center" fixed="right">
63 <template slot-scope="scope"> 85 <template slot-scope="scope">
@@ -111,13 +133,27 @@ @@ -111,13 +133,27 @@
111 style="margin-top: -50px" text-align="center" width="60%" 133 style="margin-top: -50px" text-align="center" width="60%"
112 @close="queue_addDialogClosed"> 134 @close="queue_addDialogClosed">
113 135
114 - <el-form :inline="true" label-width="120px" status-icon style="margin-top: -10px" align="center" 136 + <el-form :inline="true" label-width="120px" status-icon style="margin-top: -10px;margin-left: 60px"
115 :model="queue_addForm" :rules="queue_addFormRules" ref="queue_addFormRef"> 137 :model="queue_addForm" :rules="queue_addFormRules" ref="queue_addFormRef">
116 <el-form-item label="队列名称:" prop="queueName"> 138 <el-form-item label="队列名称:" prop="queueName">
117 <el-input v-model="queue_addForm.queueName" style="width:240px" size="small" clearable 139 <el-input v-model="queue_addForm.queueName" style="width:240px" size="small" clearable
118 placeholder="请输入队列名称"> 140 placeholder="请输入队列名称">
119 </el-input> 141 </el-input>
120 </el-form-item> 142 </el-form-item>
  143 +
  144 + <el-form-item label="用户名称:" prop="userId">
  145 + <el-select v-model="queue_addForm.userId" clearable
  146 + style="width:240px" size="small" filterable
  147 + placeholder="请选择用户">
  148 + <el-option
  149 + v-for="item in (queue_config.userInfoList)"
  150 + :key="item.id"
  151 + :label="item.username"
  152 + :value="item.id">
  153 + </el-option>
  154 + </el-select>
  155 + </el-form-item>
  156 +
121 <el-form-item label="所属虚拟主机:" prop="virtualHostId"> 157 <el-form-item label="所属虚拟主机:" prop="virtualHostId">
122 <el-cascader 158 <el-cascader
123 clearable style="width: 240px" size="small" 159 clearable style="width: 240px" size="small"
@@ -154,11 +190,13 @@ @@ -154,11 +190,13 @@
154 </el-form-item> 190 </el-form-item>
155 <el-form-item label="扩展参数:" prop="arguments"> 191 <el-form-item label="扩展参数:" prop="arguments">
156 <el-input v-model="queue_addForm.arguments" style="width:240px" clearable size="small" 192 <el-input v-model="queue_addForm.arguments" style="width:240px" clearable size="small"
  193 + type="textarea" autosize :rows="1"
157 placeholder="扩展参数(JSON格式)"> 194 placeholder="扩展参数(JSON格式)">
158 </el-input> 195 </el-input>
159 </el-form-item> 196 </el-form-item>
160 <el-form-item label="相关描述:" prop="description"> 197 <el-form-item label="相关描述:" prop="description">
161 <el-input v-model="queue_addForm.description" style="width:240px" clearable size="small" 198 <el-input v-model="queue_addForm.description" style="width:240px" clearable size="small"
  199 + type="textarea" autosize :rows="1"
162 placeholder="相关描述"> 200 placeholder="相关描述">
163 </el-input> 201 </el-input>
164 </el-form-item> 202 </el-form-item>
@@ -177,9 +215,9 @@ @@ -177,9 +215,9 @@
177 <div> 215 <div>
178 <el-dialog title="编辑队列信息" 216 <el-dialog title="编辑队列信息"
179 :visible.sync="queue_dialog.editDialog" 217 :visible.sync="queue_dialog.editDialog"
180 - style="margin-top: -50px" text-align="center" width="50%" 218 + style="margin-top: -50px" text-align="center" width="60%"
181 @close="queue_editDialogClosed"> 219 @close="queue_editDialogClosed">
182 - <el-form :inline="true" label-width="120px" status-icon style="margin-top: -10px" align="center" 220 + <el-form :inline="true" label-width="120px" status-icon style="margin-top: -10px;margin-left: 60px"
183 :model="queue_editForm" :rules="queue_editFormRules" ref="queue_editFormRef"> 221 :model="queue_editForm" :rules="queue_editFormRules" ref="queue_editFormRef">
184 <el-form-item label="队列名称:" prop="queueName"> 222 <el-form-item label="队列名称:" prop="queueName">
185 <el-input v-model="queue_editForm.queueName" style="width:240px" size="small" clearable 223 <el-input v-model="queue_editForm.queueName" style="width:240px" size="small" clearable
@@ -187,6 +225,20 @@ @@ -187,6 +225,20 @@
187 placeholder="请输入队列名称"> 225 placeholder="请输入队列名称">
188 </el-input> 226 </el-input>
189 </el-form-item> 227 </el-form-item>
  228 +
  229 + <el-form-item label="用户名称:" prop="userId">
  230 + <el-select v-model="queue_editForm.userId" clearable disabled
  231 + style="width:240px" size="small" filterable
  232 + placeholder="请选择用户">
  233 + <el-option
  234 + v-for="item in (queue_config.userInfoList)"
  235 + :key="item.id"
  236 + :label="item.username"
  237 + :value="item.id">
  238 + </el-option>
  239 + </el-select>
  240 + </el-form-item>
  241 +
190 <el-form-item label="所属虚拟主机:" prop="virtualHostId"> 242 <el-form-item label="所属虚拟主机:" prop="virtualHostId">
191 <el-cascader 243 <el-cascader
192 disabled clearable style="width: 240px" size="small" 244 disabled clearable style="width: 240px" size="small"
@@ -200,7 +252,8 @@ @@ -200,7 +252,8 @@
200 </el-form-item> 252 </el-form-item>
201 253
202 <el-form-item label="是否持久化:" prop="durability"> 254 <el-form-item label="是否持久化:" prop="durability">
203 - <el-select v-model="queue_editForm.durability" style="width: 240px" disabled clearable size="small" 255 + <el-select v-model="queue_editForm.durability" style="width: 240px" disabled clearable
  256 + size="small"
204 placeholder="请选择是否持久化"> 257 placeholder="请选择是否持久化">
205 <el-option 258 <el-option
206 v-for="item in booleanList" 259 v-for="item in booleanList"
@@ -211,7 +264,8 @@ @@ -211,7 +264,8 @@
211 </el-select> 264 </el-select>
212 </el-form-item> 265 </el-form-item>
213 <el-form-item label="是否自动删除:" prop="autoDelete"> 266 <el-form-item label="是否自动删除:" prop="autoDelete">
214 - <el-select v-model="queue_editForm.autoDelete" style="width: 240px" disabled clearable size="small" 267 + <el-select v-model="queue_editForm.autoDelete" style="width: 240px" disabled clearable
  268 + size="small"
215 placeholder="请选择是否自动删除"> 269 placeholder="请选择是否自动删除">
216 <el-option 270 <el-option
217 v-for="item in booleanList" 271 v-for="item in booleanList"
@@ -222,12 +276,14 @@ @@ -222,12 +276,14 @@
222 </el-select> 276 </el-select>
223 </el-form-item> 277 </el-form-item>
224 <el-form-item label="扩展参数:" prop="arguments"> 278 <el-form-item label="扩展参数:" prop="arguments">
225 - <el-input v-model="queue_editForm.arguments" style="width:240px" disabled clearable size="small" 279 + <el-input v-model="queue_editForm.arguments" style="width:240px" disabled clearable
  280 + size="small" type="textarea" autosize :rows="1"
226 placeholder="扩展参数(JSON格式)"> 281 placeholder="扩展参数(JSON格式)">
227 </el-input> 282 </el-input>
228 </el-form-item> 283 </el-form-item>
229 <el-form-item label="相关描述:" prop="description"> 284 <el-form-item label="相关描述:" prop="description">
230 <el-input v-model="queue_editForm.description" style="width:240px" clearable size="small" 285 <el-input v-model="queue_editForm.description" style="width:240px" clearable size="small"
  286 + type="textarea" autosize :rows="1"
231 placeholder="相关描述"> 287 placeholder="相关描述">
232 </el-input> 288 </el-input>
233 </el-form-item> 289 </el-form-item>
@@ -254,7 +310,7 @@ @@ -254,7 +310,7 @@
254 updateBusQueue, 310 updateBusQueue,
255 deleteBusQueue, 311 deleteBusQueue,
256 batchRemoveBusQueue, 312 batchRemoveBusQueue,
257 - getServerAndHostList, 313 + getServerAndHostList, getUserInfoList,
258 } from "../../api/message_bus"; 314 } from "../../api/message_bus";
259 315
260 export default { 316 export default {
@@ -266,6 +322,8 @@ @@ -266,6 +322,8 @@
266 * queue,配置与参数 322 * queue,配置与参数
267 */ 323 */
268 queue_config: { 324 queue_config: {
  325 + // 用户信息列表
  326 + userInfoList: [],
269 // 级联显示 327 // 级联显示
270 cascade: { 328 cascade: {
271 // 服务器及虚拟主机列表 329 // 服务器及虚拟主机列表
@@ -281,6 +339,8 @@ @@ -281,6 +339,8 @@
281 * queue,搜索参数 339 * queue,搜索参数
282 */ 340 */
283 queue_queryInfo: { 341 queue_queryInfo: {
  342 + // 所属用户
  343 + username: '',
284 // 队列名称 344 // 队列名称
285 queueName: '', 345 queueName: '',
286 // 所属虚拟机id 346 // 所属虚拟机id
@@ -307,6 +367,8 @@ @@ -307,6 +367,8 @@
307 queue_addForm: { 367 queue_addForm: {
308 // 队列名称 368 // 队列名称
309 queueName: '', 369 queueName: '',
  370 + // 用户id
  371 + userId: '',
310 // 所属虚拟机id 372 // 所属虚拟机id
311 virtualHostId: '', 373 virtualHostId: '',
312 // 是否持久化,默认 true 374 // 是否持久化,默认 true
@@ -687,6 +749,21 @@ @@ -687,6 +749,21 @@
687 let ids = value.join().split(","); 749 let ids = value.join().split(",");
688 this.queue_editForm.virtualHostId = ids[ids.length - 1]; 750 this.queue_editForm.virtualHostId = ids[ids.length - 1];
689 }, 751 },
  752 + /**
  753 + * 获取所有用户的信息
  754 + */
  755 + queue_getUserInfoList() {
  756 + getUserInfoList().then((response) => {
  757 + let res = response.data;
  758 + if (res.code !== '200') {
  759 + return this.$message.error('获取路由键列表,失败!');
  760 + }
  761 + // 获取列表数据
  762 + this.queue_config.userInfoList = res.data;
  763 + }).catch(error => {
  764 + this.$message.error(error.toString());
  765 + });
  766 + },
690 }, 767 },
691 created() { 768 created() {
692 if (this.$route.params.virtualHost_scopeRow !== undefined) { 769 if (this.$route.params.virtualHost_scopeRow !== undefined) {
@@ -701,6 +778,7 @@ @@ -701,6 +778,7 @@
701 }, 778 },
702 mounted() { 779 mounted() {
703 this.selectServerAndHostList(); 780 this.selectServerAndHostList();
  781 + this.queue_getUserInfoList();
704 }, 782 },
705 computed: {}, 783 computed: {},
706 } 784 }
@@ -13,12 +13,11 @@ @@ -13,12 +13,11 @@
13 13
14 <el-col :span="4"> 14 <el-col :span="4">
15 <el-cascader 15 <el-cascader
16 - size="medium" 16 + size="medium" filterable clearable
17 v-model="routingKey_queryInfo.exchangeId" 17 v-model="routingKey_queryInfo.exchangeId"
18 :options="routingKey_config.cascade.server_host_exchangeList" 18 :options="routingKey_config.cascade.server_host_exchangeList"
19 :show-all-levels="false" 19 :show-all-levels="false"
20 :change-on-select="false" 20 :change-on-select="false"
21 - clearable  
22 @change="cascadeQueryChange" 21 @change="cascadeQueryChange"
23 :props="routingKey_config.cascade.defaultParams" 22 :props="routingKey_config.cascade.defaultParams"
24 placeholder="请选择所属交换机"></el-cascader> 23 placeholder="请选择所属交换机"></el-cascader>
@@ -102,12 +101,13 @@ @@ -102,12 +101,13 @@
102 :model="routingKey_addForm" :rules="routingKey_addFormRules" ref="routingKey_addFormRef"> 101 :model="routingKey_addForm" :rules="routingKey_addFormRules" ref="routingKey_addFormRef">
103 <el-form-item label="路由键名称:" prop="routingKeyName"> 102 <el-form-item label="路由键名称:" prop="routingKeyName">
104 <el-input v-model="routingKey_addForm.routingKeyName" placeholder="请输入路由键名称" 103 <el-input v-model="routingKey_addForm.routingKeyName" placeholder="请输入路由键名称"
105 - style="width:240px" size="small" clearable> 104 + style="width:270px" size="small" clearable>
106 </el-input> 105 </el-input>
107 </el-form-item> 106 </el-form-item>
108 <el-form-item label="所属交换机:" prop="exchangeId"> 107 <el-form-item label="所属交换机:" prop="exchangeId">
109 <el-cascader 108 <el-cascader
110 - style="width:240px" size="small" clearable 109 + style="width:270px" size="small"
  110 + filterable clearable
111 v-model="routingKey_addForm.exchangeId" 111 v-model="routingKey_addForm.exchangeId"
112 :options="routingKey_config.cascade.server_host_exchangeList" 112 :options="routingKey_config.cascade.server_host_exchangeList"
113 :show-all-levels="false" 113 :show-all-levels="false"
@@ -117,8 +117,8 @@ @@ -117,8 +117,8 @@
117 placeholder="请选择所属交换机"></el-cascader> 117 placeholder="请选择所属交换机"></el-cascader>
118 </el-form-item> 118 </el-form-item>
119 <el-form-item label="相关描述:" prop="description"> 119 <el-form-item label="相关描述:" prop="description">
120 - <el-input v-model="routingKey_addForm.description" style="width:240px" clearable  
121 - size="small" 120 + <el-input v-model="routingKey_addForm.description" style="width:270px" clearable size="small"
  121 + type="textarea" autosize :rows="1"
122 placeholder="相关描述"> 122 placeholder="相关描述">
123 </el-input> 123 </el-input>
124 </el-form-item> 124 </el-form-item>
@@ -144,12 +144,13 @@ @@ -144,12 +144,13 @@
144 ref="routingKey_editFormRef"> 144 ref="routingKey_editFormRef">
145 <el-form-item label="路由键名称:" prop="routingKeyName"> 145 <el-form-item label="路由键名称:" prop="routingKeyName">
146 <el-input v-model="routingKey_editForm.routingKeyName" placeholder="请输入路由键名称" 146 <el-input v-model="routingKey_editForm.routingKeyName" placeholder="请输入路由键名称"
147 - style="width:240px" size="small" disabled clearable> 147 + style="width:270px" size="small" disabled clearable>
148 </el-input> 148 </el-input>
149 </el-form-item> 149 </el-form-item>
150 <el-form-item label="所属交换机:" prop="exchangeId"> 150 <el-form-item label="所属交换机:" prop="exchangeId">
151 <el-cascader 151 <el-cascader
152 - style="width:240px" size="small" clearable disabled 152 + style="width:270px" size="small"
  153 + filterable clearable disabled
153 v-model="routingKey_editForm.exchangeId" 154 v-model="routingKey_editForm.exchangeId"
154 :options="routingKey_config.cascade.server_host_exchangeList" 155 :options="routingKey_config.cascade.server_host_exchangeList"
155 :show-all-levels="false" 156 :show-all-levels="false"
@@ -159,8 +160,8 @@ @@ -159,8 +160,8 @@
159 placeholder="请选择所属交换机"></el-cascader> 160 placeholder="请选择所属交换机"></el-cascader>
160 </el-form-item> 161 </el-form-item>
161 <el-form-item label="相关描述:" prop="description"> 162 <el-form-item label="相关描述:" prop="description">
162 - <el-input v-model="routingKey_editForm.description" style="width:240px" clearable  
163 - size="small" 163 + <el-input v-model="routingKey_editForm.description" style="width:270px" clearable size="small"
  164 + type="textarea" autosize :rows="1"
164 placeholder="相关描述"> 165 placeholder="相关描述">
165 </el-input> 166 </el-input>
166 </el-form-item> 167 </el-form-item>
@@ -7,7 +7,7 @@ @@ -7,7 +7,7 @@
7 <el-row> 7 <el-row>
8 <el-col :span="4"> 8 <el-col :span="4">
9 <el-input v-model="queryInfo.serverName" prefix-icon="el-icon-search" size="medium" 9 <el-input v-model="queryInfo.serverName" prefix-icon="el-icon-search" size="medium"
10 - placeholder="服务器名称" clearable ></el-input> 10 + placeholder="服务器名称" clearable></el-input>
11 </el-col> 11 </el-col>
12 <el-col :span="8"> 12 <el-col :span="8">
13 <el-button type="success" style="width:150px" size="medium" @click="getServerList"> 13 <el-button type="success" style="width:150px" size="medium" @click="getServerList">
@@ -89,20 +89,21 @@ @@ -89,20 +89,21 @@
89 :rules="addServerFormRules" ref="addServerFormRef" 89 :rules="addServerFormRules" ref="addServerFormRef"
90 align="center"> 90 align="center">
91 <el-form-item label="服务器名称:" prop="serverName"> 91 <el-form-item label="服务器名称:" prop="serverName">
92 - <el-input v-model="addServerForm.serverName" style="width:270px" clearable 92 + <el-input v-model="addServerForm.serverName" style="width:270px" size="small" clearable
93 placeholder="请输入服务器名称"></el-input> 93 placeholder="请输入服务器名称"></el-input>
94 </el-form-item> 94 </el-form-item>
95 <el-form-item label="IP地址:" prop="serverIp"> 95 <el-form-item label="IP地址:" prop="serverIp">
96 - <el-input v-model="addServerForm.serverIp" style="width:270px" clearable 96 + <el-input v-model="addServerForm.serverIp" style="width:270px" size="small" clearable
97 placeholder="请输入服务器IP地址"></el-input> 97 placeholder="请输入服务器IP地址"></el-input>
98 </el-form-item> 98 </el-form-item>
99 <el-form-item label="端口号:" prop="serverPort"> 99 <el-form-item label="端口号:" prop="serverPort">
100 - <el-input v-model="addServerForm.serverPort" style="width:270px" clearable 100 + <el-input v-model="addServerForm.serverPort" style="width:270px" size="small" clearable
101 placeholder="请输入服务器端口号"></el-input> 101 placeholder="请输入服务器端口号"></el-input>
102 </el-form-item> 102 </el-form-item>
103 <el-form-item label="相关描述:" prop="description"> 103 <el-form-item label="相关描述:" prop="description">
104 - <el-input v-model="addServerForm.description" style="width:270px" clearable  
105 - placeholder="请输入相关描述"></el-input> 104 + <el-input v-model="addServerForm.description" placeholder="请输入相关描述"
  105 + style="width:270px" size="small" clearable
  106 + type="textarea" autosize :rows="1"></el-input>
106 </el-form-item> 107 </el-form-item>
107 </el-form> 108 </el-form>
108 109
@@ -128,25 +129,30 @@ @@ -128,25 +129,30 @@
128 :rules="editServerFormRules" ref="editServerFormRef" 129 :rules="editServerFormRules" ref="editServerFormRef"
129 align="center"> 130 align="center">
130 <el-form-item label="服务器名称:" prop="serverName"> 131 <el-form-item label="服务器名称:" prop="serverName">
131 - <el-input v-model="editServerForm.serverName" style="width:270px" clearable readonly disabled 132 + <el-input v-model="editServerForm.serverName" style="width:270px" size="small" clearable
  133 + readonly disabled
132 placeholder="请输入服务器名称"></el-input> 134 placeholder="请输入服务器名称"></el-input>
133 </el-form-item> 135 </el-form-item>
134 <el-form-item label="IP地址:" prop="serverIp"> 136 <el-form-item label="IP地址:" prop="serverIp">
135 - <el-input v-model="editServerForm.serverIp" style="width:270px" clearable readonly disabled 137 + <el-input v-model="editServerForm.serverIp" style="width:270px" size="small" clearable
  138 + readonly disabled
136 placeholder="请输入服务器IP地址"></el-input> 139 placeholder="请输入服务器IP地址"></el-input>
137 </el-form-item> 140 </el-form-item>
138 <el-form-item label="端口号:" prop="serverPort"> 141 <el-form-item label="端口号:" prop="serverPort">
139 - <el-input v-model="editServerForm.serverPort" style="width:270px" clearable readonly disabled 142 + <el-input v-model="editServerForm.serverPort" style="width:270px" size="small" clearable
  143 + readonly disabled
140 placeholder="请输入服务器端口号"></el-input> 144 placeholder="请输入服务器端口号"></el-input>
141 </el-form-item> 145 </el-form-item>
142 <el-form-item label="相关描述:" prop="description"> 146 <el-form-item label="相关描述:" prop="description">
143 - <el-input v-model="editServerForm.description" style="width:270px" clearable  
144 - placeholder="请输入相关描述"></el-input> 147 + <el-input v-model="editServerForm.description" placeholder="请输入相关描述"
  148 + style="width:270px" size="small" clearable
  149 + type="textarea" autosize :rows="1"></el-input>
145 </el-form-item> 150 </el-form-item>
146 </el-form> 151 </el-form>
147 152
148 <div slot="footer" class="dialog-footer" style="text-align: center"> 153 <div slot="footer" class="dialog-footer" style="text-align: center">
149 - <el-button type="info" @click="serverDialog.editDialog = false" size="medium" style="width: 100px">取消 154 + <el-button type="info" @click="serverDialog.editDialog = false" size="medium"
  155 + style="width: 100px">取消
150 </el-button> 156 </el-button>
151 <el-button type="primary" @click="editServerInfo" :loading="server_loading.addLoading" 157 <el-button type="primary" @click="editServerInfo" :loading="server_loading.addLoading"
152 size="medium" 158 size="medium"
@@ -6,6 +6,11 @@ @@ -6,6 +6,11 @@
6 <div> 6 <div>
7 <el-row> 7 <el-row>
8 <el-col :span="4"> 8 <el-col :span="4">
  9 + <el-input v-model="umb_queryInfo.username" prefix-icon="el-icon-search"
  10 + size="medium"
  11 + placeholder="用户名称" clearable></el-input>
  12 + </el-col>
  13 + <el-col :span="4">
9 <el-input v-model="umb_queryInfo.serverName" prefix-icon="el-icon-search" 14 <el-input v-model="umb_queryInfo.serverName" prefix-icon="el-icon-search"
10 size="medium" 15 size="medium"
11 placeholder="服务器名称" clearable></el-input> 16 placeholder="服务器名称" clearable></el-input>
@@ -20,6 +25,8 @@ @@ -20,6 +25,8 @@
20 size="medium" 25 size="medium"
21 placeholder="交换机名称" clearable></el-input> 26 placeholder="交换机名称" clearable></el-input>
22 </el-col> 27 </el-col>
  28 + </el-row>
  29 + <el-row>
23 <el-col :span="4"> 30 <el-col :span="4">
24 <el-input v-model="umb_queryInfo.queueName" prefix-icon="el-icon-search" 31 <el-input v-model="umb_queryInfo.queueName" prefix-icon="el-icon-search"
25 size="medium" 32 size="medium"
@@ -30,18 +37,11 @@ @@ -30,18 +37,11 @@
30 size="medium" 37 size="medium"
31 placeholder="路由键名称" clearable></el-input> 38 placeholder="路由键名称" clearable></el-input>
32 </el-col> 39 </el-col>
33 - </el-row>  
34 - <el-row>  
35 - <el-col :span="4">  
36 - <el-input v-model="umb_queryInfo.username" prefix-icon="el-icon-search"  
37 - size="medium"  
38 - placeholder="用户名称" clearable></el-input>  
39 - </el-col>  
40 - <el-col :span="4">  
41 - <el-input v-model="umb_queryInfo.subscriber" prefix-icon="el-icon-search"  
42 - size="medium"  
43 - placeholder="订阅者名称" clearable></el-input>  
44 - </el-col> 40 + <!-- <el-col :span="4">-->
  41 + <!-- <el-input v-model="umb_queryInfo.subscriber" prefix-icon="el-icon-search"-->
  42 + <!-- size="medium"-->
  43 + <!-- placeholder="订阅者名称" clearable></el-input>-->
  44 + <!-- </el-col>-->
45 <el-col :span="8"> 45 <el-col :span="8">
46 <el-button type="success" style="width:150px" size="medium" @click="umb_getList"> 46 <el-button type="success" style="width:150px" size="medium" @click="umb_getList">
47 查询配置信息 47 查询配置信息
@@ -60,7 +60,7 @@ @@ -60,7 +60,7 @@
60 <el-table-column type="selection" width="55" align="center"></el-table-column> 60 <el-table-column type="selection" width="55" align="center"></el-table-column>
61 <el-table-column type="index" align="center"></el-table-column> 61 <el-table-column type="index" align="center"></el-table-column>
62 <el-table-column label="用户名称" prop="username" align="center" width="220"></el-table-column> 62 <el-table-column label="用户名称" prop="username" align="center" width="220"></el-table-column>
63 - <el-table-column label="订阅者名称" prop="subscriber" align="center" width="220"></el-table-column> 63 + <!-- <el-table-column label="订阅者名称" prop="subscriber" align="center" width="220"></el-table-column>-->
64 <el-table-column label="服务器名称" prop="serverName" align="center" 64 <el-table-column label="服务器名称" prop="serverName" align="center"
65 width="220"></el-table-column> 65 width="220"></el-table-column>
66 <el-table-column label="虚拟主机名称" prop="virtualHostName" align="center" 66 <el-table-column label="虚拟主机名称" prop="virtualHostName" align="center"
@@ -119,26 +119,37 @@ @@ -119,26 +119,37 @@
119 <div> 119 <div>
120 <el-dialog title="添加配置信息" 120 <el-dialog title="添加配置信息"
121 :visible.sync="umb_dialog.addDialog" 121 :visible.sync="umb_dialog.addDialog"
122 - style="margin-top: -50px" text-align="center" width="58%" 122 + v-loading="umb_loading.addLoading" element-loading-text="拼命添加配置中"
  123 + style="margin-top: -50px" text-align="center" width="60%"
123 @close="umb_addDialogClosed"> 124 @close="umb_addDialogClosed">
124 125
125 - <el-form :inline="true" label-width="120px" status-icon style="margin-top: 0px" align="center" 126 + <el-form :inline="true" label-width="120px" status-icon style="margin-top: -30px" align="center"
126 :model="umb_addForm" :rules="umb_addFormRules" ref="umb_addFormRef"> 127 :model="umb_addForm" :rules="umb_addFormRules" ref="umb_addFormRef">
127 - <el-form-item label="用户名称:" prop="username">  
128 - <el-input v-model="umb_addForm.username" style="width:240px" size="small" clearable  
129 - placeholder="请输入用户名称">  
130 - </el-input>  
131 - </el-form-item>  
132 - <el-form-item label="订阅者名称:" prop="subscriber">  
133 - <el-input v-model="umb_addForm.subscriber" style="width:240px" size="small" clearable  
134 - placeholder="请输入订阅者名称">  
135 - </el-input> 128 +
  129 + <el-form-item label="用户名称:" prop="userIds">
  130 + <el-select v-model="umb_addForm.userIds" prefix-icon="el-icon-search" clearable
  131 + @change="umb_userInfo_addChange"
  132 + style="width:400px" size="medium" filterable multiple
  133 + placeholder="请选择用户">
  134 + <el-option
  135 + v-for="item in (umb_config.userInfoList)"
  136 + :key="item.id"
  137 + :label="item.username"
  138 + :value="item.id">
  139 + </el-option>
  140 + </el-select>
136 </el-form-item> 141 </el-form-item>
  142 +
  143 + <!-- <el-form-item label="订阅者名称:" prop="subscriber">-->
  144 + <!-- <el-input v-model="umb_addForm.subscriber" style="width:240px" size="small" clearable-->
  145 + <!-- placeholder="请输入订阅者名称">-->
  146 + <!-- </el-input>-->
  147 + <!-- </el-form-item>-->
137 <el-form-item label="服务器名称:" prop="serverId"> 148 <el-form-item label="服务器名称:" prop="serverId">
138 <el-select v-model="umb_addForm.serverId" prefix-icon="el-icon-search" clearable 149 <el-select v-model="umb_addForm.serverId" prefix-icon="el-icon-search" clearable
139 - style="width:240px" size="small" 150 + style="width:400px" size="medium" filterable
140 @change="umb_server_addChange" 151 @change="umb_server_addChange"
141 - placeholder="请选择所属服务器"> 152 + placeholder="请选择服务器">
142 <el-option 153 <el-option
143 v-for="item in (umb_config.serverList)" 154 v-for="item in (umb_config.serverList)"
144 :key="item.id" 155 :key="item.id"
@@ -150,10 +161,10 @@ @@ -150,10 +161,10 @@
150 161
151 <el-form-item label="虚拟主机名称:" prop="virtualHostId"> 162 <el-form-item label="虚拟主机名称:" prop="virtualHostId">
152 <el-select v-model="umb_addForm.virtualHostId" prefix-icon="el-icon-search" clearable 163 <el-select v-model="umb_addForm.virtualHostId" prefix-icon="el-icon-search" clearable
153 - style="width:240px" size="small" 164 + style="width:400px" size="medium" filterable
154 @change="umb_virtualHost_addChange" 165 @change="umb_virtualHost_addChange"
155 - :disabled="umb_addForm.serverId===''"  
156 - placeholder="请选择虚拟主机名称"> 166 + :disabled="umb_addForm.serverId==='' || umb_addForm.userIds.length===0"
  167 + placeholder="请选择虚拟主机">
157 <el-option 168 <el-option
158 v-for="item in (umb_config.virtualHostList)" 169 v-for="item in (umb_config.virtualHostList)"
159 :key="item.id" 170 :key="item.id"
@@ -163,12 +174,12 @@ @@ -163,12 +174,12 @@
163 </el-select> 174 </el-select>
164 </el-form-item> 175 </el-form-item>
165 176
166 - <el-form-item label="交换机名称:" prop="exchangeId">  
167 - <el-select v-model="umb_addForm.exchangeId" prefix-icon="el-icon-search" clearable  
168 - style="width:240px" size="small" 177 + <el-form-item label="交换机名称:" prop="exchangeIds">
  178 + <el-select v-model="umb_addForm.exchangeIds" prefix-icon="el-icon-search" clearable
  179 + style="width:400px" size="medium" filterable multiple
169 @change="umb_exchange_addChange" 180 @change="umb_exchange_addChange"
170 :disabled="umb_addForm.virtualHostId===''" 181 :disabled="umb_addForm.virtualHostId===''"
171 - placeholder="请选择交换机名称"> 182 + placeholder="请选择交换机">
172 <el-option 183 <el-option
173 v-for="item in (umb_config.exchangeList)" 184 v-for="item in (umb_config.exchangeList)"
174 :key="item.id" 185 :key="item.id"
@@ -178,35 +189,37 @@ @@ -178,35 +189,37 @@
178 </el-select> 189 </el-select>
179 </el-form-item> 190 </el-form-item>
180 191
181 - <el-form-item label="队列名称:" prop="queueId">  
182 - <el-select v-model="umb_addForm.queueId" prefix-icon="el-icon-search" clearable  
183 - style="width:240px" size="small"  
184 - :disabled="umb_addForm.virtualHostId===''"  
185 - placeholder="请选择交换机名称"> 192 + <el-form-item label="路由键名称:" prop="routingKeyIds">
  193 + <el-select v-model="umb_addForm.routingKeyIds" prefix-icon="el-icon-search" clearable
  194 + style="width:400px" size="medium" filterable multiple
  195 + :disabled="umb_addForm.exchangeId===''"
  196 + placeholder="请选择路由键">
186 <el-option 197 <el-option
187 - v-for="item in (umb_config.queueList)" 198 + v-for="item in (umb_config.routingKeyList)"
188 :key="item.id" 199 :key="item.id"
189 - :label="item.queueName" 200 + :label="item.routingKeyName"
190 :value="item.id"> 201 :value="item.id">
191 </el-option> 202 </el-option>
192 </el-select> 203 </el-select>
193 </el-form-item> 204 </el-form-item>
194 205
195 - <el-form-item label="路由键名称:" prop="routingKeyId">  
196 - <el-select v-model="umb_addForm.routingKeyId" prefix-icon="el-icon-search" clearable  
197 - style="width:240px" size="small"  
198 - :disabled="umb_addForm.exchangeId===''"  
199 - placeholder="请选择路由键名称"> 206 + <el-form-item label="订阅者队列:" prop="queueIds">
  207 + <el-select v-model="umb_addForm.queueIds" prefix-icon="el-icon-search" clearable
  208 + style="width:400px" size="medium" filterable multiple
  209 + :disabled="umb_addForm.virtualHostId==='' && umb_addForm.userIds.length===0"
  210 + placeholder="请选择订阅者队列">
200 <el-option 211 <el-option
201 - v-for="item in (umb_config.routingKeyList)" 212 + v-for="item in (umb_config.queueList)"
202 :key="item.id" 213 :key="item.id"
203 - :label="item.routingKeyName" 214 + :label="item.queueName"
204 :value="item.id"> 215 :value="item.id">
205 </el-option> 216 </el-option>
206 </el-select> 217 </el-select>
207 </el-form-item> 218 </el-form-item>
  219 +
208 <el-form-item label="相关描述:" prop="description"> 220 <el-form-item label="相关描述:" prop="description">
209 - <el-input v-model="umb_addForm.description" style="width:240px" size="small" clearable 221 + <el-input v-model="umb_addForm.description" style="width:400px" size="medium" clearable
  222 + type="textarea" autosize :rows="1"
210 placeholder="请输入相关描述"> 223 placeholder="请输入相关描述">
211 </el-input> 224 </el-input>
212 </el-form-item> 225 </el-form-item>
@@ -225,25 +238,25 @@ @@ -225,25 +238,25 @@
225 <div> 238 <div>
226 <el-dialog title="编辑配置信息" 239 <el-dialog title="编辑配置信息"
227 :visible.sync="umb_dialog.editDialog" 240 :visible.sync="umb_dialog.editDialog"
228 - style="margin-top: -50px" text-align="center" width="58%" 241 + style="margin-top: -50px" text-align="center" width="50%"
229 @close="umb_editDialogClosed"> 242 @close="umb_editDialogClosed">
230 - <el-form :inline="true" label-width="120px" status-icon style="margin-top: 0px" align="center" 243 + <el-form :inline="true" label-width="120px" status-icon style="margin-left: 30px" align="center"
231 :model="umb_editForm" :rules="umb_editFormRules" ref="umb_editFormRef"> 244 :model="umb_editForm" :rules="umb_editFormRules" ref="umb_editFormRef">
232 <el-form-item label="用户名称:" prop="username"> 245 <el-form-item label="用户名称:" prop="username">
233 - <el-input v-model="umb_editForm.username" style="width:240px" size="small" clearable 246 + <el-input v-model="umb_editForm.username" style="width:300px" size="small" clearable disabled
234 placeholder="请输入用户名称"> 247 placeholder="请输入用户名称">
235 </el-input> 248 </el-input>
236 </el-form-item> 249 </el-form-item>
237 - <el-form-item label="订阅者名称:" prop="subscriber">  
238 - <el-input v-model="umb_editForm.subscriber" style="width:240px" size="small" clearable  
239 - placeholder="请输入订阅者名称">  
240 - </el-input>  
241 - </el-form-item> 250 + <!-- <el-form-item label="订阅者名称:" prop="subscriber">-->
  251 + <!-- <el-input v-model="umb_editForm.subscriber" style="width:240px" size="small" clearable-->
  252 + <!-- placeholder="请输入订阅者名称">-->
  253 + <!-- </el-input>-->
  254 + <!-- </el-form-item>-->
242 255
  256 + <!-- @change="umb_server_editChange" -->
243 <el-form-item label="服务器名称:" prop="serverId"> 257 <el-form-item label="服务器名称:" prop="serverId">
244 <el-select v-model="umb_editForm.serverId" prefix-icon="el-icon-search" clearable 258 <el-select v-model="umb_editForm.serverId" prefix-icon="el-icon-search" clearable
245 - style="width:240px" size="small"  
246 - @change="umb_server_editChange" 259 + style="width:300px" size="small" filterable disabled
247 placeholder="请选择所属服务器"> 260 placeholder="请选择所属服务器">
248 <el-option 261 <el-option
249 v-for="item in (umb_config.serverList)" 262 v-for="item in (umb_config.serverList)"
@@ -254,11 +267,11 @@ @@ -254,11 +267,11 @@
254 </el-select> 267 </el-select>
255 </el-form-item> 268 </el-form-item>
256 269
  270 + <!-- :disabled="umb_editForm.serverId===''"-->
257 <el-form-item label="虚拟主机名称:" prop="virtualHostId"> 271 <el-form-item label="虚拟主机名称:" prop="virtualHostId">
258 <el-select v-model="umb_editForm.virtualHostId" prefix-icon="el-icon-search" clearable 272 <el-select v-model="umb_editForm.virtualHostId" prefix-icon="el-icon-search" clearable
259 - style="width:240px" size="small" 273 + style="width:300px" size="small" filterable disabled
260 @change="umb_virtualHost_editChange" 274 @change="umb_virtualHost_editChange"
261 - :disabled="umb_editForm.serverId===''"  
262 placeholder="请选择虚拟主机名称"> 275 placeholder="请选择虚拟主机名称">
263 <el-option 276 <el-option
264 v-for="item in (umb_config.virtualHostList)" 277 v-for="item in (umb_config.virtualHostList)"
@@ -269,11 +282,11 @@ @@ -269,11 +282,11 @@
269 </el-select> 282 </el-select>
270 </el-form-item> 283 </el-form-item>
271 284
  285 + <!-- :disabled="umb_editForm.virtualHostId===''" -->
272 <el-form-item label="交换机名称:" prop="exchangeId"> 286 <el-form-item label="交换机名称:" prop="exchangeId">
273 <el-select v-model="umb_editForm.exchangeId" prefix-icon="el-icon-search" clearable 287 <el-select v-model="umb_editForm.exchangeId" prefix-icon="el-icon-search" clearable
274 - style="width:240px" size="small" 288 + style="width:300px" size="small" filterable disabled
275 @change="umb_exchange_editChange" 289 @change="umb_exchange_editChange"
276 - :disabled="umb_editForm.virtualHostId===''"  
277 placeholder="请选择交换机名称"> 290 placeholder="请选择交换机名称">
278 <el-option 291 <el-option
279 v-for="item in (umb_config.exchangeList)" 292 v-for="item in (umb_config.exchangeList)"
@@ -284,35 +297,37 @@ @@ -284,35 +297,37 @@
284 </el-select> 297 </el-select>
285 </el-form-item> 298 </el-form-item>
286 299
287 - <el-form-item label="队列名称:" prop="queueId">  
288 - <el-select v-model="umb_editForm.queueId" prefix-icon="el-icon-search" clearable  
289 - style="width:240px" size="small"  
290 - :disabled="umb_editForm.virtualHostId===''"  
291 - placeholder="请选择交换机名称"> 300 + <!-- :disabled="umb_editForm.exchangeId===''" -->
  301 + <el-form-item label="路由键名称:" prop="routingKeyId">
  302 + <el-select v-model="umb_editForm.routingKeyId" prefix-icon="el-icon-search" clearable
  303 + style="width:300px" size="small" filterable disabled
  304 + placeholder="请选择路由键名称">
292 <el-option 305 <el-option
293 - v-for="item in (umb_config.queueList)" 306 + v-for="item in (umb_config.routingKeyList)"
294 :key="item.id" 307 :key="item.id"
295 - :label="item.queueName" 308 + :label="item.routingKeyName"
296 :value="item.id"> 309 :value="item.id">
297 </el-option> 310 </el-option>
298 </el-select> 311 </el-select>
299 </el-form-item> 312 </el-form-item>
300 313
301 - <el-form-item label="路由键名称:" prop="routingKeyId">  
302 - <el-select v-model="umb_editForm.routingKeyId" prefix-icon="el-icon-search" clearable  
303 - style="width:240px" size="small"  
304 - :disabled="umb_editForm.exchangeId===''"  
305 - placeholder="请选择路由键名称"> 314 + <!-- :disabled="umb_editForm.virtualHostId===''" -->
  315 + <el-form-item label="订阅者队列:" prop="queueIds">
  316 + <el-select v-model="umb_editForm.queueIds" prefix-icon="el-icon-search" clearable
  317 + style="width:300px" size="small" filterable multiple disabled
  318 + placeholder="请选择订阅者队列">
306 <el-option 319 <el-option
307 - v-for="item in (umb_config.routingKeyList)" 320 + v-for="item in (umb_config.queueList)"
308 :key="item.id" 321 :key="item.id"
309 - :label="item.routingKeyName" 322 + :label="item.queueName"
310 :value="item.id"> 323 :value="item.id">
311 </el-option> 324 </el-option>
312 </el-select> 325 </el-select>
313 </el-form-item> 326 </el-form-item>
  327 +
314 <el-form-item label="相关描述:" prop="description"> 328 <el-form-item label="相关描述:" prop="description">
315 - <el-input v-model="umb_editForm.description" style="width:240px" size="small" clearable 329 + <el-input v-model="umb_editForm.description" style="width:300px" size="small" clearable
  330 + type="textarea" autosize :rows="1" disabled
316 placeholder="请输入相关描述"> 331 placeholder="请输入相关描述">
317 </el-input> 332 </el-input>
318 </el-form-item> 333 </el-form-item>
@@ -321,7 +336,7 @@ @@ -321,7 +336,7 @@
321 <el-button type="info" @click="umb_dialog.editDialog = false" size="medium" 336 <el-button type="info" @click="umb_dialog.editDialog = false" size="medium"
322 style="width: 100px">取消 337 style="width: 100px">取消
323 </el-button> 338 </el-button>
324 - <el-button type="primary" @click="umb_edit" :loading="umb_loading.addLoading" 339 + <el-button type="primary" @click="umb_edit" :loading="umb_loading.addLoading" disabled
325 size="medium" style="width: 100px">编辑 340 size="medium" style="width: 100px">编辑
326 </el-button> 341 </el-button>
327 </div> 342 </div>
@@ -338,7 +353,8 @@ @@ -338,7 +353,8 @@
338 updateUserMessageBinding, 353 updateUserMessageBinding,
339 deleteUserMessageBinding, 354 deleteUserMessageBinding,
340 batchRemoveUserMessageBinding, 355 batchRemoveUserMessageBinding,
341 - getServerList, getHostList, getExchangeList, getQueueList, getRoutingKeyList 356 + getServerList, getHostList, getExchangeList, getQueueList, getRoutingKeyList,
  357 + getUserInfoList
342 } from "../../api/message_bus"; 358 } from "../../api/message_bus";
343 359
344 export default { 360 export default {
@@ -364,6 +380,8 @@ @@ -364,6 +380,8 @@
364 queueList: [], 380 queueList: [],
365 // 路由键列表 381 // 路由键列表
366 routingKeyList: [], 382 routingKeyList: [],
  383 + // 用户信息列表
  384 + userInfoList: [],
367 }, 385 },
368 386
369 /** 387 /**
@@ -404,10 +422,10 @@ @@ -404,10 +422,10 @@
404 * umb,新增表单 422 * umb,新增表单
405 */ 423 */
406 umb_addForm: { 424 umb_addForm: {
  425 + // 用户id
  426 + userId: '',
407 // 用户名称 427 // 用户名称
408 username: '', 428 username: '',
409 - // 订阅者名称  
410 - subscriber: '',  
411 // 服务器id 429 // 服务器id
412 serverId: '', 430 serverId: '',
413 // 虚拟主机id 431 // 虚拟主机id
@@ -418,6 +436,14 @@ @@ -418,6 +436,14 @@
418 queueId: '', 436 queueId: '',
419 // 路由键id 437 // 路由键id
420 routingKeyId: '', 438 routingKeyId: '',
  439 + // 临时字段,队列id集合
  440 + queueIds: [],
  441 + // 临时字段,交换机id集合
  442 + exchangeIds: [],
  443 + // 临时字段,用户id集合
  444 + userIds: [],
  445 + // 临时字段,路由键id集合
  446 + routingKeyIds: [],
421 }, 447 },
422 /** 448 /**
423 * umb,编辑表单 449 * umb,编辑表单
@@ -452,13 +478,13 @@ @@ -452,13 +478,13 @@
452 */ 478 */
453 umb_addFormRules: { 479 umb_addFormRules: {
454 // 用户名称 480 // 用户名称
455 - username: [ 481 + userIds: [
456 {required: true, message: '请输入用户名称', trigger: ['blur', 'change']}, 482 {required: true, message: '请输入用户名称', trigger: ['blur', 'change']},
457 ], 483 ],
458 // 订阅者名称 484 // 订阅者名称
459 - subscriber: [  
460 - {required: true, message: '请输入订阅者名称', trigger: ['blur', 'change']},  
461 - ], 485 + // subscriber: [
  486 + // {required: true, message: '请输入订阅者名称', trigger: ['blur', 'change']},
  487 + // ],
462 // 服务器ID 488 // 服务器ID
463 serverId: [ 489 serverId: [
464 {required: true, message: '请选择服务器名称', trigger: ['blur', 'change']}, 490 {required: true, message: '请选择服务器名称', trigger: ['blur', 'change']},
@@ -468,15 +494,15 @@ @@ -468,15 +494,15 @@
468 {required: true, message: '请选择虚拟主机名称', trigger: ['blur', 'change']}, 494 {required: true, message: '请选择虚拟主机名称', trigger: ['blur', 'change']},
469 ], 495 ],
470 // 交换机ID 496 // 交换机ID
471 - exchangeId: [ 497 + exchangeIds: [
472 {required: true, message: '请选择交换机名称', trigger: ['blur', 'change']}, 498 {required: true, message: '请选择交换机名称', trigger: ['blur', 'change']},
473 ], 499 ],
474 // 队列ID 500 // 队列ID
475 - queueId: [ 501 + queueIds: [
476 {required: true, message: '请选择队列名称', trigger: ['blur', 'change']}, 502 {required: true, message: '请选择队列名称', trigger: ['blur', 'change']},
477 ], 503 ],
478 // 路由键ID 504 // 路由键ID
479 - routingKeyId: [ 505 + routingKeyIds: [
480 {required: true, message: '请选择路由键名称', trigger: ['blur', 'change']}, 506 {required: true, message: '请选择路由键名称', trigger: ['blur', 'change']},
481 ], 507 ],
482 }, 508 },
@@ -588,6 +614,10 @@ @@ -588,6 +614,10 @@
588 * umb,添加功能 614 * umb,添加功能
589 */ 615 */
590 umb_add() { 616 umb_add() {
  617 + this.umb_addForm.queueId = this.umb_addForm.queueIds.join();
  618 + this.umb_addForm.userId = this.umb_addForm.userIds.join();
  619 + this.umb_addForm.exchangeId = this.umb_addForm.exchangeIds.join();
  620 + this.umb_addForm.routingKeyId = this.umb_addForm.routingKeyIds.join();
591 // 进行表单的预验证 621 // 进行表单的预验证
592 this.$refs.umb_addFormRef.validate(valid => { 622 this.$refs.umb_addFormRef.validate(valid => {
593 // 未通过,表单预校验 623 // 未通过,表单预校验
@@ -633,6 +663,14 @@ @@ -633,6 +663,14 @@
633 this.selectExchangeList(row.virtualHostId) 663 this.selectExchangeList(row.virtualHostId)
634 this.selectRoutingKeyList(row.exchangeId) 664 this.selectRoutingKeyList(row.exchangeId)
635 this.umb_editForm = Object.assign({}, row); 665 this.umb_editForm = Object.assign({}, row);
  666 +
  667 + this.umb_editForm.queueIds = [];
  668 + if (this.umb_editForm.queueId.indexOf(",") === -1) {
  669 + // 队列id中不包含","
  670 + this.umb_editForm.queueIds[0] = this.umb_editForm.queueId;
  671 + } else {
  672 + this.umb_editForm.queueIds = this.umb_editForm.queueId.split(",")
  673 + }
636 this.umb_dialog.editDialog = true; 674 this.umb_dialog.editDialog = true;
637 }, 675 },
638 /** 676 /**
@@ -805,8 +843,11 @@ @@ -805,8 +843,11 @@
805 /** 843 /**
806 * 获取队列-列表 844 * 获取队列-列表
807 */ 845 */
808 - selectQueueList(id) {  
809 - let params = {virtualHostId: id}; 846 + selectQueueList(id, userId) {
  847 + let params = {
  848 + virtualHostId: id,
  849 + userId: userId
  850 + };
810 getQueueList(params).then((response) => { 851 getQueueList(params).then((response) => {
811 let res = response.data; 852 let res = response.data;
812 if (res.code !== '200') { 853 if (res.code !== '200') {
@@ -839,40 +880,52 @@ @@ -839,40 +880,52 @@
839 * 添加方法,服务器ID值,改变 880 * 添加方法,服务器ID值,改变
840 */ 881 */
841 umb_server_addChange(value) { 882 umb_server_addChange(value) {
842 - console.log("服务器ID值:" + value);  
843 // 现将对应的虚拟主机的ID清空 883 // 现将对应的虚拟主机的ID清空
844 this.umb_addForm.virtualHostId = undefined; 884 this.umb_addForm.virtualHostId = undefined;
845 // 根据服务器ID,获取出对应的虚拟主机的列表 885 // 根据服务器ID,获取出对应的虚拟主机的列表
846 this.selectHostList(value); 886 this.selectHostList(value);
847 }, 887 },
  888 +
  889 + umb_userInfo_addChange(value) {
  890 + // 根据虚拟主机id和用户id来查询,队列集合
  891 + this.selectQueueList(this.umb_addForm.virtualHostId, value.join());
  892 + },
  893 +
848 /** 894 /**
849 * 添加方法,虚拟主机ID值,改变 895 * 添加方法,虚拟主机ID值,改变
850 */ 896 */
851 umb_virtualHost_addChange(value) { 897 umb_virtualHost_addChange(value) {
852 - console.log("虚拟主机ID值:" + value);  
853 // 先将对应的交换机和队列的ID清空 898 // 先将对应的交换机和队列的ID清空
854 this.umb_addForm.exchangeId = undefined; 899 this.umb_addForm.exchangeId = undefined;
855 this.umb_addForm.queueId = undefined; 900 this.umb_addForm.queueId = undefined;
856 901
857 // 根据虚拟主机ID,获取出对应的交换机和队列的列表 902 // 根据虚拟主机ID,获取出对应的交换机和队列的列表
858 this.selectExchangeList(value); 903 this.selectExchangeList(value);
859 - this.selectQueueList(value); 904 +
  905 + // 根据用户id和虚拟主机id来查询,队列集合
  906 + let userId = this.umb_addForm.userIds.join();
  907 + this.selectQueueList(value, userId);
860 }, 908 },
861 /** 909 /**
862 * 添加方法,交换机ID值,改变 910 * 添加方法,交换机ID值,改变
863 */ 911 */
864 umb_exchange_addChange(value) { 912 umb_exchange_addChange(value) {
865 - console.log("交换机ID值:" + value);  
866 // 先将对应的路由键的ID清空 913 // 先将对应的路由键的ID清空
867 this.umb_addForm.routingKeyId = undefined; 914 this.umb_addForm.routingKeyId = undefined;
868 // 根据交换机ID,获取出对应的路由键的列表 915 // 根据交换机ID,获取出对应的路由键的列表
869 - this.selectRoutingKeyList(value); 916 + this.selectRoutingKeyList(value.join());
870 }, 917 },
  918 + // /**
  919 + // * 添加方法,队列ID值,改变
  920 + // */
  921 + // umb_queue_addChange(value) {
  922 + // // 将多选的queueID,用逗号相连接
  923 + // this.umb_addForm.queueId = value.join();
  924 + // },
871 /** 925 /**
872 * 编辑方法,服务器ID值,改变 926 * 编辑方法,服务器ID值,改变
873 */ 927 */
874 umb_server_editChange(value) { 928 umb_server_editChange(value) {
875 - console.log("服务器ID值:" + value);  
876 // 现将对应的虚拟主机的ID清空 929 // 现将对应的虚拟主机的ID清空
877 this.umb_editForm.virtualHostId = undefined; 930 this.umb_editForm.virtualHostId = undefined;
878 // 根据服务器ID,获取出对应的虚拟主机的列表 931 // 根据服务器ID,获取出对应的虚拟主机的列表
@@ -882,7 +935,6 @@ @@ -882,7 +935,6 @@
882 * 编辑方法,虚拟主机ID值,改变 935 * 编辑方法,虚拟主机ID值,改变
883 */ 936 */
884 umb_virtualHost_editChange(value) { 937 umb_virtualHost_editChange(value) {
885 - console.log("虚拟主机ID值:" + value);  
886 // 先将对应的交换机和队列的ID清空 938 // 先将对应的交换机和队列的ID清空
887 this.umb_editForm.exchangeId = undefined; 939 this.umb_editForm.exchangeId = undefined;
888 this.umb_editForm.queueId = undefined; 940 this.umb_editForm.queueId = undefined;
@@ -895,12 +947,26 @@ @@ -895,12 +947,26 @@
895 * 编辑方法,交换机ID值,改变 947 * 编辑方法,交换机ID值,改变
896 */ 948 */
897 umb_exchange_editChange(value) { 949 umb_exchange_editChange(value) {
898 - console.log("交换机ID值:" + value);  
899 // 先将对应的路由键的ID清空 950 // 先将对应的路由键的ID清空
900 this.umb_editForm.routingKeyId = undefined; 951 this.umb_editForm.routingKeyId = undefined;
901 // 根据交换机ID,获取出对应的路由键的列表 952 // 根据交换机ID,获取出对应的路由键的列表
902 this.selectRoutingKeyList(value); 953 this.selectRoutingKeyList(value);
903 }, 954 },
  955 + /**
  956 + * 获取所有用户的信息
  957 + */
  958 + umb_getUserInfoList() {
  959 + getUserInfoList().then((response) => {
  960 + let res = response.data;
  961 + if (res.code !== '200') {
  962 + return this.$message.error('获取路由键列表,失败!');
  963 + }
  964 + // 获取列表数据
  965 + this.umb_config.userInfoList = res.data;
  966 + }).catch(error => {
  967 + this.$message.error(error.toString());
  968 + });
  969 + },
904 }, 970 },
905 created() { 971 created() {
906 // 刷新列表 972 // 刷新列表
@@ -909,6 +975,8 @@ @@ -909,6 +975,8 @@
909 mounted() { 975 mounted() {
910 // 获取服务器列表 976 // 获取服务器列表
911 this.selectServerList(); 977 this.selectServerList();
  978 + // 获取用户信息列表
  979 + this.umb_getUserInfoList();
912 }, 980 },
913 computed: {}, 981 computed: {},
914 } 982 }
@@ -10,8 +10,8 @@ @@ -10,8 +10,8 @@
10 placeholder="虚拟主机名称" clearable></el-input> 10 placeholder="虚拟主机名称" clearable></el-input>
11 </el-col> 11 </el-col>
12 <el-col :span="4"> 12 <el-col :span="4">
13 - <el-select v-model="queryInfo.serverId" prefix-icon="el-icon-search" clearable size="medium"  
14 - placeholder="请选择所属服务器"> 13 + <el-select v-model="queryInfo.serverId" placeholder="请选择所属服务器"
  14 + prefix-icon="el-icon-search" clearable size="medium" filterable>
15 <el-option 15 <el-option
16 v-for="item in (virtualHost_config.serverList)" 16 v-for="item in (virtualHost_config.serverList)"
17 :key="item.id" 17 :key="item.id"
@@ -112,12 +112,13 @@ @@ -112,12 +112,13 @@
112 :rules="addVirtualHostFormRules" ref="addVirtualHostRef" 112 :rules="addVirtualHostFormRules" ref="addVirtualHostRef"
113 align="center"> 113 align="center">
114 <el-form-item label="虚拟主机名称:" prop="virtualHostName"> 114 <el-form-item label="虚拟主机名称:" prop="virtualHostName">
115 - <el-input v-model="addVirtualHostForm.virtualHostName" style="width:270px" clearable 115 + <el-input v-model="addVirtualHostForm.virtualHostName" style="width:270px" size="small"
  116 + clearable
116 placeholder="请输入虚拟主机名称"></el-input> 117 placeholder="请输入虚拟主机名称"></el-input>
117 </el-form-item> 118 </el-form-item>
118 <el-form-item label="所属服务器:" prop="serverId"> 119 <el-form-item label="所属服务器:" prop="serverId">
119 - <el-select v-model="addVirtualHostForm.serverId" clearable style="width:270px"  
120 - placeholder="请选择服务器名称"> 120 + <el-select v-model="addVirtualHostForm.serverId" clearable style="width:270px" size="small"
  121 + filterable placeholder="请选择服务器名称">
121 <el-option 122 <el-option
122 v-for="item in (virtualHost_config.serverList)" 123 v-for="item in (virtualHost_config.serverList)"
123 :key="item.id" 124 :key="item.id"
@@ -128,8 +129,9 @@ @@ -128,8 +129,9 @@
128 </el-form-item> 129 </el-form-item>
129 130
130 <el-form-item label="相关描述:" prop="description"> 131 <el-form-item label="相关描述:" prop="description">
131 - <el-input v-model="addVirtualHostForm.description" style="width:270px" clearable  
132 - placeholder="请输入相关描述"></el-input> 132 + <el-input v-model="addVirtualHostForm.description" placeholder="请输入相关描述"
  133 + style="width:270px" clearable size="small"
  134 + type="textarea" autosize :rows="1"></el-input>
133 </el-form-item> 135 </el-form-item>
134 </el-form> 136 </el-form>
135 137
@@ -155,12 +157,13 @@ @@ -155,12 +157,13 @@
155 :rules="editVirtualHostFormRules" ref="editVirtualHostRef" 157 :rules="editVirtualHostFormRules" ref="editVirtualHostRef"
156 align="center"> 158 align="center">
157 <el-form-item label="虚拟主机名称:" prop="virtualHostName"> 159 <el-form-item label="虚拟主机名称:" prop="virtualHostName">
158 - <el-input v-model="editVirtualHostForm.virtualHostName" style="width:270px" clearable readonly disabled 160 + <el-input v-model="editVirtualHostForm.virtualHostName" style="width:270px" clearable
  161 + readonly disabled size="small"
159 placeholder="请输入虚拟主机名称"></el-input> 162 placeholder="请输入虚拟主机名称"></el-input>
160 </el-form-item> 163 </el-form-item>
161 <el-form-item label="所属服务器:" prop="serverId"> 164 <el-form-item label="所属服务器:" prop="serverId">
162 - <el-select v-model="editVirtualHostForm.serverId" clearable disabled style="width:270px"  
163 - placeholder="请选择服务器名称"> 165 + <el-select v-model="editVirtualHostForm.serverId" placeholder="请选择服务器名称"
  166 + size="small" clearable disabled style="width:270px">
164 <el-option 167 <el-option
165 v-for="item in (virtualHost_config.serverList)" 168 v-for="item in (virtualHost_config.serverList)"
166 :key="item.id" 169 :key="item.id"
@@ -171,8 +174,9 @@ @@ -171,8 +174,9 @@
171 </el-form-item> 174 </el-form-item>
172 175
173 <el-form-item label="相关描述:" prop="description"> 176 <el-form-item label="相关描述:" prop="description">
174 - <el-input v-model="editVirtualHostForm.description" style="width:270px" clearable  
175 - placeholder="请输入相关描述"></el-input> 177 + <el-input v-model="editVirtualHostForm.description" placeholder="请输入相关描述"
  178 + style="width:270px" clearable size="small"
  179 + type="textarea" autosize :rows="1"/>
176 </el-form-item> 180 </el-form-item>
177 </el-form> 181 </el-form>
178 182