java-mall-app/member/member/account.vue
2024-11-01 16:35:40 +08:00

287 lines
7.4 KiB
Vue

<template>
<view class="page">
</view>
</template>
<style lang="scss">
</style>
<script>
import {
mapState,
mapMutations
} from 'vuex'
export default {
data: function() {
return {
Id: 0,
user_nickname: "",
user_realname: "",
user_idcard: "",
isCardNo: true,
user_email: "",
user_birthday: "",
isUserEmail: true,
user_mobile: "",
mobile_code: "",
btntext: "发送",
isSend: true,
isUserMobile: true,
sendTime: 120,
isCode: true
}
},
computed: mapState(['Config', 'StateCode', 'notice', 'plantformInfo', 'shopInfo', 'userInfo', 'hasLogin']),
onLoad: function(options) {
uni.setNavigationBarTitle({
title: this.__('')
});
let that = this;
this.setData({
Id: this.userInfo.user_id,
user_account: that.$.isNull(this.userInfo.user_account) ? "" : this.userInfo.user_account,
user_nickname: that.$.isNull(this.userInfo.user_nickname) ? "" : this.userInfo.user_nickname,
user_realname: that.$.isNull(this.userInfo.user_realname) ? "" : this.userInfo.user_realname,
user_idcard: that.$.isNull(this.userInfo.user_idcard) ? "" : this.userInfo.user_idcard,
user_email: that.$.isNull(this.userInfo.user_email) ? "" : this.userInfo.user_email,
user_birthday: that.$.isNull(this.userInfo.user_birthday) ? that.__("请选择生日日期") : this.userInfo.user_birthday,
user_mobile: that.$.isNull(this.userInfo.user_mobile) ? "" : this.userInfo.user_mobile
})
},
methods: {
...mapMutations(['login', 'logout', 'getPlantformInfo', 'forceUserInfo', 'getUserInfo']),
bindDateChange: function(e) {
this.setData({
user_birthday: e.detail.value
})
},
inputReName: function(e) {
this.setData({
user_realname: e.detail.value
})
},
inputICard: function(e) {
let that = this;
if (that.$.isNull(e.detail.value)) {
this.setData({
isCardNo: true,
user_idcard: e.detail.value
});
return
}
this.IdentityCodeValid(e.detail.value) ? this.setData({
isCardNo: true
}) : this.setData({
isCardNo: false
}), this.setData({
user_idcard: e.detail.value
})
},
inputuser_email: function(e) {
let that = this;
this.setData({
user_email: e.detail.value
}), that.$.isNull(e.detail.value) ? this.setData({
isUserEmail: false
}) : /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/.test(e.detail.value) ? this.setData({
isUserEmail: true
}) : this.setData({
isUserEmail: false
})
},
submitInfo: function(e) {
let that = this;
if (!that.$.isNull(this.user_idcard) && !this.isCardNo) {
return;
}
/*
if (!/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/.test(this.user_email))
{
this.setData({isUserEmail: false});
return
}*/
if (!that.$.isNull(this.user_mobile)) {
this.update();
} else if (that.$.isNull(this.user_mobile)) {
this.setData({
isUserMobile: false
});
} else if (!/^1[23456789]\d{9}$/.test(this.user_mobile)) {
this.setData({
isUserMobile: false
});
} else if (this.user_mobile == this.userInfo.user_mobile) {
that.$.confirm(that.__("你已经绑定过该手机!"));
} else if (that.$.isNull(this.mobile_code)) {
this.setData({
isCode: false
});
} else {}
},
update: function() {
let that = this;
var params = {
Id: this.Id,
user_realname: this.user_realname,
user_idcard: this.user_idcard,
user_email: this.user_email,
user_birthday: this.user_birthday,
user_mobile: this.user_mobile,
code: this.mobile_code,
};
params.user_birthday == that.__("请选择生日日期") && (params.user_birthday = "");
that.$.request({
url: this.Config.URL.account.edit_user_info,
data: params,
success: function(data, status, msg, code) {
if (status == 200) {
that.$.showToast({
title: that.__("更新成功!"),
success: function() {
//this.userInfo = data;
this.userInfo.user_realname = params.user_realname;
this.userInfo.user_idcard = params.user_idcard;
this.userInfo.user_email = params.user_email;
this.userInfo.user_birthday = params.user_birthday;
this.userInfo.user_mobile = params.user_mobile;
that.$.navigateBack(1)
}
})
} else {
that.$.confirm(msg);
}
}
});
},
IdentityCodeValid: function(e) {
var t = {
11: "北京",
12: "天津",
13: "河北",
14: "山西",
15: "内蒙古",
21: "辽宁",
22: "吉林",
23: "黑龙江 ",
31: "上海",
32: "江苏",
33: "浙江",
34: "安徽",
35: "福建",
36: "江西",
37: "山东",
41: "河南",
42: "湖北 ",
43: "湖南",
44: "广东",
45: "广西",
46: "海南",
50: "重庆",
51: "四川",
52: "贵州",
53: "云南",
54: "西藏 ",
61: "陕西",
62: "甘肃",
63: "青海",
64: "宁夏",
65: "新疆",
71: "台湾",
81: "香港",
82: "澳门",
91: "国外 "
},
n = true;
if (!e || !/^[1-9][0-9]{5}(19[0-9]{2}|200[0-9]|2010)(0[1-9]|1[0-2])(0[1-9]|[12][0-9]|3[01])[0-9]{3}[0-9xX]$/i.test(e)) {
n = false;
} else if (!t[e.substr(0, 2)]) {
n = false;
} else if (e.length == 18) {
e = e.split("");
var r = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2],
i = [1, 0, "X", 9, 8, 7, 6, 5, 4, 3, 2],
s = 0,
o = 0,
u = 0;
for (var a = 0; a < 17; a++) {
o = e[a], u = r[a], s += o * u;
}
var f = i[s % 11];
i[s % 11] != e[17].toUpperCase() && (n = false)
}
return n
},
inputphone: function(e) {
let that = this;
this.setData({
user_mobile: e.detail.value
}), that.$.isNull(e.detail.value) ? this.setData({
isUserMobile: false
}) : /^1[23456789]\d{9}$/.test(e.detail.value) ? this.setData({
isUserMobile: true
}) : this.setData({
isUserMobile: false
})
},
inputcode: function(e) {
let that = this;
this.setData({
mobile_code: e.detail.value
}), that.$.isNull(e.detail.value) ? this.setData({
isCode: false
}) : this.setData({
isCode: true
})
},
sendmessage: function() {
let that = this;
if (that.$.isNull(this.user_mobile)) {
this.setData({
isUserMobile: false
});
} else if (!/^1[23456789]\d{9}$/.test(this.user_mobile)) {
this.setData({
isUserMobile: false
});
} else if (this.user_mobile == this.userInfo.user_mobile) {
that.$.confirm("你已经绑定过该手机!");
} else if (this.isSend) {
this.setData({
isSend: false
});
var t = this.sendTime;
var params = {
mobile: this.user_mobile
};
that.$.request({
url: this.Config.URL.account.get_mobile_checkcode,
data: params,
success: function(data, status, msg, code) {
if (status == 200) {
var r = setInterval(function() {
t > 0 ? that.setData({
btntext: t-- + "s"
}) : (that.setData({
isSend: true,
sendTime: 120,
btntext: that.__("重新发送")
}), clearInterval(r))
}, 1e3);
} else {
that.setData({
isSend: true
}), that.$.alert(msg)
}
}
});
}
}
}
};
</script>