作者 RuoYi

优化提示信息

@@ -7,7 +7,7 @@ import javax.sql.DataSource; @@ -7,7 +7,7 @@ import javax.sql.DataSource;
7 import java.util.Properties; 7 import java.util.Properties;
8 8
9 /** 9 /**
10 - * 定时任务配置 10 + * 定时任务配置(单机部署建议删除此类和qrtz数据库表,默认走内存会最高效)
11 * 11 *
12 * @author ruoyi 12 * @author ruoyi
13 */ 13 */
1 import request from '@/utils/request' 1 import request from '@/utils/request'
2 2
3 -// 查询服务器详细 3 +// 获取服务信息
4 export function getServer() { 4 export function getServer() {
5 return request({ 5 return request({
6 url: '/monitor/server', 6 url: '/monitor/server',
@@ -62,7 +62,7 @@ export default { @@ -62,7 +62,7 @@ export default {
62 }, 62 },
63 // 右侧列表元素变化 63 // 右侧列表元素变化
64 dataChange(data) { 64 dataChange(data) {
65 - for (var item in this.columns) { 65 + for (let item in this.columns) {
66 const key = this.columns[item].key; 66 const key = this.columns[item].key;
67 this.columns[item].visible = !data.includes(key); 67 this.columns[item].visible = !data.includes(key);
68 } 68 }
@@ -20,8 +20,6 @@ export default { @@ -20,8 +20,6 @@ export default {
20 path: '/redirect' + path 20 path: '/redirect' + path
21 }) 21 })
22 }) 22 })
23 -  
24 -  
25 }, 23 },
26 // 关闭当前tab页签,打开新页签 24 // 关闭当前tab页签,打开新页签
27 closeOpenPage(obj) { 25 closeOpenPage(obj) {
@@ -56,7 +54,7 @@ export default { @@ -56,7 +54,7 @@ export default {
56 return store.dispatch('tagsView/delOthersViews', obj || router.currentRoute); 54 return store.dispatch('tagsView/delOthersViews', obj || router.currentRoute);
57 }, 55 },
58 // 添加tab页签 56 // 添加tab页签
59 - addPage(title, url) { 57 + openPage(title, url) {
60 var obj = { path: url, meta: { title: title } } 58 var obj = { path: url, meta: { title: title } }
61 store.dispatch('tagsView/addView', obj); 59 store.dispatch('tagsView/addView', obj);
62 return router.push(url); 60 return router.push(url);
@@ -3,7 +3,12 @@ @@ -3,7 +3,12 @@
3 <el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form"> 3 <el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form">
4 <h3 class="title">若依后台管理系统</h3> 4 <h3 class="title">若依后台管理系统</h3>
5 <el-form-item prop="username"> 5 <el-form-item prop="username">
6 - <el-input v-model="loginForm.username" type="text" auto-complete="off" placeholder="账号"> 6 + <el-input
  7 + v-model="loginForm.username"
  8 + type="text"
  9 + auto-complete="off"
  10 + placeholder="账号"
  11 + >
7 <svg-icon slot="prefix" icon-class="user" class="el-input__icon input-icon" /> 12 <svg-icon slot="prefix" icon-class="user" class="el-input__icon input-icon" />
8 </el-input> 13 </el-input>
9 </el-form-item> 14 </el-form-item>
@@ -66,7 +71,6 @@ export default { @@ -66,7 +71,6 @@ export default {
66 data() { 71 data() {
67 return { 72 return {
68 codeUrl: "", 73 codeUrl: "",
69 - cookiePassword: "",  
70 loginForm: { 74 loginForm: {
71 username: "admin", 75 username: "admin",
72 password: "admin123", 76 password: "admin123",
@@ -6,8 +6,8 @@ @@ -6,8 +6,8 @@
6 v-model="queryParams.ipaddr" 6 v-model="queryParams.ipaddr"
7 placeholder="请输入登录地址" 7 placeholder="请输入登录地址"
8 clearable 8 clearable
  9 + size="small"
9 style="width: 240px;" 10 style="width: 240px;"
10 - size="small"  
11 @keyup.enter.native="handleQuery" 11 @keyup.enter.native="handleQuery"
12 /> 12 />
13 </el-form-item> 13 </el-form-item>
@@ -16,8 +16,8 @@ @@ -16,8 +16,8 @@
16 v-model="queryParams.userName" 16 v-model="queryParams.userName"
17 placeholder="请输入用户名称" 17 placeholder="请输入用户名称"
18 clearable 18 clearable
  19 + size="small"
19 style="width: 240px;" 20 style="width: 240px;"
20 - size="small"  
21 @keyup.enter.native="handleQuery" 21 @keyup.enter.native="handleQuery"
22 /> 22 />
23 </el-form-item> 23 </el-form-item>
@@ -6,8 +6,8 @@ @@ -6,8 +6,8 @@
6 v-model="queryParams.title" 6 v-model="queryParams.title"
7 placeholder="请输入系统模块" 7 placeholder="请输入系统模块"
8 clearable 8 clearable
9 - style="width: 240px;"  
10 size="small" 9 size="small"
  10 + style="width: 240px;"
11 @keyup.enter.native="handleQuery" 11 @keyup.enter.native="handleQuery"
12 /> 12 />
13 </el-form-item> 13 </el-form-item>
@@ -16,8 +16,8 @@ @@ -16,8 +16,8 @@
16 v-model="queryParams.operName" 16 v-model="queryParams.operName"
17 placeholder="请输入操作人员" 17 placeholder="请输入操作人员"
18 clearable 18 clearable
19 - style="width: 240px;"  
20 size="small" 19 size="small"
  20 + style="width: 240px;"
21 @keyup.enter.native="handleQuery" 21 @keyup.enter.native="handleQuery"
22 /> 22 />
23 </el-form-item> 23 </el-form-item>
@@ -179,8 +179,6 @@ export default { @@ -179,8 +179,6 @@ export default {
179 isExpandAll: true, 179 isExpandAll: true,
180 // 重新渲染表格状态 180 // 重新渲染表格状态
181 refreshTable: true, 181 refreshTable: true,
182 - // 是否展开  
183 - expand: false,  
184 // 查询参数 182 // 查询参数
185 queryParams: { 183 queryParams: {
186 deptName: undefined, 184 deptName: undefined,
@@ -276,7 +274,7 @@ export default { @@ -276,7 +274,7 @@ export default {
276 this.open = true; 274 this.open = true;
277 this.title = "添加部门"; 275 this.title = "添加部门";
278 listDept().then(response => { 276 listDept().then(response => {
279 - this.deptOptions = this.handleTree(response.data, "deptId"); 277 + this.deptOptions = this.handleTree(response.data, "deptId");
280 }); 278 });
281 }, 279 },
282 /** 展开/折叠操作 */ 280 /** 展开/折叠操作 */
@@ -296,7 +294,7 @@ export default { @@ -296,7 +294,7 @@ export default {
296 this.title = "修改部门"; 294 this.title = "修改部门";
297 }); 295 });
298 listDeptExcludeChild(row.deptId).then(response => { 296 listDeptExcludeChild(row.deptId).then(response => {
299 - this.deptOptions = this.handleTree(response.data, "deptId"); 297 + this.deptOptions = this.handleTree(response.data, "deptId");
300 }); 298 });
301 }, 299 },
302 /** 提交按钮 */ 300 /** 提交按钮 */
@@ -325,7 +325,7 @@ export default { @@ -325,7 +325,7 @@ export default {
325 this.queryParams.pageNum = 1; 325 this.queryParams.pageNum = 1;
326 this.getList(); 326 this.getList();
327 }, 327 },
328 - // 返回按钮 328 + /** 返回按钮操作 */
329 handleClose() { 329 handleClose() {
330 const obj = { path: "/system/dict" }; 330 const obj = { path: "/system/dict" };
331 this.$tab.closeOpenPage(obj); 331 this.$tab.closeOpenPage(obj);
@@ -78,7 +78,8 @@ @@ -78,7 +78,8 @@
78 </el-table-column> 78 </el-table-column>
79 <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> 79 <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
80 <template slot-scope="scope"> 80 <template slot-scope="scope">
81 - <el-button size="mini" 81 + <el-button
  82 + size="mini"
82 type="text" 83 type="text"
83 icon="el-icon-edit" 84 icon="el-icon-edit"
84 @click="handleUpdate(scope.row)" 85 @click="handleUpdate(scope.row)"
@@ -126,8 +127,8 @@ @@ -126,8 +127,8 @@
126 </el-radio-group> 127 </el-radio-group>
127 </el-form-item> 128 </el-form-item>
128 </el-col> 129 </el-col>
129 - <el-col :span="24">  
130 - <el-form-item v-if="form.menuType != 'F'" label="菜单图标"> 130 + <el-col :span="24" v-if="form.menuType != 'F'">
  131 + <el-form-item label="菜单图标">
131 <el-popover 132 <el-popover
132 placement="bottom-start" 133 placement="bottom-start"
133 width="460" 134 width="460"
@@ -158,8 +159,8 @@ @@ -158,8 +159,8 @@
158 <el-input-number v-model="form.orderNum" controls-position="right" :min="0" /> 159 <el-input-number v-model="form.orderNum" controls-position="right" :min="0" />
159 </el-form-item> 160 </el-form-item>
160 </el-col> 161 </el-col>
161 - <el-col :span="12">  
162 - <el-form-item v-if="form.menuType != 'F'"> 162 + <el-col :span="12" v-if="form.menuType != 'F'">
  163 + <el-form-item>
163 <span slot="label"> 164 <span slot="label">
164 <el-tooltip content="选择是外链则路由地址需要以`http(s)://`开头" placement="top"> 165 <el-tooltip content="选择是外链则路由地址需要以`http(s)://`开头" placement="top">
165 <i class="el-icon-question"></i> 166 <i class="el-icon-question"></i>
@@ -172,8 +173,8 @@ @@ -172,8 +173,8 @@
172 </el-radio-group> 173 </el-radio-group>
173 </el-form-item> 174 </el-form-item>
174 </el-col> 175 </el-col>
175 - <el-col :span="12">  
176 - <el-form-item v-if="form.menuType != 'F'" prop="path"> 176 + <el-col :span="12" v-if="form.menuType != 'F'">
  177 + <el-form-item prop="path">
177 <span slot="label"> 178 <span slot="label">
178 <el-tooltip content="访问的路由地址,如:`user`,如外网地址需内链访问则以`http(s)://`开头" placement="top"> 179 <el-tooltip content="访问的路由地址,如:`user`,如外网地址需内链访问则以`http(s)://`开头" placement="top">
179 <i class="el-icon-question"></i> 180 <i class="el-icon-question"></i>
@@ -194,8 +195,8 @@ @@ -194,8 +195,8 @@
194 <el-input v-model="form.component" placeholder="请输入组件路径" /> 195 <el-input v-model="form.component" placeholder="请输入组件路径" />
195 </el-form-item> 196 </el-form-item>
196 </el-col> 197 </el-col>
197 - <el-col :span="12">  
198 - <el-form-item v-if="form.menuType != 'M'"> 198 + <el-col :span="12" v-if="form.menuType != 'M'">
  199 + <el-form-item>
199 <el-input v-model="form.perms" placeholder="请输入权限标识" maxlength="100" /> 200 <el-input v-model="form.perms" placeholder="请输入权限标识" maxlength="100" />
200 <span slot="label"> 201 <span slot="label">
201 <el-tooltip content="控制器中定义的权限字符,如:@PreAuthorize(`@ss.hasPermi('system:user:list')`)" placement="top"> 202 <el-tooltip content="控制器中定义的权限字符,如:@PreAuthorize(`@ss.hasPermi('system:user:list')`)" placement="top">
@@ -205,8 +206,8 @@ @@ -205,8 +206,8 @@
205 </span> 206 </span>
206 </el-form-item> 207 </el-form-item>
207 </el-col> 208 </el-col>
208 - <el-col :span="12">  
209 - <el-form-item v-if="form.menuType == 'C'"> 209 + <el-col :span="12" v-if="form.menuType == 'C'">
  210 + <el-form-item>
210 <el-input v-model="form.query" placeholder="请输入路由参数" maxlength="255" /> 211 <el-input v-model="form.query" placeholder="请输入路由参数" maxlength="255" />
211 <span slot="label"> 212 <span slot="label">
212 <el-tooltip content='访问路由的默认传递参数,如:`{"id": 1, "name": "ry"}`' placement="top"> 213 <el-tooltip content='访问路由的默认传递参数,如:`{"id": 1, "name": "ry"}`' placement="top">
@@ -216,8 +217,8 @@ @@ -216,8 +217,8 @@
216 </span> 217 </span>
217 </el-form-item> 218 </el-form-item>
218 </el-col> 219 </el-col>
219 - <el-col :span="12">  
220 - <el-form-item v-if="form.menuType == 'C'"> 220 + <el-col :span="12" v-if="form.menuType == 'C'">
  221 + <el-form-item>
221 <span slot="label"> 222 <span slot="label">
222 <el-tooltip content="选择是则会被`keep-alive`缓存,需要匹配组件的`name`和地址保持一致" placement="top"> 223 <el-tooltip content="选择是则会被`keep-alive`缓存,需要匹配组件的`name`和地址保持一致" placement="top">
223 <i class="el-icon-question"></i> 224 <i class="el-icon-question"></i>
@@ -230,8 +231,8 @@ @@ -230,8 +231,8 @@
230 </el-radio-group> 231 </el-radio-group>
231 </el-form-item> 232 </el-form-item>
232 </el-col> 233 </el-col>
233 - <el-col :span="12">  
234 - <el-form-item v-if="form.menuType != 'F'"> 234 + <el-col :span="12" v-if="form.menuType != 'F'">
  235 + <el-form-item>
235 <span slot="label"> 236 <span slot="label">
236 <el-tooltip content="选择隐藏则路由将不会出现在侧边栏,但仍然可以访问" placement="top"> 237 <el-tooltip content="选择隐藏则路由将不会出现在侧边栏,但仍然可以访问" placement="top">
237 <i class="el-icon-question"></i> 238 <i class="el-icon-question"></i>
@@ -247,8 +248,8 @@ @@ -247,8 +248,8 @@
247 </el-radio-group> 248 </el-radio-group>
248 </el-form-item> 249 </el-form-item>
249 </el-col> 250 </el-col>
250 - <el-col :span="12">  
251 - <el-form-item v-if="form.menuType != 'F'"> 251 + <el-col :span="12" v-if="form.menuType != 'F'">
  252 + <el-form-item>
252 <span slot="label"> 253 <span slot="label">
253 <el-tooltip content="选择停用则路由将不会出现在侧边栏,也不能被访问" placement="top"> 254 <el-tooltip content="选择停用则路由将不会出现在侧边栏,也不能被访问" placement="top">
254 <i class="el-icon-question"></i> 255 <i class="el-icon-question"></i>
@@ -355,8 +355,7 @@ export default { @@ -355,8 +355,7 @@ export default {
355 /** 查询角色列表 */ 355 /** 查询角色列表 */
356 getList() { 356 getList() {
357 this.loading = true; 357 this.loading = true;
358 - listRole(this.addDateRange(this.queryParams, this.dateRange)).then(  
359 - response => { 358 + listRole(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
360 this.roleList = response.rows; 359 this.roleList = response.rows;
361 this.total = response.total; 360 this.total = response.total;
362 this.loading = false; 361 this.loading = false;
@@ -123,6 +123,10 @@ export default { @@ -123,6 +123,10 @@ export default {
123 handleSelectUser() { 123 handleSelectUser() {
124 const roleId = this.queryParams.roleId; 124 const roleId = this.queryParams.roleId;
125 const userIds = this.userIds.join(","); 125 const userIds = this.userIds.join(",");
  126 + if (userIds == "") {
  127 + this.$modal.msgError("请选择要分配的用户");
  128 + return;
  129 + }
126 authUserSelectAll({ roleId: roleId, userIds: userIds }).then(res => { 130 authUserSelectAll({ roleId: roleId, userIds: userIds }).then(res => {
127 this.$modal.msgSuccess(res.msg); 131 this.$modal.msgSuccess(res.msg);
128 if (res.code === 200) { 132 if (res.code === 200) {
@@ -206,7 +206,7 @@ @@ -206,7 +206,7 @@
206 </el-col> 206 </el-col>
207 </el-row> 207 </el-row>
208 208
209 - <!-- 添加或修改参数配置对话框 --> 209 + <!-- 添加或修改用户配置对话框 -->
210 <el-dialog :title="title" :visible.sync="open" width="600px" append-to-body> 210 <el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
211 <el-form ref="form" :model="form" :rules="rules" label-width="80px"> 211 <el-form ref="form" :model="form" :rules="rules" label-width="80px">
212 <el-row> 212 <el-row>
@@ -652,7 +652,6 @@ export default { @@ -652,7 +652,6 @@ export default {
652 /** 下载模板操作 */ 652 /** 下载模板操作 */
653 importTemplate() { 653 importTemplate() {
654 this.download('system/user/importTemplate', { 654 this.download('system/user/importTemplate', {
655 - ...this.queryParams  
656 }, `user_template_${new Date().getTime()}.xlsx`) 655 }, `user_template_${new Date().getTime()}.xlsx`)
657 }, 656 },
658 // 文件上传中处理 657 // 文件上传中处理
@@ -29,7 +29,6 @@ export default { @@ -29,7 +29,6 @@ export default {
29 } 29 }
30 }; 30 };
31 return { 31 return {
32 - test: "1test",  
33 user: { 32 user: {
34 oldPassword: undefined, 33 oldPassword: undefined,
35 newPassword: undefined, 34 newPassword: undefined,
@@ -55,11 +54,9 @@ export default { @@ -55,11 +54,9 @@ export default {
55 submit() { 54 submit() {
56 this.$refs["form"].validate(valid => { 55 this.$refs["form"].validate(valid => {
57 if (valid) { 56 if (valid) {
58 - updateUserPwd(this.user.oldPassword, this.user.newPassword).then(  
59 - response => {  
60 - this.$modal.msgSuccess("修改成功");  
61 - }  
62 - ); 57 + updateUserPwd(this.user.oldPassword, this.user.newPassword).then(response => {
  58 + this.$modal.msgSuccess("修改成功");
  59 + });
63 } 60 }
64 }); 61 });
65 }, 62 },
1 <template> 1 <template>
2 <div> 2 <div>
3 <div class="user-info-head" @click="editCropper()"><img v-bind:src="options.img" title="点击上传头像" class="img-circle img-lg" /></div> 3 <div class="user-info-head" @click="editCropper()"><img v-bind:src="options.img" title="点击上传头像" class="img-circle img-lg" /></div>
4 - <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body @opened="modalOpened" @close="closeDialog()"> 4 + <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body @opened="modalOpened" @close="closeDialog">
5 <el-row> 5 <el-row>
6 <el-col :xs="24" :md="12" :style="{height: '350px'}"> 6 <el-col :xs="24" :md="12" :style="{height: '350px'}">
7 <vue-cropper 7 <vue-cropper
@@ -140,7 +140,7 @@ export default { @@ -140,7 +140,7 @@ export default {
140 // 关闭窗口 140 // 关闭窗口
141 closeDialog() { 141 closeDialog() {
142 this.options.img = store.getters.avatar 142 this.options.img = store.getters.avatar
143 - this.visible = false; 143 + this.visible = false;
144 } 144 }
145 } 145 }
146 }; 146 };