This commit is contained in:
parent
aede8f9644
commit
24c3023046
|
@ -160,6 +160,10 @@ export function modifyPhone(data){
|
|||
export function modifyPassword(data){
|
||||
return request.post('user/change/password',data);
|
||||
}
|
||||
/** 修改支付密码 */
|
||||
export function modifyPayPassword(data){
|
||||
return request.post('user/change/pay_password',data);
|
||||
}
|
||||
/** 退出登錄 */
|
||||
export function logout(){
|
||||
return request.get('logout');
|
||||
|
|
|
@ -0,0 +1,308 @@
|
|||
<template>
|
||||
<view class="mark" :class="[show_key ? '' : 'hidden']">
|
||||
<view class="kong"></view>
|
||||
<!-- 信息框 -->
|
||||
<view class="msg">
|
||||
<!-- 关闭按钮 -->
|
||||
<view class="img iconfont icon-guanbi" @tap="closeFuc">
|
||||
</view>
|
||||
<view class="title">
|
||||
请输入支付密码
|
||||
</view>
|
||||
<view class="subTitle" v-show="show_subTitle">
|
||||
付款{{price}}
|
||||
</view>
|
||||
<view class="pswBox">
|
||||
<view v-for="(item,index) in 6" :key="index" class="content_item">{{password[index] ? '●' : ''}}</view>
|
||||
</view>
|
||||
<view class="forget" @tap="forgetFuc">找回密码</view>
|
||||
</view>
|
||||
<!-- 数字键盘 -->
|
||||
<view class="numeric">
|
||||
<!-- 正常模式 -->
|
||||
<view class="num" v-if="mix" v-for="(item,index) in num1" :key="index" :class="item == 10 ? 'amend1' : item == 12 ? 'amend3 haiyuefont haiyue-guanbi2' : ''" @tap="press({num:item})">
|
||||
{{item == 10 ? '' : item == 11 ? '0' : item == 12 ? '': item}}
|
||||
</view>
|
||||
<!-- 混淆模式 -->
|
||||
<view class="num" v-else v-for="(item,index) in num" :key="index" :class="item == 10 ? 'amend1' : item == 12 ? 'amend3 haiyuefont haiyue-guanbi2' : ''" @tap="press({num:item})">
|
||||
{{item == 10 ? '' : item == 11 ? '0' : item == 12 ? '': item}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
props:{
|
||||
show_key:Boolean,
|
||||
price:String,
|
||||
show_subTitle:{
|
||||
default:true
|
||||
},
|
||||
mix:{
|
||||
type: Boolean,
|
||||
default: false
|
||||
}
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
num:[], // 乱序
|
||||
num1:[1,2,3,4,5,6,7,8,9,10,11,12],// 顺序
|
||||
password:"",
|
||||
}
|
||||
},
|
||||
created() {
|
||||
// 打乱数组
|
||||
this.num = this.randomArray([1,2,3,4,5,6,7,8,9,11]);
|
||||
this.num.splice(9, 0, 10);
|
||||
this.num.splice(11, 0, 12);
|
||||
console.log(this.num);
|
||||
console.log(this.key_words);
|
||||
},
|
||||
methods:{
|
||||
// 数组混淆
|
||||
randomArray(arr){
|
||||
return arr.sort(() => Math.random() -0.5);
|
||||
},
|
||||
press (obj) {
|
||||
console.log(obj);
|
||||
let num = obj.num
|
||||
if (obj.num == 10) {
|
||||
console.log('我是10我什么都不干')
|
||||
} else if (obj.num == 12) {
|
||||
this.password = this.password.slice(0,this.password.length-1);
|
||||
} else if (obj.num == 11) {
|
||||
num = '0'
|
||||
this.password += num;
|
||||
} else {
|
||||
this.password += num;
|
||||
}
|
||||
if (this.password.length == 6) {
|
||||
this.$emit('pay',{password:this.password})
|
||||
this.password = "";
|
||||
// uni.showModal({
|
||||
// title:'密码',
|
||||
// content:this.password,
|
||||
// success: () => {
|
||||
// this.password = "";
|
||||
// }
|
||||
// })
|
||||
}
|
||||
},
|
||||
// 关闭支付页面
|
||||
closeFuc () {
|
||||
this.show_key=false;
|
||||
console.log('关闭支付页面');
|
||||
this.$emit("closeFuc",false)
|
||||
},
|
||||
// 找回密码
|
||||
forgetFuc () {
|
||||
console.log('找回密码');
|
||||
// uni.navigateTo({
|
||||
// url:'/pages/mine/myWallet/changezfPwd/changezfPwd'
|
||||
// })
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.mark{
|
||||
width: 750rpx;
|
||||
background: rgba(0,0,0,0.7);
|
||||
padding: 0 0 700rpx 0;
|
||||
position: fixed;
|
||||
top: 0rpx;
|
||||
left: 0rpx;
|
||||
z-index: 99;
|
||||
}
|
||||
.hidden{
|
||||
display: none;
|
||||
}
|
||||
.kong{
|
||||
width: 750rpx;
|
||||
height: 250rpx;
|
||||
}
|
||||
.msg{
|
||||
width: 550rpx;
|
||||
height: 450rpx;
|
||||
background: rgba(255,255,255,1);
|
||||
border-radius: 20rpx;
|
||||
margin: 0 auto;
|
||||
animation: msgBox .2s linear;
|
||||
}
|
||||
@keyframes msgBox{
|
||||
0%{
|
||||
transform:translateY(50%);
|
||||
opacity: 0;
|
||||
}
|
||||
50%{
|
||||
transform:translateY(25%);
|
||||
opacity: 0.5;
|
||||
}
|
||||
100%{
|
||||
transform:translateY(0%);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
@keyframes numBox{
|
||||
0%{
|
||||
transform:translateY(50%);
|
||||
opacity: 0;
|
||||
}
|
||||
50%{
|
||||
transform:translateY(25%);
|
||||
opacity: 0.5;
|
||||
}
|
||||
100%{
|
||||
transform:translateY(0%);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
.msg>.img{
|
||||
padding: 20rpx 0 0 20rpx;
|
||||
font-size: 40rpx;
|
||||
}
|
||||
.msg>.title{
|
||||
width: 100%;
|
||||
height: 100rpx;
|
||||
line-height: 100rpx;
|
||||
font-weight: 500;
|
||||
font-size: 36rpx;
|
||||
text-align: center;
|
||||
}
|
||||
.msg>.subTitle{
|
||||
width: 100%;
|
||||
height: 50rpx;
|
||||
line-height: 50rpx;
|
||||
font-weight: 400;
|
||||
font-size: 32rpx;
|
||||
text-align: center;
|
||||
}
|
||||
.pswBox{
|
||||
width: 80%;
|
||||
height: 80rpx;
|
||||
margin: 50rpx auto 0;
|
||||
display: flex;
|
||||
}
|
||||
.content_item{
|
||||
flex: 2;
|
||||
text-align: center;
|
||||
line-height: 80rpx;
|
||||
border: 1rpx solid #D6D6D6;
|
||||
border-right: 0rpx solid;
|
||||
}
|
||||
.content_item:nth-child(1){
|
||||
border-radius: 10rpx 0 0 10rpx;
|
||||
}
|
||||
.content_item:nth-child(6){
|
||||
border-right: 1rpx solid #D6D6D6;
|
||||
border-radius: 0 10rpx 10rpx 0;
|
||||
}
|
||||
/* .numeric{
|
||||
width: 750rpx;
|
||||
height: 470rpx;
|
||||
border: 1rpx solid;
|
||||
display: flex;
|
||||
position: fixed;
|
||||
z-index: 98;
|
||||
bottom: 0rpx;
|
||||
background-color: #CCCFD6;
|
||||
animation: msgBox .2s linear;
|
||||
}
|
||||
.num{
|
||||
width: 225rpx;
|
||||
height: 90rpx;
|
||||
font-size: 42rpx;
|
||||
font-weight: 500;
|
||||
line-height: 90rpx;
|
||||
text-align: center;
|
||||
vertical-align: middle;
|
||||
margin: 12rpx 12rpx 0 12rpx;
|
||||
display: inline-block;
|
||||
border: 1rpx solid #999999;
|
||||
border-radius: 10rpx;
|
||||
background-color: #FFFFFF;
|
||||
position: relative;
|
||||
z-index: 99;
|
||||
} */
|
||||
.numeric{
|
||||
height: 480rpx;
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
background: #EBEBEB;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
z-index: 2;
|
||||
flex-wrap: wrap;
|
||||
animation: msgBox .2s linear;
|
||||
}
|
||||
.num{
|
||||
box-sizing: border-box;
|
||||
width: 250rpx;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
background: #fff;
|
||||
font-size: 40rpx;
|
||||
color: #333;
|
||||
height: 120rpx;
|
||||
border: 1rpx solid #F2F2F2;
|
||||
border-top:none;
|
||||
border-left:none;
|
||||
}
|
||||
.numColor{
|
||||
background: #FF0000;
|
||||
}
|
||||
.forget{
|
||||
font-size: 28rpx;
|
||||
font-weight: 500;
|
||||
color: #3D84EA;
|
||||
text-align: center;
|
||||
line-height: 80rpx;
|
||||
}
|
||||
.amend1{
|
||||
border: 1rpx solid #CCCFD6;
|
||||
background-color: #CCCFD6;
|
||||
}
|
||||
.amend3{
|
||||
font-size: 40rpx;
|
||||
border: 1rpx solid #CCCFD6;
|
||||
background-color: #CCCFD6;
|
||||
}
|
||||
/* .amend11{
|
||||
position: absolute;
|
||||
top: 313rpx;
|
||||
left: 0rpx;
|
||||
background-color: #CCCFD6;
|
||||
border: 1rpx solid #FF0000;
|
||||
}
|
||||
.amend1{
|
||||
height: 100rpx !important;
|
||||
position: absolute;
|
||||
top: 306rpx;
|
||||
left: 0rpx;
|
||||
z-index: 99;
|
||||
background-color: #CCCFD6;
|
||||
border: 2rpx solid #CCCFD6;
|
||||
}
|
||||
.amend2{
|
||||
position: absolute;
|
||||
top: 306rpx;
|
||||
left: 250rpx;
|
||||
z-index: 99;
|
||||
}
|
||||
.amend3{
|
||||
position: absolute;
|
||||
top: 306rpx;
|
||||
left: 500rpx;
|
||||
z-index: 99;
|
||||
font-size: 60rpx;
|
||||
border: 0rpx;
|
||||
background-color: #CCCFD6;
|
||||
} */
|
||||
|
||||
</style>
|
|
@ -352,6 +352,12 @@
|
|||
"navigationBarTitleText": "修改密码"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "user_pay_pwd/index",
|
||||
"style": {
|
||||
"navigationBarTitleText": "修改支付密码"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "user_payment/index",
|
||||
"style": {
|
||||
|
|
|
@ -145,7 +145,7 @@
|
|||
refreshData(){
|
||||
this.timer = setInterval(()=>{
|
||||
this.getOrderPayInfo();
|
||||
},1000)
|
||||
},5000)
|
||||
},
|
||||
// 优惠券展开
|
||||
bindMore(){
|
||||
|
|
|
@ -450,6 +450,7 @@
|
|||
<checkDelivery :deliveryName="deliveryName" :isShowBox="isShowBox" :activeObj="activeObj" :radioList="radioList" @close="boxClose" @confirmBtn="getData">
|
||||
</checkDelivery>
|
||||
</block>
|
||||
<pay :show_key="payShow" :price="299" :show_subTitle="true" :mix="true" @payFunc="pay"></pay>
|
||||
<!--优惠明细弹窗-->
|
||||
<discountDetails :isShowDiscount="isShowDiscount" @close="closeDiscount" :couponData="couponData"></discountDetails>
|
||||
<timeranges :isShow='isShow' :time='timeranges' @confrim="confrim" @cancel="cancels"></timeranges>
|
||||
|
@ -495,6 +496,7 @@
|
|||
import dayjs from "@/plugin/dayjs/dayjs.min.js";
|
||||
import areaWindow from '@/components/areaWindow';
|
||||
import timeranges from '@/components/timeranges';
|
||||
import pay from '@/components/pay/index.vue';
|
||||
export default {
|
||||
components: {
|
||||
couponListWindow,
|
||||
|
@ -505,7 +507,8 @@
|
|||
discountDetails,
|
||||
"jyf-parser": parser,
|
||||
areaWindow,
|
||||
timeranges
|
||||
timeranges,
|
||||
pay
|
||||
},
|
||||
filters: {
|
||||
filterDay(val) {
|
||||
|
@ -671,6 +674,8 @@
|
|||
addressInfoArea: [],
|
||||
timeranges: [],
|
||||
isShow:false,
|
||||
payShow:false,
|
||||
payInfo:{},
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
|
@ -746,6 +751,12 @@
|
|||
that.invoice.invoice = false
|
||||
},
|
||||
methods: {
|
||||
pay(val){
|
||||
let data1=this.payInfo;
|
||||
data1.password=val.password;
|
||||
console.log('val.password: ',val.password);
|
||||
this.payment(data1);
|
||||
},
|
||||
/*预售协议*/
|
||||
getPresellAgree: function() {
|
||||
this.showProtocol = true
|
||||
|
@ -1245,6 +1256,9 @@
|
|||
},
|
||||
payment: function(data) {
|
||||
let that = this;
|
||||
if(!data.password){
|
||||
data.balance_vert=1;
|
||||
}
|
||||
createOrder(data).then(res => {
|
||||
let status = res.data.status,
|
||||
orderId = res.data.result.order_id,
|
||||
|
@ -1252,7 +1266,9 @@
|
|||
jsConfig = res.data.result.config,
|
||||
goPages = '/pages/order_pay_status/index?order_id=' + orderId + '&msg=' + res.message;
|
||||
that.orderPay = true;
|
||||
|
||||
uni.hideLoading();
|
||||
console.log('status: ',status);
|
||||
switch (status) {
|
||||
case 'ORDER_EXIST':
|
||||
case 'EXTEND_ORDER':
|
||||
|
@ -1285,6 +1301,19 @@
|
|||
// #ifndef MP
|
||||
case "wechat":
|
||||
case "weixin":
|
||||
case "no_pay_password":
|
||||
uni.showModal({
|
||||
title: res.message,
|
||||
content: res.msg,
|
||||
confirmText: '绑定',
|
||||
success(res) {
|
||||
if (res.confirm) {
|
||||
uni.navigateTo({
|
||||
url:'/pages/users/user_info/index'
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
case "weixinApp":
|
||||
jsConfig.timeStamp = jsConfig.timestamp;
|
||||
// #ifndef APP-PLUS
|
||||
|
@ -1384,6 +1413,7 @@
|
|||
break;
|
||||
// #endif
|
||||
case "balance":
|
||||
|
||||
//余额
|
||||
return that.$util.Tips({
|
||||
title: res.message
|
||||
|
@ -1641,18 +1671,21 @@
|
|||
.Tips({
|
||||
title: '余额不足!'
|
||||
});
|
||||
uni.showLoading({
|
||||
title: '订单支付中',
|
||||
mask: true
|
||||
});
|
||||
// #ifdef MP
|
||||
openPaySubscribe().then(() => {
|
||||
|
||||
|
||||
uni.showLoading({
|
||||
title: '订单支付中',
|
||||
mask: true
|
||||
});
|
||||
// #ifdef MP
|
||||
openPaySubscribe().then(() => {
|
||||
that.payment(data);
|
||||
});
|
||||
// #endif
|
||||
// #ifndef MP
|
||||
that.payment(data);
|
||||
});
|
||||
// #endif
|
||||
// #ifndef MP
|
||||
that.payment(data);
|
||||
// #endif
|
||||
// #endif
|
||||
|
||||
},
|
||||
// 打开配送方式弹窗
|
||||
openShowBox(item, index) {
|
||||
|
|
|
@ -60,6 +60,15 @@
|
|||
<text v-else class='iconfont icon-suozi'></text>
|
||||
</view>
|
||||
</view>
|
||||
<view class='item acea-row row-between-wrapper'>
|
||||
<view>实名认证</view>
|
||||
<navigator url="/pages/users/user_phone/index" hover-class="none" class="input" v-if="userInfo.phone">
|
||||
点击实名认证<text class="iconfont icon-xiangyou"></text>
|
||||
</navigator>
|
||||
<view class='input acea-row row-between-wrapper' v-else>
|
||||
<input type='text' value='已实名' disabled='true' class='id'></input>
|
||||
</view>
|
||||
</view>
|
||||
<view class='item acea-row row-between-wrapper'>
|
||||
<view>ID号</view>
|
||||
<view class='input acea-row row-between-wrapper'>
|
||||
|
@ -84,6 +93,13 @@
|
|||
<text class='iconfont icon-you'></text>
|
||||
</view>
|
||||
</view>
|
||||
<view class='item acea-row row-between-wrapper'>
|
||||
<view>支付密码</view>
|
||||
<view class='input acea-row row-between-wrapper' @click="changePlayPwd">
|
||||
<text class='id'>修改支付密码</text>
|
||||
<text class='iconfont icon-you'></text>
|
||||
</view>
|
||||
</view>
|
||||
<view class='item acea-row row-between-wrapper'>
|
||||
<view>地址管理</view>
|
||||
<navigator url="/pages/users/user_address_list/index" hover-class="none" class='input acea-row row-between-wrapper'>
|
||||
|
@ -321,6 +337,22 @@
|
|||
});
|
||||
}
|
||||
},
|
||||
/**
|
||||
*修改支付密码
|
||||
*/
|
||||
changePlayPwd(){
|
||||
let that = this;
|
||||
|
||||
if(that.userInfo.phone){
|
||||
uni.navigateTo({
|
||||
url: `/pages/users/user_pay_pwd/index`
|
||||
})
|
||||
}else{
|
||||
that.$util.Tips({
|
||||
title: '请先绑定手机号'
|
||||
});
|
||||
}
|
||||
},
|
||||
//注销账号
|
||||
changeCancel(){
|
||||
uni.navigateTo({
|
||||
|
|
|
@ -68,13 +68,13 @@
|
|||
<view class='earn'>赚积分</view>
|
||||
</view>
|
||||
<!--#endif-->
|
||||
<navigator class='item acea-row row-between-wrapper' hover-class='none' url='/pages/users/user_luckyDraw/index'>
|
||||
<!-- <navigator class='item acea-row row-between-wrapper' hover-class='none' url='/pages/users/user_luckyDraw/index'>
|
||||
<view class='pictrue'>
|
||||
<image :src='`${domain}/static/images/score.png`'></image>
|
||||
</view>
|
||||
<view class='name'>轮盘抽奖可获得积分奖励</view>
|
||||
<view class='earn'>去抽奖</view>
|
||||
</navigator>
|
||||
</navigator> -->
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
|
|
@ -0,0 +1,232 @@
|
|||
<template>
|
||||
<view :style="viewColor">
|
||||
<form report-submit='true'>
|
||||
<view>
|
||||
<view class="ChangePassword">
|
||||
<view class="list">
|
||||
<view class="item">
|
||||
<text class="phone">{{userInfo.phone}}</text>
|
||||
</view>
|
||||
<view class="item acea-row row-between-wrapper codeVal">
|
||||
<input type='number' placeholder='验证码' placeholder-class='placeholder' class="codeIput" v-model="captcha"></input>
|
||||
<button class="code" :class="disabled === true ? 'on' : ''" :disabled='disabled' @click="handleVerify">
|
||||
{{ text }}
|
||||
</button>
|
||||
</view>
|
||||
<view class="border"></view>
|
||||
<view class="item">
|
||||
<input type='password' maxlength="6" placeholder='新支付密码' placeholder-class='placeholder' v-model="password" autocomplete="off"></input>
|
||||
</view>
|
||||
<view class="item">
|
||||
<input type='password' maxlength="6" placeholder='确认新支付密码' placeholder-class='placeholder' v-model="repassword" autocomplete="off"></input>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<button form-type="submit" @click="confirmSubmit" class="confirmBnt">确认</button>
|
||||
</view>
|
||||
</form>
|
||||
<Verify @success="success" :captchaType="'blockPuzzle'" :imgSize="{ width: '330px', height: '155px' }" ref="verify"></Verify>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import sendVerifyCode from "@/mixins/SendVerifyCode";
|
||||
import { modifyPayPassword,verifyCode } from '@/api/api.js';
|
||||
import { getUserInfo } from '@/api/user.js';
|
||||
import { registerVerify } from '@/api/user.js'
|
||||
import { mapGetters } from "vuex";
|
||||
import { toLogin } from '@/libs/login.js';
|
||||
import Verify from '@/components/verify/verify.vue';
|
||||
export default {
|
||||
mixins: [sendVerifyCode],
|
||||
components: {
|
||||
Verify
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
userInfo: {},
|
||||
phone:'',
|
||||
repassword: '',
|
||||
password: '',
|
||||
captcha:'',
|
||||
key: '',
|
||||
codeVal: '',
|
||||
disabled: false,
|
||||
};
|
||||
},
|
||||
computed: mapGetters(['isLogin', 'viewColor']),
|
||||
onLoad() {
|
||||
let that = this
|
||||
if (this.isLogin) {
|
||||
this.getUserInfo()
|
||||
} else {
|
||||
toLogin()
|
||||
}
|
||||
// #ifdef MP
|
||||
wx.login({
|
||||
success (res) {
|
||||
if (res.code) {
|
||||
that.codeVal = res.code
|
||||
} else {
|
||||
console.log('登录失败!' + res.errMsg)
|
||||
}
|
||||
}
|
||||
})
|
||||
// #endif
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* 获取个人用户信息
|
||||
*/
|
||||
getUserInfo: function() {
|
||||
let that = this;
|
||||
getUserInfo().then(res => {
|
||||
that.userInfo = res.data
|
||||
});
|
||||
},
|
||||
verifyPwd(str){
|
||||
let f=/^\d+$/.test(str);
|
||||
return f;
|
||||
},
|
||||
confirmSubmit: function() {
|
||||
let that = this;
|
||||
|
||||
if (that.password.length!=6||that.repassword.length!=6) return that.$util.Tips({
|
||||
title: '支付密码须为6位数数字!'
|
||||
});
|
||||
if (!this.verifyPwd(that.password)||!this.verifyPwd(that.repassword)) return that.$util.Tips({
|
||||
title: '支付密码须为6位数数字!'
|
||||
});
|
||||
if (!that.password) return that.$util.Tips({
|
||||
title: '请填写支付密码!'
|
||||
});
|
||||
if (!that.repassword) return that.$util.Tips({
|
||||
title: '请确认支付新密码!'
|
||||
});
|
||||
if (that.password !== that.repassword) return that.$util.Tips({
|
||||
title: '两次支付密码不一致,请重新填写!'
|
||||
});
|
||||
if (!that.captcha) return that.$util.Tips({
|
||||
title: '请填写验证码'
|
||||
});
|
||||
modifyPayPassword({
|
||||
password: that.password,
|
||||
repassword: that.repassword,
|
||||
sms_code: that.captcha
|
||||
}).then(res => {
|
||||
return that.$util.Tips({
|
||||
title: '修改成功!',
|
||||
icon: 'success'
|
||||
}, {
|
||||
tab: 5,
|
||||
url: '/pages/users/user_info/index'
|
||||
});
|
||||
}).catch(err => {
|
||||
return that.$util.Tips({
|
||||
title: err
|
||||
});
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 发送验证码
|
||||
*
|
||||
*/
|
||||
async code(data) {
|
||||
let that = this;
|
||||
// if (!(/^1(3|4|5|7|8|9|6)\d{9}$/i.test(that.userInfo.phone))) return that.$util.Tips({
|
||||
// title: '请输入正确的手机号码!'
|
||||
// });
|
||||
this.disabled = true
|
||||
await registerVerify({
|
||||
phone:that.userInfo.phone,
|
||||
code:that.captcha,
|
||||
type: 'change_pwd',
|
||||
captchaType: 'blockPuzzle',
|
||||
captchaVerification: data.captchaVerification
|
||||
}).then(res => {
|
||||
this.disabled = false
|
||||
that.$util.Tips({
|
||||
title: res.msg
|
||||
});
|
||||
that.sendCode();
|
||||
}).catch(err => {
|
||||
this.disabled = false
|
||||
return that.$util.Tips({
|
||||
title: err
|
||||
});
|
||||
});
|
||||
},
|
||||
success(data) {
|
||||
this.$refs.verify.hide();
|
||||
this.code(data);
|
||||
},
|
||||
handleVerify() {
|
||||
this.$refs.verify.show();
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.ChangePassword{
|
||||
background: #fff;
|
||||
padding-top: 53rpx;
|
||||
}
|
||||
.ChangePassword .phone {
|
||||
font-size: 32rpx;
|
||||
}
|
||||
.ChangePassword .list .item {
|
||||
width: 580rpx;
|
||||
margin: 0 auto;
|
||||
height: 110rpx;
|
||||
border-bottom: 2rpx solid #f0f0f0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.ChangePassword .list .item input {
|
||||
width: 100%;
|
||||
font-size: 32rpx;
|
||||
}
|
||||
.ChangePassword .list .item .placeholder {
|
||||
color: #b9b9bc;
|
||||
}
|
||||
.ChangePassword .list .item input.codeIput {
|
||||
width: 340rpx;
|
||||
}
|
||||
.ChangePassword .list .item .code {
|
||||
font-size: 32rpx;
|
||||
position: relative;
|
||||
padding-left: 26rpx;
|
||||
color: var(--view-theme);
|
||||
&::before{
|
||||
content: "";
|
||||
width: 1rpx;
|
||||
height: 30rpx;
|
||||
position: absolute;
|
||||
top: 10rpx;
|
||||
left: 0;
|
||||
background: #DDDDDD;
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
||||
.ChangePassword .list .item .code.on {
|
||||
color: #b9b9bc !important;
|
||||
}
|
||||
.ChangePassword .list .border{
|
||||
width: 100%;
|
||||
height: 21rpx;
|
||||
background: #F5F5F5;
|
||||
}
|
||||
.confirmBnt {
|
||||
font-size: 32rpx;
|
||||
width: 580rpx;
|
||||
height: 90rpx;
|
||||
border-radius: 45rpx;
|
||||
color: #fff;
|
||||
margin: 70rpx auto 0 auto;
|
||||
text-align: center;
|
||||
line-height: 90rpx;
|
||||
background-color: var(--view-theme);
|
||||
}
|
||||
</style>
|
|
@ -27,6 +27,14 @@
|
|||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
.haiyue-guanbi2:before {
|
||||
content: "\e908";
|
||||
}
|
||||
|
||||
.haiyue-guanbi:before {
|
||||
content: "\e907";
|
||||
}
|
||||
|
||||
.haiyue-zhuyi:before {
|
||||
content: "\e904";
|
||||
}
|
||||
|
@ -43,6 +51,7 @@
|
|||
content: "\e901";
|
||||
}
|
||||
|
||||
|
||||
.icon-huodong-renshu:before {
|
||||
content: "\e869";
|
||||
}
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -5,6 +5,20 @@
|
|||
"css_prefix_text": "haiyue",
|
||||
"description": "",
|
||||
"glyphs": [
|
||||
{
|
||||
"icon_id": "39835854",
|
||||
"name": "关闭",
|
||||
"font_class": "-guanbi2",
|
||||
"unicode": "e908",
|
||||
"unicode_decimal": 59656
|
||||
},
|
||||
{
|
||||
"icon_id": "39835567",
|
||||
"name": "关闭",
|
||||
"font_class": "-guanbi",
|
||||
"unicode": "e907",
|
||||
"unicode_decimal": 59655
|
||||
},
|
||||
{
|
||||
"icon_id": "39769738",
|
||||
"name": "注意",
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue