sadjv3_user/pages/my/channelMerchants/myMerchants.vue

631 lines
16 KiB
Vue

<template>
<view class="content">
<view class="content-top">
<view class="bgimg">
<view class="bgimg-top">
<view class="bgimg-top-tou">
<u-avatar :src="avatar" size="120" style=" border: 2px solid #F2F2F2;"></u-avatar>
</view>
<view class="bgimg-top-view">
<view class="bgimg-top-money">
<span>{{listData.name}}</span>
</view>
</view>
</view>
<view class="mian">
<view class="mian-title" style="position: relative;">
<view class="mian-title-top">
<span class="money">{{listData.withdrawableAmount}}</span>
<span class="list-title">可提现()</span>
</view>
<view class="mian-title-top">
<span class="money">{{listData.notCredited}}</span>
<span class="list-title">未入账()</span>
</view>
<!-- <image class="bangzhu" src="../../../static/bangzhu.png" mode=""></image> -->
</view>
<view class="mian-list">
<view class="list-view">
<view class="money">{{listData.income}}</view>
<view class="list-title">累计佣金()不含手续费</view>
</view>
<view class="list-view">
<view class="money">{{listData.withdrawal}}</view>
<view class="list-title">已提现()</view>
</view>
<!-- <view class="list-view">
<view class="money">{{listData.income}}</view>
<view class="list-title">总成交金额()</view>
</view> -->
</view>
<view class="detail-btn" @click="goNav('/pages/my/applyBroker/withdrawal')">
我要提现</view>
</view>
</view>
<view class="mian-bottom">
<view class="mian-bottom-list" @click="goNav('/pages/my/applyBroker/mymoneydetail')">
<image class="mian-bottom-img" src="../../../static/my-gong-17.png" mode=""></image>
<span>我的收益</span>
</view>
<view class="mian-bottom-list" @click="goNav('/pages/my/applyBroker/myInvitation')">
<image class="mian-bottom-img" src="../../../static/my-gong-19.png" mode=""></image>
<span>我的邀请</span>
</view>
<view class="mian-bottom-list" @click="goNav('/pages/my/applyBroker/withdrawalRecord')">
<image class="mian-bottom-img" src="../../../static/navigate.png" mode=""></image>
<span>提现记录</span>
</view>
</view>
<view class="foot-img-list">
<view class="view-top">
<view class="view-top-left">
</view>
<view class="view-top-right" @click="showModal">
<image src="../../../static/map2.png" mode=""></image>
<span>渠道码</span>
</view>
</view>
<view class="liebiao">
<view v-if="codeList.length" class="flex text-center flex-wrap list-view">
<view class="margin-bottom-sm radius touxiang-left">
<view class="flex align-center touxiang-left-view" v-for="(item, index) in codeList" :key='index' @click="goOrder(item)">
<view class="touxiang-left-content">
<image style="border: 2px solid #e2e2e2;" class="touxiang-left-content-img" :src="item.artificerImg ? item.artificerImg : '../../../static/logo.png'" @click.stop="saveImgs(item.artificerImg)" mode="aspectFill"></image>
<image class="touxiang-left-content-img" v-if="item.isHot == 1" src="https://admin.sjajk.com/file/uploadPath/2023/02/16/9ae1b7e9fa931b5fc24cd8edecc10d9f.png"></image>
<image class="touxiang-frame" :src="item.technicianType=='3'?'../../../static/vip/grade1-1.gif':item.technicianType=='4'?'../../../static/vip/grade2-1.gif':'../../../static/vip/grade3-1.gif'"></image>
</view>
<view class="list-right">
<view class="flex align-center" style="justify-content: start;">
<view class="flex align-center list-right-top">
<view class="list-right-top-view">
<view class="flex">
<span class="list-right-top-name">{{ item.artificerName }}</span>
<!-- <span class="label-word">{{ item.artificerClassifyList[0].classifyName }}</span> -->
</view>
<view class="keyuyue keyuyue-lan" v-if="item.status == 1">
<view class="flex">
<view class="timea-fu">可服务</view>
<view class="timea-time">{{item.time}}</view>
</view>
</view>
<view class="keyuyue keyuyue-hui" v-else>
<view class="flex">
<view class="timea-hui">休息中</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<!-- <empty v-if="codeList.length == 0"></empty> -->
</view>
</view>
<tki-qrcode ref="qrcode" :val="url" :size="200" background="#fff" foreground="#000" pdground="#000"
:onval="true" :loadMake="true" @result="qrR" :show="false"></tki-qrcode>
<view class="cu-modal" :class="modalName == 'Image' ? 'show' : ''" @tap="hideModal">
<view class="cu-dialog" v-if="backgroundImage && erweimapath && haibaoShow" @tap="hideModal">
<view class="bg-img">
<wm-poster @success="posterSuccess" :imgSrc="backgroundImage" :Referrer="'我的邀请码:'+invitationCode"
:QrSrc="erweimapath" :Title="tuiguang" :LineType="false"></wm-poster>
</view>
</view>
</view>
</view>
</view>
</template>
<script>
import empty from '@/components/empty.vue'
import tkiQrcode from '@/components/tki-qrcode/tki-qrcode.vue';
import wmPoster from '@/components/wm-poster/wm-posterorders.vue';
export default {
components: {
wmPoster,
tkiQrcode,
empty
},
data() {
return {
url: '',
avatar: '',
listData:[],
haibaoImg: null,
haibaoShow: false,
modalName: '',
backgroundImage:'',
erweimapath: '',
invitationCode: '',
tuiguang: '',
codeList: [],
}
},
onLoad() {
this.avatar = uni.getStorageSync('avatar')
this.getData();
this.getBackImageList();
this.getUserInfo();
this.getlist();
this.tabNavSon();
this.$Request.getT('/app/common/type/116').then(res => {
if (res.code === 0) {
if (res.data && res.data.value) {
this.tuiguang = res.data.value;
this.tuiguang1 = res.data.value;
}
}
});
//检测书否开启APP微信分享
this.$Request.getT('/app/common/type/136').then(res => {
if (res.code === 0) {
if (res.data && res.data.value) {
this.isShowWxAPPShare = res.data.value;
}
}
});
// #ifndef H5
this.$Request.getT('/app/common/type/25').then(res => {
if (res.code === 0) {
if (res.data && res.data.value) {
this.url = res.data.value;
}
}
});
//#endif
},
onShareAppMessage(res) {
return {
path: '/pages/index/index?invitation=' + this.invitationCode, //这是为了传参 onload(data){let id=data.id;}
title: this.tuiguang,
imageUrl: this.bgImg
}
},
methods:{
getlist() {
var that=this;
let index = 2
let data = {
artificerName: that.artificerName,
classifyId: that.classifyId,
page: that.page,
limit: that.limit,
technicianType:that.technicianType,
by: index, //价格
latitude: that.latitude,
longitude: that.longitude,
city: that.city
}
that.$Request.get("/app/artificer/selectArtificerList", data).then(res => {
that.loading = false;
if (res.code == 0) {
for (var i = 0; i < res.data.list.length; i++) {
if (res.data.list[i].lifePhoto) {
res.data.list[i].lifePhoto = res.data.list[i].lifePhoto.split(',')
}
if (res.data.list[i].distance > 1000) {
res.data.list[i].distance = (res.data.list[i].distance / 1000).toFixed(1) +
'km'
} else {
res.data.list[i].distance = (res.data.list[i].distance).toFixed(1) + 'm'
}
}
if (that.page == 1) {
that.orderList = res.data.list
} else {
that.orderList = [...that.orderList, ...res.data.list]
}
}
uni.stopPullDownRefresh();
})
},
quding(){
this.getlist();
this.showpay = false;
},
toggle() {
this.technicianType=3;
this.showpay = true;
},
tabNavSon(){
let data = {
type: "服务类型",
}
this.$Request.get('/app/dict/list', data).then(res => {
if (res.code == 0) {
var list=[];
for(var i=0;i<res.data.length;i++){
list.push({
text:res.data[i].value,
value:res.data[i].id
})
}
this.tabListSon=list;
// this.classifyId=res.data[0].id;
this.page = 1;
}
})
},
changeClickSon(item){
var index = []
for(var i=0;i<item.detail.data.length;i++){
index.push(item.detail.data[i].value)
}
this.classifyId = index.join(",")
this.artificerName='';
this.page=1;
},
changeClick(index,item){
this.artificerName='';
this.technicianType=item.id;
this.page=1;
},
clear(res) {
let that = this
that.orderList=[];
that.technicianType=3;
that.selectedValues=[];
that.getlist()
},
getUserInfo() {
this.$Request.get("/app/user/selectUserById").then(res => {
if (res.code == 0) {
this.nickName = res.data.userName
this.invitationCode = res.data.invitationCode
this.userImageUrl = res.data.avatar ? res.data.avatar : '../../../static/logo.png'
// #ifdef H5
this.$Request.getT('/app/common/type/141').then(res => {
if (res.code === 0) {
if (res.data && res.data.value && res.data.value == '是') {
this.$Request.getT('/app/common/type/25').then(ress => {
if (ress.code === 0) {
if (ress.data && ress.data.value) {
this.url = ress.data.value;
}
}
});
} else {
this.url = this.$queue.publicYuMingApp() + '/?invitation=' + this
.invitationCode+"&flag=3";
}
}
});
//#endif
}
});
},
getBackImageList() {
this.$Request.get("/app/commission/jjr/poster").then(res => {
uni.hideLoading();
if (res.code == 0) {
this.backgroundImage = res.data.artificerImage;
}
console.log("res.data--->", this.backgroundImage);
});
// this.make();
},
make() {
uQRCode.make({
canvasId: 'default_PosterCanvasId',
componentInstance: this,
text: this.url,
size: 68,
margin: 4,
backgroundColor: '#ffffff',
foregroundColor: '#000000',
fileType: 'jpg',
correctLevel: uQRCode.errorCorrectLevel.H,
success: res => {
console.log(res)
}
})
},
hideModal() {
this.modalName = null;
},
qrR(path) {
this.erweimapath = path;
},
posterSuccess(haibaoImg) {
this.haibaoImg = haibaoImg;
this.modalName = 'Image';
},
showModal() {
if (!this.haibaoImg) {
this.haibaoShow = true;
this.$queue.showLoading('海报生成中...');
} else {
this.modalName = 'Image';
}
},
goNav(link){
uni.navigateTo({
url:link+'?navName='+'经纪人'
})
},
getData(){
this.$Request.get("/app/commission/jjr/myJjr").then(res => {
console.log("res.data--->", res.data);
if (res.code == 0) {
this.listData=res.data
}
});
}
}
}
</script>
<style scoped>
.mian-foot-top-list span:nth-child(1){
margin-bottom: 5px;
}
.mian-foot-top-list{
display: flex;
flex-direction: column;
}
.mian-foot-top{
width: 100%;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.mian-foot{
width: 93%;
margin: 0 auto;
background-color: #fff;
border-radius: 10px;
padding: 10px;
display: flex;
flex-direction: column;
align-items: center;
margin-top: 20px;
}
.bangzhu{
width: 15px;
height: 15px;
position: absolute;
right: 0;
margin-right: -20px;
top: 0;
margin-top: -10px;
}
.mian-title-top{
display: flex;
flex-direction: column;
align-items: center;
}
.foot-img-list{
width: 92%;
margin: 0 auto;
}
.foot-img image{
width:100%;
height: 100%;
}
.foot-img{
width: 100%;
height:180rpx;
margin: 0 auto;
margin-top:20rpx;
}
.mian-bottom-list span{
color: #333;
font-size: 14px;
font-weight: bold;
margin-top: 5px;
}
.mian-bottom-list{
width:30%;
display: flex;
flex-direction: column;
align-items: center;
}
.mian-bottom-img{
height: 40px;
width: 40px;
flex: 0 0 40px;
background-color: transparent;
border-radius: 500px;
}
.mian-bottom{
width: 93%;
margin: 0 auto;
background-color: #fff;
border-radius: 10px;
padding: 10px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
margin-top: 185px;
}
.mian-top-title{
color: #333;
font-size: 16px;
font-weight: bold;
}
.money{
color: #333;
font-size: 15px;
font-weight: bold;
}
.list-title{
margin-top: 5px;
font-size: 12px;
color: #B8B8B8;
font-weight: 400;
}
.list-view{
width:30%;
display: flex;
flex-direction: column;
align-items: center;
}
.mian-list{
width:100%;
display: flex;
flex-direction: row;
justify-content: space-between;
margin-bottom: 20px;
}
.mian-title{
width:100%;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
padding-bottom: 15px;
border-bottom: 1px solid #ccc;
margin-bottom: 15px;
}
.mian{
width: 100%;
margin: 0 auto;
background-color: #fff;
border-radius: 10px;
padding: 15px 26px;
display: flex;
flex-direction: column;
margin-top: 15px;
}
.detail-btn{
display: inline-block;
width: 92%;
text-align: center;
background: linear-gradient(90deg, #019C88, #28BA92, #35C495);
height: 40px;
border-radius: 28px;
color: #ffffff;
line-height: 40px;
margin: 0 auto;
margin-top: 4px;
font-size: 34rpx;
}
.content-top{
width: 100%;
height: 100%;
}
.content{
width: 100%;
height: 100vh;
padding-bottom: 10rpx;
background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), #f7f7f7), url('../../../static/background-img.png');
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
}
page {
background-color: #F7F7F7;
}
.bgimg-top-money span:nth-child(1){
font-weight: bold;
font-size: 43rpx;
color: #FFFFFF;
}
.bgimg-top-money span:nth-child(2){
font-weight: 400;
font-size: 25rpx;
color: #FFFFFF;
margin-top:4px;
}
.bgimg-top-money{
display: flex;
flex-direction: column;
margin-left: 10px;
}
.bgimg-top-view{
width: 80%;
display: flex;
flex-direction: row;
justify-content: space-between;
}
.bgimg-top{
width: 100%;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
margin-top: 15rpx;
}
.bgimg {
background: url(../../../static/wallet/reduce.png);
background-size: cover;
width: 100%;
height: 150px;
position: relative;
margin: 0px auto 10px auto;
display: flex;
flex-direction: column;
justify-content: space-between;
padding: 15px;
}
.mingxi{
width: 140rpx;
height: 42rpx;
line-height: 42rpx;
text-align: center;
background: #F5F7FB;
border-radius: 21rpx;
font-weight: bold;
font-size: 22rpx;
color: #333333;
}
.view-top-right image{
width: 20px;
height: 20px;
}
.view-top-right span{
color: #fff;
font-size: 14px;
margin-left: 5px;
}
.view-top-right{
display: flex;
flex-direction: row;
align-items: center;
padding: 5px;
border-top-left-radius: 31px;
border-bottom-left-radius: 31px;
background:RGB(1,156,136,0.9);
position: absolute;
right: 0;
margin-right: -17px;
}
.view-top-left{
display: flex;
flex-direction: row;
align-items: center;
}
.view-top-left span:nth-child(1){
font-size: 13px;
}
.view-top-left span:nth-child(2){
font-size: 14px;
margin-left: 5px;
}
.view-top-left span{
color: #fff;
}
.view-top{
margin-top: 30px;
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
position: relative;
justify-content: space-between;
}
.liebiao{
//height: 100vh;
margin-top: 85px;
display: flex;
flex-direction: column;
}
</style>