Merge branch 'sit-Carl' of https://gitee.com/carl_Ming_1/smart-admin into sit-Carl

This commit is contained in:
Vion 2022-01-17 19:45:20 +08:00
commit 07066297ef
2 changed files with 429 additions and 495 deletions

View File

@ -1,97 +1,96 @@
// <!-- -->
<template> <template>
<div class="container rc-full-width">
<Myheader></Myheader>
<div class="rc-top"></div>
<div class="container rc-full-width"> <div class="content ts-max-width--460">
<Myheader></Myheader> <h2 class="rc-beta rc-text--center">账号注册</h2>
<div class="content ts-max-width--460"> <div class="rc-layout-container rc-one-column">
<h2 class="rc-beta rc-text--center">账号注册</h2> <div class="rc-column">
<input
class="ts-standard-input"
v-model="tel"
placeholder="请输入手机号"
:error-message="usertel"
v-if="!ifpassword"
clearable
/>
</div>
</div>
<!-- <van-field
v-model="password"
type="password"
placeholder="请输入密码"
:error-message="pass"
<div class="rc-layout-container rc-one-column"> clearable
<div class="rc-column"> /> -->
<input <div class="rc-layout-container rc-two-column">
class="ts-standard-input" <div class="rc-column">
v-model="tel" <input
placeholder="请输入手机号" v-if="!ifpassword"
:error-message="usertel" v-model="sms"
v-if="!ifpassword" class="ts-standard-input ts-standard-input--two center"
clearable center
/> clearable
</div> placeholder="请输入验证码"
</div>
<!-- <van-field
v-model="password"
type="password"
placeholder="请输入密码"
:error-message="pass"
clearable >
/> --> </div>
<div class="rc-layout-container rc-two-column"> <div class="rc-column">
<div class="rc-column"> <button
<input :disabled="flag"
v-if="!ifpassword" slot="button"
v-model="sms" size="small"
class="ts-standard-input ts-standard-input--two center" @click="sendCode"
center class="rc-use ts-standard-btn ts-standard-btn--two"
clearable >{{ buttonmsg }}</button
placeholder="请输入验证码" >
</div>
</div>
> <div class="rc-layout-container rc-one-column">
</div> <div class="usecheck rc-column rc-text--left">
<div class="rc-column"> <label>
<button <input
:disabled="flag" type="checkbox"
slot="button" @click="checkBox()"
size="small" style="width: 24px; height: 24px"
@click="sendCode" v-model="inRank"
class="rc-use ts-standard-btn ts-standard-btn--two" />使
>{{ buttonmsg }}</button </label>
> </div>
</div> </div>
</div> <div class="rc-layout-container rc-two-column rc-button">
<div class="rc-column rc-text--left">
<a href="#" class="rc-styled-link"><span>隐私政策</span></a>
</div>
<div class="rc-column rc-text--right">
<nuxt-link :to="`/userlogin/login/`" class="rc-styled-link">
<span>返回登录</span>
</nuxt-link>
</div>
</div>
<div class="rc-layout-container rc-one-column"> <div class="rc-layout-container rc-one-column">
<div class="usecheck rc-column rc-text--left"> <div class="rc-column">
<label> <input
<input type="primary"
type="checkbox" :loading="loading"
@click="checkBox()" loading-text="注册中..."
style="width: 24px; height: 24px" size="large"
v-model="inRank" :disabled="zhud"
/>使 @click="register()"
</label> class="ts-standard-btn ts-standard-btn--max-width"
</div> value="注册"
</div> ></input
<div class="rc-layout-container rc-two-column rc-button"> >
<div class="rc-column rc-text--left"> <!-- <van-divider @click="toLogin">注册账户</van-divider> -->
<a href="#" class="rc-styled-link"><span>隐私政策</span></a> </div>
</div> </div>
<div class="rc-column rc-text--right">
<nuxt-link :to="`/userlogin/login/`" class="rc-styled-link">
<span>返回登录</span>
</nuxt-link>
</div>
</div>
<div class="rc-layout-container rc-one-column">
<div class="rc-column">
<input
type="primary"
:loading="loading"
loading-text="注册中..."
size="large"
:disabled="zhud"
@click="register()"
class="ts-standard-btn ts-standard-btn--max-width"
value="注册"
></input
>
<!-- <van-divider @click="toLogin">注册账户</van-divider> -->
</div>
</div>
</div>
</div> </div>
</div>
</template> </template>
@ -103,59 +102,46 @@ export default {
return { return {
phone:'', phone:'',
layerMSg:'手机格式不对', layerMSg:'手机格式不对',
tel:'', tel:'',
password:'', password:'',
captchadata:'', captchadata:'',
tamp:'', tamp:'',
hash:'', hash:'',
sms:'', sms:'',
buttonmsg:'获取验证码', buttonmsg:'获取验证码',
flag:false, flag:false,
adminCode:'', adminCode:'',
zhud:false, zhud:false,
usercheckbox:false, usercheckbox:false,
loading:false, loading:false,
usertitle:true, usertitle:true,
gender: '', gender: '',
inRank:false inRank:false,
ifpassword:false
}; };
}, },
components: { components: {
// Myheader, Myheader,
}, },
computed: { computed: {
usertel () { usertel () {
if (this.tel === ""){ if (this.tel === ""){
return '' return ''
}else if(!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel)){ }else if(!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel)){
return '手机号格式错误' return '手机号格式错误'
}else { }else {
return '' return ''
} }
}, },
pass () { pass () {
if (this.password === ""){ if (this.password === ""){
return '' return ''
}else if(this.password.length<6){ }else if(this.password.length<6){
return '密码不可小于6位' return '密码不可小于6位'
}else { }else {
return '' return ''
} }
},
// test () {
// if (this.sms === ""){
// return ''
// }else if(this.sms.length !== 5){
// return ''
// }else {
// return ''
// }
// }
}, },
components: {
}, },
mounted(){ mounted(){
}, },
@ -163,164 +149,159 @@ export default {
methods: { methods: {
// //
async usermsg() { async usermsg() {
console.log("-----"); //console.log("-----");
let data = await sendMsg(this.tel); let data = await sendMsg(this.tel);
if(data){ if(data){
console.log(data); //console.log(data);
this.captchadata=data.msgNum; //this.captchadata=data.msgNum;
this.tamp=data.tamp; this.tamp=data.tamp;
this.hash=data.hash; this.hash=data.hash;
} }
}, },
// async vadmsg() {
async vadmsg() { //console.log("-----");
console.log("-----"); let data = await vadatnmsg(this.sms,this.hash,this.tamp);
let data = await vadatnmsg(this.captchadata,this.hash,this.tamp);
if(data){ if(data){
console.log(data); return data;
if(!data.code==1){
return false
}
} }
}, },
checkBox(){
console.log(event.target.checked) checkBox(){
this.usercheckbox=event.target.checked //console.log(event.target.checked)
this.usercheckbox=event.target.checked
}, },
// //
async serdiscount (mobile,couponId) { async serdiscount (mobile,couponId) {
let data = await inserdiscount(mobile,couponId); let data = await inserdiscount(mobile,couponId);
if(data){ if(data){
console.log(data); console.log(data);
} }
console.log(data); //console.log(data);
},
//
sendCode () {
this.getCode()
}, },
//
sendCode () {
this.getCode()
},
getCode() { getCode() {
if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") { if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") {
this.$message({ this.$message({
type: 'warning', type: 'warning',
message: '手机号码输入有误' message: '手机号码输入有误'
}); });
return return
} else{ } else{
let time = 60; let time = 60;
let timer; let timer;
timer = setInterval(() => { timer = setInterval(() => {
time--; time--;
if (time === 0) { if (time === 0) {
clearInterval(timer); clearInterval(timer);
this.flag = false; this.flag = false;
this.buttonmsg = "点击发送验证码"; this.buttonmsg = "点击发送验证码";
return; return;
} }
this.flag = true; this.flag = true;
this.buttonmsg = time + "秒后重新发送"; this.buttonmsg = time + "秒后重新发送";
}, 1000); }, 1000);
this.usermsg(); this.usermsg();
} }
}, },
async register () { async register () {
if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") { if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") {
this.$message({ this.$message({
type: 'warning', type: 'warning',
message: '手机号码输入有误' message: '手机号码输入有误'
}); });
return return
} }
if(this.sms!==this.captchadata){ // if(this.sms!==this.captchadata){
this.$message({ // this.$message({
type: 'warning', // type: 'warning',
message: '验证码输入有误请重新输入' // message: ''
}); // });
return // return
} // }
if(this.sms==''){ if(this.sms==''){
this.$message({ this.$message({
type: 'warning', type: 'warning',
message: '请输入验证码' message: '请输入验证码'
}); });
return return
} }
console.log(this.usercheckbox); console.log(this.usercheckbox);
if(this.usercheckbox==false){ if(this.usercheckbox==false){
console.log('----'); console.log('----');
this.$message({
type: 'warning',
message: '请先同意隐私声明和账号使用协议'
});
if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") {
this.$message({ this.$message({
type: 'warning', type: 'warning',
message: '请先勾选' message: '手机号码输入有误'
}); });
if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") { return
this.$message({
type: 'warning',
message: '手机号码输入有误'
});
return
}
} }
} else{
else{ //let user= JSON.parse(localStorage.getItem("userInfo"));
let data = await this.vadmsg();
if(data.code=="1")
let user= JSON.parse(localStorage.getItem("userInfo")); {
console.log(this.tel); data=await useredit(this.tel);
let data=await useredit(this.tel); if(data.code=='1'){
this.vadmsg(); let couponId='0000000123';
this.$message({ this.serdiscount(this.tel,couponId);
type: 'warning', setTimeout(() => {
message: data.msg this.serdiscount(this.tel,"0000000140");
}); }, 100);
if(data){ setTimeout(() => {
let couponId='0000000123'; this.serdiscount(this.tel,"0000000122");
this.serdiscount(user.data.mobile,couponId); }, 500);
setTimeout(() => { this.$router.push({
this.serdiscount(user.data.mobile,"0000000140"); path: "/",
}, 100); });
setTimeout(() => { return;
this.serdiscount(user.data.mobile,"0000000122"); }
}, 500); }
this.$message({
} type: 'warning',
message: data.msg
return });
return
} }
}, },
// reallR () { // reallR () {
// this.zhud=true // this.zhud=true
// this.loading=true // this.loading=true
// axios.post('https://www.daxunxun.com/users/register', { // axios.post('https://www.daxunxun.com/users/register', {
// username: this.tel, // username: this.tel,
// password: this.password // password: this.password
// }).then(res=>{ // }).then(res=>{
// this.zhud=false // this.zhud=false
// this.loading=false // this.loading=false
// if (res.data === 2) { // if (res.data === 2) {
// Toast('') // Toast('')
// } else if (res.data === 0) { // } else if (res.data === 0) {
// Toast('') // Toast('')
// } else { // } else {
// Toast('') // Toast('')
// } // }
// }) // })
// } // }
} }

View File

@ -1,34 +1,33 @@
<template> <template>
<div class="container rc-full-width"> <div class="container rc-full-width">
<Myheader></Myheader> <Myheader></Myheader>
<div class="rc-top"></div>
<div class="content ts-max-width--460"> <div class="content ts-max-width--460">
<h2 class="rc-beta rc-text--center">{{ usertitle ? "账号登录" : "" }}</h2> <h2 class="rc-beta rc-text--center">{{ usertitle ? "账号登录" : "" }}</h2>
<!-- Deprecated : No tab switching as no password <!-- Deprecated : No tab switching as no password
<div class="rc-header"> <div class="rc-header">
<span <span
v-for="(item, index) in swiperData" v-for="(item, index) in swiperData"
:key="index" :key="index"
@click="selectGoods(item, index)" @click="selectGoods(item, index)"
:class="activeIndex == index ? 'active' : 'unactive'" :class="activeIndex == index ? 'active' : 'unactive'"
>{{ item.title }}</span >{{ item.title }}</span
> >
</div> </div>
--> -->
<div class="rc-layout-container rc-one-column">
<div class="rc-layout-container rc-one-column"> <div class="rc-column">
<div class="rc-column"> <input
<input class="ts-standard-input"
class="ts-standard-input" v-model="tel"
v-model="tel" placeholder="请输入手机号"
placeholder="请输入手机号" :error-message="usertel"
:error-message="usertel" v-if="!ifpassword"
v-if="!ifpassword" clearable
clearable />
/> </div>
</div> </div>
</div> <!-- Deprecated : No tab switching as no password
<!-- Deprecated : No tab switching as no password
<input <input
v-model="text" v-model="text"
class="ts-standard-input ts-standard-input--two" class="ts-standard-input ts-standard-input--two"
@ -46,72 +45,72 @@
v-if="ifpassword" v-if="ifpassword"
clearable clearable
/> />
--> -->
<div class="rc-layout-container rc-two-column"> <div class="rc-layout-container rc-two-column">
<div class="rc-column"> <div class="rc-column">
<input <input
v-if="!ifpassword" v-if="!ifpassword"
v-model="sms" v-model="sms"
class="ts-standard-input ts-standard-input--two center" class="ts-standard-input ts-standard-input--two center"
center center
clearable clearable
placeholder="请输入验证码" placeholder="请输入验证码"
> >
</div> </div>
<div class="rc-column"> <div class="rc-column">
<button <button
:disabled="flag" :disabled="flag"
slot="button" slot="button"
size="small" size="small"
@click="sendCode" @click="sendCode"
class="rc-use ts-standard-btn ts-standard-btn--two" class="rc-use ts-standard-btn ts-standard-btn--two"
>{{ buttonmsg }}</button >{{ buttonmsg }}</button
> >
</div> </div>
</div> </div>
<div class="rc-layout-container rc-one-column"> <div class="rc-layout-container rc-one-column">
<div class="usecheck rc-column rc-text--left"> <div class="usecheck rc-column rc-text--left">
<label> <label>
<input <input
type="checkbox" type="checkbox"
@click="checkBox()" @click="checkBox()"
style="width: 24px; height: 24px" style="width: 24px; height: 24px"
v-model="inRank" v-model="inRank"
/>使 />使
</label> </label>
</div> </div>
</div> </div>
<div class="rc-layout-container rc-two-column rc-button"> <div class="rc-layout-container rc-two-column rc-button">
<div class="rc-column rc-text--left"> <div class="rc-column rc-text--left">
<a href="#" class="rc-styled-link"><span>隐私政策</span></a> <a href="#" class="rc-styled-link"><span>隐私政策</span></a>
</div> </div>
<div class="rc-column rc-text--right"> <div class="rc-column rc-text--right">
<nuxt-link :to="`/userlogin/edit/`" class="rc-styled-link"> <nuxt-link :to="`/userlogin/edit/`" class="rc-styled-link">
<span>注册账户</span> <span>注册账户</span>
</nuxt-link> </nuxt-link>
</div> </div>
</div> </div>
<div class="rc-layout-container rc-one-column"> <div class="rc-layout-container rc-one-column">
<div class="rc-column"> <div class="rc-column">
<input <input
type="primary" type="primary"
:loading="loading" :loading="loading"
loading-text="登录..." loading-text="登录..."
size="large" size="large"
:disabled="zhud" :disabled="zhud"
@click="register()" @click="register()"
class="ts-standard-btn ts-standard-btn--max-width" class="ts-standard-btn ts-standard-btn--max-width"
value="登录" value="登录"
></input ></input
> >
<!-- <van-divider @click="toLogin">注册账户</van-divider> --> <!-- <van-divider @click="toLogin">注册账户</van-divider> -->
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
@ -146,11 +145,11 @@ export default {
swiperData: [ swiperData: [
// { index: 1 ,title:''}, // { index: 1 ,title:''},
// { index: 2 ,title:''}, // { index: 2 ,title:''},
], ]
}; };
}, },
components: { components: {
Myheader Myheader
}, },
computed: { computed: {
usertel() { usertel() {
@ -181,48 +180,40 @@ export default {
} }
}, },
}, },
components: {},
mounted() { mounted() {
console.log(this.$route.params); //console.log(this.$route.params);
}, },
// watch: function () { // watch: function () {
// console.log(this.inRank); // console.log(this.inRank);
// }, // },
methods: { methods: {
...mapMutations(["changeClod"]), ...mapMutations(["changeClod"]),
checkBox(){ checkBox(){
console.log(event.target.checked) console.log(event.target.checked)
this.usercheckbox=event.target.checked this.usercheckbox=event.target.checked
}, },
// //
async usermsg() { async usermsg() {
console.log("-----"); //console.log("-----");
let data = await sendMsg(this.tel); let data = await sendMsg(this.tel);
if(data){ if(data){
console.log(data); console.log(data);
this.captchadata=data.msgNum; //this.captchadata=data.msgNum;
this.tamp=data.tamp; this.tamp=data.tamp;
this.hash=data.hash; this.hash=data.hash;
} }
}, },
// //
async vadmsg() { async vadmsg() {
console.log("-----"); //console.log("-----");
let data = await vadatnmsg(this.captchadata,this.hash,this.tamp); let data = await vadatnmsg(this.sms,this.hash,this.tamp);
if(data){ if(data){
console.log(data.code); return data;
if(!data.code==1){
return false
}
} }
}, },
onClickHander(e) { onClickHander(e) {
console.log(e); console.log(e);
@ -239,7 +230,7 @@ export default {
}, },
// //
useredd() { useredd() {
console.log("---注册账户"); //console.log("---");
this.usertitle = false; this.usertitle = false;
}, },
@ -248,134 +239,96 @@ export default {
}, },
sendCode() { sendCode() {
this.getCode(); this.getCode();
}, },
getCode() { getCode() {
if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") { if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") {
this.$message({ this.$message({
type: 'warning', type: 'warning',
message: '手机号码输入有误' message: '手机号码输入有误'
}); });
return return
} else{ } else{
let time = 60; let time = 60;
let timer; let timer;
timer = setInterval(() => { timer = setInterval(() => {
time--; time--;
if (time === 0) { if (time === 0) {
clearInterval(timer); clearInterval(timer);
this.flag = false; this.flag = false;
this.buttonmsg = "点击发送验证码"; this.buttonmsg = "点击发送验证码";
return; return;
} }
this.flag = true; this.flag = true;
this.buttonmsg = time + "秒后重新发送"; this.buttonmsg = time + "秒后重新发送";
}, 1000); }, 1000);
this.usermsg(); this.usermsg();
} }
}, },
async register() { async register() {
if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") { if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") {
this.$message({ this.$message({
type: 'warning', type: 'warning',
message: '手机号码输入有误' message: '手机号码输入有误'
}); });
return return
}
if(this.sms!==this.captchadata){
this.$message({
type: 'warning',
message: '验证码输入有误请重新输入'
});
return
} }
if(this.sms==''){ if(this.sms==''){
this.$message({ this.$message({
type: 'warning', type: 'warning',
message: '请输入验证码' message: '请输入验证码'
}); });
return return
} }
console.log(this.usercheckbox);
if(this.usercheckbox==false){ if(this.usercheckbox==false){
console.log('----'); //console.log('----');
this.$message({
type: 'warning',
message: '请先同意隐私声明和账号使用协议'
});
if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") {
this.$message({ this.$message({
type: 'warning', type: 'warning',
message: '请先勾选' message: '手机号码输入有误'
}); });
if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") { return
this.$message({
type: 'warning',
message: '手机号码输入有误'
});
return
}
} }
} else{
else{ let data=await this.vadmsg();
console.log(this.tel); if(data.code=="1")
let data = await userLongin(this.tel); {
console.log(data); data = await userLongin(this.tel);
this.vadmsg(); if(data.msg=='SUCCESS'){
this.$message({
type: 'warning',
message: '登录成功'
});
this.$router.push({
path: "/",
});
let token=JSON.stringify(data);
this.changeClod({ cloud: token });
return;
}
}
this.$message({
type: 'warning',
message: data.msg
});
return
this.$message({ }},
type: 'warning',
message: '登录成功'
});
if(data.msg=='SUCCESS'){
this.$router.push({
path: "/",
});
let token=JSON.stringify(data);
this.changeClod({ cloud: token });
}else{
this.$message({
type: 'warning',
message: data.msg
});
}
return
}
},
// reallR () {
// this.zhud=true
// this.loading=true
// axios.post('https://www.daxunxun.com/users/register', {
// username: this.tel,
// password: this.password
// }).then(res=>{
// this.zhud=false
// this.loading=false
// if (res.data === 2) {
// Toast('')
// } else if (res.data === 0) {
// Toast('')
// } else {
// Toast('')
// }
// })
// }
}, },
}; };
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
@import url("../../assets/css/global.less");
@import url("../../assets/css/login.less"); @import url("../../assets/css/login.less");
</style> </style>