This commit is contained in:
parent
093a934fa4
commit
bc41cac9cc
Binary file not shown.
|
After Width: | Height: | Size: 14 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 23 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 44 KiB |
|
|
@ -66,7 +66,7 @@
|
|||
</li>
|
||||
<!-- -->
|
||||
<!-- 短信验证码-->
|
||||
<li v-if="!inputShowList.logPlugIn && radio == '0'">
|
||||
<!--<li v-if="!inputShowList.logPlugIn && radio == '0'">
|
||||
<van-field v-model.trim="form.code" clearable type="digit" placeholder="请输入短信验证码"
|
||||
:rules="[{ required: true, message: '请输入短信验证码' }]" :mode="false">
|
||||
<template #label>
|
||||
|
|
@ -76,11 +76,11 @@
|
|||
</div>
|
||||
</template>
|
||||
<template #button style="margin-left: -20px;">
|
||||
<div style="font-size: 12px;" :style="'color:'+'var(--themeBaseColor)'" @click="verificationCode">{{btnText}}</div>
|
||||
<div style="font-size: 12px;" :style="'color:'+'var(--themeBaseColor)'" @click="verificationCode">{{btnText}}</div>
|
||||
</template>
|
||||
</van-field>
|
||||
<div></div>
|
||||
</li>
|
||||
</li>-->
|
||||
<!-- -->
|
||||
<!-- 密码-->
|
||||
<li v-if="inputShowList.passwordInputShow">
|
||||
|
|
|
|||
|
|
@ -58,6 +58,8 @@ export default {
|
|||
goUrl(str,query={}) {
|
||||
let _query = query;
|
||||
if(str == 'cat_integral') _query.name = 'cat';
|
||||
else if(str == 'extension') str = 'withdrawal';
|
||||
|
||||
this.$router.push(this.fun.getUrl(str,_query));
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10496,8 +10496,43 @@ const routes = [
|
|||
foot: true
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
// 消费返利
|
||||
{
|
||||
path: "/member/rebate/my_income",
|
||||
name: "rebate_my_income",
|
||||
component:()=>import("../views/member/rebate/my_income"),
|
||||
meta: {
|
||||
title: "我的收入",
|
||||
foot: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: "/member/rebate/detail",
|
||||
name: "rebate_rebate",
|
||||
component:()=>import("../views/member/rebate/detail"),
|
||||
meta: {
|
||||
title: "养殖收益",
|
||||
foot: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: "/member/rebate/recommend",
|
||||
name: "rebate_recommend",
|
||||
component:()=>import("../views/member/rebate/recommend"),
|
||||
meta: {
|
||||
title: "合作养殖补助",
|
||||
foot: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: "/member/rebate/income_record",
|
||||
name: "rebate_income_record",
|
||||
component:()=>import("../views/member/rebate/income_record"),
|
||||
meta: {
|
||||
title: "奖励明细",
|
||||
foot: true
|
||||
}
|
||||
},
|
||||
|
||||
]
|
||||
.concat(BlockChain)
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@
|
|||
</div>
|
||||
<div class="content">
|
||||
<div class="cash">{{$i18n.t('money')}}{{month_amount}}</div>
|
||||
<div>本月返利收益</div>
|
||||
<div>本月养殖收益</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="income-two">
|
||||
|
|
|
|||
|
|
@ -78,9 +78,9 @@
|
|||
<div class="iconfont icon-advertise-next icon"></div>
|
||||
</div>
|
||||
</template>
|
||||
<template #button style="margin-left: -20px;">
|
||||
<router-link :to="fun.getUrl('findpwd')" style="font-size: 0.75rem; color: #666;">忘记密码? </router-link>
|
||||
</template>
|
||||
<!--<template #button style="margin-left: -20px;">-->
|
||||
<!-- <router-link :to="fun.getUrl('findpwd')" style="font-size: 0.75rem; color: #666;">忘记密码? </router-link>-->
|
||||
<!--</template>-->
|
||||
</van-field>
|
||||
<div></div>
|
||||
</li>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,394 @@
|
|||
<template>
|
||||
<div>
|
||||
<c-title :hide="false" text="养殖收益" tolink="detailed"></c-title>
|
||||
<div class="content-box">
|
||||
<!--顶部统计-->
|
||||
<!--<div class="top-content">
|
||||
<div class="top-box">
|
||||
<div class="top-info">
|
||||
<div class="left-title">全部余额</div>
|
||||
<div class="left-balance">{{ statistics.all_balance || 0 }}</div>
|
||||
<div class="withdrawal-btn" @click="goToPage('withdrawal')">去提现<i class="iconfont icon-advertise-next"></i></div>
|
||||
</div>
|
||||
<div class="top-statistics">
|
||||
<div class="statistics-block">
|
||||
<div class="title">已入账余额</div>
|
||||
<div class="num">{{ statistics.recorded || 0 }}</div>
|
||||
</div>
|
||||
<div class="statistics-block">
|
||||
<div class="title">待入账余额</div>
|
||||
<div class="num">{{ statistics.credited || 0 }}</div>
|
||||
</div>
|
||||
<div class="statistics-block">
|
||||
<div class="title">可提现余额</div>
|
||||
<div class="num">{{ statistics.withdrawal || 0 }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>-->
|
||||
<div class="top-content">
|
||||
<div class="top-box">
|
||||
<div class="top-info">
|
||||
<div class="left-title">养殖收入</div>
|
||||
<div class="left-balance">{{ statistics.recorded || 0 }}</div>
|
||||
<div class="left-withdrawal">可提现金额:{{ statistics.withdrawal || 0 }}</div>
|
||||
<div class="withdrawal-btn" @click="goToPage('withdrawal')">去提现<i class="iconfont icon-advertise-next"></i></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--每季度信息-->
|
||||
<div class="quarter-box" v-for="(item,index) in quarterList" :key="index" v-if="item.repurchase_type != 1">
|
||||
<!--标题-->
|
||||
<div class="title-box">
|
||||
<div class="title">第{{ numberToChinese(item.quarter) }}季</div>
|
||||
<div class="time">
|
||||
{{ item.quarter == 1 ? '预支分红时间' : '合作养殖收益时间' }}:{{ item['start_time'] }} ~ {{ item['end_time'] }}
|
||||
</div>
|
||||
</div>
|
||||
<!--内容-->
|
||||
<div class="quarter-main">
|
||||
<div class="left">
|
||||
<div class="title">{{ (item.status == 2) ? '应到账总额' : '预计到账总额' }}</div>
|
||||
<div class="num">{{ item.total_money || 0 }}</div>
|
||||
</div>
|
||||
<div class="right">
|
||||
<!--判断:本季度最后一次结算时间等于 本期最后一次结算时间,且需要复购 = 立即前往复投-->
|
||||
<template v-if="item.repurchase_type == 2">
|
||||
<div class="repurchase">
|
||||
<div class="repurchase-btn" @click="goToPage('goodsorder',{ },{tag: '-2', goodsId: item.goods_id,total: 1, optionsId:0,type:5})">
|
||||
第{{ numberToChinese(item.quarter) }}季合作养殖金额
|
||||
</div>
|
||||
<div class="tips">复投金额:{{ item.repurchase_money || 0 }}元</div>
|
||||
<div class="tips">剩余时间:<span class="time">{{ repurchaseEndTime(item.repurchase_end_time) }}</span></div>
|
||||
</div>
|
||||
</template>
|
||||
<!-- 判断:本季度最后一次结算时间为0 并且本季度结束后需要复购 = 未到复投时间 -->
|
||||
<template v-else-if="item.repurchase_type == 1">
|
||||
<div class="repurchase">
|
||||
<div class="repurchase-btn not-btn">未到复投时间</div>
|
||||
<div class="tips">复投金额:{{ item.repurchase_money || 0 }}元</div>
|
||||
</div>
|
||||
</template>
|
||||
<template v-else>
|
||||
<div class="month-list">
|
||||
<div class="month-box" v-for="(val,key) in item.list" :key="key" v-if="val.status == 2">
|
||||
<div class="month-money">第{{ numberToChinese(val.month) }}月:{{ parseFloat(val.money).toFixed(0) }}</div>
|
||||
<div :class="['status',{'not-status': (val.status != 2)}]">{{ val.status != 2 ? '未入账' : '已预支分红'}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
statistics: {},
|
||||
quarterList: {},
|
||||
realityThawTime: 0,
|
||||
};
|
||||
},
|
||||
activated() {},
|
||||
mounted() {
|
||||
this.getRebateInfo();
|
||||
},
|
||||
methods: {
|
||||
// 获取返利明细
|
||||
getRebateInfo(){
|
||||
let _this = this;
|
||||
$http.get("plugin.rebate.api.index.rebateInfo", {}, "加载中...").then((response) => {
|
||||
_this.statistics = response.data.statistics || {};
|
||||
_this.quarterList = response.data.quarterList || {};
|
||||
_this.realityThawTime = response.data.realityThawTime || 0;
|
||||
}, function (response) {
|
||||
_this.$dialog.alert({message: response.msg});
|
||||
});
|
||||
},
|
||||
// 页面跳转
|
||||
goToPage(pathName,params = {},query = {}){
|
||||
this.$router.push(this.fun.getUrl(pathName, params, query));
|
||||
},
|
||||
// 倒计时
|
||||
repurchaseEndTime(endTime = 0){
|
||||
if(Number(endTime) > 0){
|
||||
endTime = (endTime * 1000);// 米啊 转毫秒
|
||||
const nowTime = new Date().getTime();
|
||||
// 计算时间差(毫秒)并转换为天
|
||||
let diffTime = endTime - nowTime;// 当前时间距离结束时间的差
|
||||
let dayTime = 1000 * 60 * 60 * 24;// 一天的时间
|
||||
let day = diffTime / dayTime;
|
||||
let month = (diffTime % dayTime) / (1000 * 60 * 60);
|
||||
let minute = ((diffTime % dayTime) % (1000 * 60 * 60)) / (1000 * 60);
|
||||
|
||||
if(day > 0) return Math.floor(day) + '天' + Math.floor(month) + '时' + Math.floor(minute) + '分';
|
||||
else if(month > 0) return Math.floor(month) + '时' + Math.floor(minute) + '分';
|
||||
else return Math.floor(minute) + '分';
|
||||
}
|
||||
},
|
||||
// 阿拉伯数字转汉字
|
||||
numberToChinese(num) {
|
||||
const changeNum = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九'] // changeNum[0] = "零"
|
||||
const unit = ['', '十', '百']
|
||||
num = parseInt(num)
|
||||
// console.log(num);
|
||||
const getWan = (temp) => {
|
||||
const strArr = temp.toString().split('').reverse()
|
||||
// console.log(strArr);
|
||||
let newNum = ''
|
||||
for (var i = 0; i < strArr.length; i++) {
|
||||
newNum = (i == 0 && strArr[i] == 0 ? '' : (i > 0 && strArr[i] == 0 && strArr[i - 1] == 0 ? '' : changeNum[strArr[i]] + (strArr[i] == 0 ? unit[0] : unit[i]))) + newNum
|
||||
}
|
||||
return newNum
|
||||
}
|
||||
const overWan = Math.floor(num / 100)
|
||||
// console.log(overWan);
|
||||
let noWan = num % 100
|
||||
// console.log(noWan);
|
||||
if (noWan.toString().length < 2) noWan = '0' + noWan
|
||||
let strr = (overWan ? getWan(overWan) + '百' + getWan(noWan) : getWan(num))
|
||||
// console.log(strr.split('')[0]);
|
||||
if(strr.split('')[0] == '一'){
|
||||
return num == 1 ? strr.split('')[0] : strr.substring(1);
|
||||
}else{
|
||||
return overWan ? getWan(overWan) + '百' + getWan(noWan) : getWan(num)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.content-box {
|
||||
width: 100vw !important;
|
||||
min-height: calc(100vh - 40px);
|
||||
background: #f6f6f6;
|
||||
|
||||
.top-content {
|
||||
padding: 15px;
|
||||
|
||||
.top-box {
|
||||
box-shadow: 0 0 10px #c6d3f9;
|
||||
border-radius: 10px;
|
||||
overflow: hidden;
|
||||
|
||||
.top-info {
|
||||
background: linear-gradient(45deg, #5d98fe, #014eff);
|
||||
display: inline-flex;
|
||||
flex-direction: column;
|
||||
flex-wrap: nowrap;
|
||||
justify-content: flex-start;
|
||||
align-items: flex-start;
|
||||
width: 100%;
|
||||
//height: 100px;
|
||||
position: relative;
|
||||
padding: 20px;
|
||||
|
||||
.left-title {
|
||||
font-size: 15px;
|
||||
color: #fffaf1;
|
||||
}
|
||||
|
||||
.left-balance {
|
||||
font-size: 25px;
|
||||
font-weight: bold;
|
||||
color: #ffffff;
|
||||
height: 50px;
|
||||
line-height: 60px;
|
||||
}
|
||||
|
||||
.left-withdrawal{
|
||||
color: #fffaf1;
|
||||
font-size: 13px;
|
||||
height: 20px;
|
||||
line-height: 25px;
|
||||
}
|
||||
|
||||
.withdrawal-btn {
|
||||
position: absolute;
|
||||
top: 20px;
|
||||
right: 20px;
|
||||
background: #a5c3ff;
|
||||
border-radius: 100px;
|
||||
color: #f7fdff;
|
||||
font-size: 14px;
|
||||
height: 20px;
|
||||
padding: 0 10px;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
flex-wrap: nowrap;
|
||||
|
||||
i {
|
||||
font-size: 14px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.top-statistics {
|
||||
background: #3a84ff;
|
||||
width: 100%;
|
||||
height: 60px;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-around;
|
||||
align-items: center;
|
||||
|
||||
.statistics-block {
|
||||
width: calc(100% / 3);
|
||||
|
||||
.title {
|
||||
color: #fffaf1;
|
||||
height: 25px;
|
||||
line-height: 30px;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
.num {
|
||||
color: #ffffff;
|
||||
height: 25px;
|
||||
line-height: 20px;
|
||||
font-size: 13px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.quarter-box {
|
||||
background: #ffffff;
|
||||
width: 100vw;
|
||||
padding: 0 15px;
|
||||
margin-bottom: 10px;
|
||||
|
||||
.title-box {
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
height: 35px;
|
||||
border-bottom: 1px solid #f4f4f4;
|
||||
|
||||
.title {
|
||||
background: #0055fe;
|
||||
color: #ffffff;
|
||||
height: 20px;
|
||||
line-height: 20px;
|
||||
font-size: 13px;
|
||||
padding: 0 10px;
|
||||
border-radius: 50px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.time {
|
||||
font-size: 13px;
|
||||
}
|
||||
}
|
||||
|
||||
.quarter-main {
|
||||
width: 100%;
|
||||
padding: 10px 0;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
justify-content: space-around;
|
||||
align-items: center;
|
||||
|
||||
.left {
|
||||
width: 40%;
|
||||
height: 100%;
|
||||
|
||||
.title {
|
||||
font-size: 15px;
|
||||
}
|
||||
|
||||
.num {
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
color: #0055fc;
|
||||
}
|
||||
}
|
||||
|
||||
.right {
|
||||
width: 60%;
|
||||
height: 100%;
|
||||
|
||||
.repurchase {
|
||||
width: 100%;
|
||||
display: inline-flex;
|
||||
flex-direction: column;
|
||||
flex-wrap: nowrap;
|
||||
align-items: flex-start;
|
||||
justify-content: center;
|
||||
padding: 25px 0;
|
||||
|
||||
.repurchase-btn {
|
||||
background: #0055fe;
|
||||
color: #ffffff;
|
||||
width: 100%;
|
||||
height: 25px;
|
||||
line-height: 25px;
|
||||
font-size: 15px;
|
||||
border-radius: 50px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.tips {
|
||||
font-size: 13px;
|
||||
|
||||
.time {
|
||||
color: #fe2b24;
|
||||
}
|
||||
}
|
||||
|
||||
.not-btn {
|
||||
background: #dcdcdc;
|
||||
color: #565d6c;
|
||||
}
|
||||
}
|
||||
|
||||
.month-list {
|
||||
.month-box {
|
||||
font-size: 13px;
|
||||
width: 100%;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
.month-money {
|
||||
}
|
||||
|
||||
.status {
|
||||
background: #0055fe;
|
||||
color: #ffffff;
|
||||
height: 15px;
|
||||
line-height: 15px;
|
||||
font-size: 10px;
|
||||
padding: 0 5px;
|
||||
border-radius: 50px;
|
||||
//margin-right: 10px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.not-status {
|
||||
background: #bababa;
|
||||
color: #fefefe;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
@ -0,0 +1,137 @@
|
|||
<template>
|
||||
<div>
|
||||
<c-title :hide="false" :text="page_params.type_name ? title_list[page_params.type_name] : ''" tolink="detailed"></c-title>
|
||||
<div class="content-box">
|
||||
<div class="income" v-if="Object.values(list).length > 0">
|
||||
<div class="income-block" v-for="(item,index) in list" :key="index">
|
||||
<div class="left">
|
||||
<div class="title" v-if="page_params.type_name == 'rebate'">消费返利</div>
|
||||
<div class="title" v-else>{{ item.type_name }}</div>
|
||||
<div class="time">{{ item.created_at }}</div>
|
||||
</div>
|
||||
<div class="right" v-if="page_params.type_name == 'recommend' || page_params.type_name == 'level_give'"> +{{ item.dividend_amount }}</div>
|
||||
<div class="right" v-else> +{{ item.amount }}</div>
|
||||
</div>
|
||||
</div>
|
||||
<van-empty description="暂无数据" v-else />
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
components:{},
|
||||
data() {
|
||||
return {
|
||||
page_params: {},
|
||||
title_list: {
|
||||
all_income: '总收益',
|
||||
today: '今日收益',
|
||||
withdrawal: '可提现金额',
|
||||
rebate: '养殖收益',
|
||||
recommend: '合作养殖补助',
|
||||
level_give: '平级奖收益',
|
||||
},
|
||||
// 分页信息
|
||||
list: [],
|
||||
isLoadMore: true,
|
||||
page: 1,
|
||||
total_page: 0,
|
||||
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
let _this = this;
|
||||
_this.page_params = Object.assign(_this.$route.params, _this.$route.query);
|
||||
if(!_this.page_params.type_name || _this.page_params.type_name == undefined){
|
||||
_this.$dialog.alert({message:`非法请求,不明确的查看类型!`}).then(()=>{
|
||||
_this.$router.push(_this.fun.getUrl('rebate_my_income'));
|
||||
});
|
||||
}else{
|
||||
this.getList();
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 列表获取
|
||||
getList() {
|
||||
let _this = this;
|
||||
let params = {
|
||||
page: _this.page,
|
||||
type_name: _this.page_params.type_name
|
||||
};
|
||||
$http.post('plugin.rebate.api.index.incomeRecord', params, "加载中...").then(response => {
|
||||
if (response.result === 1) {
|
||||
_this.isLoadMore = true;
|
||||
let data = response.data;
|
||||
if (parseInt(data.current_page) === 1) {
|
||||
_this.total_page = data.last_page;
|
||||
_this.list = data.data;
|
||||
} else {
|
||||
if (Object.values(data.data).length > 0) _this.list = Object.values(_this.list).concat(Object.values(data.data));
|
||||
}
|
||||
} else {
|
||||
_this.isLoadMore = false; // 防止多次请求分页数据
|
||||
_this.list = [];
|
||||
}
|
||||
}).catch(error => {
|
||||
console.log(error);
|
||||
});
|
||||
},
|
||||
// 分页获取数据
|
||||
getMoreData() {
|
||||
let _this = this;
|
||||
if (!_this.isLoadMore) return;
|
||||
_this.isLoadMore = false; // 防止多次请求分页数据
|
||||
if (_this.page >= _this.total_page) {
|
||||
return;
|
||||
} else {
|
||||
_this.page += 1;
|
||||
_this.getList();
|
||||
}
|
||||
},
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.content-box {
|
||||
width: 100%;
|
||||
min-height: calc(100vh - 40px);
|
||||
background: #f6f6f6;
|
||||
|
||||
.income{
|
||||
.income-block{
|
||||
width: 100%;
|
||||
padding: 10px 15px;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
border-bottom: 1px solid #e2e2e2;
|
||||
.left{
|
||||
text-align: left;
|
||||
.title{
|
||||
font-size: 15px;
|
||||
color: #333;
|
||||
}
|
||||
.time{
|
||||
font-size: 13px;
|
||||
color: #8c8c8c;
|
||||
}
|
||||
}
|
||||
.right{
|
||||
font-size: 15px;
|
||||
color: #259b24;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
</style>
|
||||
|
|
@ -0,0 +1,402 @@
|
|||
<template>
|
||||
<div>
|
||||
<c-title :hide="false" text="我的收入" tolink="detailed"></c-title>
|
||||
<div class="content-box">
|
||||
<!--用户信息-->
|
||||
<div class="user" v-if="info.userInfo">
|
||||
<img class="avatar" :src="info.userInfo.avatar_image || ''" />
|
||||
<div class="nickname">{{ info.userInfo.nickname }}</div>
|
||||
<div class="lv" v-if="info.userInfo.level_info">等级:{{ info.userInfo.level_info ? info.userInfo.level_info.level_name : '' }}</div>
|
||||
</div>
|
||||
<!--收益信息-->
|
||||
<div class="income">
|
||||
<div class="block" @click="goToPage('rebate_income_record',{},{type_name: 'today'})">
|
||||
<div class="title">今日收益(元)</div>
|
||||
<div class="num">{{ info.toDayIncome || 0 }}</div>
|
||||
</div>
|
||||
<div class="block" @click="goToPage('rebate_income_record',{},{type_name: 'all_income'})">
|
||||
<div class="title">总收益(元)</div>
|
||||
<div class="num">{{ info.allIncome || 0 }}</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--统计-->
|
||||
<div class="statistics">
|
||||
<div class="block" @click="goToPage('rebate_income_record',{},{type_name: 'withdrawal'})">
|
||||
<div class="title">可提现金额(元)</div>
|
||||
<div class="num">{{ info.withdrawal || 0 }}</div>
|
||||
</div>
|
||||
<div class="block" @click="goToPage('rebate_income_record',{},{type_name: 'rebate'})">
|
||||
<div class="title">养殖收益(元)</div>
|
||||
<div class="num">{{ info.rebate || 0 }}</div>
|
||||
</div>
|
||||
<div class="block" @click="goToPage('rebate_income_record',{},{type_name: 'recommend'})">
|
||||
<div class="title">合作养殖补助(元)</div>
|
||||
<div class="num">{{ info.recommend || 0 }}</div>
|
||||
</div>
|
||||
<div class="block" @click="goToPage('rebate_income_record',{},{type_name: 'level_give'})">
|
||||
<div class="title">平级奖收益(元)</div>
|
||||
<div class="num">{{ info.levelGive || 0 }}</div>
|
||||
</div>
|
||||
<div class="block">
|
||||
<div class="title" @click="goToPage('myRelationship')">推荐总数(个)</div>
|
||||
<div class="num">{{ info.subCount || 0 }}</div>
|
||||
</div>
|
||||
<div class="withdrawal-btn" @click="goToPage('withdrawal')">立即提现<i class="iconfont icon-advertise-next"></i></div>
|
||||
<div class="qr-code-btn" @click="getPoster">生成推广二维码</div>
|
||||
</div>
|
||||
<!--复购-->
|
||||
<div class="repurchase" v-if="Object.keys((info.goods || {})).length > 0">
|
||||
<div class="title">追加投资</div>
|
||||
<div class="good" v-for="(item,index) in info.goods" :key="index">
|
||||
<img class="good-img" :src="item.thumb" />
|
||||
<div class="good-info">
|
||||
<div class="top-info">
|
||||
<div class="name">{{ item.title }}</div>
|
||||
<!--<div class="desc">每月赠送一盒产品*21月</div>-->
|
||||
</div>
|
||||
<div class="bottom-info">
|
||||
<div class="price">¥{{ item.price }}</div>
|
||||
<div class="repurchase-btn" @click="goToPage('goodsorder',{ },{tag: '-2', goodsId: item.id,total: 1, optionsId:0,type:5})">
|
||||
去复购
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 海报部分 -->
|
||||
<yz-goodsposter v-model="posterShow" :posterData="poster_Data" :defaultImg="poster" :width="`18.875rem`" v-on:finish="uploadImageM"></yz-goodsposter>
|
||||
<!-- 海报部分 end -->
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import yzGoodsposter from "components/ui_components/yz_goodsPoster";
|
||||
export default {
|
||||
components:{
|
||||
yzGoodsposter,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
info: {},
|
||||
// 海报
|
||||
posterShow: false,
|
||||
poster: "",
|
||||
poster_Data: {
|
||||
poster_data: null,
|
||||
background: {}
|
||||
},
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
this.getMyIncome();
|
||||
},
|
||||
methods: {
|
||||
// 获取我的收入统计信息
|
||||
getMyIncome(){
|
||||
let _this = this;
|
||||
$http.get("plugin.rebate.api.index.myIncomeStatistics", {}, "加载中...").then((response) => {
|
||||
_this.info = response.data || {};
|
||||
}, function (response) {
|
||||
_this.$dialog.alert({message: response.msg});
|
||||
});
|
||||
},
|
||||
// 页面跳转
|
||||
goToPage(pathName,params = {},query = {}){
|
||||
this.$router.push(this.fun.getUrl(pathName, params, query));
|
||||
},
|
||||
// 生成分享二维码海报
|
||||
getPoster(e) {
|
||||
let _this = this;
|
||||
$http.get("member.qrcode.get-poster", { poster_id: _this.info.poster_id }, {})
|
||||
.then(res => {
|
||||
if (parseInt(res.result) === 1) {
|
||||
_this.isNewPosterPlugin = res.data.new || false;
|
||||
let center_show = !isNaN(parseInt(res.data.center_show)) ? parseInt(res.data.center_show) : 0;
|
||||
if (center_show === 0) {
|
||||
//0 返回的默认图片
|
||||
_this.poster = res.data.image_url;
|
||||
_this.posterShow = true;
|
||||
} else if (center_show === 1) {
|
||||
//前端生成
|
||||
_this.poster_Data.background.src = res.data.background_url || res.data.background;
|
||||
_this.poster_Data.background.type = "background";
|
||||
_this.poster_Data.poster_data = res.data.style_data;
|
||||
_this.poster_id = res.data.id;
|
||||
_this.posterShow = true;
|
||||
} else if (center_show === 2) {
|
||||
//部分关注二维码不支持跨域,走老接口
|
||||
_this.toastPoster = _this.$toast({
|
||||
duration: -1, // 持续展示 toast
|
||||
message: "正在为您生成海报中"
|
||||
});
|
||||
_this.openQrCode_old(e);
|
||||
}
|
||||
}
|
||||
})
|
||||
.catch((error) => {});
|
||||
},
|
||||
openQrCode_old(e) {
|
||||
if (!this.poster) {
|
||||
if (!this.timer) {
|
||||
this.getPoster_oldApi(e);
|
||||
this.timer = setInterval(() => {
|
||||
this.getPoster_oldApi(e);
|
||||
}, 3000);
|
||||
}
|
||||
} else {
|
||||
clearInterval(this.timer);
|
||||
this.toastPoster.clear();
|
||||
}
|
||||
},
|
||||
getPoster_oldApi(e) {
|
||||
$http.get("member.poster").then(
|
||||
response => {
|
||||
if (response.result === 1) {
|
||||
this.poster = response.data.image_url;
|
||||
if (this.poster) this.clearPostetInterval();
|
||||
} else {
|
||||
this.$toast(response.msg);
|
||||
this.clearPostetInterval();
|
||||
}
|
||||
},
|
||||
response => {
|
||||
this.clearPostetInterval();
|
||||
}
|
||||
);
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.content-box {
|
||||
width: 100vw !important;
|
||||
min-height: calc(100vh - 40px);
|
||||
background: url(../../../assets/images/rebate/income_bg.jpg) no-repeat #f6f6f6;
|
||||
background-size: 100% auto;
|
||||
|
||||
// 用户信息
|
||||
.user {
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
padding: 20px 0 20px 20px;
|
||||
width: 100%;
|
||||
|
||||
.avatar {
|
||||
margin: 0 !important;
|
||||
width: 35px;
|
||||
height: 35px;
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
.nickname {
|
||||
padding-left: 10px;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
.lv {
|
||||
background: #fed09c;
|
||||
color: #ee7510;
|
||||
font-size: 12px;
|
||||
height: 17px;
|
||||
line-height: 17px;
|
||||
border-radius: 30px;
|
||||
padding: 0 7px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
}
|
||||
|
||||
// 收益
|
||||
.income {
|
||||
background: url(../../../assets/images/rebate/2.png) no-repeat #f8f7fd;
|
||||
background-size: auto 100%;
|
||||
background-position: right;
|
||||
height: 110px;
|
||||
padding-bottom: 10px;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
justify-content: space-around;
|
||||
align-items: center;
|
||||
width: calc(100vw - 40px);
|
||||
|
||||
.block {
|
||||
.title {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.num {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 统计
|
||||
.statistics {
|
||||
box-shadow: 0 0 5px #e8f0f7;
|
||||
width: calc(100vw - 20px);
|
||||
margin: 0 10px;
|
||||
position: relative;
|
||||
top: -10px;
|
||||
background: #ffffff;
|
||||
border-bottom-left-radius: 15px;
|
||||
border-bottom-right-radius: 15px;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: wrap;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
|
||||
.block:nth-child(1) {
|
||||
width: 50%;
|
||||
margin-right: 50%;
|
||||
|
||||
.num {
|
||||
color: #fc0000;
|
||||
}
|
||||
}
|
||||
|
||||
.block {
|
||||
width: 50%;
|
||||
height: 70px;
|
||||
display: inline-flex;
|
||||
flex-direction: column;
|
||||
flex-wrap: nowrap;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
.title {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.num {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
|
||||
.withdrawal-btn {
|
||||
position: absolute;
|
||||
top: 14px;
|
||||
right: 20px;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
.qr-code-btn {
|
||||
background: #0496fd;
|
||||
color: #ffffff;
|
||||
width: 80%;
|
||||
margin-left: 10%;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
font-size: 15px;
|
||||
border-radius: 50px;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
}
|
||||
|
||||
// 追加投资
|
||||
.repurchase {
|
||||
.title {
|
||||
font-size: 15px;
|
||||
font-weight: bold;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
text-align: left;
|
||||
padding-left: 20px;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.good {
|
||||
box-shadow: 0 0 5px #e8f0f7;
|
||||
width: calc(100vw - 20px);
|
||||
margin-left: 10px;
|
||||
background: #ffffff;
|
||||
padding: 10px;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
border-radius: 10px;
|
||||
|
||||
.good-img {
|
||||
width: 80px;
|
||||
height: 80px;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
.good-info {
|
||||
width: calc(100% - 80px);
|
||||
padding-left: 10px;
|
||||
display: inline-flex;
|
||||
flex-direction: column;
|
||||
flex-wrap: nowrap;
|
||||
align-items: flex-start;
|
||||
justify-content: space-between;
|
||||
|
||||
.top-info {
|
||||
width: 100%;
|
||||
|
||||
.name {
|
||||
width: 100%;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
text-align: left;
|
||||
font-size: 15px;
|
||||
font-weight: bold;
|
||||
height: 25px;
|
||||
line-height: 25px;
|
||||
}
|
||||
|
||||
.desc {
|
||||
text-align: left;
|
||||
font-size: 13px;
|
||||
color: #b5b5b5;
|
||||
height: 20px;
|
||||
line-height: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
.bottom-info {
|
||||
width: 100%;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
align-items: flex-end;
|
||||
justify-content: space-between;
|
||||
height: 35px;
|
||||
|
||||
.price {
|
||||
font-size: 15px;
|
||||
color: #fc4546;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.repurchase-btn {
|
||||
background: #fe3233;
|
||||
color: #ffffff;
|
||||
border-radius: 50px;
|
||||
font-size: 13px;
|
||||
height: 20px;
|
||||
line-height: 20px;
|
||||
padding: 0 10px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
@ -0,0 +1,379 @@
|
|||
<template>
|
||||
<div>
|
||||
<c-title :hide="false" text="合作养殖补助" tolink="detailed"></c-title>
|
||||
<div class="content-box">
|
||||
<!--顶部信息-->
|
||||
<div class="top">
|
||||
<div class="title">合作养殖补助<span class="tips">统计全部推荐好友的补助</span></div>
|
||||
<div class="income">
|
||||
<div class="all-income">
|
||||
<div class="left">
|
||||
<div class="title">全部金额</div>
|
||||
<div class="income">{{ statistics.all_income || 0 }}</div>
|
||||
</div>
|
||||
<i class="iconfont icon-advertise-next"></i>
|
||||
</div>
|
||||
<div class="income-desc">
|
||||
<div class="box">
|
||||
<div class="name">待入账金额</div>
|
||||
<div class="num">{{ statistics.credited || 0 }}</div>
|
||||
</div>
|
||||
<div class="box">
|
||||
<div class="name">已入账金额</div>
|
||||
<div class="num">{{ statistics.recorded || 0 }}</div>
|
||||
</div>
|
||||
<div class="box">
|
||||
<div class="name">可提现金额</div>
|
||||
<div class="num">{{ statistics.withdrawable || 0 }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--等级收益-->
|
||||
<div class="lv-income">
|
||||
<!--选项卡-->
|
||||
<div class="tabs-content">
|
||||
<div class="tabs">
|
||||
<div
|
||||
:class="['tab',{'tab-active': (level_id == item.id) }]"
|
||||
v-for="(item,index) in level_list"
|
||||
:key="index"
|
||||
@click="changeLevel(item)"
|
||||
>
|
||||
{{ item.level_name }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--等级统计-->
|
||||
<div class="lv-all">
|
||||
<div class="left">{{ level_info.level_name || ''}}全部收益:{{ all_income || 0}}元</div>
|
||||
<div class="right">待入账:{{ credited || 0}}元</div>
|
||||
</div>
|
||||
<!--列表-->
|
||||
<div class="month-list">
|
||||
<template v-if="Object.values(list).length > 0">
|
||||
<div class="block" v-for="(item,index) in list" :key="index">
|
||||
<div class="left">{{ item.expect_thaw_time }}</div>
|
||||
<div class="right">
|
||||
<div class="r-left">
|
||||
<div class="title">
|
||||
收益:{{ item.dividend_amount }}元
|
||||
<!--分红状态 0未结算 1:已结算 2:冻结中-->
|
||||
<span :class="['status',{'status-no':( item.status != 1 )}]">
|
||||
{{ item.status == 1 ? '已入账' : '未入账' }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="desc">{{ item.type_name }}</div>
|
||||
</div>
|
||||
<!--<i class="iconfont icon-advertise-next"></i>-->
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<van-empty v-else description="暂无数据" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
statistics: {},
|
||||
level_list: {},
|
||||
level_id: '',
|
||||
list: {},
|
||||
all_income: 0,
|
||||
credited: 0,
|
||||
level_info: {},
|
||||
};
|
||||
},
|
||||
activated() {},
|
||||
mounted() {
|
||||
this.getStatistics();
|
||||
this.lvStatistics();
|
||||
},
|
||||
methods: {
|
||||
// 其他列表获取
|
||||
getStatistics() {
|
||||
let _this = this;
|
||||
$http.get("plugin.rebate.api.index.recommendStatistics", {}, "加载中...").then((response) => {
|
||||
_this.statistics = response.data || {};
|
||||
}, function (response) {
|
||||
_this.$dialog.alert({message: response.msg});
|
||||
});
|
||||
},
|
||||
// 获取每个等级信息
|
||||
lvStatistics(){
|
||||
let _this = this;
|
||||
$http.get("plugin.rebate.api.index.recommendLvStatistics", {level_id: _this.level_id}, "加载中...").then((response) => {
|
||||
let data = response.data || {};
|
||||
_this.level_list = data.level_list || {};
|
||||
_this.list = data.list || {};
|
||||
_this.all_income = data.all_income || 0;
|
||||
_this.credited = data.credited || 0;
|
||||
_this.level_info = data.levelInfo || {};
|
||||
_this.level_id = data.levelInfo['id'] || 0;
|
||||
}, function (response) {
|
||||
_this.$dialog.alert({message: response.msg});
|
||||
});
|
||||
},
|
||||
// 切换等级
|
||||
changeLevel(item){
|
||||
this.level_id = item.id;
|
||||
this.lvStatistics();
|
||||
}
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.content-box {
|
||||
width: 100vw !important;
|
||||
min-height: calc(100vh - 40px);
|
||||
background: linear-gradient(180deg, #5dc1f0 70px, #f6f6f6 200px);
|
||||
padding-top: 20px;
|
||||
padding-bottom: 30px;
|
||||
|
||||
.top{
|
||||
margin: 0 10px;
|
||||
width: calc(100vw - 20px);
|
||||
border-radius: 10px;
|
||||
background: url(../../../assets/images/rebate/bg.jpg) no-repeat;
|
||||
background-size: 100% auto;
|
||||
|
||||
.title{
|
||||
font-size: 15px;
|
||||
color: #ffffff;
|
||||
padding: 10px 15px;
|
||||
text-align: left;
|
||||
height: 45px;
|
||||
line-height: 25px;
|
||||
.tips{
|
||||
font-size: 13px;
|
||||
margin-left: 16px;
|
||||
position: relative;
|
||||
display: inline-flex;
|
||||
}
|
||||
.tips:after{
|
||||
content: "";
|
||||
position: absolute;
|
||||
left: -7px;
|
||||
top: 5px;
|
||||
background: #ffffff82;
|
||||
width: 1px;
|
||||
height: 15px;
|
||||
}
|
||||
}
|
||||
.income{
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
border-radius: 10px;
|
||||
background: #ffffff;
|
||||
position: relative;
|
||||
top: -5px;
|
||||
.all-income{
|
||||
width: 100%;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
.left{
|
||||
padding-left: 20px;
|
||||
height: 80px;
|
||||
display: inline-flex;
|
||||
flex-direction: column;
|
||||
align-items: flex-start;
|
||||
justify-content: center;
|
||||
.title{
|
||||
color: #808593;
|
||||
font-size: 13px;
|
||||
padding: 0;
|
||||
height: 25px;
|
||||
}
|
||||
.income{
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
color: #0075ff;
|
||||
}
|
||||
}
|
||||
.iconfont{}
|
||||
}
|
||||
.income-desc{
|
||||
width: 100%;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
align-items: center;
|
||||
justify-content: space-around;
|
||||
background: #f4f4f4;
|
||||
border-radius: 5px;
|
||||
.box{
|
||||
width: calc(100% / 3);
|
||||
padding: 10px 0;
|
||||
.name{
|
||||
color: #a8aeb7;
|
||||
font-size: 13px;
|
||||
}
|
||||
.num{
|
||||
color: #000000;
|
||||
font-size: 15px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.lv-income{
|
||||
margin: 10px 10px 0 10px;
|
||||
width: calc(100vw - 20px);
|
||||
background: #ffffff;
|
||||
.tabs-content{
|
||||
width: 100%;
|
||||
overflow: auto;
|
||||
scrollbar-width: none;
|
||||
scrollbar-color: transparent transparent;
|
||||
background: #e7f5fa;
|
||||
.tabs{
|
||||
background: #e7f5fa;
|
||||
height: 30px;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
.tab{
|
||||
width: max-content!important;
|
||||
padding: 0 15px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
}
|
||||
.tab-active{
|
||||
background: linear-gradient(45deg, #7cb7ff, #0074ff);
|
||||
color: #ffffff;
|
||||
}
|
||||
}
|
||||
}
|
||||
.tabs-content::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
.lv-all{
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
width: calc(100% - 30px);
|
||||
height: 40px;
|
||||
font-size: 13px;
|
||||
margin: 0 15px;
|
||||
border-bottom: 1px dashed #ebebeb;
|
||||
margin-bottom: 10px;
|
||||
.left{}
|
||||
.right{
|
||||
color: #bebebe;
|
||||
}
|
||||
}
|
||||
.month-list{
|
||||
.block{
|
||||
width: 100%;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
flex-wrap: nowrap;
|
||||
padding: 0 10px;
|
||||
.left{
|
||||
width: 80px;
|
||||
font-size: 14px;
|
||||
padding-right: 15px;
|
||||
text-align: right;
|
||||
height: 65px;
|
||||
padding-bottom: 10px;
|
||||
padding-top: 7px;
|
||||
position: relative;
|
||||
}
|
||||
.left:after{
|
||||
content: "";
|
||||
position: absolute;
|
||||
right: -5px;
|
||||
top: 11px;
|
||||
border: 2px solid #007aff;
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
border-radius: 50%;
|
||||
z-index: 1;
|
||||
}
|
||||
.right{
|
||||
width: calc(100% - 80px);
|
||||
padding-left: 15px;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
flex-wrap: nowrap;
|
||||
height: 65px;
|
||||
padding-bottom: 10px;
|
||||
position: relative;
|
||||
.r-left{
|
||||
display: inline-flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: flex-start;
|
||||
.title{
|
||||
height: 25px;
|
||||
line-height: 25px;
|
||||
display: inline-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: nowrap;
|
||||
align-items: center;
|
||||
justify-content: flex-start;
|
||||
.status{
|
||||
background: #0078f8;
|
||||
color: #ffffff;
|
||||
font-size: 12px;
|
||||
display: inline-block;
|
||||
height: 17px;
|
||||
line-height: 17px;
|
||||
padding: 0 5px;
|
||||
border-radius: 50px;
|
||||
margin-left: 15px;
|
||||
}
|
||||
.status-no{
|
||||
background: #b9b9b9!important;
|
||||
}
|
||||
}
|
||||
.desc{
|
||||
height: 25px;
|
||||
line-height: 25px;
|
||||
color: #8a8a8a;
|
||||
}
|
||||
}
|
||||
.iconfont{}
|
||||
}
|
||||
.right:after{
|
||||
content: "";
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
width: 1px;
|
||||
height: 65px;
|
||||
background: #d0d0d0;
|
||||
}
|
||||
}
|
||||
.block:first-child{
|
||||
.right:after{
|
||||
top: 20px!important;
|
||||
}
|
||||
}
|
||||
.block:last-child{
|
||||
.right:after{
|
||||
height: 45px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
@ -47,7 +47,7 @@
|
|||
</template>
|
||||
</van-field>
|
||||
</li>
|
||||
<li class="code" v-if="is_enable == 0">
|
||||
<!--<li class="code" v-if="is_enable == 0">
|
||||
<van-field v-model.trim="form.code" clearable type="digit" placeholder="请输入短信验证码"
|
||||
:rules="[{ required: true, message: '请输入短信验证码' }]">
|
||||
<template #label>
|
||||
|
|
@ -60,7 +60,7 @@
|
|||
<div style="font-size: 12px;" :style="'color:'+subjectColor" @click="verificationCode">{{btnText}}</div>
|
||||
</template>
|
||||
</van-field>
|
||||
</li>
|
||||
</li>-->
|
||||
<li>
|
||||
<van-field v-model.trim="form.password" clearable :type="visibleSet?'text':'password'" placeholder="请输入密码"
|
||||
:rules="[{ required: true, message: '请输入密码' }]">
|
||||
|
|
|
|||
|
|
@ -142,10 +142,10 @@ export default {
|
|||
return;
|
||||
}
|
||||
|
||||
if (this.fun.isTextEmpty(this.form.code)) {
|
||||
Toast("请填验证码");
|
||||
return;
|
||||
}
|
||||
// if (this.fun.isTextEmpty(this.form.code)) {
|
||||
// Toast("请填验证码");
|
||||
// return;
|
||||
// }
|
||||
}
|
||||
if (this.is_enable == 1) {
|
||||
if (this.fun.isTextEmpty(this.form.mobile)) {
|
||||
|
|
|
|||
|
|
@ -397,10 +397,10 @@ export default {
|
|||
return;
|
||||
}
|
||||
|
||||
if (this.fun.isTextEmpty(this.$refs.input_list.form.code) && !this.inputShowList.logPlugIn) {
|
||||
Toast("请填写验证码");
|
||||
return
|
||||
}
|
||||
// if (this.fun.isTextEmpty(this.$refs.input_list.form.code) && !this.inputShowList.logPlugIn) {
|
||||
// Toast("请填写验证码");
|
||||
// return
|
||||
// }
|
||||
}
|
||||
|
||||
if (this.fun.isTextEmpty(this.$refs.input_list.form.account) && this.inputShowList.logPlugIn) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue