魏熙美 6 年前
父节点
当前提交
bda455470d

+ 4
- 0
src/config/api.js 查看文件

63
     deleteUserRole:{
63
     deleteUserRole:{
64
       method:'post',
64
       method:'post',
65
       url: `${commPrefix}/deleteUserRole`
65
       url: `${commPrefix}/deleteUserRole`
66
+    },
67
+    updatePwd: {
68
+      method:'post',
69
+      url: `${commPrefix}/updatePwd`
66
     }
70
     }
67
   },
71
   },
68
   type: {
72
   type: {

+ 4
- 0
src/layout/default/User.vue 查看文件

11
       </span>
11
       </span>
12
       <el-dropdown-menu slot="dropdown">
12
       <el-dropdown-menu slot="dropdown">
13
         <!-- <el-dropdown-item command="resetPassword">重置密码</el-dropdown-item> -->
13
         <!-- <el-dropdown-item command="resetPassword">重置密码</el-dropdown-item> -->
14
+        <el-dropdown-item command="showUpdatePwd">修改密码</el-dropdown-item>
14
         <el-dropdown-item command="logout">登出</el-dropdown-item>
15
         <el-dropdown-item command="logout">登出</el-dropdown-item>
15
       </el-dropdown-menu>
16
       </el-dropdown-menu>
16
     </el-dropdown>
17
     </el-dropdown>
33
         case 'logout':
34
         case 'logout':
34
           this.$emit('logout')
35
           this.$emit('logout')
35
           break
36
           break
37
+        case 'showUpdatePwd':
38
+          this.$emit('showUpdatePwd')
39
+          break
36
         default:
40
         default:
37
           // todo
41
           // todo
38
       }
42
       }

+ 48
- 1
src/layout/default/index.vue 查看文件

9
     <el-container>
9
     <el-container>
10
       <el-header class="head">
10
       <el-header class="head">
11
         <div class="h-item">&nbsp;</div>
11
         <div class="h-item">&nbsp;</div>
12
-        <user class="h-item-noflex" :user="userAuthority" :messages="[1]" @logout="logout" @resetPassword="resetPassword"></user>
12
+        <user class="h-item-noflex" :user="userAuthority" :messages="[1]" @logout="logout" @resetPassword="resetPassword" @showUpdatePwd="showUpdatePwd"></user>
13
       </el-header>
13
       </el-header>
14
       <el-breadcrumb class="breadcrumb" separator-class="el-icon-arrow-right">
14
       <el-breadcrumb class="breadcrumb" separator-class="el-icon-arrow-right">
15
         <el-breadcrumb-item :to="{ name: 'index' }">首页</el-breadcrumb-item>
15
         <el-breadcrumb-item :to="{ name: 'index' }">首页</el-breadcrumb-item>
22
         <xm-footer company="荟房科技" />
22
         <xm-footer company="荟房科技" />
23
       </el-footer>
23
       </el-footer>
24
     </el-container>
24
     </el-container>
25
+    <el-dialog
26
+            title="修改密码"
27
+            :visible.sync="pwdDialogVisible"
28
+            width="25%"
29
+            :before-close="handleClose">
30
+      <el-form :model="fromPwd" status-icon :rules="rules" ref="ruleForm" label-width="100px">
31
+        <el-form-item label="旧密码" prop="oldPwd">
32
+          <el-input v-model="fromPwd.oldPwd" />
33
+        </el-form-item>
34
+        <el-form-item label="新密码" prop="newPwd">
35
+          <el-input v-model="fromPwd.newPwd" />
36
+        </el-form-item>
37
+      </el-form>
38
+
39
+      <span>
40
+      <el-button @click="pwdDialogVisible = false">取 消</el-button>
41
+      <el-button type="primary" @click="updatePwd">确 定</el-button>
42
+    </span>
43
+    </el-dialog>
25
   </el-container>
44
   </el-container>
26
 </template>
45
 </template>
27
 
46
 
42
       menus: [],
61
       menus: [],
43
       menuArray: [],
62
       menuArray: [],
44
       userAuthority: [],
63
       userAuthority: [],
64
+      fromPwd: {
65
+        oldPwd: '',
66
+        newPwd: ''
67
+      },
68
+      pwdDialogVisible: false,
69
+      rules: {
70
+        oldPwd: [
71
+          { required: true, message: '请输入旧密码', trigger: 'blur' }
72
+        ],
73
+        newPwd: [
74
+          { required: true, message: '请输入新密码', trigger: 'blur' }
75
+        ]
76
+      },
45
     }
77
     }
46
   },
78
   },
47
   computed: {
79
   computed: {
78
     this.menus = pages
110
     this.menus = pages
79
   },
111
   },
80
   methods: {
112
   methods: {
113
+    handleClose(done) {
114
+      done();
115
+    },
81
     isInMenuList(menu) {
116
     isInMenuList(menu) {
82
       const m = this.menuArray.filter(x => x.name === menu.name)[0]
117
       const m = this.menuArray.filter(x => x.name === menu.name)[0]
83
       if (!m) {
118
       if (!m) {
98
           }
133
           }
99
         })
134
         })
100
       })
135
       })
136
+    },
137
+    showUpdatePwd() { // 显示修改密码框
138
+      this.pwdDialogVisible = true
139
+    },
140
+    updatePwd() {
141
+      this.$refs.ruleForm.validate((valid) => {
142
+        if (valid) {
143
+          this.$store.dispatch('updatePwd', this.fromPwd).then(() => {
144
+            this.pwdDialogVisible = false
145
+          })
146
+        }
147
+      })
101
     }
148
     }
102
   }
149
   }
103
 }
150
 }

+ 2
- 2
src/store/modules/sysuser.js 查看文件

60
     },
60
     },
61
     addSysUser ( _, payload) {
61
     addSysUser ( _, payload) {
62
       const dtStr = window.JSON.stringify(payload)
62
       const dtStr = window.JSON.stringify(payload)
63
-      const api = lodash.get(apis, 'sysuser.edi.vue')
63
+      const api = lodash.get(apis, 'sysuser.add')
64
       return interact(api, dtStr)
64
       return interact(api, dtStr)
65
     },
65
     },
66
     editSysUser ( _, payload) {
66
     editSysUser ( _, payload) {
139
           reject()
139
           reject()
140
         })
140
         })
141
       })
141
       })
142
-    }
142
+    },
143
   }
143
   }
144
 }
144
 }

+ 10
- 0
src/store/system.js 查看文件

75
         commit('updateUser', {})
75
         commit('updateUser', {})
76
         // commit('syncState', { userLoged: false })
76
         // commit('syncState', { userLoged: false })
77
       })
77
       })
78
+    },
79
+    updatePwd(_, payload) { // 修改密码
80
+      return new Promise((resolve, reject) => {
81
+        const api = lodash.get(apis, 'sysuser.updatePwd')
82
+        interact(api,payload).then((data) => {
83
+          resolve(data)
84
+        }).catch(() => {
85
+          reject()
86
+        })
87
+      })
78
     }
88
     }
79
   }
89
   }
80
 }
90
 }

+ 51
- 9
src/views/sysuser/edit.vue 查看文件

1
 <template>
1
 <template>
2
   <div>
2
   <div>
3
     <el-form class="user-form" :rules="rules" :model="detail" ref="ruleForm" label-width="160px">
3
     <el-form class="user-form" :rules="rules" :model="detail" ref="ruleForm" label-width="160px">
4
+      <el-form-item label="登录名" prop="loginname" required>
5
+        <el-input v-model="detail.loginname"></el-input>
6
+      </el-form-item>
4
       <el-form-item label="用户名" prop="username" required>
7
       <el-form-item label="用户名" prop="username" required>
5
         <el-input v-model="detail.username"></el-input>
8
         <el-input v-model="detail.username"></el-input>
6
       </el-form-item>
9
       </el-form-item>
57
         menuArray: []
60
         menuArray: []
58
         
61
         
59
       },
62
       },
63
+      pageNavi: {
64
+        page: 1,
65
+        size: 10,
66
+        total: 0,
67
+      },
68
+      listQuery: {
69
+        name: '',
70
+        phone: '',
71
+        identity: undefined,
72
+      },
60
       roleId: [],
73
       roleId: [],
61
       sysRole:[],
74
       sysRole:[],
62
       rules: {
75
       rules: {
76
+        loginname: [
77
+          { required: true, message: '请输入登录名', trigger: 'blur' }
78
+        ],
63
         nickname: [
79
         nickname: [
64
           { required: true, message: '请输入用户名', trigger: 'blur' }
80
           { required: true, message: '请输入用户名', trigger: 'blur' }
65
         ],
81
         ],
77
   },
93
   },
78
   methods: {
94
   methods: {
79
     ...mapUserActions([
95
     ...mapUserActions([
96
+      'getSysUserList',
80
       'getDetail',
97
       'getDetail',
81
       'addSysUser',
98
       'addSysUser',
82
       'editSysUser',
99
       'editSysUser',
90
     onCancel () {
107
     onCancel () {
91
       this.$router.back()
108
       this.$router.back()
92
     },
109
     },
110
+    getList () {
111
+      this.getSysUserList({
112
+        pageNum: this.pageNavi.page || 1,
113
+        pageSize: this.pageNavi.size,
114
+        identity: this.listQuery.identity === '%' ? undefined : this.listQuery.identity,
115
+        ...this.listQuery,
116
+      }).then((data) => {
117
+        const { current: page, size, total } = data
118
+        this.pageNavi = { page, size, total }
119
+      })
120
+    },
93
     onSubmit () {
121
     onSubmit () {
94
       this.$refs.ruleForm.validate((valid) => {
122
       this.$refs.ruleForm.validate((valid) => {
95
         if (!valid) {
123
         if (!valid) {
99
 
127
 
100
         if (!this.detail.userId) {
128
         if (!this.detail.userId) {
101
           // 新增
129
           // 新增
102
-          this.addSysUser({...this.detail, isSales: 1}).then(() => {
130
+          this.addSysUser({...this.detail, isSales: 1}).then((res) => {
103
             this.$notify.success('添加信息成功')
131
             this.$notify.success('添加信息成功')
132
+
133
+            this.formInline.userId = res.userId
134
+            this.getUserRoledetails()
135
+            this.init()
136
+
137
+            // 保存角色
138
+            this.formInline.menuArray = this.roleId
139
+            this.updateUserRolede(this.formInline)
140
+            this.getList()
141
+            this.$router.go(-1)
104
           })
142
           })
105
         } else {
143
         } else {
106
           // 修改
144
           // 修改
107
           this.editSysUser({...this.detail, isSales: 1}).then(() => {
145
           this.editSysUser({...this.detail, isSales: 1}).then(() => {
108
             this.$notify.success('编辑信息成功')
146
             this.$notify.success('编辑信息成功')
147
+            // 保存角色
148
+            this.formInline.menuArray = this.roleId
149
+            this.updateUserRolede(this.formInline)
150
+            this.getList()
151
+            this.$router.go(-1)
109
           })
152
           })
110
-          // 保存角色
111
-          this.formInline.menuArray = this.roleId
112
-          this.updateUserRolede(this.formInline)
113
         }
153
         }
114
-
154
+      })
155
+    },
156
+    getUserRoledetails() {
157
+      this.userRoledetails(this.formInline).then((data)=>{
158
+        this.sysRole = data.sysRole
159
+        this.roleId = data.arrayList
115
       })
160
       })
116
     },
161
     },
117
     init () {
162
     init () {
132
   },
177
   },
133
   created () {
178
   created () {
134
     this.formInline.userId = this.$route.query.id
179
     this.formInline.userId = this.$route.query.id
135
-    this.userRoledetails(this.formInline).then((data)=>{
136
-        this.sysRole = data.sysRole
137
-        this.roleId = data.arrayList
138
-    })
180
+    this.getUserRoledetails()
139
     this.init()
181
     this.init()
140
   },
182
   },
141
 }
183
 }

+ 1
- 1
src/views/sysuser/list.vue 查看文件

58
         label="操作">
58
         label="操作">
59
         <template slot-scope="scope">
59
         <template slot-scope="scope">
60
           <el-button type="text" @click="handleEdit(scope.row)" size="small">编辑</el-button>
60
           <el-button type="text" @click="handleEdit(scope.row)" size="small">编辑</el-button>
61
-           <el-button type="text" @click="addUserRole(scope.row)" size="small">添加权限</el-button>       
61
+<!--           <el-button type="text" @click="addUserRole(scope.row)" size="small">添加权限</el-button>       -->
62
         </template>
62
         </template>
63
       </el-table-column>
63
       </el-table-column>
64
     </el-table>
64
     </el-table>