|
@@ -0,0 +1,908 @@
|
|
|
|
+<template>
|
|
|
|
+ <view>
|
|
|
|
+ <loading-view v-if="showLoading"></loading-view>
|
|
|
|
+ <u-notice-bar :show="showTips" mode="horizontal" :list="list" :font-size="26" :close-icon="true" :speed="100"
|
|
|
|
+ @close="showTips = false"></u-notice-bar>
|
|
|
|
+ <view class="user-spread">
|
|
|
|
+ <view class="header p-t-40 m-b-50">
|
|
|
|
+ <view class="user-info flex m-l-30">
|
|
|
|
+ <view class="user-avatar"><u-image width="110rpx" height="110rpx" border-radius="60"
|
|
|
|
+ :src="userInfo.user.avatar" /></view>
|
|
|
|
+ <view class="user-message m-l-20 white">
|
|
|
|
+ <view class="left">
|
|
|
|
+ <view class="m-b-10">
|
|
|
|
+ <view class="xxl bold m-r-20">{{ userInfo.user.nickname }}</view>
|
|
|
|
+ </view>
|
|
|
|
+
|
|
|
|
+ <view class="xs flex">
|
|
|
|
+ 上级分销商:{{ userInfo.leader.nickname ? userInfo.leader.nickname : '无' }}
|
|
|
|
+ <view v-if="!userInfo.leader.nickname"
|
|
|
|
+ class="br60 white write-btn flex row-center m-l-30 xxs" @tap="showInvitePop">填写
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="avatar-tag white xxs text-center m-b-10" v-if="data.business_name">{{ data.business_name }}
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+
|
|
|
|
+ <view class="main">
|
|
|
|
+ <!-- 填表格 -->
|
|
|
|
+ <view v-if="vipState == 0" class="user-apply-box">
|
|
|
|
+ <view class="user-apply-vip flex-col col-center">
|
|
|
|
+ <view class="user-apply-header flex-col col-center">
|
|
|
|
+ <view class="title xxl normal">申请成为分销会员</view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="vip-form">
|
|
|
|
+ <view class="form-item">
|
|
|
|
+ <u-field v-model="realName" :label-width="150" label="真实姓名:" :border-bottom="false"
|
|
|
|
+ placeholder="请输入您的真实姓名"></u-field>
|
|
|
|
+ </view>
|
|
|
|
+
|
|
|
|
+ <view class="form-item">
|
|
|
|
+ <u-field v-model="mobile" :label-width="150" label="手机号码:" :border-bottom="false"
|
|
|
|
+ placeholder="请输入您的手机号码"></u-field>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="form-item" @tap="showRegion = true">
|
|
|
|
+ <u-field v-model="region" disabled right-icon="arrow-right" :label-width="150"
|
|
|
|
+ label="现住省份:" :border-bottom="false" placeholder="请选择省、市、区"></u-field>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="form-item">
|
|
|
|
+ <u-field v-model="reason" :label-width="150" type="textarea" label="申请原因:"
|
|
|
|
+ placeholder="(必填)" :field-style="{ height: '250rpx' }" />
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ <button class="apply-btn bg-primary white md m-t-20 flex row-center br60"
|
|
|
|
+ @tap="formSubmit">立即申请</button>
|
|
|
|
+ <view class="m-t-20 xxs lighter flex row-center">提交成功后,我们将会在1-2个工作日内给您回复</view>
|
|
|
|
+ </view>
|
|
|
|
+
|
|
|
|
+ <!-- 申请状态 -->
|
|
|
|
+ <view v-if="vipState == 1" class="user-result-box">
|
|
|
|
+ <view class="user-result flex-col col-center">
|
|
|
|
+ <view class="user-result-header flex-col col-center">
|
|
|
|
+ <view class="title xxl normal">申请成为分销会员</view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="user-result-content flex-col col-center">
|
|
|
|
+ <image class="apply-result-img"
|
|
|
|
+ :src="applyObject.status == 2 ? '/static/images/icon_fail.png' : '/static/images/icon_success.png'" />
|
|
|
|
+ <view class="m-t-10 nr" style="line-height: 40rpx">{{ applyObject.status_str }}</view>
|
|
|
|
+ <view class="apply-fail-reason sm"
|
|
|
|
+ :style="applyObject == 2 ? 'visibility: none' : 'visibility: hidden'">
|
|
|
|
+ {{ applyObject.reason }}
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="user-result-info">
|
|
|
|
+ <view class="info-item flex nr">
|
|
|
|
+ <view class="label">真实姓名:</view>
|
|
|
|
+ <view class="info-text ml20">{{ applyObject.real_name }}</view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="info-item flex nr">
|
|
|
|
+ <view class="label">手机号码:</view>
|
|
|
|
+ <view class="info-text ml20">{{ applyObject.mobile }}</view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="info-item flex nr">
|
|
|
|
+ <view class="label">现住省份:</view>
|
|
|
|
+ <view class="info-text ml20">{{ applyObject.province }} {{ applyObject.city }}
|
|
|
|
+ {{ applyObject.district }}
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="info-item flex nr">
|
|
|
|
+ <view class="label">申请原因:</view>
|
|
|
|
+ <view class="info-text ml20">{{ applyObject.reason ? applyObject.reason : '-' }}</view>
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ <view :class="'white m-t-20 br60 apply-btn flex row-center md bg-primary'" @tap="reApply">重新申请
|
|
|
|
+ </view>
|
|
|
|
+ <view class="m-t-20 xxs lighter flex row-center">提交成功后,我们将会在1-2个工作日内给您回复</view>
|
|
|
|
+ </view>
|
|
|
|
+
|
|
|
|
+ <!-- 已申请 -->
|
|
|
|
+ <view v-if="vipState == 2" class="user-vip">
|
|
|
|
+ <view class="user-assets-box">
|
|
|
|
+ <!-- <view class="user-assets-header flex row-between">
|
|
|
|
+ <view class="flex nr bold" style="line-height: 80rpx;color: #8F430E;">
|
|
|
|
+ 可提现佣金:
|
|
|
|
+ <price-format weight="bold" :first-size="36" :subscript-size="26" :second-size="36"
|
|
|
|
+ :price="distributionInfo.able_withdrawal" :color="colorConfig.primary" />
|
|
|
|
+ </view>
|
|
|
|
+ <navigator hover-class="none" class="primary-btn white flex row-center"
|
|
|
|
+ url="/bundle/pages/user_withdraw/user_withdraw">立即提现</navigator>
|
|
|
|
+ </view> -->
|
|
|
|
+ <!-- <view class="user-assets-content flex flex-wrap">
|
|
|
|
+ <view class="user-item flex-col col-center">
|
|
|
|
+ <tool-tip v-if="false" class="m-t-20" id="today-profit" content="今日预估收益金额"
|
|
|
|
+ style="position: absolute;right: -66rpx;"></tool-tip>
|
|
|
|
+ <view class="nr user-assets-name flex" style="color: #8F430E">
|
|
|
|
+ 今日预估收益
|
|
|
|
+ <u-icon class="ml10" name="question-circle" size="30rpx" color="#D88D5A" />
|
|
|
|
+ </view>
|
|
|
|
+ <view class="assets m-l-20">
|
|
|
|
+ <price-format weight="bold" :first-size="36" :subscript-size="26" :second-size="36"
|
|
|
|
+ :price="distributionInfo.today_earnings" :color="colorConfig.primary" />
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="user-item flex-col col-center">
|
|
|
|
+ <view class="nr user-assets-name flex" style="color: #8F430E">
|
|
|
|
+ 本月预估收益
|
|
|
|
+ <u-icon class="ml10" name="question-circle" size="30rpx" color="#D88D5A" />
|
|
|
|
+ </view>
|
|
|
|
+ <view class="assets m-l-20">
|
|
|
|
+ <price-format weight="bold" :first-size="36" :subscript-size="26" :second-size="36"
|
|
|
|
+ :price="distributionInfo.month_earnings" :color="colorConfig.primary" />
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="user-item flex-col col-center">
|
|
|
|
+ <view class="nr user-assets-name flex" style="color: #8F430E">
|
|
|
|
+ 累计获得收益
|
|
|
|
+ <u-icon class="ml10" name="question-circle" size="30rpx" color="#D88D5A" />
|
|
|
|
+ </view>
|
|
|
|
+ <view class="assets">
|
|
|
|
+ <price-format weight="bold" :first-size="36" :subscript-size="26" :second-size="36"
|
|
|
|
+ :price="distributionInfo.history_earnings" :color="colorConfig.primary" />
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ </view> -->
|
|
|
|
+ </view>
|
|
|
|
+
|
|
|
|
+ <view class="account bg-white radius10">
|
|
|
|
+ <view class="top d-flex justify-content-between align-items-center">
|
|
|
|
+ <view class="item">
|
|
|
|
+ <view class="txt">抵用券余额</view>
|
|
|
|
+ <view class="num">{{ data.energy ? data.energy : 0 }}</view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="item">
|
|
|
|
+ <view class="txt">今日抵用券收益</view>
|
|
|
|
+ <view class="num">{{ data.todayenergy ? data.todayenergy : 0 }}</view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="item">
|
|
|
|
+ <view class="txt">邀请有效账号</view>
|
|
|
|
+ <view class="num">{{ data.ztui ? data.ztui : 0 }}</view>
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="wrap">
|
|
|
|
+ <view class="acc-data d-flex justify-content-between flex-wrap">
|
|
|
|
+ <view class="item">
|
|
|
|
+ <view class="txt">累计推荐商家(奖励抵用券)</view>
|
|
|
|
+ <view class="num">{{ data.tshopenergy ? data.tshopenergy : 0 }}</view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="item">
|
|
|
|
+ <view class="txt">累计推荐用户(奖励抵用券)</view>
|
|
|
|
+ <view class="num">{{ data.tuserenergy ? data.tuserenergy : 0 }}</view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="item">
|
|
|
|
+ <view class="txt">月度收益抵用券</view>
|
|
|
|
+ <view class="num">{{ data.menergy ? data.menergy : 0 }}</view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="item">
|
|
|
|
+ <view class="txt">总收益抵用券</view>
|
|
|
|
+ <view class="num">{{ data.totalenergy ? data.totalenergy : 0 }}</view>
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ <router-link to="/pages/user/energy-transfer?type=1"><button
|
|
|
|
+ class="btn">转让抵用券</button></router-link>
|
|
|
|
+ <!-- <router-link to="/pages/user/energy-transfer?type=2"><button
|
|
|
|
+ class="btn blue">抵用券馈赠</button></router-link> -->
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+
|
|
|
|
+ <view class="user-code d-flex justify-content-between align-items-center bg-white radius10">
|
|
|
|
+ <view class="title">
|
|
|
|
+ 我的邀请码
|
|
|
|
+ <text class="tip">点击复制即可</text>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="code" @tap="onCopy">{{ userInfo.user.distribution_code }}</view>
|
|
|
|
+ </view>
|
|
|
|
+
|
|
|
|
+ <view class="mt20 fans-msg-box flex bg-white md">
|
|
|
|
+ <router-link class="flex-1" to="/bundle/pages/user_fans/user_fans">
|
|
|
|
+ <view class="my-fans flex row-center normal">
|
|
|
|
+ 我的粉丝
|
|
|
|
+ <view class="primary m-l-10">{{ distributionInfo.fans }}</view>
|
|
|
|
+ <u-icon class="m-l-10" name="arrow-right" size="28rpx" color="#666" />
|
|
|
|
+ </view>
|
|
|
|
+ </router-link>
|
|
|
|
+ </view>
|
|
|
|
+
|
|
|
|
+ <view class="menu bg-white radius10">
|
|
|
|
+ <router-link to="/pages/user/energy-detials">
|
|
|
|
+ <view class="item d-flex justify-content-between align-items-center">
|
|
|
|
+ <view class="title">抵用券明细</view>
|
|
|
|
+ <text class="iconfont"></text>
|
|
|
|
+ </view>
|
|
|
|
+ </router-link>
|
|
|
|
+
|
|
|
|
+ <view class="item d-flex justify-content-between align-items-center">
|
|
|
|
+ <view class="title">推广商家</view>
|
|
|
|
+ <text class="num">{{ data.tshop ? data.tshop : 0 }}家</text>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="item d-flex justify-content-between align-items-center">
|
|
|
|
+ <view class="title">推广用户</view>
|
|
|
|
+ <text class="num">{{ data.tuser ? data.tuser : 0 }}人</text>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="item d-flex justify-content-between align-items-center">
|
|
|
|
+ <view class="title">奖励规则</view>
|
|
|
|
+ <text class="iconfont"></text>
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+
|
|
|
|
+ <!-- <view class="my-invite-box m-t-20 bg-white flex-col col-center">
|
|
|
|
+ <view class="my-invite-title sm normal">我的邀请码</view>
|
|
|
|
+ <view class="flex bold m-t-20" style="font-size: 42rpx;line-height: 30rpx">
|
|
|
|
+ {{userInfo.user.distribution_code}}
|
|
|
|
+ <view class="invite-copy-btn m-l-10 xxs" @click="onCopy">点击复制</view>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="row-center my-promote-banner bg-primary white">我的推广海报</view>
|
|
|
|
+ </view> -->
|
|
|
|
+
|
|
|
|
+ <!-- <view class="usual-tools-box bg-white m-t-20">
|
|
|
|
+ <view class="usual-tools-header flex lg bold">
|
|
|
|
+ 常用工具
|
|
|
|
+ </view>
|
|
|
|
+ <view class="usual-content flex">
|
|
|
|
+
|
|
|
|
+ <router-link class="usual-item" to="/bundle/pages/user_spread_order/user_spread_order">
|
|
|
|
+ <view class="flex-col col-center">
|
|
|
|
+ <image src="/bundle/static/icon_fenxiao.png" class="usual-item-img"></image>
|
|
|
|
+ <view class="nr normal m-t-20" style="line-height: 40rpx">分销订单</view>
|
|
|
|
+ </view>
|
|
|
|
+ </router-link>
|
|
|
|
+ <router-link class="usual-item" to="/bundle/pages/commission_details/commission_details">
|
|
|
|
+ <view class="flex-col col-center">
|
|
|
|
+ <image src="/bundle/static/icon_yongjin.png" class="usual-item-img"></image>
|
|
|
|
+ <view class="nr normal m-t-20" style="line-height: 40rpx">佣金明细</view>
|
|
|
|
+ </view>
|
|
|
|
+ </router-link>
|
|
|
|
+ <router-link class="usual-item" to="/bundle/pages/monthly_bill/monthly_bill">
|
|
|
|
+ <view class="flex-col col-center">
|
|
|
|
+ <image src="/bundle/static/icon_zhangdan.png" class="usual-item-img"></image>
|
|
|
|
+ <view class="nr normal m-t-20" style="line-height: 40rpx">月度账单</view>
|
|
|
|
+ </view>
|
|
|
|
+ </router-link>
|
|
|
|
+ </view>
|
|
|
|
+ </view> -->
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+ <u-popup v-model="showPop" mode="center" closeable border-radius="30">
|
|
|
|
+ <view class="inviteform-contain flex-col col-center">
|
|
|
|
+ <view class="title xl">填写邀请人</view>
|
|
|
|
+ <view class="input-row flex">
|
|
|
|
+ <view style="width: 140rpx;">邀请码:</view>
|
|
|
|
+ <u-input :clearable="false" v-model="inviteCodes" placeholder="请输入邀请码"></u-input>
|
|
|
|
+ </view>
|
|
|
|
+ <view class="btn bg-primary white flex row-center" @tap="bindSuperiorFun">确定</view>
|
|
|
|
+ </view>
|
|
|
|
+ </u-popup>
|
|
|
|
+ <u-select v-model="showRegion" mode="mutil-column-auto" @confirm="regionChange"
|
|
|
|
+ :list="regionLists"></u-select>
|
|
|
|
+ </view>
|
|
|
|
+ </view>
|
|
|
|
+</template>
|
|
|
|
+
|
|
|
|
+<script>
|
|
|
|
+ import {
|
|
|
|
+ bindSuperior,
|
|
|
|
+ applyDistribute,
|
|
|
|
+ applyDetail,
|
|
|
|
+ getSuperiorInfo,
|
|
|
|
+ getDistribution,
|
|
|
|
+ veryfiyDistribute
|
|
|
|
+ } from '@/api/user';
|
|
|
|
+ import area from '@/utils/area';
|
|
|
|
+ import {
|
|
|
|
+ copy
|
|
|
|
+ } from '@/utils/tools';
|
|
|
|
+ import {
|
|
|
|
+ apiEnergy
|
|
|
|
+ } from '@/api/shop.js';
|
|
|
|
+ import {
|
|
|
|
+ mapGetters,
|
|
|
|
+ mapActions
|
|
|
|
+ } from 'vuex';
|
|
|
|
+ export default {
|
|
|
|
+ data() {
|
|
|
|
+ return {
|
|
|
|
+ list: ['成为分销会员,推广下级可获得额外收益,推广越多收益越多'],
|
|
|
|
+ showTips: true,
|
|
|
|
+ showLoading: true,
|
|
|
|
+ // 弹窗展示
|
|
|
|
+ showPop: false,
|
|
|
|
+ inviteCodes: '',
|
|
|
|
+ mobile: '',
|
|
|
|
+ realName: '',
|
|
|
|
+ reason: '',
|
|
|
|
+ region: '',
|
|
|
|
+ // 省id
|
|
|
|
+ provinceId: -1,
|
|
|
|
+ // 市id
|
|
|
|
+ cityId: -1,
|
|
|
|
+ // 区ID
|
|
|
|
+ districtId: -1,
|
|
|
|
+ // 推销状态 0 ==> 未申请 1 ==> 申请进度 2 ==> 已申请
|
|
|
|
+ vipState: 0,
|
|
|
|
+ userInfo: {
|
|
|
|
+ user: {},
|
|
|
|
+ leader: {}
|
|
|
|
+ },
|
|
|
|
+ // 审核信息对象
|
|
|
|
+ applyObject: {},
|
|
|
|
+ // 邀请人状态
|
|
|
|
+ inviteStatus: false,
|
|
|
|
+ showRegion: false,
|
|
|
|
+ regionLists: area,
|
|
|
|
+ distributionInfo: {},
|
|
|
|
+ data: {}
|
|
|
|
+ };
|
|
|
|
+ },
|
|
|
|
+ onLoad(options) {
|
|
|
|
+ // 获取上级及个人信息
|
|
|
|
+ this.getSuperiorInfoFun();
|
|
|
|
+ // 判断是否是分销会员
|
|
|
|
+ this.veryfiyDistributeFun();
|
|
|
|
+ },
|
|
|
|
+ onShow() {
|
|
|
|
+ this.getEnergy();
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ methods: {
|
|
|
|
+ ...mapActions(['getUser']),
|
|
|
|
+ // 分销会员信息
|
|
|
|
+ async getDistributionFun() {
|
|
|
|
+ const {
|
|
|
|
+ data,
|
|
|
|
+ code
|
|
|
|
+ } = await getDistribution();
|
|
|
|
+ if (code == 1) {
|
|
|
|
+ this.showLoading = false;
|
|
|
|
+ this.distributionInfo = data;
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ async getEnergy() {
|
|
|
|
+ const {
|
|
|
|
+ data,
|
|
|
|
+ code
|
|
|
|
+ } = await apiEnergy();
|
|
|
|
+ if (code == 1) {
|
|
|
|
+ console.log(data);
|
|
|
|
+ this.data = data;
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ veryfiyDistributeFun() {
|
|
|
|
+ veryfiyDistribute().then(res => {
|
|
|
|
+ if (res.code == 10001) {
|
|
|
|
+ // 分销会员
|
|
|
|
+ this.vipState = 2;
|
|
|
|
+ this.getDistributionFun();
|
|
|
|
+ } else if (res.code == 20001) {
|
|
|
|
+ // 非分销会员
|
|
|
|
+ this.vipState = 0;
|
|
|
|
+ this.applyDetailFun();
|
|
|
|
+ } else if (res.code == 0) {
|
|
|
|
+ // 返回上一页
|
|
|
|
+ setTimeout(() => {
|
|
|
|
+ uni.navigateBack();
|
|
|
|
+ }, 500);
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ // 最新分销会员申请详情
|
|
|
|
+ async applyDetailFun() {
|
|
|
|
+ const {
|
|
|
|
+ data,
|
|
|
|
+ code
|
|
|
|
+ } = await applyDetail();
|
|
|
|
+ if (code == 1) {
|
|
|
|
+ this.showLoading = false;
|
|
|
|
+ switch (data.status) {
|
|
|
|
+ case 0:
|
|
|
|
+ // 待审核
|
|
|
|
+ case 2:
|
|
|
|
+ // 审核不通过
|
|
|
|
+ this.vipState = 1;
|
|
|
|
+ this.applyObject = data;
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ reApply() {
|
|
|
|
+ this.vipState = 0;
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ regionChange(region) {
|
|
|
|
+ this.region = region[0].label + ' ' + region[1].label + ' ' + region[2].label;
|
|
|
|
+ this.provinceId = region[0].value;
|
|
|
|
+ this.cityId = region[1].value;
|
|
|
|
+ this.districtId = region[2].value;
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ async formSubmit() {
|
|
|
|
+ let {
|
|
|
|
+ provinceId,
|
|
|
|
+ cityId,
|
|
|
|
+ districtId,
|
|
|
|
+ reason,
|
|
|
|
+ mobile,
|
|
|
|
+ realName,
|
|
|
|
+ region
|
|
|
|
+ } = this;
|
|
|
|
+
|
|
|
|
+ if (!realName) {
|
|
|
|
+ this.$toast({
|
|
|
|
+ title: '请填写真实姓名'
|
|
|
|
+ });
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (!region.length) {
|
|
|
|
+ this.$toast({
|
|
|
|
+ title: '请选择省市区'
|
|
|
|
+ });
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ let params = {
|
|
|
|
+ real_name: realName,
|
|
|
|
+ province: provinceId,
|
|
|
|
+ city: cityId,
|
|
|
|
+ district: districtId,
|
|
|
|
+ reason: reason,
|
|
|
|
+ mobile
|
|
|
|
+ };
|
|
|
|
+ const {
|
|
|
|
+ data,
|
|
|
|
+ code,
|
|
|
|
+ msg
|
|
|
|
+ } = await applyDistribute(params);
|
|
|
|
+ if (code == 1) {
|
|
|
|
+ this.$toast({
|
|
|
|
+ title: msg
|
|
|
|
+ });
|
|
|
|
+ this.applyDetailFun();
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ // 填写邀请码
|
|
|
|
+ bindSuperiorFun() {
|
|
|
|
+ bindSuperior({
|
|
|
|
+ code: this.inviteCodes
|
|
|
|
+ }).then(res => {
|
|
|
|
+ this.$toast({
|
|
|
|
+ title: res.msg
|
|
|
|
+ });
|
|
|
|
+ if (res.code == 1) {
|
|
|
|
+ this.showPop = false;
|
|
|
|
+ this.getSuperiorInfoFun();
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ showInvitePop() {
|
|
|
|
+ this.showPop = true;
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ // 获取邀请人信息
|
|
|
|
+ async getSuperiorInfoFun() {
|
|
|
|
+ const {
|
|
|
|
+ data,
|
|
|
|
+ code
|
|
|
|
+ } = await getSuperiorInfo();
|
|
|
|
+ if (code == 1) {
|
|
|
|
+ this.userInfo = data;
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ onCopy() {
|
|
|
|
+ copy(this.userInfo.user.distribution_code);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ };
|
|
|
|
+</script>
|
|
|
|
+<style lang="scss">
|
|
|
|
+ page {
|
|
|
|
+ background: #f3f4f6 url('https://shop.xianghuaqi.net.cn/images/treasureBg.png') no-repeat;
|
|
|
|
+ background-size: 100%;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .user-spread {
|
|
|
|
+ // background-image: url(../../static/spread_top_bg.png);
|
|
|
|
+ background-repeat: no-repeat;
|
|
|
|
+ background-size: 100% auto;
|
|
|
|
+
|
|
|
|
+ .header {
|
|
|
|
+ display: flex;
|
|
|
|
+ justify-content: space-between;
|
|
|
|
+ align-items: center;
|
|
|
|
+
|
|
|
|
+ .user-info {
|
|
|
|
+ .user-avatar {
|
|
|
|
+ position: relative;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .user-message {
|
|
|
|
+ .write-btn {
|
|
|
|
+ height: 42rpx;
|
|
|
|
+ width: 100rpx;
|
|
|
|
+ background-color: #ff838d;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .avatar-tag {
|
|
|
|
+ background: linear-gradient(151deg, #ffe9d1 0%, #ffd2a7 100%);
|
|
|
|
+ border-radius: 14px;
|
|
|
|
+ font-size: 24rpx;
|
|
|
|
+ color: #f73e33;
|
|
|
|
+ width: 160rpx;
|
|
|
|
+ height: 56rpx;
|
|
|
|
+ text-align: center;
|
|
|
|
+ line-height: 56rpx;
|
|
|
|
+ margin-right: 20rpx;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .main {
|
|
|
|
+ padding: 0 20rpx;
|
|
|
|
+
|
|
|
|
+ .user-vip {
|
|
|
|
+ .user-assets-box {
|
|
|
|
+ background-color: #fff;
|
|
|
|
+ border-radius: 20rpx;
|
|
|
|
+ padding: 10rpx 20rpx 22rpx;
|
|
|
|
+ background: linear-gradient(90deg, #fbefdb 0%, #fed09e 100%);
|
|
|
|
+ display: none;
|
|
|
|
+
|
|
|
|
+ .user-assets-header {
|
|
|
|
+ border-bottom: 1rpx dashed #8f430e;
|
|
|
|
+ padding-bottom: 4rpx;
|
|
|
|
+
|
|
|
|
+ .primary-btn {
|
|
|
|
+ height: 54rpx;
|
|
|
|
+ border-radius: 120rpx;
|
|
|
|
+ width: 144rpx;
|
|
|
|
+ background: linear-gradient(180deg, #ff3067 0%, #ff2c3c 100%);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .user-assets-content {
|
|
|
|
+ margin-top: 30rpx;
|
|
|
|
+
|
|
|
|
+ .user-item {
|
|
|
|
+ flex: 1;
|
|
|
|
+ position: relative;
|
|
|
|
+
|
|
|
|
+ .user-assets-name {
|
|
|
|
+ text-align: left;
|
|
|
|
+ align-self: flex-start;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .assets {
|
|
|
|
+ margin-top: 14rpx;
|
|
|
|
+ text-align: left;
|
|
|
|
+ align-self: flex-start;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .fans-msg-box {
|
|
|
|
+ border-radius: 10rpx;
|
|
|
|
+ line-height: 42rpx;
|
|
|
|
+
|
|
|
|
+ .my-fans {
|
|
|
|
+ height: 120rpx;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .line {
|
|
|
|
+ width: 3rpx;
|
|
|
|
+ height: 60rpx;
|
|
|
|
+ background-color: #e5e5e5;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .invite-fans {
|
|
|
|
+ height: 120rpx;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .my-invite-box {
|
|
|
|
+ padding: 26rpx 0 57rpx;
|
|
|
|
+ border-radius: 10rpx;
|
|
|
|
+
|
|
|
|
+ .invite-copy-btn {
|
|
|
|
+ line-height: 30rpx;
|
|
|
|
+ padding: 10rpx;
|
|
|
|
+ background: linear-gradient(90deg, #fee4b4 0%, #fbcb96 100%);
|
|
|
|
+ color: #8f430e;
|
|
|
|
+ border-radius: 4rpx;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .my-promote-banner {
|
|
|
|
+ margin-top: 30rpx;
|
|
|
|
+ height: 148rpx;
|
|
|
|
+ width: 542rpx;
|
|
|
|
+ border-radius: 10rpx;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .usual-tools-box {
|
|
|
|
+ border-radius: 10rpx;
|
|
|
|
+ padding: 0 25rpx;
|
|
|
|
+
|
|
|
|
+ .usual-tools-header {
|
|
|
|
+ height: 100rpx;
|
|
|
|
+ line-height: 44rpx;
|
|
|
|
+ border-bottom: $-solid-border;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .usual-content {
|
|
|
|
+ padding: 40rpx 0;
|
|
|
|
+
|
|
|
|
+ .usual-item {
|
|
|
|
+ width: 25%;
|
|
|
|
+
|
|
|
|
+ .usual-item-img {
|
|
|
|
+ width: 56rpx;
|
|
|
|
+ height: 56rpx;
|
|
|
|
+ flex: none;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .user-apply-box {
|
|
|
|
+ .user-apply-vip {
|
|
|
|
+ background-color: white;
|
|
|
|
+ padding: 40rpx 0 0rpx;
|
|
|
|
+ border-radius: 20rpx;
|
|
|
|
+
|
|
|
|
+ .title {
|
|
|
|
+ line-height: 30rpx;
|
|
|
|
+ font-weight: bold;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .explain {
|
|
|
|
+ margin-top: 20rpx;
|
|
|
|
+
|
|
|
|
+ image {
|
|
|
|
+ width: 24rpx;
|
|
|
|
+ height: 24rpx;
|
|
|
|
+ flex: none;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ span {
|
|
|
|
+ font-size: 20rpx;
|
|
|
|
+ line-height: 30rpx;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .vip-form {
|
|
|
|
+ width: 100%;
|
|
|
|
+ margin-top: 60rpx;
|
|
|
|
+
|
|
|
|
+ .form-item {
|
|
|
|
+ border: $-solid-border;
|
|
|
|
+ margin: 0 30rpx 30rpx;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .apply-btn {
|
|
|
|
+ line-height: 30rpx;
|
|
|
|
+ height: 82rpx;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .user-result-box {
|
|
|
|
+ .user-result {
|
|
|
|
+ background-color: white;
|
|
|
|
+ padding: 36rpx 14rpx 50rpx;
|
|
|
|
+ border-radius: 20rpx;
|
|
|
|
+
|
|
|
|
+ .user-result-header {
|
|
|
|
+ .title {
|
|
|
|
+ line-height: 30rpx;
|
|
|
|
+ font-weight: bold;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .user-result-content {
|
|
|
|
+ padding: 60rpx 0 22rpx;
|
|
|
|
+ width: 100%;
|
|
|
|
+ border-bottom: $-solid-border;
|
|
|
|
+
|
|
|
|
+ .apply-result-img {
|
|
|
|
+ width: 100rpx;
|
|
|
|
+ height: 100rpx;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .user-result-info {
|
|
|
|
+ margin-top: 42rpx;
|
|
|
|
+ width: 100%;
|
|
|
|
+
|
|
|
|
+ .info-item {
|
|
|
|
+ margin-left: 60rpx;
|
|
|
|
+ margin-bottom: 28rpx;
|
|
|
|
+ line-height: 30rpx;
|
|
|
|
+
|
|
|
|
+ .label {
|
|
|
|
+ width: 140rpx;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .apply-btn {
|
|
|
|
+ line-height: 30rpx;
|
|
|
|
+ height: 82rpx;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .bg-gray {
|
|
|
|
+ background-color: #cccccc;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .main .user-apply-box .apply-btn {
|
|
|
|
+ line-height: 30rpx;
|
|
|
|
+ height: 82rpx;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .main .user-result-box .user-result-content .apply-fail-reason {
|
|
|
|
+ color: $-color-primary;
|
|
|
|
+ line-height: 36rpx;
|
|
|
|
+ margin-top: 10rpx;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /* 弹窗 */
|
|
|
|
+ .inviteform-contain {
|
|
|
|
+ padding-left: 30rpx;
|
|
|
|
+ padding-right: 30rpx;
|
|
|
|
+ padding-bottom: 30rpx;
|
|
|
|
+ width: 580rpx;
|
|
|
|
+ border-radius: 6rpx;
|
|
|
|
+ background-color: $-color-white;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .inviteform-contain .title {
|
|
|
|
+ padding: 26rpx 0rpx;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .inviteform-contain .modify-row {
|
|
|
|
+ padding: 32rpx 0px;
|
|
|
|
+ width: 100%;
|
|
|
|
+ border-bottom: 1rpx solid #e5e5e5;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .inviteform-contain .btn {
|
|
|
|
+ height: 80rpx;
|
|
|
|
+ padding: 0 180rpx;
|
|
|
|
+ border-radius: 10rpx;
|
|
|
|
+ margin-top: 60rpx;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .account {
|
|
|
|
+ margin: 32rpx auto;
|
|
|
|
+
|
|
|
|
+ .top {
|
|
|
|
+ background: linear-gradient(158deg, #fef6e1 0%, #f5e4be 100%);
|
|
|
|
+ border-radius: 10px 10px 0px 0px;
|
|
|
|
+ height: 186rpx;
|
|
|
|
+
|
|
|
|
+ .item {
|
|
|
|
+ text-align: center;
|
|
|
|
+ flex-basis: 100%;
|
|
|
|
+
|
|
|
|
+ .txt {
|
|
|
|
+ font-size: 20rpx;
|
|
|
|
+ color: #b18044;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .num {
|
|
|
|
+ margin-top: 12rpx;
|
|
|
|
+ font-weight: 600;
|
|
|
|
+ font-size: 32rpx;
|
|
|
|
+ color: #823308;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .wrap {
|
|
|
|
+ padding: 40rpx;
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
+
|
|
|
|
+ .item {
|
|
|
|
+ width: 50%;
|
|
|
|
+ border-bottom: 1px solid #f3f4f6;
|
|
|
|
+ border-right: 1px solid #f3f4f6;
|
|
|
|
+ padding: 40rpx 0;
|
|
|
|
+
|
|
|
|
+ .txt {
|
|
|
|
+ color: #616161;
|
|
|
|
+ font-size: 20rpx;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .num {
|
|
|
|
+ font-size: 32rpx;
|
|
|
|
+ color: #040404;
|
|
|
|
+ font-weight: 600;
|
|
|
|
+ margin-top: 12rpx;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ &:nth-child(3),
|
|
|
|
+ &:nth-child(4) {
|
|
|
|
+ border-bottom: none;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ &:nth-child(2n) {
|
|
|
|
+ padding-left: 20rpx;
|
|
|
|
+ border-right: none;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .btn {
|
|
|
|
+ background: linear-gradient(142deg, #f16d60 0%, #f8352b 100%);
|
|
|
|
+ border-radius: 25px;
|
|
|
|
+ color: #fff;
|
|
|
|
+ margin-top: 30rpx;
|
|
|
|
+
|
|
|
|
+ &.blue {
|
|
|
|
+ background: linear-gradient(142deg, #4897eb 0%, #1c80eb 100%);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .user-code {
|
|
|
|
+ height: 100rpx;
|
|
|
|
+ padding: 0 24rpx;
|
|
|
|
+ margin: 20rpx auto;
|
|
|
|
+
|
|
|
|
+ .title {
|
|
|
|
+ font-size: 28rpx;
|
|
|
|
+ color: #363636;
|
|
|
|
+
|
|
|
|
+ .tip {
|
|
|
|
+ color: #aaaaaa;
|
|
|
|
+ font-size: 24rpx;
|
|
|
|
+ margin-left: 20rpx;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .code {
|
|
|
|
+ padding: 10rpx 20rpx;
|
|
|
|
+ background-color: #f3f4f6;
|
|
|
|
+ border-radius: 30rpx;
|
|
|
|
+ font-size: 28rpx;
|
|
|
|
+ font-weight: 600;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .menu {
|
|
|
|
+ margin: 24rpx auto;
|
|
|
|
+ padding: 0 24rpx;
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
+
|
|
|
|
+ .item {
|
|
|
|
+ padding: 30rpx 0;
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
+ border-bottom: 1px solid #f3f4f6;
|
|
|
|
+
|
|
|
|
+ .title {
|
|
|
|
+ color: #040404;
|
|
|
|
+ font-size: 28rpx;
|
|
|
|
+ font-weight: 600;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .num {
|
|
|
|
+ color: #040404;
|
|
|
|
+ font-weight: 600;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+</style>
|