16 files modified
1 files deleted
| | |
| | | // 在ajax发送之前拦截 比如对所有请求统一添加header token |
| | | axios.interceptors.request.use( |
| | | config => { |
| | | config.headers["lang"] = localStorage.getItem("language") ? localStorage.getItem("language") : "zh-CN"; |
| | | if (window.localStorage.getItem("USERTOKEN")) { |
| | | // config.headers.Authorization = `USER_TOKEN = ${store.state.token}`; |
| | | config.headers["USERTOKEN"] = window.localStorage.getItem("USERTOKEN"); |
| | |
| | | <template> |
| | | <div class="footCss"> |
| | | <div :class="touch==1?'footDemos':'footDemo'" @click="goRouter('/home',1)"> |
| | | <div :class="touch == 1 ? 'footDemos' : 'footDemo'" @click="goRouter('/home', 1)"> |
| | | <div class="homeImgOut" v-show="$store.state.select == '/home'"> |
| | | <div class="homeImg"> |
| | | <img src="~@/assets/foot/ic_home_tab_def.png" /> |
| | |
| | | <div v-show="$store.state.select != '/home'" class="footImgDeft"> |
| | | <img src="~@/assets/foot/tab_main_home_default.png" /> |
| | | </div> |
| | | <div v-show="$store.state.select != '/home'">首页</div> |
| | | <div v-show="$store.state.select != '/home'">{{ $t('hj224') }}</div> |
| | | </div> |
| | | <div :class="touch==2?'footDemos':'footDemo'" @click="goRouter('/trading-list',2)"> |
| | | <div :class="touch == 2 ? 'footDemos' : 'footDemo'" @click="goRouter('/trading-list', 2)"> |
| | | <div class="footImgDeft"> |
| | | |
| | | <img v-show="$store.state.select == '/trading-list'" src="~@/assets/foot/trade_selected.png" /> |
| | | <img v-show="$store.state.select != '/trading-list'" src="~@/assets/foot/tab_main_trade_default.png" /> |
| | | </div> |
| | | <div :class="$store.state.select == '/trading-list'?'blueFont':''">交易</div> |
| | | <div :class="$store.state.select == '/trading-list' ? 'blueFont' : ''">{{ $t('hj225') }}</div> |
| | | </div> |
| | | <div :class="touch==3?'footDemos':'footDemo'" @click="goRouter('/warehouse',3)"> |
| | | <div :class="touch == 3 ? 'footDemos' : 'footDemo'" @click="goRouter('/warehouse', 3)"> |
| | | <div class="footImgDeft"> |
| | | <img v-show="$store.state.select == '/warehouse'" src="~@/assets/foot/positions_selected.png" /> |
| | | <img v-show="$store.state.select != '/warehouse'" src="~@/assets/foot/tab_main_positions_default.png" /> |
| | | </div> |
| | | <div :class="$store.state.select == '/warehouse'?'blueFont':''">仓位</div> |
| | | <div :class="$store.state.select == '/warehouse' ? 'blueFont' : ''">{{ $t('hj226') }}</div> |
| | | </div> |
| | | <div :class="touch==4?'footDemos':'footDemo'" @click="goRouter('/user',4)"> |
| | | <div :class="touch == 4 ? 'footDemos' : 'footDemo'" @click="goRouter('/user', 4)"> |
| | | <div class="footImgDeft"> |
| | | <img v-show="$store.state.select == '/user'" src="~@/assets/foot/mine_selected.png" /> |
| | | <img v-show="$store.state.select != '/user'" src="~@/assets/foot/tab_main_mine_default.png" /> |
| | | </div> |
| | | <div :class="$store.state.select == '/user'?'blueFont':''">我的</div> |
| | | <div :class="$store.state.select == '/user' ? 'blueFont' : ''">{{ $t('hj227') }}</div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | export default { |
| | | data() { |
| | | return { |
| | | touch: 0, |
| | | } |
| | | }, |
| | | mounted() { |
| | | export default { |
| | | data() { |
| | | return { |
| | | touch: 0, |
| | | } |
| | | }, |
| | | mounted() { |
| | | |
| | | }, |
| | | methods: { |
| | | goRouter(url, index) { |
| | | if(index==3||index==4){ |
| | | if(window.localStorage.getItem('USERTOKEN')==""||window.localStorage.getItem('USERTOKEN')==null||window.localStorage.getItem('USERTOKEN')==undefined){ |
| | | this.$emit('close') |
| | | return; |
| | | } |
| | | } |
| | | this.touch = index |
| | | setTimeout(() => { |
| | | this.touch = 0 |
| | | }, 500) |
| | | this.$router.push(url) |
| | | if (navigator.vibrate) { |
| | | // 支持 |
| | | navigator.vibrate([55]); |
| | | }, |
| | | methods: { |
| | | goRouter(url, index) { |
| | | if (index == 3 || index == 4) { |
| | | if (window.localStorage.getItem('USERTOKEN') == "" || window.localStorage.getItem('USERTOKEN') == null || window.localStorage.getItem('USERTOKEN') == undefined) { |
| | | this.$emit('close') |
| | | return; |
| | | } |
| | | } |
| | | }, |
| | | this.touch = index |
| | | setTimeout(() => { |
| | | this.touch = 0 |
| | | }, 500) |
| | | this.$router.push(url) |
| | | if (navigator.vibrate) { |
| | | // 支持 |
| | | navigator.vibrate([55]); |
| | | } |
| | | } |
| | | }, |
| | | |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style> |
| | | .footCss { |
| | | border-top: 0.01rem solid rgba(192, 192, 192, 0.1); |
| | | |
| | | position: fixed; |
| | | bottom: 0; |
| | | width: 100%; |
| | | height: 1.3rem; |
| | | display: flex; |
| | | justify-content: space-around; |
| | | .footCss { |
| | | border-top: 0.01rem solid rgba(192, 192, 192, 0.1); |
| | | |
| | | position: fixed; |
| | | bottom: 0; |
| | | width: 100%; |
| | | height: 1.3rem; |
| | | display: flex; |
| | | justify-content: space-around; |
| | | } |
| | | |
| | | .footDemo { |
| | | width: 0.8rem; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: center; |
| | | align-items: center; |
| | | flex-wrap: wrap; |
| | | font-size: 0.24rem; |
| | | } |
| | | |
| | | .footDemos { |
| | | width: 0.8rem; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: center; |
| | | align-items: center; |
| | | flex-wrap: wrap; |
| | | font-size: 0.24rem; |
| | | } |
| | | |
| | | .footDemos::before { |
| | | content: ''; |
| | | width: 0.9rem; |
| | | height: 0.9rem; |
| | | border-radius: 100%; |
| | | position: absolute; |
| | | background-color: rgba(25, 122, 246, 0.14); |
| | | -webkit-animation: footBlueBg 0.5s linear infinite; |
| | | animation: footBlueBg 0.5s linear infinite; |
| | | transition: all 0.5s; |
| | | } |
| | | |
| | | @-webkit-keyframes footBlueBg { |
| | | 0% { |
| | | -webkit-transform: scale(1.6); |
| | | transform: scale(1.6); |
| | | } |
| | | |
| | | .footDemo { |
| | | width: 0.8rem; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: center; |
| | | align-items: center; |
| | | flex-wrap: wrap; |
| | | font-size: 0.24rem; |
| | | 25% { |
| | | -webkit-transform: scale(1.3); |
| | | transform: scale(1.3); |
| | | } |
| | | |
| | | .footDemos { |
| | | width: 0.8rem; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: center; |
| | | align-items: center; |
| | | flex-wrap: wrap; |
| | | font-size: 0.24rem; |
| | | 50% { |
| | | -webkit-transform: scale(1); |
| | | transform: scale(1); |
| | | } |
| | | |
| | | .footDemos::before { |
| | | content: ''; |
| | | width: 0.9rem; |
| | | height: 0.9rem; |
| | | border-radius: 100%; |
| | | position: absolute; |
| | | background-color: rgba(25, 122, 246, 0.14); |
| | | -webkit-animation: footBlueBg 0.5s linear infinite; |
| | | animation: footBlueBg 0.5s linear infinite; |
| | | transition: all 0.5s; |
| | | } |
| | | |
| | | @-webkit-keyframes footBlueBg { |
| | | 0% { |
| | | -webkit-transform: scale(1.6); |
| | | transform: scale(1.6); |
| | | } |
| | | |
| | | 25% { |
| | | -webkit-transform: scale(1.3); |
| | | transform: scale(1.3); |
| | | } |
| | | |
| | | 50% { |
| | | -webkit-transform: scale(1); |
| | | transform: scale(1); |
| | | } |
| | | |
| | | 75% { |
| | | background-color: rgba(25, 122, 246, 0.1); |
| | | |
| | | } |
| | | |
| | | 100% { |
| | | background-color: rgba(25, 122, 246, 0); |
| | | } |
| | | } |
| | | |
| | | .footImgDeft { |
| | | width: 0.56rem; |
| | | height: 0.56rem; |
| | | margin-bottom: 0.08rem; |
| | | 75% { |
| | | background-color: rgba(25, 122, 246, 0.1); |
| | | |
| | | } |
| | | |
| | | .footImgDeft img { |
| | | width: 100%; |
| | | height: 100%; |
| | | 100% { |
| | | background-color: rgba(25, 122, 246, 0); |
| | | } |
| | | } |
| | | |
| | | .homeImgOut { |
| | | width: 0.9rem; |
| | | height: 0.9rem; |
| | | border-radius: 100%; |
| | | background-color: rgb(25, 122, 246); |
| | | } |
| | | .footImgDeft { |
| | | width: 0.56rem; |
| | | height: 0.56rem; |
| | | margin-bottom: 0.08rem; |
| | | |
| | | .homeImg { |
| | | width: 0.9rem; |
| | | height: 0.9rem; |
| | | } |
| | | } |
| | | |
| | | .homeImg img { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | .footImgDeft img { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | |
| | | .blueFont { |
| | | color: rgb(25, 122, 246); |
| | | } |
| | | .homeImgOut { |
| | | width: 0.9rem; |
| | | height: 0.9rem; |
| | | border-radius: 100%; |
| | | background-color: rgb(25, 122, 246); |
| | | } |
| | | |
| | | .homeImg { |
| | | width: 0.9rem; |
| | | height: 0.9rem; |
| | | } |
| | | |
| | | .homeImg img { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | |
| | | .blueFont { |
| | | color: rgb(25, 122, 246); |
| | | } |
| | | </style> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="welcome_dialog"> |
| | | <span>{{ '欢迎回来' }}</span> |
| | | <span>{{ $t('hj221') }}</span> |
| | | </div> |
| | | <div class="portrait"> |
| | | <div> |
| | |
| | | <span>{{ 'Mitrade' }}</span> |
| | | </div> |
| | | <div class="go_login_btn background" @click="goToLogin()"> |
| | | <span class="title1">{{ '使用手机号登录' }}</span> |
| | | <span class="title1">{{ $t('hj222') }}</span> |
| | | </div> |
| | | <div class="go_login_btn"> |
| | | <span class="title2" @click="goToReg()">{{ '还没有账号?去注册!' }}</span> |
| | | <span class="title2" @click="goToReg()">{{ $t('hj223') }}</span> |
| | | </div> |
| | | </div> |
| | | </van-popup> |
| | |
| | | |
| | | Vue.use(VueI18n); |
| | | |
| | | const DEFAULT_LANG = "zh"; |
| | | const DEFAULT_LANG = "zh-CN"; |
| | | const LOCALE_KEY = "language"; |
| | | |
| | | const locales = { |
| | | zh: { |
| | | 'zh-CN': { |
| | | ...zh |
| | | }, |
| | | en: { |
| | |
| | | } |
| | | let langLocale = window.localStorage.getItem(LOCALE_KEY) |
| | | ? window.localStorage.getItem(LOCALE_KEY) |
| | | : "zh"; |
| | | : "zh-CN"; |
| | | const i18n = new VueI18n({ |
| | | locale: langLocale, |
| | | messages: locales, |
| | |
| | | "hj163":"收款名称", |
| | | "hj164":"复制", |
| | | "hj165":"提示", |
| | | "hj166":"全部", |
| | | "hj167":"全部", |
| | | "hj168":"全部", |
| | | "hj169":"全部", |
| | | "hj170":"全部", |
| | | "hj171":"全部", |
| | | "hj166":"收款银行", |
| | | "hj167":"收款账号", |
| | | "hj168":"充值记录", |
| | | "hj169":"查看", |
| | | "hj170":"充值金额", |
| | | "hj171":"请输入充值金额", |
| | | "hj172":"充值", |
| | | "hj173":"操作流程", |
| | | "hj174":"点击'复制', 复制信息", |
| | | "hj175":"完成复制, 打开手机银行进行转账", |
| | | "hj176":"为确保入金及时到账, 请确认您输入的金额和提交的充值金额一致", |
| | | "hj177":"提现", |
| | | "hj178":"请先实名认证", |
| | | "hj179":"请先绑定银行卡", |
| | | "hj180":"请输入正确的提现金额", |
| | | "hj181":"提现金额不得小于", |
| | | "hj182":"申请成功,请等待审核!", |
| | | "hj183":"提现失败,请重新提现或者联系管理员", |
| | | "hj184":"小于最少充值金额", |
| | | "hj185":"复制成功", |
| | | "hj186":"复制失败请重试", |
| | | "hj187":"资金划转", |
| | | "hj188":"融资转指数", |
| | | "hj189":"指数转融资", |
| | | "hj190":"可转金额", |
| | | "hj191":"转账金额", |
| | | "hj192":"请输入转账金额", |
| | | "hj193":"确认转入指数账户", |
| | | "hj194":"确认转入融资账户", |
| | | "hj195":"真实姓名", |
| | | "hj196":"身份证号", |
| | | "hj197":"身份证正面", |
| | | "hj198":"正在上传中...", |
| | | "hj199":"身份证背面", |
| | | "hj200":"认证失败,请重新认证", |
| | | "hj201":"失败原因", |
| | | "hj202":"审核中", |
| | | "hj203":"通过", |
| | | "hj204":"未通过", |
| | | "hj205":"上传图片大小不能超过10M!", |
| | | "hj206":"您上传的照片过大,请选择20M以下的图片", |
| | | "hj207":"请输入您的真实姓名", |
| | | "hj208":"请输入您的正确的身份证号码", |
| | | "hj209":"请上传您的身份证照片", |
| | | "hj210":"提交成功!", |
| | | "hj211":"绑定银行卡", |
| | | "hj212":"银行卡信息", |
| | | "hj213":"银行名称", |
| | | "hj214":"开户支行", |
| | | "hj215":"银行卡号", |
| | | "hj216":"确认绑定", |
| | | "hj217":"请输入银行卡号", |
| | | "hj218":"请输入银行名称", |
| | | "hj219":"请输入开户支行", |
| | | "hj220":"添加成功!", |
| | | "hj221":"欢迎回来", |
| | | "hj222":"使用手机号登录", |
| | | "hj223":"还没有账号?去注册!", |
| | | "hj224":"首页", |
| | | "hj225":"交易", |
| | | "hj226":"仓位", |
| | | "hj227":"我的", |
| | | "hj228":"暂无充值信息!", |
| | | "hj229":"支付宝", |
| | | "hj230":"对公转账", |
| | | "hj231":"充值成功", |
| | | "hj232":"充值失败", |
| | | "hj233":"取消充值", |
| | | "hj234":"订单号", |
| | | "hj235":"加载中...", |
| | | "hj236":"已全部加载", |
| | | "hj237":"购买", |
| | | "hj238":"详情", |
| | | "hj239":"公告详情", |
| | | "hj240":"忘记密码", |
| | | "hj241":"开户", |
| | | "hj242":"行情", |
| | | "hj243":"个人中心", |
| | | "hj244":"钱包", |
| | | "hj245":"划转", |
| | | "hj246":"认证", |
| | | "hj247":"银行卡", |
| | | "hj248":"用户登录", |
| | | "hj249":"用户注册", |
| | | "hj250":"已全部加载", |
| | | "hj251":"已全部加载", |
| | | } |
| | |
| | | </div> |
| | | </div> |
| | | <div class="titles"> |
| | | <span>{{ '实名认证' }}</span> |
| | | <span>{{ $t('hj146') }}</span> |
| | | </div> |
| | | <div class="bank_name"> |
| | | <div class="lefts"> |
| | | <span>{{ '真实姓名:' }}</span> |
| | | <span>{{ $t('hj195') + ':' }}</span> |
| | | </div> |
| | | <div class="rights"> |
| | | <input v-if="showBtn" type="text" v-model="form.name" /> |
| | |
| | | </div> |
| | | <div class="bank_name"> |
| | | <div class="lefts"> |
| | | <span>{{ '身份证号:' }}</span> |
| | | <span>{{ $t('hj196') + ':' }}</span> |
| | | </div> |
| | | <div class="rights"> |
| | | <input v-if="showBtn" type="text" v-model="form.idCard" /> |
| | |
| | | :on-error="handleError" :before-upload="beforeAvatarUpload" :disabled="!showBtn"> |
| | | <img v-if="form.img1key" :src="form.img1key" class="id-img avatar" /> |
| | | <i v-else class="iconfont icon-zhaopian"></i> |
| | | <span v-if="!form.img1key && !imgStatus" class="btn-title">身份证正面</span> |
| | | <span v-if="imgStatus" class="btn-title">正在上传中...</span> |
| | | <span v-if="!form.img1key && !imgStatus" class="btn-title">{{$t('hj197')}}</span> |
| | | <span v-if="imgStatus" class="btn-title">{{$t('hj198')}}</span> |
| | | </el-upload> |
| | | </div> |
| | | <div class="rights"> |
| | |
| | | :on-error="handleError2" :before-upload="beforeAvatarUpload2" :disabled="!showBtn"> |
| | | <img v-if="form.img2key" :src="form.img2key" class="id-img avatar" /> |
| | | <i v-else class="iconfont icon-zhaopian"></i> |
| | | <span v-if="!form.img2key && !imgStatus2" class="btn-title">身份证背面</span> |
| | | <span v-if="imgStatus2" class="btn-title">正在上传中...</span> |
| | | <span v-if="!form.img2key && !imgStatus2" class="btn-title">{{$t('hj199')}}</span> |
| | | <span v-if="imgStatus2" class="btn-title">{{$t('hj198')}}</span> |
| | | </el-upload> |
| | | </div> |
| | | </div> |
| | | <div class="bank_name bind" @click="toSure" v-if="showBtn"> |
| | | <span>{{ '确定' }}</span> |
| | | <span>{{ $t('hj161') }}</span> |
| | | </div> |
| | | <van-notify v-model="messFlag" type="primary"> |
| | | <div> |
| | | <div class="eft"> |
| | | <span>{{ '认证失败,请重新认证' }}</span> |
| | | <span>{{ $t('hj200') }}</span> |
| | | </div> |
| | | <div class="bft"> |
| | | <span>失败原因:{{ this.$store.state.userInfo.authMsg }}</span> |
| | | <span>{{ $t('hj201') }}:{{ this.$store.state.userInfo.authMsg }}</span> |
| | | </div> |
| | | </div> |
| | | </van-notify> |
| | | </div> |
| | | <div class="pass"> |
| | | <div class="top_t"> |
| | | <span v-if="this.$store.state.userInfo.isActive == 1" class="ise_pass">{{ '审核中' }}</span> |
| | | <span v-if="!showBtn && this.$store.state.userInfo.isActive != 1">{{ '通过' }}</span> |
| | | <span v-if="showBtn" class="ise_pass">{{ '未通过' }}</span> |
| | | <span v-if="this.$store.state.userInfo.isActive == 1" class="ise_pass">{{ $t('hj202') }}</span> |
| | | <span v-if="!showBtn && this.$store.state.userInfo.isActive != 1">{{ $t('hj203') }}</span> |
| | | <span v-if="showBtn" class="ise_pass">{{ $t('hj204') }}</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | }, |
| | | created() { |
| | | this.getUserInfo(); |
| | | if ( |
| | | this.$store.state.userInfo.isActive === 1 || |
| | | this.$store.state.userInfo.isActive === 2 |
| | | ) { |
| | | this.form.idCard = this.$store.state.userInfo.idCard; |
| | | this.form.name = this.$store.state.userInfo.realName; |
| | | this.form.img1key = this.$store.state.userInfo.img1Key; |
| | | this.form.img2key = this.$store.state.userInfo.img2Key; |
| | | // this.form.img3key = this.$store.state.userInfo.img3Key |
| | | this.showBtn = false; |
| | | } |
| | | }, |
| | | |
| | | beforeDestroy() { |
| | |
| | | document.body.classList.add("red-bg"); |
| | | } |
| | | this.admin = process.env.API_HOST; |
| | | if (this.admin === undefined) { |
| | | this.admin = ""; |
| | | console.log(this.admin) |
| | | if (this.admin == undefined) { |
| | | this.admin = "https://api.mitrade.cc"; |
| | | } |
| | | }, |
| | | methods: { |
| | |
| | | // const _that = this |
| | | const isLt10M = file.size / 1024 / 1024 < 10; |
| | | if (!isLt10M) { |
| | | this.$message.error("上传图片大小不能超过 10M!"); |
| | | this.$message.error(this.$t('hj205')); |
| | | return false; |
| | | } else { |
| | | this.form.img2key = URL.createObjectURL(file); |
| | |
| | | console.log(file, "file"); |
| | | let i = false; |
| | | if (i) { |
| | | Toast("您上传的照片过大,请选择20M以下的图片"); |
| | | Toast(this.$t('hj206')); |
| | | } else { |
| | | // Indicator.open('Loading...') |
| | | this.img1Key = file; |
| | |
| | | toSure() { |
| | | // 实名认证弹框 |
| | | if (isNull(this.form.name) || !isName(this.form.name)) { |
| | | Toast("请输入您的真实姓���"); |
| | | Toast(this.$t('hj207')); |
| | | } else if (isNull(this.form.idCard) || !idCardReg(this.form.idCard)) { |
| | | Toast("请输入您的正确的身份证号码"); |
| | | Toast(this.$t('hj208')); |
| | | } else if (isNull(this.form.img1key) || isNull(this.form.img2key)) { |
| | | Toast("请上传您的身份证照片"); |
| | | Toast(this.$t('hj209')); |
| | | } else { |
| | | // 显示确认弹窗 |
| | | this.toAuthentication(); |
| | |
| | | }; |
| | | let data = await api.userAuth(opts); |
| | | if (data.status === 0) { |
| | | Toast("提交成功!"); |
| | | Toast(this.$t('hj210')); |
| | | this.goBack(); |
| | | } else { |
| | | Toast(data.msg); |
| | |
| | | </div> |
| | | </div> |
| | | <div class="titles"> |
| | | <span>{{ addBank ? '绑定银行卡' : '银行卡信息' }}</span> |
| | | <span>{{ addBank ? $t('hj211') : $t('hj212') }}</span> |
| | | </div> |
| | | <div class="bank_name"> |
| | | <div class="lefts"> |
| | | <span>{{ '银行名称:' }}</span> |
| | | <span>{{ $t('hj213') }}</span> |
| | | </div> |
| | | <div class="rights"> |
| | | <input type="text" v-model="bankName" :disabled="!addBank" /> |
| | |
| | | </div> |
| | | <div class="bank_name"> |
| | | <div class="lefts"> |
| | | <span>{{ '开户支行:' }}</span> |
| | | <span>{{ $t('hj214') }}</span> |
| | | </div> |
| | | <div class="rights"> |
| | | <input type="text" v-model="bankAddress" :disabled="!addBank" /> |
| | |
| | | </div> |
| | | <div class="bank_name"> |
| | | <div class="lefts"> |
| | | <span>{{ '银行卡号:' }}</span> |
| | | <span>{{ $t('hj215') }}</span> |
| | | </div> |
| | | <div class="rights"> |
| | | <input type="text" v-model="bankNo" :disabled="!addBank" /> |
| | | </div> |
| | | </div> |
| | | <div class="bank_name bind" @click="toSure" v-if="addBank"> |
| | | <span>{{ '确认绑定' }}</span> |
| | | <span>{{ $t('hj216') }}</span> |
| | | </div> |
| | | <div class="bank_hck"></div> |
| | | <div class="bank_code"></div> |
| | |
| | | async toSure() { |
| | | // 添加银行卡 |
| | | if (isNull(this.bankNo) || !bankNoReg(this.bankNo)) { |
| | | Toast("请输入银行卡号"); |
| | | Toast(this.$t("hj217")); |
| | | } else if (isNull(this.bankName) || !isName(this.bankName)) { |
| | | Toast("请输入银行名称"); |
| | | Toast(this.$t("hj218")); |
| | | } else if (isNull(this.bankAddress) || !isName(this.bankAddress)) { |
| | | Toast("请输入开户支行"); |
| | | Toast(this.$t("hj219")); |
| | | } else { |
| | | let opts = { |
| | | bankName: this.bankName, |
| | |
| | | bankAddress: this.bankAddress |
| | | }; |
| | | let data = await api.addBankCard(opts); |
| | | if (data.status === 0) { |
| | | Toast("添加成功!"); |
| | | this.$router.push("/newUser"); |
| | | } else { |
| | | Toast(data.msg); |
| | | } |
| | | if (data.status === 0) { |
| | | Toast(this.$t("hj220")); |
| | | this.$router.push("/newUser"); |
| | | } else { |
| | | Toast(data.msg); |
| | | } |
| | | } |
| | | }, |
| | | async getCardDetail () { |
| | | async getCardDetail() { |
| | | // 获取银行卡信息 |
| | | let data = await api.getBankCard() |
| | | if (data.status === 0) { |
| | | const {bankAddress, bankName, bankNo} = data.data; |
| | | const { bankAddress, bankName, bankNo } = data.data; |
| | | this.bankAddress = bankAddress; |
| | | this.bankName = bankName; |
| | | this.bankNo = bankNo; |
| | |
| | | width: 100%; |
| | | height: 100%; |
| | | background: #fff; |
| | | |
| | | .content { |
| | | width: 100%; |
| | | height: 100%; |
| | | padding: 0 0.6rem; |
| | | |
| | | .top_back { |
| | | width: 100%; |
| | | height: 2rem; |
| | | > div { |
| | | |
| | | >div { |
| | | width: 10%; |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | |
| | | img { |
| | | width: 0.6rem; |
| | | height: 0.6rem; |
| | | } |
| | | } |
| | | |
| | | .titles { |
| | | width: 100%; |
| | | height: 1.5rem; |
| | | font-size: 0.641rem; |
| | | margin-top: 1rem; |
| | | |
| | | span { |
| | | font-weight: 600; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .bank_name { |
| | | width: 100%; |
| | | height: 1.5rem; |
| | |
| | | background: rgb(247, 247, 247); |
| | | border-radius: 0.2rem; |
| | | margin-top: 0.3rem; |
| | | |
| | | .lefts { |
| | | width: 25%; |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | font-size: 0.3846rem; |
| | | |
| | | span { |
| | | font-weight: 600; |
| | | } |
| | | } |
| | | |
| | | .rights { |
| | | width: 75%; |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | |
| | | input { |
| | | width: 100%; |
| | | height: 100%; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .bank_name.bind { |
| | | display: flex; |
| | | align-items: center; |
| | |
| | | background: #2d6ae9; |
| | | font-size: 0.4103rem; |
| | | color: #fff; |
| | | |
| | | span { |
| | | font-weight: 600; |
| | | } |
| | |
| | | <div class="bottom_fo"> |
| | | <div class="title"> |
| | | <span class="numberid" style="margin-right: 0.12rem;">{{ item2.symbol }}</span> |
| | | <div v-for="(items, indexs) in Number(item2.pnum.slice(0, 1))" |
| | | <!-- <div v-for="(items, indexs) in Number(item2.pnum.slice(0, 1))" |
| | | style="width: 0.4rem;height: 0.4rem;display: flex;"> |
| | | <img v-if="indexs < 3" :src="Huo" alt style="width: 0.4rem;height: 0.4rem;" /> |
| | | </div> |
| | | </div> --> |
| | | |
| | | </div> |
| | | <div class="numbers" :class="item2.floatPoint > 0 ? 'gree' : 'redd'"> |
| | | <span class="point">{{ item2.pnum |
| | | <img :src="Huo" alt style="width: 0.4rem;height: 0.4rem;" /> |
| | | <span class="point" style="height: 0.4rem;">{{ item2.pnum |
| | | }}</span> |
| | | </div> |
| | | <div class="percentage"> |
| | |
| | | <span class="tab-name">{{ $t('hj6') }}</span> |
| | | </mt-tab-item> |
| | | <mt-tab-item id="tab_1"> |
| | | <span class="tab-name">{{ $t('hj67') }}</span> |
| | | <span class="tab-name">{{ $t('hj7') }}</span> |
| | | </mt-tab-item> |
| | | <mt-tab-item id="tab_2"> |
| | | <span class="tab-name">7×24</span> |
| | |
| | | }, |
| | | async toRegister() { |
| | | // 注销登陆 |
| | | window.localStorage.clear("USERTOKEN"); // 清空本地存储 USERTOKEN字段 |
| | | window.localStorage.removeItem("USERTOKEN"); // 清空本地存储 USERTOKEN字段 |
| | | this.clearCookie(); |
| | | let data = await api.logout(); |
| | | if (data.status === 0) { |
| | |
| | | </div> |
| | | <div class="bars"> |
| | | <div> |
| | | <span>{{ '资金划转' }}</span> |
| | | <span>{{ $t('hj187') }}</span> |
| | | </div> |
| | | </div> |
| | | <mt-navbar v-model="selected"> |
| | | <mt-tab-item v-if="this.$store.state.settingForm.indexDisplay" id="1">融资转指数</mt-tab-item> |
| | | <mt-tab-item v-if="this.$store.state.settingForm.indexDisplay" id="2">指数转融资</mt-tab-item> |
| | | <mt-tab-item v-if="this.$store.state.settingForm.futuresDisplay" id="3">融资转期货</mt-tab-item> |
| | | <mt-tab-item v-if="this.$store.state.settingForm.futuresDisplay" id="4">期货转融资</mt-tab-item> |
| | | <mt-tab-item v-if="this.$store.state.settingForm.indexDisplay" id="1">{{ $t('hj188') }}</mt-tab-item> |
| | | <mt-tab-item v-if="this.$store.state.settingForm.indexDisplay" id="2">{{ $t('hj189') }}</mt-tab-item> |
| | | <!-- <mt-tab-item v-if="this.$store.state.settingForm.futuresDisplay" id="3">融资转期货</mt-tab-item> |
| | | <mt-tab-item v-if="this.$store.state.settingForm.futuresDisplay" id="4">期货转融资</mt-tab-item> --> |
| | | </mt-navbar> |
| | | <mt-tab-container class="order-list" v-model="selected"> |
| | | <mt-tab-container-item id="1"> |
| | | <div class="form-block"> |
| | | <mt-field label="可转金额" placeholder="可转金额" type="text" disabled |
| | | v-model="this.$store.state.userInfo.enableAmt"></mt-field> |
| | | <mt-field :label="$t('hj190')" :placeholder="$t('hj190')" type="text" disabled |
| | | v-model="this.$store.state.userInfo.enableAmt"> |
| | | </mt-field> |
| | | </div> |
| | | <div class="form-block"> |
| | | <mt-field label="转账金额" name="amt" v-model="form.account1" placeholder="请输入转账金额" type="text"> |
| | | <span @click="selectAll1">全部</span> |
| | | <mt-field :label="$t('hj191')" name="amt" v-model="form.account1" :placeholder="$t('hj192')" type="text"> |
| | | <span @click="selectAll1">{{ $t('hj160') }}</span> |
| | | </mt-field> |
| | | </div> |
| | | <!-- <div class="form-block"> |
| | |
| | | </div> |
| | | <p class="prompt">资金密码默认为登录密码</p> --> |
| | | <div class="btnbox"> |
| | | <span class="text-center btnok loginout" @click="tosubmit">确认转入指数账户</span> |
| | | <span class="text-center btnok loginout" @click="tosubmit">{{ $t('hj193') }}</span> |
| | | </div> |
| | | </mt-tab-container-item> |
| | | <mt-tab-container-item id="2"> |
| | | <div class="form-block"> |
| | | <mt-field label="可转金额" placeholder="可转金额" type="text" disabled |
| | | v-model="this.$store.state.userInfo.enableIndexAmt"></mt-field> |
| | | <mt-field :label="$t('hj190')" :placeholder="$t('hj190')" type="text" disabled |
| | | v-model="this.$store.state.userInfo.enableIndexAmt"></mt-field> |
| | | </div> |
| | | <div class="form-block"> |
| | | <mt-field label="转账金额" v-model="form.account2" placeholder="请输入转账金额" type="text"> |
| | | <span @click="selectAll2">全部</span> |
| | | <mt-field :label="$t('hj191')" v-model="form.account2" :placeholder="$t('hj192')" type="text"> |
| | | <span @click="selectAll2">{{ $t('hj160') }}</span> |
| | | </mt-field> |
| | | </div> |
| | | <div class="btnbox"> |
| | | <span class="text-center btnok loginout" @click="tosubmit">确认转入融资账户</span> |
| | | <span class="text-center btnok loginout" @click="tosubmit">{{ $t('hj194') }}</span> |
| | | </div> |
| | | </mt-tab-container-item> |
| | | <mt-tab-container-item id="3"> |
| | | <div class="form-block"> |
| | | <mt-field label="可转金额" placeholder="可转金额" type="text" disabled |
| | | v-model="this.$store.state.userInfo.enableAmt"></mt-field> |
| | | <mt-field label="可转金额" placeholder="可转金额" type="text" disabled v-model="this.$store.state.userInfo.enableAmt"> |
| | | </mt-field> |
| | | </div> |
| | | <div class="form-block"> |
| | | <mt-field label="转账金额" v-model="form.account3" placeholder="请输入转账金额" type="text"> |
| | |
| | | <mt-tab-container-item id="4"> |
| | | <div class="form-block"> |
| | | <mt-field label="可转金额" placeholder="可转金额" type="text" disabled |
| | | v-model="this.$store.state.userInfo.enableFuturesAmt"></mt-field> |
| | | v-model="this.$store.state.userInfo.enableFuturesAmt"></mt-field> |
| | | </div> |
| | | <div class="form-block"> |
| | | <mt-field label="转账金额" v-model="form.account4" placeholder="请输入转账金额" type="text"> |
| | |
| | | export default { |
| | | components: { |
| | | }, |
| | | data () { |
| | | data() { |
| | | return { |
| | | selected: '1', // 选中 |
| | | form: { |
| | |
| | | }, |
| | | watch: {}, |
| | | computed: {}, |
| | | created () { |
| | | created() { |
| | | this.getProductSetting() |
| | | }, |
| | | mounted () { |
| | | mounted() { |
| | | if (this.$route.query.type) { |
| | | this.selected = this.$route.query.type + '' |
| | | } |
| | | this.getUserInfo() |
| | | }, |
| | | methods: { |
| | | async getProductSetting () { |
| | | async getProductSetting() { |
| | | let data = await api.getProductSetting() |
| | | console.log(data) |
| | | if (data.status === 0) { |
| | | this.$store.state.settingForm = data.data |
| | | if (!this.$store.state.settingForm.indexDisplay) { |
| | |
| | | handleBackClick() { |
| | | this.$router.go(-1); |
| | | }, |
| | | selectAll1 () { |
| | | selectAll1() { |
| | | // 选择全部 |
| | | this.form.account1 = this.$store.state.userInfo.enableAmt |
| | | }, |
| | | selectAll2 () { |
| | | selectAll2() { |
| | | // 选择全部 |
| | | this.form.account2 = this.$store.state.userInfo.enableIndexAmt |
| | | }, |
| | | selectAll3 () { |
| | | selectAll3() { |
| | | // 选择全部 |
| | | this.form.account3 = this.$store.state.userInfo.enableAmt |
| | | }, |
| | | selectAll4 () { |
| | | selectAll4() { |
| | | // 选择全部 |
| | | this.form.account4 = this.$store.state.userInfo.enableFuturesAmt |
| | | }, |
| | | async tosubmit () { |
| | | async tosubmit() { |
| | | // 融资转指数 |
| | | let opt = { |
| | | amt: this.selected === '1' ? this.form.account1 : this.selected === '2' ? this.form.account2 : this.selected === '3' ? this.form.account3 : this.form.account4, |
| | |
| | | Toast(data.msg) |
| | | } |
| | | }, |
| | | async getUserInfo () { |
| | | async getUserInfo() { |
| | | // 获取用户信息 |
| | | let data = await api.getUserInfo() |
| | | if (data.status === 0) { |
| | |
| | | } |
| | | </script> |
| | | <style lang="less" scoped> |
| | | |
| | | .header { |
| | | width: 100%; |
| | | height: 1.5rem; |
| | | background: #fff; |
| | | position: fixed; |
| | | z-index: 999; |
| | | border-radius: 0 0 .15rem .15rem; |
| | | .left_back { |
| | | width: 1rem; |
| | | height: 100%; |
| | | left: 0; |
| | | position: absolute; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | img { |
| | | width: .6rem; |
| | | height: .6rem; |
| | | } |
| | | } |
| | | .header_titles { |
| | | width: 100%; |
| | | height: 100%; |
| | | text-align: center; |
| | | font-size: .4615rem; |
| | | line-height: 1.5rem; |
| | | span { |
| | | font-weight: 600; |
| | | } |
| | | } |
| | | } |
| | | .form-block { |
| | | width: 100%; |
| | | height: 1.5rem; |
| | | margin-top: .3rem; |
| | | } |
| | | /deep/ .mint-field-other { |
| | | padding-right: .3rem; |
| | | } |
| | | /deep/ .mint-cell-wrapper { |
| | | .header { |
| | | width: 100%; |
| | | height: 1.5rem; |
| | | background: #fff; |
| | | position: fixed; |
| | | z-index: 999; |
| | | border-radius: 0 0 .15rem .15rem; |
| | | |
| | | .left_back { |
| | | width: 1rem; |
| | | height: 100%; |
| | | border: none; |
| | | background: rgb(245, 245, 245); |
| | | border-radius: .15rem; |
| | | } |
| | | .is-selected { |
| | | background: rgb(235, 235, 235) !important; |
| | | border-radius: .15rem; |
| | | } |
| | | .mint-navbar { |
| | | padding: 0 .3rem; |
| | | } |
| | | .btnbox { |
| | | width: 94%; |
| | | margin-top: .1rem; |
| | | } |
| | | .loginout { |
| | | height: 1.2rem !important; |
| | | line-height: 1.2rem !important; |
| | | } |
| | | .int-cell { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | a { |
| | | width: 100%; |
| | | height: 100%; |
| | | .mint-cell-wrapper { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | } |
| | | .bars { |
| | | width: 100%; |
| | | height: 6rem; |
| | | left: 0; |
| | | position: absolute; |
| | | display: flex; |
| | | padding: 0 .3rem; |
| | | align-items: flex-end; |
| | | >div { |
| | | margin-bottom: 1.2rem; |
| | | font-size: .65rem; |
| | | span { |
| | | font-weight: 600; |
| | | } |
| | | justify-content: center; |
| | | align-items: center; |
| | | |
| | | img { |
| | | width: .6rem; |
| | | height: .6rem; |
| | | } |
| | | } |
| | | .mint-cell.mint-field{ |
| | | background: #fff !important; |
| | | color: #000 !important; |
| | | } |
| | | /deep/ .mint-cell-text { |
| | | color: #000 !important; |
| | | } |
| | | .text-center.btnok { |
| | | display: inline-block; |
| | | height: 1rem; |
| | | line-height: 1rem; |
| | | background: #2d6ae9; |
| | | border: none; |
| | | border-radius: .1rem; |
| | | } |
| | | .wrapper { |
| | | |
| | | .header_titles { |
| | | width: 100%; |
| | | height: 100%; |
| | | background: #fff; |
| | | } |
| | | /deep/.mint-cell-wrapper{ |
| | | |
| | | span{ |
| | | font-size: 0.35rem!important; |
| | | } |
| | | /deep/input{ |
| | | font-size: 0.35rem!important; |
| | | text-align: center; |
| | | font-size: .4615rem; |
| | | line-height: 1.5rem; |
| | | |
| | | span { |
| | | font-weight: 600; |
| | | } |
| | | } |
| | | /deep/.mint-cell-value{ |
| | | font-size: 0.35rem!important; |
| | | } |
| | | |
| | | .form-block { |
| | | width: 100%; |
| | | height: 1.5rem; |
| | | margin-top: .3rem; |
| | | } |
| | | |
| | | /deep/ .mint-field-other { |
| | | padding-right: .3rem; |
| | | } |
| | | |
| | | /deep/ .mint-cell-wrapper { |
| | | height: 100%; |
| | | border: none; |
| | | background: rgb(245, 245, 245); |
| | | border-radius: .15rem; |
| | | } |
| | | |
| | | .is-selected { |
| | | background: rgb(235, 235, 235) !important; |
| | | border-radius: .15rem; |
| | | } |
| | | |
| | | .mint-navbar { |
| | | padding: 0 .3rem; |
| | | } |
| | | |
| | | .btnbox { |
| | | width: 94%; |
| | | margin-top: .1rem; |
| | | } |
| | | |
| | | .loginout { |
| | | height: 1.2rem !important; |
| | | line-height: 1.2rem !important; |
| | | } |
| | | |
| | | .int-cell { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | |
| | | a { |
| | | width: 100%; |
| | | height: 100%; |
| | | |
| | | .mint-cell-wrapper { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | /deep/.mint-tab-item-label{ |
| | | font-size: 0.35rem!important; |
| | | } |
| | | |
| | | .bars { |
| | | width: 100%; |
| | | height: 6rem; |
| | | display: flex; |
| | | padding: 0 .3rem; |
| | | align-items: flex-end; |
| | | |
| | | >div { |
| | | margin-bottom: 1.2rem; |
| | | font-size: .65rem; |
| | | |
| | | span { |
| | | font-weight: 600; |
| | | } |
| | | } |
| | | /deep/.loginout{ |
| | | font-size: 0.35rem!important; |
| | | } |
| | | |
| | | .mint-cell.mint-field { |
| | | background: #fff !important; |
| | | color: #000 !important; |
| | | } |
| | | |
| | | /deep/ .mint-cell-text { |
| | | color: #000 !important; |
| | | } |
| | | |
| | | .text-center.btnok { |
| | | display: inline-block; |
| | | height: 1rem; |
| | | line-height: 1rem; |
| | | background: #2d6ae9; |
| | | border: none; |
| | | border-radius: .1rem; |
| | | } |
| | | |
| | | .wrapper { |
| | | width: 100%; |
| | | height: 100%; |
| | | background: #fff; |
| | | } |
| | | |
| | | /deep/.mint-cell-wrapper { |
| | | |
| | | span { |
| | | font-size: 0.35rem !important; |
| | | } |
| | | |
| | | /deep/input { |
| | | font-size: 0.35rem !important; |
| | | } |
| | | } |
| | | |
| | | /deep/.mint-cell-value { |
| | | font-size: 0.35rem !important; |
| | | } |
| | | |
| | | /deep/.mint-tab-item-label { |
| | | font-size: 0.35rem !important; |
| | | } |
| | | |
| | | /deep/.loginout { |
| | | font-size: 0.35rem !important; |
| | | } |
| | | </style> |
| | |
| | | <template> |
| | | <div> |
| | | <div v-if="list.length<=0" class="empty text-center"> |
| | | 暂无充值信息! |
| | | <div v-if="list.length <= 0" class="empty text-center"> |
| | | {{ $t('hj228') }} |
| | | </div> |
| | | <div v-else> |
| | | <ul |
| | | class="table-list" |
| | | v-infinite-scroll="loadMore" |
| | | infinite-scroll-disabled="loading" |
| | | <ul class="table-list" v-infinite-scroll="loadMore" infinite-scroll-disabled="loading" |
| | | infinite-scroll-distance="10"> |
| | | <li class="list-body" v-for="(item) in list" :key="item.key"> |
| | | <div class="order-info-box"> |
| | | <div class="order-title"> |
| | | <span :class="['main',item.payChannel == 0?'ali':item.payChannel == 1?'cart':'wechat']"> |
| | | <!-- <i v-if="item.payChannel == 0 || item.payChannel == '支付宝'" style="color:#1296db;" |
| | | <span :class="['main', item.payChannel == 0 ? 'ali' : item.payChannel == 1 ? 'cart' : 'wechat']"> |
| | | <!-- <i v-if="item.payChannel == 0 || item.payChannel == '支付宝'" style="color:#1296db;" |
| | | class="iconfont icon-zhifubao"></i> |
| | | <i v-if="item.payChannel == '微信' " style="color:#1296db;" class="iconfont icon-weixin"></i> |
| | | <i v-if="item.payChannel == 1 || item.payChannel == '对公转账'" style="color:#1296db;" |
| | | class="iconfont icon-yinlian"></i> --> |
| | | {{item.payChannel == 0?'支付宝':item.payChannel == 1?'对公转账':item.payChannel}} |
| | | </span> |
| | | <span class="payNumber">充值:<span :style="{color:$state.theme =='red'?'#BB1815':''}">¥{{item.payAmt}}</span></span> |
| | | {{ item.payChannel == 0 ? $t('hj229') : item.payChannel == 1 ? $t('hj230') : item.payChannel }} |
| | | </span> |
| | | <span class="payNumber">{{$t('hj172')}}:<span :style="{ color: $state.theme == 'red' ? '#BB1815' : '' }">¥{{ |
| | | item.payAmt |
| | | }}</span></span> |
| | | <span |
| | | :class="item.orderStatus == 1?'green pull-right':item.orderStatus == 2?'red pull-right':'red pull-right'"> |
| | | <i v-if="item.orderStatus == 1" class="iconfont icon-tongguo4 animated bounceIn"></i> |
| | | <i v-if="item.orderStatus==0" class="iconfont icon-dengdai animated bounceInDown"></i> |
| | | <i v-if="item.orderStatus == 2" class="iconfont icon-failure animated bounceInDown"></i> |
| | | <i v-if="item.orderStatus == 3" |
| | | class="iconfont icon-iconfontweitongguo animated bounceInDown"></i> |
| | | <!-- 1 => 成功 2 失败 3取消 4 等待 --> |
| | | {{item.orderStatus == 1?'充值成功':item.orderStatus == 2?'充值失败':item.orderStatus == 3?'取消充值':'审核中'}} |
| | | |
| | | </span> |
| | | :class="item.orderStatus == 1 ? 'green pull-right' : item.orderStatus == 2 ? 'red pull-right' : 'red pull-right'"> |
| | | <i v-if="item.orderStatus == 1" class="iconfont icon-tongguo4 animated bounceIn"></i> |
| | | <i v-if="item.orderStatus == 0" class="iconfont icon-dengdai animated bounceInDown"></i> |
| | | <i v-if="item.orderStatus == 2" class="iconfont icon-failure animated bounceInDown"></i> |
| | | <i v-if="item.orderStatus == 3" class="iconfont icon-iconfontweitongguo animated bounceInDown"></i> |
| | | <!-- 1 => 成功 2 失败 3取消 4 等待 --> |
| | | {{ item.orderStatus == 1 ? $t('hj231') : item.orderStatus == 2 ? $t('hj232') : item.orderStatus == 3 ? $t('hj233') : |
| | | $t('hj202') |
| | | }} |
| | | |
| | | </span> |
| | | <!-- <span class="secondary ">123456789</span> --> |
| | | </div> |
| | | <div class="order-info"> |
| | |
| | | </span> |
| | | </p> --> |
| | | <div class="info-mix "> |
| | | <span class="info-item">订单号:<b>{{item.orderSn}}</b></span> |
| | | <span class="info-item">时间: |
| | | <b v-if="item.addTime">{{new Date(item.addTime) | timeFormat}}</b> |
| | | <b v-else></b> |
| | | <span class="info-item">{{$t('hj234')}}:<b>{{ item.orderSn }}</b></span> |
| | | <span class="info-item">{{$t('hj80')}}: |
| | | <b v-if="item.addTime">{{ new Date(item.addTime) | timeFormat }}</b> |
| | | <b v-else></b> |
| | | </span> |
| | | </div> |
| | | </div> |
| | |
| | | </ul> |
| | | <div v-show="loading" class="load-all text-center"> |
| | | <mt-spinner type="fading-circle"></mt-spinner> |
| | | 加载中... |
| | | {{$t('hj235') }} |
| | | </div> |
| | | <div v-show="!loading" class="load-all text-center"> |
| | | 已全部加载 |
| | | {{$t('hj236') }} |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | export default { |
| | | components: {}, |
| | | props: {}, |
| | | data () { |
| | | data() { |
| | | return { |
| | | loading: false, |
| | | list: [], |
| | |
| | | }, |
| | | watch: {}, |
| | | computed: {}, |
| | | created () {}, |
| | | mounted () { |
| | | created() { }, |
| | | mounted() { |
| | | this.getListDetail() |
| | | }, |
| | | methods: { |
| | | async getListDetail () { |
| | | async getListDetail() { |
| | | let opt = { |
| | | payChannel: '', // 支付方式 |
| | | orderStatus: '', // 订单状态 |
| | |
| | | Toast(data.msg) |
| | | } |
| | | }, |
| | | async loadMore () { |
| | | async loadMore() { |
| | | if (this.list.length < 10 || this.total <= this.pageNum * this.pageNum) { |
| | | return |
| | | } |
| | |
| | | } |
| | | </script> |
| | | <style lang="less" scoped> |
| | | .wrapper { |
| | | padding-top: 0.9rem; |
| | | } |
| | | .wrapper { |
| | | padding-top: 0.9rem; |
| | | } |
| | | |
| | | .table-list { |
| | | padding: 0.2rem 0; |
| | | .table-list { |
| | | padding: 0.2rem 0; |
| | | |
| | | .list-body { |
| | | padding: 0.1rem 0.3rem; |
| | | .list-body { |
| | | padding: 0.1rem 0.3rem; |
| | | |
| | | .capital:nth-child(1) { |
| | | border-top: 0.01rem solid #3f444a; |
| | | .capital:nth-child(1) { |
| | | border-top: 0.01rem solid #3f444a; |
| | | } |
| | | |
| | | .capital { |
| | | padding: 0.2rem; |
| | | // border-radius: 0.2rem; |
| | | border-bottom: 0.01rem solid #3f444a; |
| | | |
| | | div { |
| | | line-height: 0.4rem; |
| | | } |
| | | |
| | | .capital { |
| | | padding: 0.2rem; |
| | | // border-radius: 0.2rem; |
| | | border-bottom: 0.01rem solid #3f444a; |
| | | .col-xs-4 { |
| | | padding-left: 0; |
| | | padding-right: 0; |
| | | } |
| | | |
| | | div { |
| | | line-height: 0.4rem; |
| | | } |
| | | |
| | | .col-xs-4 { |
| | | padding-left: 0; |
| | | padding-right: 0; |
| | | } |
| | | |
| | | .pro { |
| | | color: #999; |
| | | } |
| | | .pro { |
| | | color: #999; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | .payNumber { |
| | | font-size: 0.24rem; |
| | | font-weight: bold; |
| | | |
| | | span { |
| | | font-family: lightnumber; |
| | | } |
| | | } |
| | | |
| | | /deep/.order-info-box { |
| | | background-color: #16171d; |
| | | padding: 0; |
| | | |
| | | .main { |
| | | padding: 0.05rem .15rem; |
| | | letter-spacing: 0; |
| | | text-align: center; |
| | | margin-right: .16rem; |
| | | font-size: 0.24rem; |
| | | border-radius: 3px; |
| | | |
| | | &.ali { |
| | | background-color: #138EB4; |
| | | } |
| | | |
| | | &.cart { |
| | | background-color: #7266BA; |
| | | } |
| | | |
| | | &.wechat { |
| | | background-color: #009C46; |
| | | } |
| | | } |
| | | |
| | | .order-info { |
| | | border-bottom: 1px solid #2e3237; |
| | | padding-bottom: .3rem; |
| | | } |
| | | |
| | | .order-title { |
| | | border-bottom: none; |
| | | } |
| | | |
| | | .info-mix { |
| | | display: flex; |
| | | font-size: .2rem; |
| | | width: 100%; |
| | | |
| | | .info-item { |
| | | margin-right: .2rem; |
| | | color: #fff8; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .red-theme { |
| | | .list-body { |
| | | background-color: #fff; |
| | | } |
| | | |
| | | .order-info-box { |
| | | background-color: #fff; |
| | | |
| | | .order-info { |
| | | border-bottom-color: #e9e9e9; |
| | | } |
| | | } |
| | | |
| | | .order-info-box .main.cart { |
| | | color: #fff; |
| | | } |
| | | |
| | | .payNumber { |
| | | font-size: 0.24rem; |
| | | font-weight: bold; |
| | | span { |
| | | font-family: lightnumber; |
| | | } |
| | | color: #000; |
| | | } |
| | | /deep/.order-info-box { |
| | | background-color: #16171d; |
| | | padding: 0; |
| | | .main{ |
| | | padding: 0.05rem .15rem; |
| | | letter-spacing:0; |
| | | text-align: center; |
| | | margin-right: .16rem; |
| | | font-size: 0.24rem; |
| | | border-radius: 3px; |
| | | &.ali { |
| | | background-color: #138EB4; |
| | | } |
| | | &.cart { |
| | | background-color: #7266BA; |
| | | } |
| | | &.wechat { |
| | | background-color: #009C46; |
| | | } |
| | | } |
| | | .order-info { |
| | | border-bottom: 1px solid #2e3237; |
| | | padding-bottom: .3rem; |
| | | } |
| | | .order-title{ |
| | | border-bottom: none; |
| | | } |
| | | .info-mix{ |
| | | display: flex; |
| | | font-size: .2rem; |
| | | width: 100%; |
| | | .info-item { |
| | | margin-right: .2rem; |
| | | color: #fff8; |
| | | } |
| | | } |
| | | |
| | | .order-info-box .info-mix .info-item { |
| | | color: #666666; |
| | | } |
| | | .red-theme { |
| | | .list-body { |
| | | background-color: #fff; |
| | | } |
| | | .order-info-box { |
| | | background-color: #fff; |
| | | .order-info { |
| | | border-bottom-color: #e9e9e9; |
| | | } |
| | | } |
| | | .order-info-box .main.cart { |
| | | color: #fff; |
| | | } |
| | | .payNumber { |
| | | color: #000; |
| | | } |
| | | .order-info-box .info-mix .info-item{ |
| | | color: #666666; |
| | | } |
| | | .load-all{ |
| | | background-color: #fff; |
| | | } |
| | | |
| | | .load-all { |
| | | background-color: #fff; |
| | | } |
| | | } |
| | | </style> |
| | |
| | | <img src="../../assets/img/zuojiantou.png" alt=""> |
| | | </div> |
| | | <div class="header_titles"> |
| | | <span>{{ '充值记录' }}</span> |
| | | <span>{{ $t('hj168') }}</span> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="text-center"> |
| | |
| | | <mt-tab-container class="order-list" v-model="selected"> |
| | | <mt-tab-container-item id="1"> |
| | | <div class="form-block"> |
| | | <mt-field label="可转金额" placeholder="可转金额" type="text" disabled |
| | | v-model="this.$store.state.userInfo.enableAmt"></mt-field> |
| | | <mt-field label="可转金额" placeholder="可转金额" type="text" disabled v-model="this.$store.state.userInfo.enableAmt"> |
| | | </mt-field> |
| | | </div> |
| | | <div class="form-block"> |
| | | <mt-field label="转账金额" name="amt" v-model="form.account1" placeholder="请输入转账金额" type="text"> |
| | |
| | | <mt-tab-container-item id="2"> |
| | | <div class="form-block"> |
| | | <mt-field label="可转金额" placeholder="可转金额" type="text" disabled |
| | | v-model="this.$store.state.userInfo.enableIndexAmt"></mt-field> |
| | | v-model="this.$store.state.userInfo.enableIndexAmt"></mt-field> |
| | | </div> |
| | | <div class="form-block"> |
| | | <mt-field label="转账金额" v-model="form.account2" placeholder="请输入转账金额" type="text"> |
| | |
| | | </mt-tab-container-item> |
| | | <mt-tab-container-item id="3"> |
| | | <div class="form-block"> |
| | | <mt-field label="可转金额" placeholder="可转金额" type="text" disabled |
| | | v-model="this.$store.state.userInfo.enableAmt"></mt-field> |
| | | <mt-field label="可转金额" placeholder="可转金额" type="text" disabled v-model="this.$store.state.userInfo.enableAmt"> |
| | | </mt-field> |
| | | </div> |
| | | <div class="form-block"> |
| | | <mt-field label="转账金额" v-model="form.account3" placeholder="请输入转账金额" type="text"> |
| | |
| | | <mt-tab-container-item id="4"> |
| | | <div class="form-block"> |
| | | <mt-field label="可转金额" placeholder="可转金额" type="text" disabled |
| | | v-model="this.$store.state.userInfo.enableFuturesAmt"></mt-field> |
| | | v-model="this.$store.state.userInfo.enableFuturesAmt"></mt-field> |
| | | </div> |
| | | <div class="form-block"> |
| | | <mt-field label="转账金额" v-model="form.account4" placeholder="请输入转账金额" type="text"> |
| | |
| | | export default { |
| | | components: { |
| | | }, |
| | | data () { |
| | | data() { |
| | | return { |
| | | selected: '1', // 选中 |
| | | form: { |
| | |
| | | }, |
| | | watch: {}, |
| | | computed: {}, |
| | | created () { |
| | | created() { |
| | | this.getProductSetting() |
| | | }, |
| | | mounted () { |
| | | mounted() { |
| | | if (this.$route.query.type) { |
| | | this.selected = this.$route.query.type + '' |
| | | } |
| | | this.getUserInfo() |
| | | }, |
| | | methods: { |
| | | async getProductSetting () { |
| | | async getProductSetting() { |
| | | let data = await api.getProductSetting() |
| | | if (data.status === 0) { |
| | | this.$store.state.settingForm = data.data |
| | |
| | | this.$message.error(data.msg) |
| | | } |
| | | }, |
| | | selectAll1 () { |
| | | selectAll1() { |
| | | // 选择全部 |
| | | this.form.account1 = this.$store.state.userInfo.enableAmt |
| | | }, |
| | | selectAll2 () { |
| | | selectAll2() { |
| | | // 选择全部 |
| | | this.form.account2 = this.$store.state.userInfo.enableIndexAmt |
| | | }, |
| | | selectAll3 () { |
| | | selectAll3() { |
| | | // 选择全部 |
| | | this.form.account3 = this.$store.state.userInfo.enableAmt |
| | | }, |
| | | selectAll4 () { |
| | | selectAll4() { |
| | | // 选择全部 |
| | | this.form.account4 = this.$store.state.userInfo.enableFuturesAmt |
| | | }, |
| | | async tosubmit () { |
| | | async tosubmit() { |
| | | // 融资转指数 |
| | | let opt = { |
| | | amt: this.selected === '1' ? this.form.account1 : this.selected === '2' ? this.form.account2 : this.selected === '3' ? this.form.account3 : this.form.account4, |
| | |
| | | Toast(data.msg) |
| | | } |
| | | }, |
| | | async getUserInfo () { |
| | | async getUserInfo() { |
| | | // 获取用户信息 |
| | | let data = await api.getUserInfo() |
| | | if (data.status === 0) { |
| | |
| | | } |
| | | </script> |
| | | <style lang="less" scoped> |
| | | .is-selected .mint-tab-item-label:hover { |
| | | text-decoration: none; |
| | | } |
| | | .is-selected .mint-tab-item-label:hover { |
| | | text-decoration: none; |
| | | } |
| | | |
| | | .wrapper /deep/ .mint-tab-item-label { |
| | | font-size: 0.264rem; |
| | | } |
| | | .wrapper /deep/ .mint-tab-item-label { |
| | | font-size: 0.264rem; |
| | | } |
| | | |
| | | .mint-navbar .mint-tab-item.is-selected { |
| | | // color: #d50000; |
| | | // border-bottom: 2px solid #d50000; |
| | | text-decoration: none; |
| | | margin-bottom: 0; |
| | | } |
| | | .mint-navbar .mint-tab-item.is-selected { |
| | | // color: #d50000; |
| | | // border-bottom: 2px solid #d50000; |
| | | text-decoration: none; |
| | | margin-bottom: 0; |
| | | } |
| | | |
| | | .prompt { |
| | | padding: 0.3rem 0 0.2rem 0.7rem; |
| | | } |
| | | .prompt { |
| | | padding: 0.3rem 0 0.2rem 0.7rem; |
| | | } |
| | | </style> |
| | |
| | | </div> |
| | | <div class="bank_1"> |
| | | <div class="left_name"> |
| | | <span>{{ '收款银行' }}</span> |
| | | <span>{{ $t('hj166') }}</span> |
| | | </div> |
| | | <div class="center_input"> |
| | | <input type="text" v-model="skBankName" readonly /> |
| | | </div> |
| | | <div class="right_copy"> |
| | | <span v-clipboard:copy="skBankName" v-clipboard:success="onCopy" v-clipboard:error="onError">{{ '复制' |
| | | <span v-clipboard:copy="skBankName" v-clipboard:success="onCopy" v-clipboard:error="onError">{{ $t('hj164') |
| | | }}</span> |
| | | </div> |
| | | </div> |
| | | <div class="bank_1"> |
| | | <div class="left_name"> |
| | | <span>{{ '收款账号' }}</span> |
| | | <span>{{ $t('hj167') }}</span> |
| | | </div> |
| | | <div class="center_input"> |
| | | <input type="text" v-model="skUser" readonly /> |
| | | </div> |
| | | <div class="right_copy"> |
| | | <span v-clipboard:copy="skUser" v-clipboard:success="onCopy" v-clipboard:error="onError">{{ '复制' }}</span> |
| | | <span v-clipboard:copy="skUser" v-clipboard:success="onCopy" v-clipboard:error="onError">{{ $t('hj164') }}</span> |
| | | </div> |
| | | </div> |
| | | <div class="bank_1" @click="handleGoToTransferRecord()"> |
| | | <div class="left_name"> |
| | | <span>{{ '充值记录' }}</span> |
| | | <span>{{ $t('hj168') }}</span> |
| | | </div> |
| | | <div class="center_input"></div> |
| | | <div class="right_copy"> |
| | | <span>{{ '查看' }}</span> |
| | | <span>{{ $t('hj169') }}</span> |
| | | </div> |
| | | </div> |
| | | <div class="bank_1"> |
| | | <div class="left_name"> |
| | | <span>{{ '充值金额' }}</span> |
| | | <span>{{ $t('hj170') }}</span> |
| | | </div> |
| | | <div class="center_input"> |
| | | <input type="text" v-model="walletNum" placeholder="请输入充值金额" /> |
| | | <input type="text" v-model="walletNum" :placeholder="$t('hj171')" /> |
| | | </div> |
| | | <div class="right_copy" @click="handleGoCz()"> |
| | | <span style="background: #2d6ae9;color: #fff;padding: 0.2rem 0.4rem;border-radius: 0.2rem;">{{ '充值' |
| | | <span style="background: #2d6ae9;color: #fff;padding: 0.2rem 0.4rem;border-radius: 0.2rem;">{{ $t('hj172') |
| | | }}</span> |
| | | </div> |
| | | </div> |
| | |
| | | <img src="../../assets/img/liucheng.png" alt /> |
| | | </div> |
| | | <div class="right_title"> |
| | | <span>{{ '操作流程:' }}</span> |
| | | <span>{{ $t('hj173') + ':' }}</span> |
| | | </div> |
| | | </div> |
| | | <div class="_on"> |
| | | <span>{{ '①' }}</span> |
| | | <span>{{ '点击"复制", 复制信息' }}</span> |
| | | <span>{{ $t('hj174') }}</span> |
| | | </div> |
| | | <div class="_on"> |
| | | <span>{{ '②' }}</span> |
| | | <span>{{ '完成复制, 打开手机银行进行转账' }}</span> |
| | | <span>{{ $t('hj175') }}</span> |
| | | </div> |
| | | </div> |
| | | <div class="top_title" style="color: red;"> |
| | |
| | | <img src="../../assets/img/jinggao.png" alt /> |
| | | </div> |
| | | <div class="right_title"> |
| | | <span>{{ '操作流程:' }}</span> |
| | | <span>{{ $t('hj173') + ':' }}</span> |
| | | </div> |
| | | </div> |
| | | <div class="_on"> |
| | | <span>{{ '①' }}</span> |
| | | <span class="hgg">{{ '为确保入金及时到账, 请确认您输入的金额和提交的充值金额一致' }}</span> |
| | | <span class="hgg">{{ $t('hj176') }}</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | return { |
| | | name: "大狗子", |
| | | selectUserFlag: true, |
| | | tabsArr: ["充值", "提现"], |
| | | tabsArr: [this.$t('hj172'), this.$t('hj177')], |
| | | tabsCurrentIndex: 0, |
| | | walletNum: "", |
| | | skName: "", |
| | |
| | | async handleToSure() { |
| | | // 点击确定提现 |
| | | if (!this.userInfo.idCard) { |
| | | Toast("请先实名认证"); |
| | | Toast(this.$t('hj178')); |
| | | return; |
| | | } |
| | | if (!this.bankInfo.bankNo) { |
| | | Toast("请先绑定银行卡"); |
| | | Toast(this.$t('hj179')); |
| | | return; |
| | | } else { |
| | | } |
| | | if (!this.withdrawalValue || this.withdrawalValue <= 0) { |
| | | Toast("请输入正确的提现金额"); |
| | | Toast(this.$t('hj180')); |
| | | } else if (this.withdrawalValue - this.settingInfo.withMinAmt < 0) { |
| | | Toast("提现金额不得小于" + this.settingInfo.withMinAmt); |
| | | Toast(this.$t('hj181') + this.settingInfo.withMinAmt); |
| | | } else { |
| | | let opts = { |
| | | amt: this.withdrawalValue |
| | |
| | | let data = await api.outMoney(opts); |
| | | if (data.status === 0) { |
| | | // 成功 |
| | | Toast("申请成功,请等待审核!"); |
| | | Toast(this.$t('hj182')); |
| | | this.$router.push("/cashlist"); |
| | | } else { |
| | | Toast(data.msg ? data.msg : "提现失败,请重新提现或者联系管理员"); |
| | | Toast(data.msg ? data.msg : this.$t('hj183')); |
| | | } |
| | | } |
| | | if (navigator.vibrate) { |
| | |
| | | } |
| | | if (this.walletNum === "") { |
| | | this.messShow = true; |
| | | this.mess = "请输入充值金额"; |
| | | this.mess = this.$t('hj171'); |
| | | setTimeout(() => { |
| | | this.messShow = false; |
| | | }, 1500); |
| | | } else if (this.walletNum < 200) { |
| | | this.messShow = true; |
| | | this.mess = "小于最少充值金额"; |
| | | this.mess = this.$t('hj184'); |
| | | setTimeout(() => { |
| | | this.messShow = false; |
| | | }, 1500); |
| | |
| | | } |
| | | }, |
| | | onCopy() { |
| | | Toast("复制成功"); |
| | | Toast(this.$t('hj185')); |
| | | if (navigator.vibrate) { |
| | | // 支持 |
| | | navigator.vibrate([55]); |
| | | } |
| | | }, |
| | | onError() { |
| | | Toast("复制失败请重试"); |
| | | Toast(this.$t('hj186')); |
| | | }, |
| | | async getPayInfo() { |
| | | // 获取支付渠道 详细信息 |
| | |
| | | import Vue from 'vue' |
| | | import Router from 'vue-router' |
| | | import i18n from '@/locales/index.js' |
| | | import Home from '@/page/home/home' |
| | | import Buy from '@/page/home/buy' |
| | | import Alertdetail from '@/page/home/components/alert' // 公告详情 |
| | |
| | | Router.prototype.push = function push(location) { |
| | | return routerPush.call(this, location).catch(error => error) |
| | | } |
| | | |
| | | export default new Router({ |
| | | routes: [ |
| | | { |
| | |
| | | path: '/home', |
| | | name: 'home', |
| | | meta: { |
| | | title: '首页', |
| | | title: i18n.t('hj224'), |
| | | requireAuth: true, |
| | | index: 0 |
| | | }, |
| | |
| | | path: '/buy', |
| | | name: 'buy', |
| | | meta: { |
| | | title: '购买', |
| | | title: i18n.t('hj237'), |
| | | requireAuth: true, |
| | | hasHeader: true, |
| | | index: 1 |
| | |
| | | path: '/newPage', |
| | | name: 'newPage', |
| | | meta: { |
| | | title: '详情', |
| | | title: i18n.t('hj238'), |
| | | hasHeader: true, |
| | | is_Show: true, |
| | | index: 2 |
| | |
| | | path: '/newGg', |
| | | name: 'newGg', |
| | | meta: { |
| | | title: '公告详情', |
| | | title: i18n.t('hj239'), |
| | | hasHeader: true, |
| | | is_Show: true, |
| | | index: 49 |
| | |
| | | path: '/forget', |
| | | name: 'forget', |
| | | meta: { |
| | | title: '忘记密码', |
| | | title: i18n.t('hj240'), |
| | | index: 4 |
| | | }, |
| | | component: Forget |
| | |
| | | path: '/openaccount', |
| | | name: 'openaccount', |
| | | meta: { |
| | | title: '开户', |
| | | title: i18n.t('hj241'), |
| | | hasHeader: true, |
| | | index: 6 |
| | | }, |
| | |
| | | path: '/trading-list', |
| | | name: 'TradingList', |
| | | meta: { |
| | | title: '行情', |
| | | title: i18n.t('hj242'), |
| | | requireAuth: false, |
| | | hasHeader: false, |
| | | index: 7 |
| | |
| | | path: '/listdetail', |
| | | name: 'listdetail', |
| | | meta: { |
| | | title: '详情', |
| | | title: i18n.t('hj238'), |
| | | requireAuth: false, |
| | | hasHeader: false, |
| | | index: 13 |
| | |
| | | path: '/listdetail2', |
| | | name: 'listdetail2', |
| | | meta: { |
| | | title: '详情', |
| | | title: i18n.t('hj238'), |
| | | requireAuth: false, |
| | | hasHeader: true, |
| | | index: 14 |
| | |
| | | path: '/warehouse', |
| | | name: 'Warehouse', |
| | | meta: { |
| | | title: '持仓', |
| | | title: i18n.t('hj2'), |
| | | requireAuth: false, |
| | | hasHeader: false, |
| | | index: 22 |
| | |
| | | path: '/login', |
| | | name: 'newLogin', |
| | | meta: { |
| | | title: '用户登录', |
| | | title: i18n.t('hj248'), |
| | | requireAuth: false, |
| | | hasHeader: true, |
| | | index: 47, |
| | |
| | | path: '/register', |
| | | name: 'newRegister', |
| | | meta: { |
| | | title: '用户注册', |
| | | title: i18n.t('hj249'), |
| | | requireAuth: false, |
| | | hasHeader: false, |
| | | index: 48, |
| | |
| | | path: '/kline', |
| | | name: 'kline', |
| | | meta: { |
| | | title: '详情', |
| | | title: i18n.t('hj238'), |
| | | requireAuth: false, |
| | | hasHeader: false, |
| | | index: 49, |
| | |
| | | path: '/TradingBuy', |
| | | name: 'TradingBuy', |
| | | meta: { |
| | | title: '购买', |
| | | title: i18n.t('hj237'), |
| | | requireAuth: false, |
| | | hasHeader: false, |
| | | index: 50, |
| | |
| | | path: '/User', |
| | | name: 'NewUser', |
| | | meta: { |
| | | title: '个人中心', |
| | | title: i18n.t('hj243'), |
| | | requireAuth: false, |
| | | hasHeader: false, |
| | | index: 51, |
| | |
| | | path: '/wallet', |
| | | name: 'Wallet', |
| | | meta: { |
| | | title: '钱包', |
| | | title: i18n.t('hj244'), |
| | | requireAuth: false, |
| | | hasHeader: false, |
| | | index: 52, |
| | |
| | | path: '/transferRecord', |
| | | name: 'transferRecord', |
| | | meta: { |
| | | title: '充值记录', |
| | | title: i18n.t('hj168'), |
| | | requireAuth: false, |
| | | hasHeader: false, |
| | | index: 53, |
| | |
| | | path: '/cashWithdrawalRecord', |
| | | name: 'cashWithdrawalRecord', |
| | | meta: { |
| | | title: '提现记录', |
| | | title: i18n.t('hj162'), |
| | | requireAuth: false, |
| | | hasHeader: false, |
| | | index: 54, |
| | |
| | | path: '/transfers', |
| | | name: 'transfers', |
| | | meta: { |
| | | title: '划转', |
| | | title: i18n.t('hj245'), |
| | | requireAuth: false, |
| | | hasHeader: false, |
| | | index: 55, |
| | |
| | | path: '/authentications', |
| | | name: 'authentications', |
| | | meta: { |
| | | title: '认证', |
| | | title: i18n.t('hj246'), |
| | | requireAuth: false, |
| | | hasHeader: false, |
| | | index: 56, |
| | |
| | | path: '/bankCard', |
| | | name: 'bankCard', |
| | | meta: { |
| | | title: '银行卡', |
| | | title: i18n.t('hj247'), |
| | | requireAuth: false, |
| | | hasHeader: false, |
| | | index: 57, |
| | |
| | | return false |
| | | } |
| | | } |
| | | |
| | | export function debounce (fn, delay) { |
| | | // 时间期限 |
| | | var delay = delay || 200; |
| | | var timer; |
| | | // 闭包 |
| | | return function () { |
| | | // 考虑作用域,上下文环境,apply需要用到this对象 |
| | | var th = this; |
| | | // 接收的参数用 ES6 中的 rest 参数统一存储到变量 args 中。arguments就是传入的参数数组,而且个数可以不确定的传回给fn(不确定函数到底有多少个参数,用arguments来接收) |
| | | var args = arguments; |
| | | // 判断还在定时,说明当前正在一个计时过程中,并且又触发了相同事件。所以要取消当前的计时,重新开始计时 |
| | | if (timer) { |
| | | clearTimeout(timer); |
| | | } |
| | | timer = setTimeout(function () { |
| | | timer = null; |
| | | // 执行方法 |
| | | fn.apply(th, args); |
| | | }, delay); |
| | | }; |
| | | } |
| | | // 判断是不是邮箱 是--true |
| | | export function isEmail (str) { |
| | | let myreg = /^[A-Za-z\d]+([-_.][A-Za-z\d]+)*@([A-Za-z\d]+[-.])+[A-Za-z\d]{2,4}$/ |