用户修改
This commit is contained in:
@@ -5,11 +5,19 @@
|
||||
<el-form-item label="姓名" prop="name">
|
||||
<el-input v-model="dataForm.name" placeholder="姓名"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="电话" prop="tel">
|
||||
<el-input v-model="dataForm.tel" placeholder="电话"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="密码" prop="password" v-if="!dataForm.id">
|
||||
<el-input v-model="dataForm.password" placeholder="密码"></el-input>
|
||||
</el-form-item>
|
||||
<div v-if="dataForm.id">
|
||||
<el-form-item label="年龄" prop="age">
|
||||
<el-input v-model="dataForm.age" placeholder="年龄"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="性别" prop="sex">
|
||||
<!-- <el-input v-model="dataForm.sex" placeholder="性别"></el-input> -->
|
||||
<el-radio v-model="dataForm.sex" :label=2>保密</el-radio>
|
||||
<el-radio v-model="dataForm.sex" :label=1>男</el-radio>
|
||||
<el-radio v-model="dataForm.sex" :label=0>女</el-radio>
|
||||
</el-form-item>
|
||||
@@ -26,17 +34,14 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="昵称" prop="nickname">
|
||||
<el-input v-model="dataForm.nickname" placeholder="昵称"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="电话" prop="tel">
|
||||
<el-input v-model="dataForm.tel" placeholder="电话"></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="密码" prop="password">
|
||||
<el-input v-model="dataForm.password" placeholder="密码"></el-input>
|
||||
</el-form-item> -->
|
||||
<el-form-item label="会员类型" prop="vip">
|
||||
<!-- <el-form-item label="会员类型" prop="vip">
|
||||
<el-input v-model="dataForm.vip" placeholder="0-普通 1-vip"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="vip 有效期" prop="vipValidtime">
|
||||
</el-form-item> -->
|
||||
<!-- <el-form-item label="vip 有效期" prop="vipValidtime">
|
||||
<el-date-picker
|
||||
v-model="dataForm.vipValidtime"
|
||||
type="datetime"
|
||||
@@ -44,8 +49,8 @@
|
||||
align="right"
|
||||
:picker-options="pickerOptions">
|
||||
</el-date-picker>
|
||||
<!-- <el-input v-model="dataForm.vipValidtime" placeholder="vip 有效期"></el-input> -->
|
||||
</el-form-item>
|
||||
<el-input v-model="dataForm.vipValidtime" placeholder="vip 有效期"></el-input>
|
||||
</el-form-item> -->
|
||||
<el-form-item label="花生币" prop="peanutCoin">
|
||||
<!-- <el-input v-model="dataForm.peanutCoin" placeholder="花生币"></el-input> -->
|
||||
<el-input-number disabled v-model="dataForm.peanutCoin" label="花生币"></el-input-number>
|
||||
@@ -65,6 +70,7 @@
|
||||
<el-form-item label="删除标记" prop="delFlag">
|
||||
<el-input v-model="dataForm.delFlag" placeholder="删除标记"></el-input>
|
||||
</el-form-item> -->
|
||||
</div>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="handlereset">取消</el-button>
|
||||
@@ -82,11 +88,33 @@ export default {
|
||||
visible: false,
|
||||
dialogVisible: false,
|
||||
fileList: [],
|
||||
pickerOptions:{
|
||||
shortcuts: [{
|
||||
text: '今天',
|
||||
onClick(picker) {
|
||||
picker.$emit('pick', new Date());
|
||||
}
|
||||
}, {
|
||||
text: '昨天',
|
||||
onClick(picker) {
|
||||
const date = new Date();
|
||||
date.setTime(date.getTime() - 3600 * 1000 * 24);
|
||||
picker.$emit('pick', date);
|
||||
}
|
||||
}, {
|
||||
text: '一周前',
|
||||
onClick(picker) {
|
||||
const date = new Date();
|
||||
date.setTime(date.getTime() - 3600 * 1000 * 24 * 7);
|
||||
picker.$emit('pick', date);
|
||||
}
|
||||
}]
|
||||
},
|
||||
dataForm: {
|
||||
id: 0,
|
||||
name: '',
|
||||
name: '',
|
||||
age: '',
|
||||
sex: '',
|
||||
sex: 2,
|
||||
avatar: '',
|
||||
nickname: '',
|
||||
tel: '',
|
||||
@@ -101,9 +129,12 @@ export default {
|
||||
delFlag: '',
|
||||
},
|
||||
dataRule: {
|
||||
// name: [
|
||||
// { required: true, message: '姓名不能为空', trigger: 'blur' }
|
||||
// ],
|
||||
name: [
|
||||
{ required: true, message: '姓名不能为空', trigger: 'blur' }
|
||||
],
|
||||
password: [
|
||||
{ required: true, message: '密码不能为空', trigger: 'blur' }
|
||||
],
|
||||
// age: [
|
||||
// { required: true, message: '年龄不能为空', trigger: 'blur' }
|
||||
// ],
|
||||
@@ -116,9 +147,19 @@ export default {
|
||||
// nickname: [
|
||||
// { required: true, message: '昵称不能为空', trigger: 'blur' }
|
||||
// ],
|
||||
// tel: [
|
||||
// { required: true, message: '电话不能为空', trigger: 'blur' }
|
||||
// ],
|
||||
tel: [
|
||||
{ required: true, message: '电话不能为空', trigger: 'blur' },
|
||||
{
|
||||
validator: function(rule, value, callback) {
|
||||
if (/^1[34578]\d{9}$/.test(value) == false) {
|
||||
callback(new Error("手机号格式错误"));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
},
|
||||
trigger: "blur"
|
||||
}
|
||||
],
|
||||
// password: [
|
||||
// { required: true, message: '密码不能为空', trigger: 'blur' }
|
||||
// ],
|
||||
@@ -164,7 +205,7 @@ export default {
|
||||
if (data && data.code === 0) {
|
||||
this.dataForm.name = data.user.name
|
||||
this.dataForm.age = data.user.age
|
||||
this.dataForm.sex = data.user.sex
|
||||
this.dataForm.sex = data.user.sex
|
||||
this.dataForm.avatar = data.user.avatar
|
||||
this.dataForm.nickname = data.user.nickname
|
||||
this.dataForm.tel = data.user.tel
|
||||
@@ -177,7 +218,7 @@ export default {
|
||||
this.dataForm.createTime = data.user.createTime
|
||||
this.dataForm.updateTime = data.user.updateTime
|
||||
this.dataForm.delFlag = data.user.delFlag
|
||||
if (data.user.avatar != "") {
|
||||
if (data.user.avatar && data.user.avatar != "") {
|
||||
var img = { name: '', url: data.user.avatar }
|
||||
var attr = []
|
||||
attr.push(img)
|
||||
@@ -191,28 +232,38 @@ export default {
|
||||
// 表单提交
|
||||
dataFormSubmit() {
|
||||
this.$refs['dataForm'].validate((valid) => {
|
||||
if (valid) {
|
||||
this.$http({
|
||||
url: this.$http.adornUrl(`/book/user/${!this.dataForm.id ? 'save' : 'update'}`),
|
||||
method: 'post',
|
||||
data: this.$http.adornData({
|
||||
'id': this.dataForm.id || undefined,
|
||||
let myData = {}
|
||||
if(!this.dataForm.id){
|
||||
myData = {
|
||||
'name': this.dataForm.name,
|
||||
'tel': this.dataForm.tel,
|
||||
}
|
||||
}else{
|
||||
myData = {
|
||||
'id': this.dataForm.id,
|
||||
'name': this.dataForm.name,
|
||||
'age': this.dataForm.age,
|
||||
'sex': this.dataForm.sex,
|
||||
'avatar': this.dataForm.avatar,
|
||||
'nickname': this.dataForm.nickname,
|
||||
'tel': this.dataForm.tel,
|
||||
'password': this.dataForm.password,
|
||||
'vip': this.dataForm.vip,
|
||||
'vipValidtime': this.dataForm.vipValidtime,
|
||||
'peanutCoin': this.dataForm.peanutCoin,
|
||||
'readTime': this.dataForm.readTime,
|
||||
'lastLoginTime': this.dataForm.lastLoginTime,
|
||||
'createTime': this.dataForm.createTime,
|
||||
'updateTime': this.dataForm.updateTime,
|
||||
'delFlag': this.dataForm.delFlag
|
||||
})
|
||||
// 'password': this.dataForm.password,
|
||||
// 'vip': this.dataForm.vip,
|
||||
// 'vipValidtime': this.dataForm.vipValidtime,
|
||||
// 'peanutCoin': this.dataForm.peanutCoin,
|
||||
// 'readTime': this.dataForm.readTime,
|
||||
// 'lastLoginTime': this.dataForm.lastLoginTime,
|
||||
// 'createTime': this.dataForm.createTime,
|
||||
// 'updateTime': this.dataForm.updateTime,
|
||||
// 'delFlag': this.dataForm.delFlag
|
||||
}
|
||||
}
|
||||
console.log('myData', myData)
|
||||
if (valid) {
|
||||
this.$http({
|
||||
url: this.$http.adornUrl(`/book/user/${!this.dataForm.id ? 'save' : 'update'}`),
|
||||
method: 'post',
|
||||
data: this.$http.adornData(myData)
|
||||
}).then(({ data }) => {
|
||||
if (data && data.code === 0) {
|
||||
this.$message({
|
||||
@@ -230,7 +281,7 @@ export default {
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
handlePictureCardPreview(file) {
|
||||
this.dataForm.avatar = file.url;
|
||||
this.dialogVisible = true;
|
||||
@@ -246,7 +297,10 @@ export default {
|
||||
handleRemove(file) {
|
||||
this.dataForm.avatar = '';
|
||||
},
|
||||
handlereset(){
|
||||
handlereset(){
|
||||
// console.log('关闭了')
|
||||
this.$refs['dataForm'].resetFields()
|
||||
this.dataForm.password = ''
|
||||
this.fileList = [],
|
||||
this.visible = false
|
||||
},
|
||||
|
||||
@@ -16,29 +16,31 @@
|
||||
style="width: 100%;">
|
||||
<el-table-column type="selection" header-align="center" align="center" width="50">
|
||||
</el-table-column>
|
||||
<el-table-column label="序号" width="70" align="center">
|
||||
<!-- <el-table-column label="序号" width="70" align="center">
|
||||
<template slot-scope="scope">
|
||||
{{ (pageIndex - 1) * pageSize + scope.$index + 1 }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- <el-table-column
|
||||
</el-table-column> -->
|
||||
<el-table-column
|
||||
prop="id"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="">
|
||||
</el-table-column> -->
|
||||
label="用户ID">
|
||||
</el-table-column>
|
||||
<el-table-column prop="name" header-align="center" align="center" label="姓名">
|
||||
</el-table-column>
|
||||
<el-table-column prop="age" header-align="center" align="center" label="年龄">
|
||||
</el-table-column>
|
||||
<!-- <el-table-column prop="age" header-align="center" align="center" label="年龄">
|
||||
</el-table-column> -->
|
||||
<el-table-column prop="sex" header-align="center" align="center" label="性别">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.sex == 0 ? '女':'男'}}
|
||||
<span v-if="scope.row.sex == 0">女</span><span v-if="scope.row.sex == 1">男</span><span v-if="scope.row.sex == 2">保密</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="avatar" header-align="center" align="center" label="头像">
|
||||
<template slot-scope="scope">
|
||||
<img v-if="scope.row.avatar != ''" :src="scope.row.avatar" width="50" height="50" class="tableImg" />
|
||||
<img v-if="scope.row.avatar && scope.row.avatar != ''" :src="scope.row.avatar" width="50" height="50" class="tableImg" />
|
||||
<img v-else src="../../../../static/img/morenAvavter.png" width="50" height="50" class="tableImg">
|
||||
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="nickname" header-align="center" align="center" label="昵称">
|
||||
@@ -51,12 +53,12 @@
|
||||
align="center"
|
||||
label="密码">
|
||||
</el-table-column> -->
|
||||
<el-table-column prop="vip" header-align="center" align="center" label="会员类型">
|
||||
<!-- <el-table-column prop="vip" header-align="center" align="center" label="会员类型">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.vip == '1'">VIP</span>
|
||||
<span v-if="scope.row.vip == '0'">普通会员</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column> -->
|
||||
<!-- <el-table-column
|
||||
prop="vipValidtime"
|
||||
header-align="center"
|
||||
@@ -75,8 +77,8 @@
|
||||
</el-table-column>
|
||||
<el-table-column prop="createTime" header-align="center" align="center" label="创建时间">
|
||||
</el-table-column>
|
||||
<el-table-column prop="updateTime" header-align="center" align="center" label="更新时间">
|
||||
</el-table-column>
|
||||
<!-- <el-table-column prop="updateTime" header-align="center" align="center" label="更新时间">
|
||||
</el-table-column> -->
|
||||
<!-- <el-table-column
|
||||
prop="delFlag"
|
||||
header-align="center"
|
||||
@@ -84,20 +86,30 @@
|
||||
label="删除标记">
|
||||
</el-table-column> -->
|
||||
<el-table-column fixed="right" header-align="center" align="center" width="150" label="操作">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="text" size="small" @click="ck(scope.row)">充/扣天医币</el-button>
|
||||
<router-link :to="{ path: 'user-point-memery', query: {'tel':scope.row.tel, 'id':scope.row.id} }">
|
||||
<el-button type="text" size="small">充/扣天医币记录</el-button>
|
||||
</router-link>
|
||||
<el-button type="text" size="small" @click="youhui(scope.row)">优惠券列表</el-button>
|
||||
<br>
|
||||
<template slot-scope="scope">
|
||||
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">修改</el-button>
|
||||
<el-button type="text" size="small" @click="deleteHandle(scope.row.id)">删除</el-button>
|
||||
<el-dropdown>
|
||||
<span class="el-dropdown-link" style="font-size:12px; color:#17B3A3; cursor: pointer;">
|
||||
更多操作<i class="el-icon-arrow-down el-icon--right"></i>
|
||||
</span>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item><el-button type="text" size="small" @click="ck(scope.row)">充/扣天医币</el-button></el-dropdown-item>
|
||||
<el-dropdown-item>
|
||||
<router-link :to="{ path: 'user-point-memery', query: {'tel':scope.row.tel, 'id':scope.row.id} }">
|
||||
<el-button type="text" size="small">充/扣天医币记录</el-button>
|
||||
</router-link>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item><el-button type="text" size="small" @click="youhui(scope.row)">优惠券列表</el-button></el-dropdown-item>
|
||||
<el-dropdown-item><el-button type="text" size="small" @click="resetPassword(scope.row)">修改密码</el-button></el-dropdown-item>
|
||||
<!-- <el-dropdown-item divided>蚵仔煎</el-dropdown-item> -->
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-pagination @size-change="sizeChangeHandle" @current-change="currentChangeHandle" :current-page="pageIndex"
|
||||
:page-sizes="[10, 20, 50, 100]" :page-size="pageSize" :total="totalPage"
|
||||
:page-sizes="[10, 20, 50, 100]" :page-size="pageSize" :total="total"
|
||||
layout="total, sizes, prev, pager, next, jumper">
|
||||
</el-pagination>
|
||||
<!-- 弹窗, 新增 / 修改 -->
|
||||
@@ -199,6 +211,7 @@
|
||||
pageIndex: 1,
|
||||
pageSize: 10,
|
||||
totalPage: 0,
|
||||
total:0,
|
||||
dataListLoading: false,
|
||||
dataListSelections: [],
|
||||
addOrUpdateVisible: false,
|
||||
@@ -220,23 +233,64 @@
|
||||
getDataList() {
|
||||
this.dataListLoading = true
|
||||
this.$http({
|
||||
url: this.$http.adornUrl('/book/user/list'),
|
||||
method: 'get',
|
||||
params: this.$http.adornParams({
|
||||
'page': 1,
|
||||
'limit': 200,
|
||||
// url: this.$http.adornUrl('/book/user/list'),
|
||||
url: this.$http.adornUrl('/book/user/getUserList'),
|
||||
method: 'post',
|
||||
data: this.$http.adornData({
|
||||
'page': this.pageIndex,
|
||||
'limit': this.pageSize,
|
||||
'key': this.dataForm.key
|
||||
})
|
||||
}),
|
||||
// params: this.$http.adornParams({
|
||||
// 'page': 1,
|
||||
// 'limit': this.pageSize,
|
||||
// 'key': this.dataForm.key
|
||||
// })
|
||||
}).then(({
|
||||
data
|
||||
}) => {
|
||||
if (data && data.code === 0) {
|
||||
this.dataList = data.page.list
|
||||
this.totalPage = data.page.totalCount
|
||||
this.dataList = data.user.records
|
||||
this.totalPage = data.user.pages
|
||||
this.total = data.user.total
|
||||
this.dataListLoading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
// 重置密码
|
||||
resetPassword(row){
|
||||
console.log(row,'row')
|
||||
this.$prompt('请输入新密码', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
// inputPattern: /[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?/,
|
||||
// inputErrorMessage: '邮箱格式不正确'
|
||||
}).then(({ value }) => {
|
||||
this.$http({
|
||||
url: this.$http.adornUrl('/book/user/updateUserPassword'),
|
||||
method: 'post',
|
||||
data: this.$http.adornData({
|
||||
'id':row.id,
|
||||
'password': value
|
||||
}),
|
||||
}).then(({data}) => {
|
||||
if (data && data.code === 0) {
|
||||
this.$message.success('修改密码成功')
|
||||
}
|
||||
}).catch(({e}) => {
|
||||
console.log(e,'e')
|
||||
})
|
||||
// this.$message({
|
||||
// type: 'success',
|
||||
// message: '你的邮箱是: ' + value
|
||||
// });
|
||||
}).catch(() => {
|
||||
// this.$message({
|
||||
// type: 'info',
|
||||
// message: '取消输入'
|
||||
// });
|
||||
});
|
||||
},
|
||||
// 获取优惠券列表
|
||||
getcourpeList() {
|
||||
this.$http({
|
||||
|
||||
Reference in New Issue
Block a user