Commit 08189f7c authored by 李晓兵's avatar 李晓兵

'登录注册'

parent dda81058
...@@ -13,13 +13,13 @@ ...@@ -13,13 +13,13 @@
</div> </div>
</h-header> </h-header>
<Tab @getTabNum="getTabNum" /> <Tab @getTabNum="getTabNum" />
<h-content> <div class="hinput">
<div class="hinput"> <div class="search-box">
<div class="search-box"> <input type="text" placeholder="请输入进件号/承租人名称">
<input type="text" placeholder="请输入进件号/承租人名称"> <img src="@/assets/distributorSign/search.png" alt="">
<img src="@/assets/distributorSign/search.png" alt="">
</div>
</div> </div>
</div>
<h-content>
<div v-for="(item,index) in contractMsg" :key="index" class="contract-list"> <div v-for="(item,index) in contractMsg" :key="index" class="contract-list">
<div class="item"> <div class="item">
<img src="@/assets/distributorSign/icon-进件合同.png" alt=""> <img src="@/assets/distributorSign/icon-进件合同.png" alt="">
...@@ -127,12 +127,15 @@ export default { ...@@ -127,12 +127,15 @@ export default {
} }
} }
} }
.content{
padding-bottom: 14px;
}
.contract-list { .contract-list {
width: 100%; width: 100%;
height: 120px; height: 120px;
// border: 1px solid #ccc; // border: 1px solid #ccc;
background: #fff; background: #fff;
margin-bottom: 8px; //margin-bottom: 8px;
.item { .item {
width: 100%; width: 100%;
height: 34px; height: 34px;
...@@ -167,8 +170,8 @@ export default { ...@@ -167,8 +170,8 @@ export default {
height: 86px; height: 86px;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
justify-content: space-evenly; justify-content: space-around;
padding: 6px 0;
.option { .option {
width: 100%; width: 100%;
height: 18px; height: 18px;
......
...@@ -7,13 +7,13 @@ ...@@ -7,13 +7,13 @@
</div> </div>
</h-header> </h-header>
<Tab @getTabNum="getTabNum" /> <Tab @getTabNum="getTabNum" />
<h-content> <div class="hinput">
<div class="hinput"> <div class="search-box">
<div class="search-box"> <input type="text" placeholder="请输入进件号/承租人名称">
<input type="text" placeholder="请输入进件号/承租人名称"> <img src="@/assets/distributorSign/search.png" alt="">
<img src="@/assets/distributorSign/search.png" alt="">
</div>
</div> </div>
</div>
<h-content>
<div v-for="(item,index) in contractMsg" :key="index" class="contract-list"> <div v-for="(item,index) in contractMsg" :key="index" class="contract-list">
<div class="item"> <div class="item">
<img src="@/assets/distributorSign/icon-进件合同.png" alt=""> <img src="@/assets/distributorSign/icon-进件合同.png" alt="">
...@@ -126,6 +126,9 @@ export default { ...@@ -126,6 +126,9 @@ export default {
} }
} }
} }
.content{
padding-bottom: 14px;
}
.contract-list { .contract-list {
width: 100%; width: 100%;
height: 120px; height: 120px;
...@@ -161,44 +164,44 @@ export default { ...@@ -161,44 +164,44 @@ export default {
font-weight: bolder font-weight: bolder
} }
} }
.details { .details {
width: 100%; width: 100%;
height: 86px; height: 86px;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
justify-content: space-evenly; justify-content: space-around;
padding: 6px 0;
.option { .option {
width: 100%; width: 100%;
height: 18px; height: 18px;
display: flex; display: flex;
flex-basis: row; flex-direction: row;
.name { .name {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 13px; font-size: 13px;
color: rgba(56,63,69,0.60); color: rgba(56,63,69,0.60);
width: 80px; width: 80px;
height: 18px; height: 18px;
line-height: 18px; line-height: 18px;
padding-left: 20px; text-align: right
} }
.normal { .normal {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 13px; font-size: 13px;
color: #383F45; color: #383F45;
height: 18px; height: 18px;
line-height: 18px; line-height: 18px;
margin-left: 8px; margin-left: 8px;
} }
.money { .money {
color: #FCC800; color: #FCC800;
} }
img { img {
margin-left: 55% margin-left: 55%
} }
} }
} }
} }
} }
</style> </style>
<template> <template>
<scroll id="login" ref="scroll" class="content"> <scroll id="login" ref="scroll" class="content">
<div> <div class="bird-icon"/>
<div class="bird-icon"><img src="../assets/image/login/bird-icon.png"></div> <div class="login-wrap">
<div class="pwd"> <div class="pwd">
<div class="pwd-icon"><img src="../assets/image/login/user.png"></div> <div class="pwd-icon"><img src="../assets/login/user.png"></div>
<div class="pwd-input"><input v-model="username" type="text" placeholder="请输入用户名/手机号"></div> <div class="pwd-input"><input v-model="username" type="text" placeholder="请输入用户名/手机号"></div>
<div v-if="username" class="delete" @click="clearAccount"><img src="../assets/image/login/delete.png"></div> <div v-if="username" class="delete" @click="clearAccount"><img src="../assets/login/delete.png"></div>
</div> </div>
<div class="pwd"> <div class="pwd">
<div class="pwd-icon"><img src="../assets/image/login/password.png"></div> <div class="pwd-icon"><img src="../assets/login/password.png"></div>
<div class="pwd-input"><input v-model="password" type="password" placeholder="请输入密码"></div> <div class="pwd-input"><input v-model="password" :type="pwdType" placeholder="请输入密码"></div>
<div v-if="password" class="delete" @click="clearPassword"><img src="../assets/image/login/delete.png"></div> <div v-if="password" class="delete" @click="changeType"><img :src="openEye"></div>
</div> </div>
<div class="button submit" @click="access">登录</div>
<div class="other-function"> <div class="other-function">
<div class="register" @click="registerNew">用户注册</div> <div class="register" @click="registerNew">注册</div>
<div class="pwd-forgotten" @click="pwdForgotten">忘记密码</div> <div class="pwd-forgotten" @click="pwdForgotten">忘记密码</div>
</div> </div>
<div class="button submit" @click="access">登录</div>
</div> </div>
</scroll> </scroll>
</template> </template>
...@@ -26,6 +27,8 @@ var CryptoJS = require('crypto-js') ...@@ -26,6 +27,8 @@ var CryptoJS = require('crypto-js')
export default { export default {
data () { data () {
return { return {
pwdType: 'password', // 密码类型
openEye: require('@/assets/login/passNoShow.png'), // 图片地址
username: window.localStorage.username ? window.localStorage.username : '', username: window.localStorage.username ? window.localStorage.username : '',
password: '', password: '',
version: process.env.currentVersion, version: process.env.currentVersion,
...@@ -33,42 +36,41 @@ export default { ...@@ -33,42 +36,41 @@ export default {
} }
}, },
methods: { methods: {
changeType () {
this.pwdType = this.pwdType === 'password' ? 'text' : 'password'
this.openEye = this.pwdType === 'password' ? require('@/assets/login/passNoShow.png') : require('@/assets/login/passShow.png')
},
login: function () { login: function () {
let vm = this let vm = this
vm.$router.push('tab')
/* let vm = this
// debugger;
// vm.password = CryptoJS.MD5(vm.password).toString().toUpperCase(); // vm.password = CryptoJS.MD5(vm.password).toString().toUpperCase();
let md5passwprd = CryptoJS.MD5(vm.password).toString().toUpperCase() let md5passwprd = CryptoJS.MD5(vm.password).toString().toUpperCase()
let param = { let param = {
'user_name': vm.username, 'phone': vm.username,
'user_password': md5passwprd, 'password': md5passwprd,
'platform': 'C',
} }
vm.$post(process.env.basePath + 'tc_app_login', param) vm.$post(process.env.basePath + 'app_login', param)
.then(function (res) { .then(function (res) {
if (res.result === 'S') { if (res.result === 'S') {
vm.hlsPopup.hideLoading() vm.hlsPopup.hideLoading()
window.localStorage.setItem('username', vm.username.toUpperCase()) window.localStorage.setItem('user_phone', vm.username)
window.localStorage.setItem('password', md5passwprd) window.localStorage.setItem('password', md5passwprd)
window.localStorage.setItem('user_id', res.user_id) /* if (res.bp_id && res.bp_id !== 'undefined') {
if (res.bp_id && res.bp_id !== 'undefined') {
window.localStorage.setItem('bp_id', res.bp_id) window.localStorage.setItem('bp_id', res.bp_id)
} } */
// if (vm.routeName) { // if (vm.routeName) {
// vm.$router.push({name: vm.routeName}) // vm.$router.push({name: vm.routeName})
// } else { // } else {
vm.$router.push('tab') vm.$router.push('tab')
// } // }
let tagOption = { /* let tagOption = {
'username': vm.username.toUpperCase(), 'username': vm.username.toUpperCase(),
'user_id': res.user_id, 'user_id': res.user_id,
} }
vm.Jpush._jpush_config(tagOption) vm.Jpush._jpush_config(tagOption) */
} }
// 极光推送 // 极光推送
})*/ })
}, },
access: function () { access: function () {
let vm = this let vm = this
...@@ -105,77 +107,32 @@ export default { ...@@ -105,77 +107,32 @@ export default {
<style lang="less" scoped type="text/less"> <style lang="less" scoped type="text/less">
#login { #login {
background: url("../assets/image/login/bg@2x.png") no-repeat; background: url("../assets/login/bg@2x.png") no-repeat;
background-size: cover; background-size: cover;
background-position-x: 0px; background-position-x: 0px;
color: #FFFFFF; color: #FFFFFF;
width: 100%; width: 100%;
height: 100%; height: 100%;
margin: 0 auto; margin: 0 auto;
.bird-icon { .scrollContent{
padding-top: 25%; display: flex;
width: 100%;
display: flex;
display: -webkit-flex;
justify-content: center; justify-content: center;
-webkit-justify-content: center; align-items: center;
img {
width: 138px;
height: 48px;
}
} }
.login { .bird-icon{
border-bottom: 1px solid #5D98F6; padding-top: 25%;
display: flex; }
display: -webkit-flex; .login-wrap{
margin: 15% auto 0; width: 100%;
width: 250px; margin-top: 60%;
justify-content: center;
.person-icon {
margin-bottom: 9px;
margin-right: 15px;
margin-left: 3px;
img {
width: 18px;
height: 20px;
}
}
.admin-input {
//width: 380px;
height: 25px;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
input {
width: 100%;
height: 100%;
font-size: 16px;
color: #9e9e9e;
margin-bottom: 5px;
line-height: 22px;
}
input::-webkit-input-placeholder {
font-size: 16px;
color: #CDD1D3;
}
}
.delete {
img {
margin-top: 5px;
width: 12px;
height: 12px;
}
}
} }
.pwd { .pwd {
border-bottom: 1px solid #5D98F6; border-bottom: 1px solid #5D98F6;
display: flex; display: flex;
display: -webkit-flex; display: -webkit-flex;
margin: 15% auto 0; margin: 5% 0 5% 14%;
width: 250px;
.pwd-icon { .pwd-icon {
margin-bottom: 9px; margin-bottom: 6px;
margin-right: 15px; margin-right: 15px;
margin-left: 3px; margin-left: 3px;
img { img {
...@@ -184,19 +141,21 @@ export default { ...@@ -184,19 +141,21 @@ export default {
} }
} }
.pwd-input { .pwd-input {
//width: 380px; margin-left: 4%;
height: 25px; width: 100%;
margin-bottom: 10px;
display: flex; display: flex;
display: -webkit-flex; display: -webkit-flex;
align-items: center; align-items: center;
-webkit-align-items: center; -webkit-align-items: center;
// background-color: #0057C3 !important;
input { input {
width: 100%; width: 100%;
height: 100%; height: 100%;
font-size: 16px; font-size: 16px;
color: #9e9e9e; color: #fff;
line-height: 22px; line-height: 22px;
margin-bottom: 5px; background-color: rgba(0,87,195,0) !important;
} }
input::-webkit-input-placeholder { input::-webkit-input-placeholder {
font-size: 16px; font-size: 16px;
...@@ -205,19 +164,20 @@ export default { ...@@ -205,19 +164,20 @@ export default {
} }
.delete { .delete {
img { img {
margin-right: 20px;
margin-top: 5px; margin-top: 5px;
width: 12px; width: 14px;
height: 12px; height: 14px;
} }
} }
} }
.other-function { .other-function {
width: 250px; width: 64%;
display: flex; display: flex;
display: -webkit-flex; display: -webkit-flex;
justify-content: space-between; justify-content: space-between;
-webkit-justify-content: space-between; -webkit-justify-content: space-between;
margin: 8% auto 0; margin: 0 0 0 23%;
.register { .register {
color: #5D98F6; color: #5D98F6;
font-size: 15px; font-size: 15px;
...@@ -228,14 +188,14 @@ export default { ...@@ -228,14 +188,14 @@ export default {
} }
} }
.submit { .submit {
width: 250px;
opacity: 1; opacity: 1;
background-color: #5D98F6; background: #FDFDFD;
border-radius: 4px; border-radius: 8px 0 0 8px;
height: 40px; height: 50px;
margin: 22% auto 0; margin: 10% 0 6% 14%;
font-size:16px; font-size:16px;
color: #FEFEFE; color: #000000;
display: flex; display: flex;
display: -webkit-flex; display: -webkit-flex;
justify-content: center; justify-content: center;
......
<template> <template>
<h-view class="public-style pwd-forgotten"> <h-view class="public-style pwd-forgotten">
<h-header> <h-header :proportion="[5,1,1]" class="header">
<div slot="left" class="h-header-btn" @click="$routeGo()"> <div slot="left" class="h-header-btn" @click="$routeGo()">
<i class="ion-ios-arrow-back"/> <img src="@/assets/userBind/arrow.png" >
<span>忘记密码</span>
</div> </div>
<div slot="center">忘记密码</div>
</h-header> </h-header>
<h-content class="has-header"> <h-content>
<div class="phone_number"> <div class="description">请使用原注册手机号接收验证码并重新设置密码</div>
<div class="phone-icon"><img src="../assets/image/login/cellphone@2x.png"/></div> <list-item>
<div class="number">手机号</div> <item>
<div class="input-box"><input type="number" placeholder="请输入手机号" v-model="phone_number"/></div> <img slot="left-icon" src="../assets/login/phone.png" class="left-icon">
<div class="getVerify" :class="{'disable':showTimer}" @blur="checkPhone" @click="getPhoneCode"><span <div slot="name" class="required">手机号码</div>
v-if="showTimer">{{timerCount}}</span>{{text}} <div slot="content">{{ phone_number }}</div>
</div> </item>
</div> <item>
<div class="user_name"> <img slot="left-icon" src="../assets/login/phone_code.png" class="left-icon">
<div class="user-icon"><img src="../assets/image/login/verification@2x.png"/></div> <div slot="name" class="required">验证码</div>
<div class="user-name">验证码</div> <input slot="content" v-model="verifiedCode" type="text" placeholder="请填写验证码">
<div class="user-input"><input type="text" maxlength="6" placeholder="请输入验证码" v-model="verifiedCode"/> <div slot="right-icon" class="verified-code">
<img <div v-if="!showTimer" class="verified-code-box" @click="getPhoneCode">点击获取</div>
src="../assets/image/login/checked@2x.png" v-if="verifiedCodeFlag"/> <span v-if="showTimer" class="verified-code-des">{{ timerCount }}{{ text }}</span>
</div> </div>
</div> </item>
<div class="user_name"> <item>
<div class="user-icon"><img src="../assets/image/login/locked@2x.png"/></div> <img slot="left-icon" src="../assets/login/passwordConfirm.png" class="left-icon">
<div class="user-name">新密码</div> <div slot="name" class="required">设置密码</div>
<div class="user-input"><input type="password" maxlength="12" placeholder="请输入至少6位密码" <input
v-model="user_password" @blur="passwordCheck"/> slot="content" v-model="user_password" type="text" placeholder="请输入6~20位密码"
<img maxlength="20" @blur="passwordCheck">
src="../assets/image/login/checked@2x.png" v-if="passwordFlag"/> </item>
</div> <item :proportion="[2,2]">
</div> <img slot="left-icon" src="../assets/login/passwordConfirm.png" class="left-icon">
<div class="user_name"> <div slot="name" class="required">重新输入密码</div>
<div class="user-icon"><img src="../assets/image/login/locked@2x.png"/></div> <input
<div class="user-name">&#12288;</div> slot="content" v-model="confirm" type="text" placeholder="请重新输入密码"
<div class="user-input"><input type="password" maxlength="12" placeholder="请与密码保持一致" @blur="confirmCheck" @blur="confirmCheck">
v-model="confirm"/> </item>
<img </list-item>
src="../assets/image/login/checked@2x.png" v-if="confirmPassword"/>
</div>
</div>
<div :class="{'submit':!confirmPassword,'selected':confirmPassword}" @click="submit">提交</div>
</h-content> </h-content>
<bottom-tab class="footer-button">
<tab-button class="put" @click.native="submit">确认</tab-button>
</bottom-tab>
</h-view> </h-view>
</template> </template>
<script> <script>
var CryptoJS = require('crypto-js')
export default {
data () {
return {
phone_number: window.localStorage.getItem('user_phone'),
verifiedCode: '',
export default { username: '',
data() {
return {
username: '', user_password: '',
phone_number: '', confirm: '',
verifiedCode: '',
user_password: '',
confirm: '',
phoneNumberFlag: false, phoneNumberFlag: false,
verifiedCodeFlag: false, verifiedCodeFlag: false,
passwordFlag: false, passwordFlag: false,
confirmPassword: false, confirmPassword: false,
captchaKey: '', captchaKey: '123456',
phoneCodeTimeOut: false, phoneCodeTimeOut: false,
timer: 60000, timer: 60000,
showTimer: false, showTimer: false,
timerCount: 60, timerCount: 60,
text: '获取验证码' text: '获取验证码',
}
},
watch: {
verifiedCode (value) {
let vm = this
if (value.length === 6) {
vm.verifiedCodeFlag = false
if (vm.captchaKey.length === 0) {
hlsPopup.showLongCenter('请先获取验证码')
} else if (vm.phoneCodeTimeOut) {
hlsPopup.showLongCenter('验证码已失效,请从新获取')
} else {
vm.verifiedCodeFlag = true
}
}
},
user_password (value) {
if (value.length > 20) {
hlsPopup.showLongCenter('密码长度6~20位之间')
} }
}, },
methods: { confirm (value) {
checkPhone() { if (value.length > 20) {
let vm = this; hlsPopup.showLongCenter('密码长度6~20位之间')
vm.phoneNumberFlag = false; }
},
},
created () {
let vm = this
let url = process.env.loginPath + 'appadmin'
let param = {}
vm.$post(url, param).then(function (res) {
window.localStorage.setItem('access_token', res.access_token)
})
},
methods: {
checkPhone () {
let vm = this
vm.phoneNumberFlag = false
if (hlsUtil.phoneNumber(vm.phone_number) || hlsUtil.phoneNumber86(vm.phone_number)) {
vm.phoneNumberFlag = true
}
},
getPhoneCode () {
let vm = this
if (!vm.showTimer) {
if (hlsUtil.phoneNumber(vm.phone_number) || hlsUtil.phoneNumber86(vm.phone_number)) { if (hlsUtil.phoneNumber(vm.phone_number) || hlsUtil.phoneNumber86(vm.phone_number)) {
vm.phoneNumberFlag = true; vm.phoneNumberFlag = true
} vm.getVerifiedCode()
vm.showTimer = true
}, vm.text = '秒后失效'
getPhoneCode() { let counter = setInterval(function () {
let vm = this; if (vm.timerCount >= 0) { vm.timerCount = vm.timerCount - 1 }
if (!vm.showTimer) { }, 1000)
if (hlsUtil.phoneNumber(vm.phone_number) || hlsUtil.phoneNumber86(vm.phone_number)) { setTimeout(function () {
vm.phoneNumberFlag = true; vm.text = '获取验证码'
vm.getVerifiedCode(); vm.showTimer = false
vm.showTimer = true; clearInterval(counter)
vm.text = "秒后重新获取"; vm.showTimer = false
let counter = setInterval(function () { vm.timerCount = vm.timer / 1000
if (vm.timerCount >= 0) }, vm.timer)
vm.timerCount = vm.timerCount - 1;
}, 1000);
setTimeout(function () {
vm.text = "获取验证码";
vm.showTimer = false;
clearInterval(counter)
vm.showTimer = false;
vm.timerCount = vm.timer / 1000;
}, vm.timer);
}
else {
hlsPopup.showLongCenter('手机号不存在,请重新输入!');
}
}
},
passwordCheck() {
let vm = this;
let length = vm.user_password.length;
if (length < 6 || length > 12) {
hlsPopup.showLongBottom('密码长度6~12位之间')
} else {
vm.passwordFlag = true;
}
},
confirmCheck() {
let vm = this;
let length = vm.confirm.length;
if (length < 6 || length > 12) {
hlsPopup.showLongBottom('密码长度6~12位之间')
} else if (vm.confirm != vm.user_password) {
hlsPopup.showLongBottom('两次输入的密码不一致,请从新输入')
} else { } else {
vm.confirmPassword = true; hlsPopup.showLongCenter('手机号不存在,请重新输入!')
} }
}, }
submit() { },
let vm = this; passwordCheck () {
if (!vm.phoneNumberFlag) { let vm = this
hlsPopup.showLongBottom('请输入手机号!') let length = vm.user_password.length
} else if (!vm.verifiedCodeFlag) { if (length < 6 || length > 20) {
hlsPopup.showLongBottom('请输入验证码!') hlsPopup.showLongCenter('密码长度6~20位之间')
} else if (!vm.passwordFlag) { } else {
hlsPopup.showLongBottom('请输入密码!') vm.passwordFlag = true
} else if (!vm.confirmPassword) { }
hlsPopup.showLongBottom('请确认密码!') },
} else { confirmCheck () {
let url = process.env.rootPath + '/captcha/do?captchaKey=' + vm.captchaKey + '&captchaCode=' + vm.verifiedCode + '&sysName=HLS_APP&apiName=tc_change_password'; let vm = this
let params = { let length = vm.confirm.length
user_name: vm.phone_number, if (length < 6 || length > 20) {
new_password: vm.user_password, hlsPopup.showLongCenter('密码长度6~20位之间')
phone_number: vm.phone_number } else if (vm.confirm !== vm.user_password) {
} hlsPopup.showLongCenter('两次输入的密码不一致,请从新输入')
hlsHttp.post(url, params).then(function (res) { } else {
if (res.result == 'S') { vm.confirmPassword = true
hlsPopup.showLongBottom('修改成功'); }
setTimeout(function () { },
vm.$router.push('login'); submit () {
}, 100) let vm = this
} if (!vm.phoneNumberFlag) {
hlsPopup.showLongCenter('请输入手机号!')
}) } else if (!vm.verifiedCodeFlag) {
} hlsPopup.showLongCenter('验证码错误!')
}, } else if (!vm.passwordFlag) {
getVerifiedCode() { hlsPopup.showLongCenter('请输入密码!')
let vm = this; } else if (!vm.confirmPassword) {
let url = process.env.rootPath + '/aliyun/sms'; hlsPopup.showLongCenter('请确认密码!')
} else {
let url = process.env.basePath + 'lose_password'
let md5passwprd = CryptoJS.MD5(vm.user_password).toString().toUpperCase()
let params = { let params = {
phoneNumber: vm.phone_number, phone: vm.phone_number,
signName: '车租易', password: md5passwprd
templateCode: 'SMS_154585462'
} }
hlsHttp.post(url, params).then(function (res) { hlsHttp.post(url, params).then(function (res) {
if (res.code == 'OK') { if (res.result === 'S') {
vm.captchaKey = res.captchaKey; hlsPopup.showLongCenter('修改成功')
vm.phoneCodeTimeOut = false; setTimeout(function () {
setTimeout(function () { vm.$router.push('login')
vm.captchaKey = ''; }, 100)
vm.phoneCodeTimeOut = true
}, 300000)
hlsPopup.showLongBottom('验证码发送成功!');
} else {
hlsPopup.showLongBottom(res.message);
}
} }
) })
/*post response {
"Code": "OK",
"Message": "OK",
"sendNum": 641164
}*/
} }
}, },
watch: { getVerifiedCode () {
verifiedCode(value) { let vm = this
let vm = this; hlsPopup.showLongCenter('测试验证码为123456')
//console.log(value) /* let url = process.env.rootPath + '/aliyun/sms'
if (value.length == 6) { let params = {
vm.verifiedCodeFlag = false; phoneNumber: vm.phone_number,
if (vm.captchaKey.length == 0) { signName: '车租易',
hlsPopup.showLongBottom('请先获取验证码') templateCode: 'SMS_154585462',
} else if (vm.phoneCodeTimeOut) { }
hlsPopup.showLongBottom('验证码已失效,请从新获取') hlsHttp.post(url, params).then(function (res) {
} else { if (res.code == 'OK') {
vm.verifiedCodeFlag = true; vm.captchaKey = res.captchaKey
} vm.phoneCodeTimeOut = false
setTimeout(function () {
} vm.captchaKey = ''
}, vm.phoneCodeTimeOut = true
user_password(value) { }, 300000)
if (value.length > 12) { hlsPopup.showLongBottom('验证码发送成功!')
hlsPopup.showLongBottom('密码长度6~12位之间') } else {
} hlsPopup.showLongBottom(res.message)
},
confirm(value) {
if (value.length > 12) {
hlsPopup.showLongBottom('密码长度6~12位之间')
} }
} }
) */
}, },
created() { },
let vm = this; }
let url = process.env.loginPath + 'appadmin';
let param = {};
//vm.hlsPopup.showLoading('请稍等');
vm.$post(url, param).then(function (res) {
window.localStorage.setItem('access_token', res.access_token);
})
}
}
</script> </script>
<style scoped lang="less"> <style scoped lang="less">
.pwd-forgotten { @import "../styles/mixin";
.content { .header {
background-color: #f7f7f8; background-color: #00469c;
padding: 0; color: #fff;
.phone_number { .h-header-btn {
margin-top: 30px; img {
padding: 2% 30px; width: 16px;
width: 100%; height: 16px;
background-color: #FFFFFF; margin-left: 4px;
display: flex;
display: -webkit-flex;
align-items: center;
//justify-content: space-between;
.number {
color: #000000;
letter-spacing: -0.83px;
font-size: 26px;
margin-right: 3%;
padding: 0 3%;
border-right: 1px solid #EFEFEF;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
}
.phone-icon {
img {
margin-top: 5px;
width: 26px;
height: 46px;
}
}
.input-box {
width: 50%;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
input {
height: 100%;
width: 100%;
font-size: 26px;
line-height: 32px;
color: #000000;
letter-spacing: -0.83px;
border:none;
}
input::-webkit-input-placeholder {
font-size: 26px;
line-height: 32px;
color: #C6C6CC;
letter-spacing: -0.83px;
}
}
.delete {
img {
margin-top: 10px;
width: 24px;
height: 24px;
}
}
.getVerify {
border-radius: 6px;
background-color: @headerColor;
font-size: 22px;
padding: 15px 0;
width: 25%;
height: 100%;
color: #FFFFFF;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
justify-content: center;
-webkit-justify-content: center;
text-align: center;
}
.disable {
background-color: #DADADF;
}
} }
.user_name { span {
margin-top: 2%; color: #fff;
padding: 3% 30px; font-family: PingFangSC-Semibold;
width: 100%; margin-left: 16px;
background-color: #FFFFFF; font-size: 17px;
display: flex; letter-spacing: 0.6px;
display: -webkit-flex; line-height: 24px;
.user-icon {
img {
width: 32px;
height: 34px;
}
}
.user-name {
color: #000000;
letter-spacing: -0.83px;
font-size: 26px;
margin-right: 3%;
padding-right: 3%;
padding-left: 2.5%;
border-right: 1px solid #EFEFEF;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
}
.user-input {
width: 75%;
height: 3%;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
input {
width: 100%;
height: 100%;
font-size: 26px;
color: #000000;
letter-spacing: -0.83px;
line-height: 34px;
float: left;
}
input::-webkit-input-placeholder {
font-size: 26px;
color: #C6C6CC;
letter-spacing: -0.83px;
line-height: 34px;
}
img {
float: right;
}
}
}
.submit {
background-color: #DADADF;
border-radius: 6px;
width: 88.3%;
height: 90px;
font-size: 32px;
color: #FFFFFF;
letter-spacing: 6px;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
justify-content: center;
-webkit-justify-content: center;
margin: 12% 40px 8% 40px;
}
.selected {
background-color: @headerColor;
border-radius: 6px;
width: 88.3%;
height: 90px;
font-size: 32px;
color: #FFFFFF;
letter-spacing: 6px;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
justify-content: center;
-webkit-justify-content: center;
margin: 12% 40px 8% 40px;
} }
} }
} }
.description{
.wh(100%,50px);
.fja();
background-color: #00469c;
.sc(14px,#fff);
}
.verified-code{
.wh(60%,100%);
text-align: right;
.verified-code-box{
margin-left: 14px;
.border-left;
color:#0057C3;
line-height: 30px;
}
.verified-code-des{
font-size: 10px;
color:#0057C3;
}
}
.tab-content{
background-color: #00469c;
margin: 0 2%;
color: #fff;
}
</style> </style>
<template> <template>
<h-view class="public-style t-regiester"> <h-view class="public-style pwd-forgotten">
<h-header> <h-header :proportion="[5,1,1]" class="header">
<div slot="left" class="h-header-btn" @click="$routeGo()"> <div slot="left" class="h-header-btn" @click="$routeGo()">
<i class="ion-ios-arrow-back"/> <img src="@/assets/userBind/arrow.png" >
<span>用户注册</span>
</div> </div>
<div slot="center">注册</div>
</h-header> </h-header>
<h-content class="has-header"> <h-content>
<!--<div class="user_name"> <div class="description">请注册手机号接收验证码并设置密码</div>
<div class="user-icon"><img src="../assets/image/login/username@2x.png"/></div> <list-item>
<div class="user-name">用户名</div> <item>
<div class="user-input"><input type="text" placeholder="请输入用户名" v-model="user_name"/></div> <img slot="left-icon" src="../assets/login/phone.png" class="left-icon">
</div>--> <div slot="name" class="required">手机号码</div>
<div class="phone_number"> <input slot="content" v-model="phone_number" placeholder="请输入手机号码">
<div class="phone-icon"><img src="../assets/image/login/cellphone@2x.png"/></div> </item>
<div class="number">手机号</div> <item>
<div class="input-box"><input type="number" placeholder="请输入手机号" v-model="phone_number"/></div> <img slot="left-icon" src="../assets/login/phone_code.png" class="left-icon">
<div class="getVerify" :class="{'disable':showTimer}" @blur="checkPhone" @click="getPhoneCode"><span <div slot="name" class="required">验证码</div>
v-if="showTimer">{{timerCount}}</span>{{text}} <input slot="content" v-model="verifiedCode" type="text" placeholder="请填写验证码">
</div> <div slot="right-icon" class="verified-code">
</div> <div v-if="!showTimer" class="verified-code-box" @click="getPhoneCode">点击获取</div>
<div class="user_name"> <span v-if="showTimer" class="verified-code-des">{{ timerCount }}{{ text }}</span>
<div class="user-icon"><img src="../assets/image/login/verification@2x.png"/></div> </div>
<div class="user-name">验证码</div> </item>
<div class="user-input"><input type="text" maxlength="6" placeholder="请输入验证码" v-model="verifiedCode"/> <item>
<img <img slot="left-icon" src="../assets/login/passwordConfirm.png" class="left-icon">
src="../assets/image/login/checked@2x.png" v-if="verifiedCodeFlag"/> <div slot="name" class="required">设置密码</div>
</div> <input
</div> slot="content" v-model="user_password" type="text" placeholder="请输入6~20位密码"
<div class="user_name"> maxlength="20" @blur="passwordCheck">
<div class="user-icon"><img src="../assets/image/login/locked@2x.png"/></div> </item>
<div class="user-name">&#12288;</div> <item :proportion="[2,2]">
<div class="user-input"><input type="password" maxlength="12" placeholder="请输入至少6位密码" <img slot="left-icon" src="../assets/login/passwordConfirm.png" class="left-icon">
v-model="user_password" @blur="passwordCheck"/> <div slot="name" class="required">重新输入密码</div>
<img <input
src="../assets/image/login/checked@2x.png" v-if="passwordFlag"/> slot="content" v-model="confirm" type="text" placeholder="请重新输入密码"
</div> @blur="confirmCheck">
</div> </item>
<div class="user_name"> </list-item>
<div class="user-icon"><img src="../assets/image/login/locked@2x.png"/></div>
<div class="user-name">&#12288;</div>
<div class="user-input"><input type="password" maxlength="12" placeholder="请与密码保持一致" @blur="confirmCheck"
v-model="confirm"/>
<img
src="../assets/image/login/checked@2x.png" v-if="confirmPassword"/>
</div>
</div>
<div :class="{'submit':!agreeFlag,'selected':agreeFlag}" @click="submit">注册</div>
<div class="potocol">
<div class="img-box" v-if="!agreeFlag" @click="changeStatus()"><img
src="../assets/image/login/unchecked@2x.png"/></div>
<div class="img-box" v-if="agreeFlag" @click="changeStatus()"><img
src="../assets/image/login/checked@2x.png"/></div>
<div class="agreed">我已同意并阅读</div>
<div class="clause" @click="goUserAgree">《车租易会员服务条款》</div>
</div>
</h-content> </h-content>
<bottom-tab class="footer-button">
<tab-button class="put" @click.native="submit">确认</tab-button>
</bottom-tab>
</h-view> </h-view>
</template> </template>
<script> <script>
import hlsPopup from "../scripts/hlsPopup"; var CryptoJS = require('crypto-js')
export default {
var CryptoJS = require("crypto-js"); data () {
return {
phone_number: '',
verifiedCode: '',
user_password: '',
confirm: '',
export default { phoneNumberFlag: false,
data() { verifiedCodeFlag: false,
return { passwordFlag: false,
confirmPassword: false,
user_name: '', captchaKey: '123456',
phone_number: '', phoneCodeTimeOut: false,
verifiedCode: '', timer: 60000,
user_password: '', showTimer: false,
confirm: '', timerCount: 60,
text: '获取验证码',
phoneNumberFlag: false, }
verifiedCodeFlag: false, },
passwordFlag: false, watch: {
confirmPassword: false, verifiedCode (value) {
agreeFlag: false, let vm = this
if (value.length === 6) {
captchaKey: '', vm.verifiedCodeFlag = false
phoneCodeTimeOut: false, if (vm.captchaKey.length === 0) {
timer: 60000, hlsPopup.showLongCenter('请先获取验证码')
showTimer: false, } else if (vm.phoneCodeTimeOut) {
timerCount: 60, hlsPopup.showLongCenter('验证码已失效,请从新获取')
text: '获取验证码' } else {
vm.verifiedCodeFlag = true
}
} }
}, },
methods: { user_password (value) {
goUserAgree(){ if (value.length > 20) {
this.$router.push({ hlsPopup.showLongCenter('密码长度6~20位之间')
name:"UserAgree" }
}) },
}, confirm (value) {
checkPhone() { if (value.length > 20) {
let vm = this; hlsPopup.showLongCenter('密码长度6~20位之间')
vm.phoneNumberFlag = false; }
},
},
created () {
let vm = this
let url = process.env.loginPath + 'appadmin'
let param = {}
vm.$post(url, param).then(function (res) {
window.localStorage.setItem('access_token', res.access_token)
})
},
methods: {
checkPhone () {
let vm = this
vm.phoneNumberFlag = false
if (hlsUtil.phoneNumber(vm.phone_number) || hlsUtil.phoneNumber86(vm.phone_number)) {
vm.phoneNumberFlag = true
}
},
getPhoneCode () {
let vm = this
if (!vm.showTimer) {
if (hlsUtil.phoneNumber(vm.phone_number) || hlsUtil.phoneNumber86(vm.phone_number)) { if (hlsUtil.phoneNumber(vm.phone_number) || hlsUtil.phoneNumber86(vm.phone_number)) {
vm.phoneNumberFlag = true; vm.phoneNumberFlag = true
} vm.getVerifiedCode()
vm.showTimer = true
}, vm.text = '秒后失效'
getPhoneCode() { let counter = setInterval(function () {
let vm = this; if (vm.timerCount >= 0) { vm.timerCount = vm.timerCount - 1 }
if (!vm.showTimer) { }, 1000)
if (hlsUtil.phoneNumber(vm.phone_number) || hlsUtil.phoneNumber86(vm.phone_number)) { setTimeout(function () {
vm.phoneNumberFlag = true; vm.text = '获取验证码'
vm.getVerifiedCode(); vm.showTimer = false
vm.showTimer = true; clearInterval(counter)
vm.text = "秒后重新获取"; vm.showTimer = false
let counter = setInterval(function () { vm.timerCount = vm.timer / 1000
if (vm.timerCount >= 0) }, vm.timer)
vm.timerCount = vm.timerCount - 1;
}, 1000);
setTimeout(function () {
vm.text = "获取验证码";
vm.showTimer = false;
clearInterval(counter)
vm.showTimer = false;
vm.timerCount = vm.timer / 1000;
}, vm.timer);
}
else {
hlsPopup.showLongCenter('手机号不存在,请重新输入!');
}
}
},
passwordCheck() {
let vm = this;
let length = vm.user_password.length;
if (length < 6 || length > 12) {
hlsPopup.showLongBottom('密码长度6~12位之间')
} else { } else {
vm.passwordFlag = true; hlsPopup.showLongCenter('手机号不存在,请重新输入!')
} }
}, }
confirmCheck() { },
let vm = this; passwordCheck () {
let length = vm.confirm.length; let vm = this
if (length < 6 || length > 12) { let length = vm.user_password.length
hlsPopup.showLongBottom('密码长度6~12位之间') if (length < 6 || length > 20) {
} else if (vm.confirm != vm.user_password) { hlsPopup.showLongCenter('密码长度6~20位之间')
hlsPopup.showLongBottom('两次输入的密码不一致,请从新输入') } else {
} else { vm.passwordFlag = true
vm.confirmPassword = true; }
},
confirmCheck () {
let vm = this
let length = vm.confirm.length
if (length < 6 || length > 20) {
hlsPopup.showLongCenter('密码长度6~20位之间')
} else if (vm.confirm !== vm.user_password) {
hlsPopup.showLongCenter('两次输入的密码不一致,请从新输入')
} else {
vm.confirmPassword = true
}
},
submit () {
let vm = this
if (!vm.phoneNumberFlag) {
hlsPopup.showLongCenter('请输入手机号!')
} else if (!vm.verifiedCodeFlag) {
hlsPopup.showLongCenter('验证码错误!')
} else if (!vm.passwordFlag) {
hlsPopup.showLongCenter('请输入密码!')
} else if (!vm.confirmPassword) {
hlsPopup.showLongCenter('请确认密码!')
} else {
let url = process.env.basePath + 'register'
let md5passwprd = CryptoJS.MD5(vm.user_password).toString().toUpperCase()
let params = {
phone: vm.phone_number,
password: md5passwprd
} }
}, hlsHttp.post(url, params).then(function (res) {
changeStatus() { if (res.result === 'S') {
let vm = this; hlsPopup.showLongCenter('注册成功')
vm.agreeFlag = !vm.agreeFlag; setTimeout(function () {
}, vm.$router.push('login')
submit() { }, 100)
let vm =this;
//vm.user_password = CryptoJS.MD5(vm.user_password).toString().toUpperCase();
let md5password = CryptoJS.MD5(vm.user_password).toString().toUpperCase();
if (!vm.phoneNumberFlag) {
hlsPopup.showLongBottom('请输入手机号!')
} else if (!vm.verifiedCodeFlag) {
hlsPopup.showLongBottom('请输入验证码!')
} else if (!vm.passwordFlag) {
hlsPopup.showLongBottom('请输入密码!')
} else if (!vm.confirmPassword) {
hlsPopup.showLongBottom('请确认密码!')
} else if (!vm.agreeFlag) {
hlsPopup.showLongBottom('请同意《车租易会员服务条款》!')
} else {
let url = process.env.rootPath + '/captcha/do?captchaKey=' + vm.captchaKey + '&captchaCode=' + vm.verifiedCode + '&sysName=HLS_APP&apiName=tc_app_regiester';
let params = {
user_name: vm.phone_number,
user_password: md5password,
phone_number: vm.phone_number
} }
hlsHttp.post(url, params).then(function (res) { })
if (res.result == 'S') { }
hlsPopup.showLongBottom('注册成功'); },
window.localStorage.setItem('username', res.phone_number) getVerifiedCode () {
window.localStorage.setItem('user_id', res.user_id) let vm = this
setTimeout(function () { hlsPopup.showLongCenter('测试验证码为123456')
vm.$router.push('login'); /* let url = process.env.rootPath + '/aliyun/sms'
}, 100)
}
})
}
},
getVerifiedCode() {
let vm = this;
let url = process.env.rootPath + '/aliyun/sms';
let params = { let params = {
phoneNumber: vm.phone_number, phoneNumber: vm.phone_number,
signName: '车租易', signName: '车租易',
templateCode: 'SMS_154585462' templateCode: 'SMS_154585462',
} }
hlsHttp.post(url, params).then(function (res) { hlsHttp.post(url, params).then(function (res) {
if (res.code == 'OK') { if (res.code == 'OK') {
vm.captchaKey = res.captchaKey; vm.captchaKey = res.captchaKey
vm.phoneCodeTimeOut = false; vm.phoneCodeTimeOut = false
setTimeout(function () { setTimeout(function () {
vm.captchaKey = ''; vm.captchaKey = ''
vm.phoneCodeTimeOut = true vm.phoneCodeTimeOut = true
}, 300000) }, 300000)
hlsPopup.showLongBottom('验证码发送成功!'); hlsPopup.showLongBottom('验证码发送成功!')
} else {
hlsPopup.showLongBottom(res.message);
}
}
)
/*post response {
"Code": "OK",
"Message": "OK",
"sendNum": 641164
}*/
}
},
watch: {
verifiedCode(value) {
let vm = this;
//console.log(value)
if (value.length == 6) {
vm.verifiedCodeFlag = false;
if (vm.captchaKey.length == 0) {
hlsPopup.showLongBottom('请先获取验证码')
} else if (vm.phoneCodeTimeOut) {
hlsPopup.showLongBottom('验证码已失效,请从新获取')
} else { } else {
vm.verifiedCodeFlag = true; hlsPopup.showLongBottom(res.message)
} }
} }
}, ) */
user_password(value) {
if (value.length > 12) {
hlsPopup.showLongBottom('密码长度6~12位之间')
}
},
confirm(value) {
if (value.length > 12) {
hlsPopup.showLongBottom('密码长度6~12位之间')
}
}
}, },
created() { },
let vm = this; }
let url = process.env.loginPath + 'appadmin';
let param = {};
//vm.hlsPopup.showLoading('请稍等');
vm.$post(url, param).then(function (res) {
window.localStorage.setItem('access_token', res.access_token);
})
}
}
</script> </script>
<style scoped lang="less"> <style scoped lang="less">
.t-regiester { @import "../styles/mixin";
.content { .header {
background-color: #f7f7f8; background-color: #00469c;
padding: 0; color: #fff;
.phone_number { .h-header-btn {
margin-top: 30px; img {
padding: 2% 30px; width: 16px;
width: 100%; height: 16px;
background-color: #FFFFFF; margin-left: 4px;
display: flex;
display: -webkit-flex;
align-items: center;
//justify-content: space-between;
.number {
color: #000000;
letter-spacing: -0.83px;
font-size: 26px;
margin-right: 3%;
padding: 0 3%;
border-right: 1px solid #EFEFEF;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
}
.phone-icon {
img {
margin-top: 5px;
width: 26px;
height: 46px;
}
}
.input-box {
width: 50%;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
input {
height: 100%;
width: 100%;
font-size: 26px;
line-height: 32px;
color: #000000;
letter-spacing: -0.83px;
border:none;
}
input::-webkit-input-placeholder {
font-size: 26px;
line-height: 32px;
color: #C6C6CC;
letter-spacing: -0.83px;
}
}
.delete {
img {
margin-top: 10px;
width: 24px;
height: 24px;
}
}
.getVerify {
border-radius: 6px;
background-color: @headerColor;
font-size: 22px;
padding: 15px 0;
width: 25%;
height: 100%;
color: #FFFFFF;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
justify-content: center;
-webkit-justify-content: center;
text-align: center;
}
.disable {
background-color: #DADADF;
}
} }
.user_name { span {
margin-top: 2%; color: #fff;
padding: 3% 30px; font-family: PingFangSC-Semibold;
width: 100%; margin-left: 16px;
background-color: #FFFFFF; font-size: 17px;
display: flex; letter-spacing: 0.6px;
display: -webkit-flex; line-height: 24px;
.user-icon {
img {
width: 32px;
height: 34px;
}
}
.user-name {
color: #000000;
letter-spacing: -0.83px;
font-size: 26px;
margin-right: 3%;
padding-right: 3%;
padding-left: 2.5%;
border-right: 1px solid #EFEFEF;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
}
.user-input {
width: 75%;
height: 3%;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
input {
width: 100%;
height: 100%;
font-size: 26px;
color: #000000;
letter-spacing: -0.83px;
line-height: 34px;
float: left;
}
input::-webkit-input-placeholder {
font-size: 26px;
color: #C6C6CC;
letter-spacing: -0.83px;
line-height: 34px;
}
img {
float: right;
}
}
}
.submit {
background-color: #DADADF;
border-radius: 6px;
width: 88.3%;
height: 90px;
font-size: 32px;
color: #FFFFFF;
letter-spacing: 6px;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
justify-content: center;
-webkit-justify-content: center;
margin: 12% 40px 8% 40px;
}
.selected {
background-color: @headerColor;
border-radius: 6px;
width: 88.3%;
height: 90px;
font-size: 32px;
color: #FFFFFF;
letter-spacing: 6px;
display: flex;
display: -webkit-flex;
align-items: center;
-webkit-align-items: center;
justify-content: center;
-webkit-justify-content: center;
margin: 12% 40px 8% 40px;
}
.potocol {
display: flex;
display: -webkit-flex;
.img-box {
margin-left: 40px;
margin-right: 10px;
img {
width: 28px;
height: 28px;
}
}
.agreed {
font-size: 22px;
color: #090909;
line-height: 32px;
}
.clause {
font-size: 22px;
color: @headerColor;
letter-spacing: 0.2px;
margin-left: 10px;
line-height: 32px;
}
} }
} }
} }
.description{
.wh(100%,50px);
.fja();
background-color: #00469c;
.sc(14px,#fff);
}
.verified-code{
.wh(60%,100%);
text-align: right;
.verified-code-box{
margin-left: 14px;
.border-left;
color:#0057C3;
line-height: 30px;
}
.verified-code-des{
font-size: 10px;
color:#0057C3;
}
}
.tab-content{
background-color: #00469c;
margin: 0 2%;
color: #fff;
}
</style> </style>
...@@ -43,7 +43,8 @@ export default new Router({ ...@@ -43,7 +43,8 @@ export default new Router({
{ {
path: '/', path: '/',
redirect: to => { redirect: to => {
if (!window.localStorage.needGuid || window.localStorage.needGuid === 'true') { return {name: 'Login'}
/* if (!window.localStorage.needGuid || window.localStorage.needGuid === 'true') {
return {name: 'Guide'} return {name: 'Guide'}
} else { } else {
if (window.localStorage.isOpenFingerLogin) { if (window.localStorage.isOpenFingerLogin) {
...@@ -52,7 +53,7 @@ export default new Router({ ...@@ -52,7 +53,7 @@ export default new Router({
// if none of the above states are matched, use this as the fallback // if none of the above states are matched, use this as the fallback
return {name: 'Login'} return {name: 'Login'}
} }
} } */
}, },
}, },
{ {
...@@ -104,7 +105,7 @@ export default new Router({ ...@@ -104,7 +105,7 @@ export default new Router({
{path: '/refund', component: Refund, name: 'Refund', meta: {keepAlive: false}}, {path: '/refund', component: Refund, name: 'Refund', meta: {keepAlive: false}},
{path: '/intoList', component: IntoList, name: 'IntoList', meta: {keepAlive: false}}, {path: '/intoList', component: IntoList, name: 'IntoList', meta: {keepAlive: false}},
// 经销商签约 // 经销商签约
{path: '/contract-list', component: ContractList, name: 'ContractList', meta: {keepAlive: true}}, {path: '/contract-list', component: ContractList, name: 'ContractList', meta: {keepAlive: false}},
{path: '/contract-details', component: ContractDetails, name: 'ContractDetails', meta: {keepAlive: true}}, {path: '/contract-details', component: ContractDetails, name: 'ContractDetails', meta: {keepAlive: true}},
{path: '/financ-details', component: FinancDetails, name: 'FinancDetails', meta: {keepAlive: true}}, {path: '/financ-details', component: FinancDetails, name: 'FinancDetails', meta: {keepAlive: true}},
], ],
......
...@@ -24,10 +24,6 @@ ...@@ -24,10 +24,6 @@
font-size: @size; font-size: @size;
color: @color; color: @color;
} }
//字体大小、行高、字体
.font(@size, @line-height, @family: 'Microsoft YaHei') {
font: #{@size}/#{@line-height} @family;
}
//字体大小,颜色 //字体大小,颜色
.sc(@size, @color){ .sc(@size, @color){
font-size: @size; font-size: @size;
...@@ -43,6 +39,9 @@ ...@@ -43,6 +39,9 @@
.border-right{ .border-right{
border-right: 1px solid rgba(1, 17, 27, 0.1); border-right: 1px solid rgba(1, 17, 27, 0.1);
} }
.border-left{
border-left: 1px solid rgba(1, 17, 27, 0.1);
}
.border{ .border{
border: 1px solid rgba(1, 17, 27, 0.1); border: 1px solid rgba(1, 17, 27, 0.1);
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment