You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<template> <view class="app-container"> <view class="login-content"> <view class="login-font"> <image style="width: 364rpx;height: 200rpx;" src="/static/login/merchant-copy.png" alt="" /> </view> <view class="login-main"> <view class="login-item"> <input type="tel" class="log-phone" placeholder="请输入手机号" v-model="phone" /> </view> <view class="login-item"> <input type="number" class="log-phone log-code" placeholder="请输入验证码" v-model="sms_code" /> <view class="getCode" @click="getCode"> 获取验证码 </view> </view> <view class="login-btn"> <button size="default" type="default" @click="btnLogin" style="color:#ffffff;backgroundColor:#F52F3E;borderColor:#F52F3EF;border-radius: 50rpx;height: 88rpx;line-height: 88rpx;">登录</button> </view> <view class="login-sign"> <u-radio-group v-model="value"> <u-radio labelSize="13" size="20" label="我同意"></u-radio> </u-radio-group> <view class="log-link" @click="handlerApply"> 《排队支付商户用户服务协议》 </view> <view class="log-link" @click="handlerProtect"> 《隐私保护协议》 </view> </view> </view> </view> <u-toast ref="uToast"></u-toast> <u-modal :show="show" @confirm="confirm" :title="title" :content='content'></u-modal> </view></template>
<script> import { publicSendSms, merchantSmsLogin } from '../../common/api.js' import md5 from 'js-md5'
export default { data() { return { phone: '', sms_code: '', bgColor: '#bgColor', value: 1, show: false, title: '', content: '' }; }, methods: { getCode() { let phone = this.phone let nonce_str = md5(Math.random() + ''); let sign = md5(md5(phone) + md5(nonce_str) + nonce_str) publicSendSms({ phone, nonce_str, sign, type: 1 }).then(() => { this.$refs.uToast.show({ message: '短信已发送' }) }) }, handlerApply() { this.show = true; this.title = '排队支付商户用户服务协议'; this.content = '排队支付商户用户服务协议'; }, handlerProtect() { this.show = true; this.title = '隐私保护协议'; this.content = '隐私保护协议'; }, confirm() { this.show = false; }, btnLogin() { merchantSmsLogin({ phone: this.phone, sms_code: this.sms_code }).then(data => { uni.setStorageSync('merchant_token', data.token) uni.navigateTo({ url: '/pages/merchant-index/index' }); }) } } }</script>
<style lang="scss"> .login-content { width: 100%; height: 1600rpx; padding-left: 30rpx; padding-right: 30rpx; background: url(../../static/login/merchant-bg.png) no-repeat center center; background-size: cover; box-sizing: border-box;
.login-font { width: 364rpx; height: 200rpx; padding-top: 80rpx; }
.login-main { margin-top: 120rpx;
.login-item { position: relative; margin-top: 40rpx;
.log-phone { width: 100%; height: 88rpx; line-height: 88rpx; padding-left: 50rpx; border-radius: 44rpx; border: none; box-sizing: border-box; background-color: #fff; font-size: 16px; color: #454545; }
.getCode { position: absolute; right: 50rpx; top: 30rpx; font-size: 12px; color: #454545; cursor: pointer; } }
.login-btn { margin-top: 80rpx; }
.login-sign { display: flex; justify-content: flex-start; margin-top: 30rpx; padding-left: 20rpx;
.u-radio-group { flex-grow: 0; margin-right: 60rpx; }
.log-link { height: 40rpx; line-height: 40rpx; font-size: 12px; } } } }</style>
|