增加个人信息修改、头像上传、密码更新功能

pull/59/head
smallchill 6 years ago
parent fdb95ed488
commit 8ef6ea2ab2
  1. 38
      src/api/system/user.js
  2. 28
      src/const/user/info.js
  3. 52
      src/views/user/info.vue

@ -1,14 +1,5 @@
import request from '@/router/axios'; import request from '@/router/axios';
export const resetPassword = (userIds) => {
return request({
url: '/api/blade-user/reset-password',
method: 'post',
params: {
userIds,
}
})
}
export const getList = (current, size, params) => { export const getList = (current, size, params) => {
return request({ return request({
url: '/api/blade-user/list', url: '/api/blade-user/list',
@ -55,3 +46,32 @@ export const getUser = (id) => {
} }
}) })
} }
export const getUserInfo = () => {
return request({
url: '/api/blade-user/info',
method: 'get',
})
}
export const resetPassword = (userIds) => {
return request({
url: '/api/blade-user/reset-password',
method: 'post',
params: {
userIds,
}
})
}
export const updatePassword = (oldPassword, newPassword, newPassword1) => {
return request({
url: '/api/blade-user/update-password',
method: 'post',
params: {
oldPassword,
newPassword,
newPassword1,
}
})
}

@ -9,40 +9,38 @@ export default {
type: 'upload', type: 'upload',
listType: 'picture-img', listType: 'picture-img',
propsHttp: { propsHttp: {
res: 'data.0' res: 'data',
url: 'link',
}, },
canvasOption: { canvasOption: {
text: 'avue', text: 'bladex',
ratio: 0.1 ratio: 0.1
}, },
action: 'https://avueupload.91eic.com/upload/list', action: '/api/blade-resource/oss/endpoint/put-file',
tip: '只能上传jpg/png用户头像,且不超过500kb', tip: '只能上传jpg/png用户头像,且不超过500kb',
span: 12, span: 12,
row: true, row: true,
prop: 'img' prop: 'avatar'
}, { }, {
label: '姓名', label: '姓名',
span: 6, span: 12,
row: true, row: true,
prop: 'name' prop: 'name'
}, { }, {
label: '用户名', label: '用户名',
span: 12, span: 12,
row: true, row: true,
prop: 'username' prop: 'realName'
}, { }, {
label: '手机号', label: '手机号',
span: 12, span: 12,
row: true, row: true,
prop: 'phone' prop: 'phone'
}, { }, {
label: '个性签名', label: '邮箱',
prop: 'detail', prop: 'email',
span: 24, span: 12,
row: true, row: true,
type: 'textarea',
minRows: 5,
maxRows: 8,
}] }]
} }
}, { }, {
@ -55,19 +53,19 @@ export default {
span: 12, span: 12,
row: true, row: true,
type: 'password', type: 'password',
prop: 'oldpassword' prop: 'oldPassword'
}, { }, {
label: '新密码', label: '新密码',
span: 12, span: 12,
row: true, row: true,
type: 'password', type: 'password',
prop: 'newpassword' prop: 'newPassword'
}, { }, {
label: '确认密码', label: '确认密码',
span: 12, span: 12,
row: true, row: true,
type: 'password', type: 'password',
prop: 'newpasswords' prop: 'newPassword1'
}] }]
} }
}] }]

@ -11,6 +11,8 @@
<script> <script>
import option from "@/const/user/info"; import option from "@/const/user/info";
import {getUserInfo, update, updatePassword} from "@/api/system/user";
export default { export default {
data() { data() {
@ -25,25 +27,49 @@
}, },
methods: { methods: {
handleSubmit() { handleSubmit() {
if (this.type === "info") {
update(this.form).then(res => {
if (res.data.success) {
this.$message({
type: "success",
message: "修改信息成功!"
});
} else {
this.$message({
type: "error",
message: res.data.msg
});
}
})
} else {
updatePassword(this.form.oldPassword, this.form.newPassword, this.form.newPassword1).then(res => {
if (res.data.success) {
this.$message({
type: "success",
message: "修改密码成功!"
});
} else {
this.$message({ this.$message({
message: this.form, type: "error",
type: "success" message: res.data.msg
}); });
}
})
}
}, },
handleWitch() { handleWitch() {
if (this.type === "info") { if (this.type === "info") {
getUserInfo().then(res => {
const user = res.data.data;
this.form = { this.form = {
username: "smallwei", id: user.id,
name: "smallwei", avatar: user.avatar,
phone: "1888888888888", name: user.name,
detail: "这是一个个性签名" realName: user.realName,
}; phone: user.phone,
} else if (this.type === "password") { email: user.email,
this.form = { }
oldpassword: 11111111, });
newpassword: 22222222,
newpasswords: 22222222
};
} }
}, },
handleChange(item) { handleChange(item) {

Loading…
Cancel
Save