|
@@ -47,16 +47,23 @@ |
|
@@ -47,16 +47,23 @@ |
47
|
</el-table-column>
|
47
|
</el-table-column>
|
48
|
<el-table-column label="操作" width="300px" fixed="right" align="center">
|
48
|
<el-table-column label="操作" width="300px" fixed="right" align="center">
|
49
|
<template slot-scope="scope">
|
49
|
<template slot-scope="scope">
|
50
|
- <el-button type="primary" icon="el-icon-setting" size="small" @click="roleEdit(scope.$index, scope.row)">角色配置</el-button>
|
|
|
51
|
- <el-button size="small" type="success" icon="el-icon-check" @click="handleEdit(scope.$index, scope.row)">编辑</el-button>
|
|
|
52
|
- <el-button type="danger" icon="el-icon-delete" size="small" @click="handleDel(scope.$index, scope.row)">删除</el-button>
|
50
|
+ <el-button type="primary" icon="el-icon-setting" size="small"
|
|
|
51
|
+ @click="roleEdit(scope.$index, scope.row)">角色配置
|
|
|
52
|
+ </el-button>
|
|
|
53
|
+ <el-button size="small" type="success" icon="el-icon-check"
|
|
|
54
|
+ @click="handleEdit(scope.$index, scope.row)">编辑
|
|
|
55
|
+ </el-button>
|
|
|
56
|
+ <el-button type="danger" icon="el-icon-delete" size="small"
|
|
|
57
|
+ @click="handleDel(scope.$index, scope.row)">删除
|
|
|
58
|
+ </el-button>
|
53
|
</template>
|
59
|
</template>
|
54
|
</el-table-column>
|
60
|
</el-table-column>
|
55
|
</el-table>
|
61
|
</el-table>
|
56
|
|
62
|
|
57
|
<!--工具条-->
|
63
|
<!--工具条-->
|
58
|
<el-col :span="24" class="toolbar">
|
64
|
<el-col :span="24" class="toolbar">
|
59
|
- <el-button type="danger" icon="el-icon-delete" @click="batchRemove" :disabled="this.sels.length===0">批量删除</el-button>
|
65
|
+ <el-button type="danger" icon="el-icon-delete" @click="batchRemove" :disabled="this.sels.length===0">批量删除
|
|
|
66
|
+ </el-button>
|
60
|
<el-pagination layout="total, prev, pager, next" @current-change="handleCurrentChange" :page-size="10"
|
67
|
<el-pagination layout="total, prev, pager, next" @current-change="handleCurrentChange" :page-size="10"
|
61
|
:total="total" style="float:right;">
|
68
|
:total="total" style="float:right;">
|
62
|
</el-pagination>
|
69
|
</el-pagination>
|
|
@@ -71,9 +78,9 @@ |
|
@@ -71,9 +78,9 @@ |
71
|
<el-form-item label="账号">
|
78
|
<el-form-item label="账号">
|
72
|
<span>{{editForm.username}}</span>
|
79
|
<span>{{editForm.username}}</span>
|
73
|
</el-form-item>
|
80
|
</el-form-item>
|
74
|
-<!-- <el-form-item label="密码" prop="password">-->
|
|
|
75
|
-<!-- <el-input v-model="editForm.password" auto-complete="off" type="password" show-password></el-input>-->
|
|
|
76
|
-<!-- </el-form-item>-->
|
81
|
+ <!-- <el-form-item label="密码" prop="password">-->
|
|
|
82
|
+ <!-- <el-input v-model="editForm.password" auto-complete="off" type="password" show-password></el-input>-->
|
|
|
83
|
+ <!-- </el-form-item>-->
|
77
|
<el-form-item label="姓名" prop="realname">
|
84
|
<el-form-item label="姓名" prop="realname">
|
78
|
<el-input v-model="editForm.realname" auto-complete="off"></el-input>
|
85
|
<el-input v-model="editForm.realname" auto-complete="off"></el-input>
|
79
|
</el-form-item>
|
86
|
</el-form-item>
|
|
@@ -126,21 +133,51 @@ |
|
@@ -126,21 +133,51 @@ |
126
|
|
133
|
|
127
|
<!--新增界面-->
|
134
|
<!--新增界面-->
|
128
|
<el-dialog title="新增" :visible.sync="addFormVisible" :close-on-click-modal="false">
|
135
|
<el-dialog title="新增" :visible.sync="addFormVisible" :close-on-click-modal="false">
|
129
|
- <el-form :model="addForm" label-width="80px" :rules="addFormRules" ref="addForm">
|
136
|
+ <el-form :model="addForm" label-width="120px" :rules="addFormRules" ref="addForm">
|
130
|
<el-form-item label="账号" prop="username">
|
137
|
<el-form-item label="账号" prop="username">
|
131
|
- <el-input v-model="addForm.username" aria-placeholder="用户名长度在5-11位,支持英文和数字"></el-input>
|
138
|
+ <el-input v-model="addForm.username" clearable style="width:400px"
|
|
|
139
|
+ aria-placeholder="用户名长度在5-11位,支持英文和数字"></el-input>
|
132
|
</el-form-item>
|
140
|
</el-form-item>
|
133
|
<el-form-item label="密码" prop="password">
|
141
|
<el-form-item label="密码" prop="password">
|
134
|
- <el-input v-model="addForm.password" type="password"></el-input>
|
142
|
+ <el-input v-model="addForm.password" type="password" clearable style="width:400px"></el-input>
|
135
|
</el-form-item>
|
143
|
</el-form-item>
|
136
|
<el-form-item label="姓名" prop="realname">
|
144
|
<el-form-item label="姓名" prop="realname">
|
137
|
- <el-input v-model="addForm.realname"></el-input>
|
145
|
+ <el-input v-model="addForm.realname" clearable style="width:400px"></el-input>
|
138
|
</el-form-item>
|
146
|
</el-form-item>
|
|
|
147
|
+
|
|
|
148
|
+ <el-form-item label="服务器:" prop="serverId">
|
|
|
149
|
+ <el-select v-model="addForm.serverId" prefix-icon="el-icon-search" clearable
|
|
|
150
|
+ style="width:400px" size="medium" filterable
|
|
|
151
|
+ @change="user_addChange"
|
|
|
152
|
+ placeholder="请选择服务器">
|
|
|
153
|
+ <el-option
|
|
|
154
|
+ v-for="item in (user_config.serverList)"
|
|
|
155
|
+ :key="item.id"
|
|
|
156
|
+ :label="item.serverName"
|
|
|
157
|
+ :value="item.id">
|
|
|
158
|
+ </el-option>
|
|
|
159
|
+ </el-select>
|
|
|
160
|
+ </el-form-item>
|
|
|
161
|
+
|
|
|
162
|
+ <el-form-item label="虚拟主机:" prop="virtualHostId">
|
|
|
163
|
+ <el-select v-model="addForm.virtualHostId" prefix-icon="el-icon-search" clearable
|
|
|
164
|
+ style="width:400px" size="medium" filterable
|
|
|
165
|
+ :disabled="addForm.serverId===''"
|
|
|
166
|
+ placeholder="请选择虚拟主机">
|
|
|
167
|
+ <el-option
|
|
|
168
|
+ v-for="item in (user_config.virtualHostList)"
|
|
|
169
|
+ :key="item.id"
|
|
|
170
|
+ :label="item.virtualHostName"
|
|
|
171
|
+ :value="item.id">
|
|
|
172
|
+ </el-option>
|
|
|
173
|
+ </el-select>
|
|
|
174
|
+ </el-form-item>
|
|
|
175
|
+
|
139
|
<el-form-item label="电话" prop="mobilephone">
|
176
|
<el-form-item label="电话" prop="mobilephone">
|
140
|
- <el-input v-model="addForm.mobilephone"></el-input>
|
177
|
+ <el-input v-model="addForm.mobilephone" clearable style="width:400px"></el-input>
|
141
|
</el-form-item>
|
178
|
</el-form-item>
|
142
|
<el-form-item label="Email" prop="email">
|
179
|
<el-form-item label="Email" prop="email">
|
143
|
- <el-input v-model="addForm.email"></el-input>
|
180
|
+ <el-input v-model="addForm.email" clearable style="width:400px"></el-input>
|
144
|
</el-form-item>
|
181
|
</el-form-item>
|
145
|
<el-form-item label="性别">
|
182
|
<el-form-item label="性别">
|
146
|
<el-radio-group v-model="addForm.sex">
|
183
|
<el-radio-group v-model="addForm.sex">
|
|
@@ -152,7 +189,8 @@ |
|
@@ -152,7 +189,8 @@ |
152
|
<el-input-number v-model="addForm.age" :min="0" :max="200"></el-input-number>
|
189
|
<el-input-number v-model="addForm.age" :min="0" :max="200"></el-input-number>
|
153
|
</el-form-item>
|
190
|
</el-form-item>
|
154
|
<el-form-item label="地址">
|
191
|
<el-form-item label="地址">
|
155
|
- <el-input type="textarea" v-model="addForm.address"></el-input>
|
192
|
+ <el-input type="textarea" v-model="addForm.address" size="medium" autosize :rows="2" clearable
|
|
|
193
|
+ style="width:400px"></el-input>
|
156
|
</el-form-item>
|
194
|
</el-form-item>
|
157
|
</el-form>
|
195
|
</el-form>
|
158
|
<div slot="footer" class="dialog-footer">
|
196
|
<div slot="footer" class="dialog-footer">
|
|
@@ -189,10 +227,17 @@ |
|
@@ -189,10 +227,17 @@ |
189
|
import {getUserList, removeUser, batchRemoveUser, editUser, addUser, setUserRole} from '../../api/user';
|
227
|
import {getUserList, removeUser, batchRemoveUser, editUser, addUser, setUserRole} from '../../api/user';
|
190
|
import {getList} from '../../api/role_api';
|
228
|
import {getList} from '../../api/role_api';
|
191
|
import moment from 'moment'
|
229
|
import moment from 'moment'
|
|
|
230
|
+ import {getHostList, getServerList, insertBusServer, insertUserInfo} from "../../api/message_bus";
|
192
|
|
231
|
|
193
|
export default {
|
232
|
export default {
|
194
|
data() {
|
233
|
data() {
|
195
|
return {
|
234
|
return {
|
|
|
235
|
+ user_config: {
|
|
|
236
|
+ // 服务器列表
|
|
|
237
|
+ serverList: [],
|
|
|
238
|
+ // 虚拟主机列表
|
|
|
239
|
+ virtualHostList: [],
|
|
|
240
|
+ },
|
196
|
filters: {
|
241
|
filters: {
|
197
|
userName: '',
|
242
|
userName: '',
|
198
|
realName: ''
|
243
|
realName: ''
|
|
@@ -245,6 +290,12 @@ |
|
@@ -245,6 +290,12 @@ |
245
|
mobilephone: [
|
290
|
mobilephone: [
|
246
|
{required: true, message: '请输入手机号码', trigger: ['blur', 'change']},
|
291
|
{required: true, message: '请输入手机号码', trigger: ['blur', 'change']},
|
247
|
],
|
292
|
],
|
|
|
293
|
+ virtualHostId: [
|
|
|
294
|
+ {required: true, message: '请选择虚拟主机', trigger: ['blur', 'change']},
|
|
|
295
|
+ ],
|
|
|
296
|
+ serverId: [
|
|
|
297
|
+ {required: true, message: '请选择服务器', trigger: ['blur', 'change']},
|
|
|
298
|
+ ],
|
248
|
},
|
299
|
},
|
249
|
//用户角色配置
|
300
|
//用户角色配置
|
250
|
roleFormVisible: false,
|
301
|
roleFormVisible: false,
|
|
@@ -257,7 +308,9 @@ |
|
@@ -257,7 +308,9 @@ |
257
|
realname: '',
|
308
|
realname: '',
|
258
|
email: '',
|
309
|
email: '',
|
259
|
mobilephone: '',
|
310
|
mobilephone: '',
|
260
|
- age: 1
|
311
|
+ age: 1,
|
|
|
312
|
+ virtualHostId: '',
|
|
|
313
|
+ serverId: '',
|
261
|
},
|
314
|
},
|
262
|
roleEditForm: {
|
315
|
roleEditForm: {
|
263
|
userId: 1,
|
316
|
userId: 1,
|
|
@@ -376,6 +429,8 @@ |
|
@@ -376,6 +429,8 @@ |
376
|
},
|
429
|
},
|
377
|
//显示新增界面,每次点开初始化数据
|
430
|
//显示新增界面,每次点开初始化数据
|
378
|
handleAdd: function () {
|
431
|
handleAdd: function () {
|
|
|
432
|
+ // 刷新一下服务器列表
|
|
|
433
|
+ this.selectServerList();
|
379
|
this.addFormVisible = true;
|
434
|
this.addFormVisible = true;
|
380
|
this.addForm = {
|
435
|
this.addForm = {
|
381
|
username: '',
|
436
|
username: '',
|
|
@@ -385,7 +440,9 @@ |
|
@@ -385,7 +440,9 @@ |
385
|
realname: '',
|
440
|
realname: '',
|
386
|
email: '',
|
441
|
email: '',
|
387
|
mobilephone: '',
|
442
|
mobilephone: '',
|
388
|
- age: 1
|
443
|
+ age: 1,
|
|
|
444
|
+ virtualHostId: '',
|
|
|
445
|
+ serverId: '',
|
389
|
};
|
446
|
};
|
390
|
},
|
447
|
},
|
391
|
//编辑
|
448
|
//编辑
|
|
@@ -433,6 +490,27 @@ |
|
@@ -433,6 +490,27 @@ |
433
|
this.addLoading = true;
|
490
|
this.addLoading = true;
|
434
|
let para = Object.assign({}, this.addForm);
|
491
|
let para = Object.assign({}, this.addForm);
|
435
|
// para.birth = (!para.birth || para.birth == '') ? '' : util.formatDate.format(new Date(para.birth), 'yyyy-MM-dd');
|
492
|
// para.birth = (!para.birth || para.birth == '') ? '' : util.formatDate.format(new Date(para.birth), 'yyyy-MM-dd');
|
|
|
493
|
+
|
|
|
494
|
+ // 添加MQ用户信息
|
|
|
495
|
+ const params = {
|
|
|
496
|
+ username: this.addForm.username,
|
|
|
497
|
+ password: this.addForm.password,
|
|
|
498
|
+ realName: this.addForm.realname,
|
|
|
499
|
+ serverId: this.addForm.serverId,
|
|
|
500
|
+ virtualHostId: this.addForm.virtualHostId,
|
|
|
501
|
+ }
|
|
|
502
|
+ insertUserInfo(params).then((response) => {
|
|
|
503
|
+ let res = response.data;
|
|
|
504
|
+ // 添加失败
|
|
|
505
|
+ if (res.code !== '200') {
|
|
|
506
|
+ return this.$message.error("MQ:" + res.msg);
|
|
|
507
|
+ }
|
|
|
508
|
+ // 添加,成功
|
|
|
509
|
+ this.$message.success('添加MQ用戶信息,成功');
|
|
|
510
|
+ }).catch(error => {
|
|
|
511
|
+ this.$message.error(error.toString());
|
|
|
512
|
+ });
|
|
|
513
|
+
|
436
|
addUser(para).then((res) => {
|
514
|
addUser(para).then((res) => {
|
437
|
this.addLoading = false;
|
515
|
this.addLoading = false;
|
438
|
//NProgress.done();
|
516
|
//NProgress.done();
|
|
@@ -450,6 +528,7 @@ |
|
@@ -450,6 +528,7 @@ |
450
|
type: 'error'
|
528
|
type: 'error'
|
451
|
});
|
529
|
});
|
452
|
});
|
530
|
});
|
|
|
531
|
+
|
453
|
});
|
532
|
});
|
454
|
}
|
533
|
}
|
455
|
});
|
534
|
});
|
|
@@ -514,7 +593,28 @@ |
|
@@ -514,7 +593,28 @@ |
514
|
}
|
593
|
}
|
515
|
// console.log(data, checked, indeterminate);
|
594
|
// console.log(data, checked, indeterminate);
|
516
|
console.log(this.roleIds);
|
595
|
console.log(this.roleIds);
|
517
|
- }
|
596
|
+ },
|
|
|
597
|
+ /**
|
|
|
598
|
+ * 获取服务器列表
|
|
|
599
|
+ */
|
|
|
600
|
+ selectServerList() {
|
|
|
601
|
+ this.$store.commit('StoreServerList')
|
|
|
602
|
+ this.user_config.serverList = this.$store.state.serverList;
|
|
|
603
|
+ },
|
|
|
604
|
+
|
|
|
605
|
+ user_addChange(value) {
|
|
|
606
|
+ // 现将对应的虚拟主机的ID清空
|
|
|
607
|
+ this.addForm.virtualHostId = undefined;
|
|
|
608
|
+ // 根据服务器ID,获取出对应的虚拟主机的列表
|
|
|
609
|
+ this.selectHostList(value);
|
|
|
610
|
+ },
|
|
|
611
|
+ /**
|
|
|
612
|
+ * 获取虚拟主机列表
|
|
|
613
|
+ */
|
|
|
614
|
+ selectHostList(id) {
|
|
|
615
|
+ this.$store.commit('StoreHostList', id);
|
|
|
616
|
+ this.user_config.virtualHostList = this.$store.state.virtualHostList;
|
|
|
617
|
+ },
|
518
|
},
|
618
|
},
|
519
|
mounted() {
|
619
|
mounted() {
|
520
|
this.getUsers();
|
620
|
this.getUsers();
|