feat(marketDynamics): 市场动态模块样式风格调整,移除奖金来源

This commit is contained in:
woody 2025-04-30 10:06:36 +08:00
parent f0e29d3909
commit 6913479b40
13 changed files with 786 additions and 861 deletions

View File

@ -281,12 +281,6 @@ export default {
path: "/marketDynamics",
name: "incomeDetail",
},
{
text: "奖金来源",
id: 3,
path: "/marketDynamics",
name: "bonusSource",
},
{
text: "考核明细",
id: 4,

View File

@ -47,8 +47,8 @@
</el-col>
<el-col :span="4">
<div class="searchbox">
<el-button class="btn2" @click="research">{{ "搜索" }}</el-button>
<el-button class="btn1" @click="chongzhi">{{ "重置" }}</el-button>
<el-button type="primary" @click="research">搜索</el-button>
<el-button @click="resetHandle">重置</el-button>
</div>
</el-col>
</el-row>
@ -178,54 +178,6 @@ export default {
return {
navIndex: 1,
changeTypeList: [],
navList: [
{ name: "直推列表", path: "/pushList?id=6" },
{ name: "三单循环", path: "/investment?id=6" },
{ name: "免费注册", path: "/fansList?id=6" },
],
marketList: [
{
text: "月度业绩",
id: 0,
path: "/marketDynamics",
},
{
text: "活动专区",
id: 7,
path: "/activeZone",
},
{
text: "奖金明细",
id: 1,
path: "/incomeDetail",
},
{
text: "奖金来源",
id: 3,
path: "/bonusSource",
},
// {
// text: "",
// id: 2,
// path: "/",
// },
{
text: "考核明细",
id: 4,
path: "/appraisal",
},
{
text: "注册列表",
id: 5,
path: "/registration",
},
{
text: "招商列表",
id: 6,
path: "/investment",
},
],
specialArea: 0,
thetime: "",
tableData: [],
@ -269,7 +221,7 @@ export default {
path: href,
});
},
chongzhi() {
resetHandle() {
this.queryParams = {
pageNum: 1,
pageSize: 50,
@ -380,7 +332,7 @@ export default {
cursor: pointer;
}
.actArea {
color: #00417C;
color: #00417c;
}
}
.topbox {
@ -394,16 +346,6 @@ export default {
display: flex;
align-items: center;
margin-left: 25px;
.btn1 {
background: #cccccc;
border-radius: 5px 5px 5px 5px;
color: #ffffff;
}
.btn2 {
border-radius: 5px 5px 5px 5px;
background: rgba(214, 24, 32, 1);
color: #ffffff;
}
}
}
.tablebox {

View File

@ -1,13 +1,15 @@
<template>
<div class="contain">
<div class="rightbox" style="width: 100%">
<div class="mianbao" v-if="returnPath">
<el-breadcrumb separator-class="el-icon-arrow-right">
<el-breadcrumb-item :to="{ path: returnPath }">{{'返回'}}</el-breadcrumb-item>
<el-breadcrumb-item>{{'奖金来源'}}</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="topbox">
<div class="mianbao" v-if="returnPath">
<el-breadcrumb separator-class="el-icon-arrow-right">
<el-breadcrumb-item :to="{ path: returnPath }">{{
"返回"
}}</el-breadcrumb-item>
<el-breadcrumb-item>{{ "奖金来源" }}</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="topbox">
<el-form ref="form" :model="queryParams" label-width="80px">
<el-row>
<el-col :span="6">
@ -22,7 +24,10 @@
</el-col>
<el-col :span="6">
<el-form-item :label="'收益类型'" prop="pkBonusItems">
<el-select v-model="queryParams.pkBonusItems" :placeholder="'请选择'">
<el-select
v-model="queryParams.pkBonusItems"
:placeholder="'请选择'"
>
<el-option
v-for="(item, index) in incomeType"
:key="index"
@ -34,10 +39,14 @@
</el-col>
</el-row>
<el-row>
<el-col :span="7" v-if="userInfo.pkCountry!=1">
<el-form-item :label="'查询时间'" prop="teamCode" label-width="80px">
<el-col :span="7" v-if="userInfo.pkCountry != 1">
<el-form-item
:label="'查询时间'"
prop="teamCode"
label-width="80px"
>
<el-date-picker
@change="getChange"
@change="getChange"
v-model="thetime"
type="daterange"
value-format="yyyy-MM-dd"
@ -49,9 +58,16 @@
</el-form-item>
</el-col>
<el-col :span="4">
<div class="searchbox" :style="userInfo.pkCountry==1?'margin-left:10px':''">
<el-button class="btn2" @click="research" >{{ '搜索' }}</el-button>
<el-button class="btn1" @click="resetAll()">{{ '重置' }}</el-button>
<div
class="searchbox"
:style="userInfo.pkCountry == 1 ? 'margin-left:10px' : ''"
>
<el-button type="primary" @click="research">{{
"搜索"
}}</el-button>
<el-button class="btn1" @click="resetAll()">{{
"重置"
}}</el-button>
</div>
</el-col>
</el-row>
@ -81,19 +97,16 @@
></el-table-column>
<el-table-column
align="center"
:label="'订单金额'+`(${isLocalSymbol()})`"
:label="'订单金额' + `(${isLocalSymbol()})`"
>
<template slot-scope="scope">
{{scope.row.orderAmount| numFilter}}
</template>
<template slot-scope="scope">
{{ scope.row.orderAmount | numFilter }}
</template>
</el-table-column>
<el-table-column
align="center"
:label="'订单业绩'+'(PV)'"
>
<template slot-scope="scope">
{{scope.row.orderAchieve| numFilter}}
</template>
<el-table-column align="center" :label="'订单业绩' + '(PV)'">
<template slot-scope="scope">
{{ scope.row.orderAchieve | numFilter }}
</template>
</el-table-column>
<el-table-column
align="center"
@ -111,15 +124,11 @@
prop="second"
:label="'次数'"
></el-table-column>
<el-table-column
align="center"
:label="'预估收益'"
>
<template slot-scope="scope">
{{scope.row.realIncome| numFilter}}
</template>
<el-table-column align="center" :label="'预估收益'">
<template slot-scope="scope">
{{ scope.row.realIncome | numFilter }}
</template>
</el-table-column>
</el-table>
<pagination
:total="total"
@ -131,47 +140,47 @@
</div>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import sidebarUserInfo from "@/views/index/components/sidebarUserInfo.vue";
<script>
import { mapGetters } from "vuex";
import sidebarUserInfo from "@/views/index/components/sidebarUserInfo.vue";
import topBanner from "@/components/topBanner.vue";
import pagination from "@/components/pagination.vue";
import { getBonusDetail,getBdBonusitemsList } from "@/api/bonus.js";
import { getBonusDetail, getBdBonusitemsList } from "@/api/bonus.js";
import navBar from "@/components/navBar.vue";
import {isLocalSymbol} from "../../util/numberToCurrency";
import { isLocalSymbol } from "../../util/numberToCurrency";
export default {
name: "IncomeDetail",
components: {
navBar,
navBar,
sidebarUserInfo,
topBanner,
pagination,
},
computed: {
...mapGetters(['userInfo']),
...mapGetters(["userInfo"]),
},
data() {
return {
marketList: [
{
text: '月度业绩',
text: "月度业绩",
id: 0,
path: "/marketDynamics",
},
{
text: '活动专区',
text: "活动专区",
id: 7,
path: '/activeZone',
path: "/activeZone",
},
{
text: '奖金明细',
text: "奖金明细",
id: 1,
path: "/incomeDetail",
},
{
text: '奖金来源',
text: "奖金来源",
id: 3,
path: "/bonusSource",
},
@ -182,17 +191,17 @@ export default {
// },
{
text: '考核明细',
text: "考核明细",
id: 4,
path: "/appraisal",
},
{
text: '注册列表',
text: "注册列表",
id: 5,
path: "/registration",
},
{
text: '招商列表',
text: "招商列表",
id: 6,
path: "/investment",
},
@ -200,14 +209,14 @@ export default {
specialArea: 0,
thetime: "",
tableData: [],
returnPath:'',
returnPath: "",
total: 0,
pageNum: 1,
pageSize: 50,
pageNum: 1,
pageSize: 50,
queryParams: {
pkBonusItems:"",
sourceMemberName:"",
sourceMemberCode:"",
pkBonusItems: "",
sourceMemberName: "",
sourceMemberCode: "",
startDate: "",
endDate: "",
},
@ -220,67 +229,71 @@ export default {
},
},
created() {
this.getBdBonusitemsList()
this.getBdBonusitemsList();
},
mounted() {
this.specialArea = this.$route.query.id;
let allData = decodeURIComponent(window.location.href).split('=')
if(allData[2]!=undefined){
this.returnPath = '/marketDynamics?id=1&index='+allData[1].split('&')[0]
}
setTimeout(()=>{
this.research();
},100)
let allData = decodeURIComponent(window.location.href).split("=");
if (allData[2] != undefined) {
this.returnPath =
"/marketDynamics?id=1&index=" + allData[1].split("&")[0];
}
setTimeout(() => {
this.research();
}, 100);
},
filters: {
numFilter (value) {
//
let realVal = parseFloat(value).toFixed(2)
return realVal
}
filters: {
numFilter(value) {
//
let realVal = parseFloat(value).toFixed(2);
return realVal;
},
},
methods: {
isLocalSymbol,
getChange(value){
if(value){
this.queryParams.startDate = value[0]
this.queryParams.endDate = value[0]
}
},
isLocalSymbol,
getChange(value) {
if (value) {
this.queryParams.startDate = value[0];
this.queryParams.endDate = value[0];
}
},
resetAll() {
this.pageNum = 1
this.pageSize = 50
this.queryParams={
pkBonusItems:"",
sourceMemberName:"",
sourceMemberCode:"",
startDate: "",
endDate: "",
}
this.thetime =''
this.research()
this.pageNum = 1;
this.pageSize = 50;
this.queryParams = {
pkBonusItems: "",
sourceMemberName: "",
sourceMemberCode: "",
startDate: "",
endDate: "",
};
this.thetime = "";
this.research();
},
changeArea(item) {
this.specialArea = item.id;
this.$router.push({
path: item.path,
query: { id: item.id },
})
});
},
getBdBonusitemsList() {
getBdBonusitemsList().then((res) => {
this.incomeType = res.rows;
});
},
getBdBonusitemsList(){
getBdBonusitemsList().then(res=>{
this.incomeType = res.rows
})
},
research() {
if (this.thetime) {
this.queryParams.startDate = this.thetime[0];
this.queryParams.endDate = this.thetime[1];
}else{
this.queryParams.startDate = '';
this.queryParams.endDate = '';
} else {
this.queryParams.startDate = "";
this.queryParams.endDate = "";
}
getBonusDetail(this.queryParams,`?pageNum=${this.pageNum}&pageSize=${this.pageSize}`).then((res) => {
getBonusDetail(
this.queryParams,
`?pageNum=${this.pageNum}&pageSize=${this.pageSize}`
).then((res) => {
this.tableData = res.rows;
this.total = res.total;
});
@ -296,15 +309,15 @@ export default {
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-range-editor.el-input__inner{
width: 100%;
}
.mianbao {
padding: 0 10px;
margin: 20px 0 0 0;
}
<style lang="scss" scoped>
::v-deep .el-range-editor.el-input__inner {
width: 100%;
}
.mianbao {
padding: 0 10px;
margin: 20px 0 0 0;
}
::v-deep .el-table .warning-row {
background: #f9f9f9;
}
@ -319,7 +332,7 @@ export default {
.contain {
background: rgba(249, 249, 249, 1);
height: 100vh;
padding: 0!important;
padding: 0 !important;
display: flex;
.goodArea {
display: flex;
@ -336,7 +349,7 @@ export default {
cursor: pointer;
}
.actArea {
color: #00417C;
color: #00417c;
}
}
.topbox {
@ -350,16 +363,11 @@ export default {
display: flex;
align-items: center;
margin-left: 30px;
.btn1 {
background: #cccccc;
border-radius: 5px 5px 5px 5px;
color: #ffffff;
}
.btn2 {
border-radius: 5px 5px 5px 5px;
background: rgba(214, 24, 32, 1);
color: #ffffff;
}
// .btn1 {
// background: #cccccc;
// border-radius: 5px 5px 5px 5px;
// color: #ffffff;
// }
}
}
.tablebox {
@ -367,4 +375,4 @@ export default {
border-radius: 10px 10px 10px 10px;
}
}
</style>
</style>

View File

@ -1,140 +1,139 @@
<template>
<div class="contain">
<div class="rightbox" style="width: 100%">
<div class="top-lists">
<div
class="nav-view"
@click="clickHref(item.path)"
:class="navIndex == item.path ? 'styles' : ''"
v-for="(item, index) in navList"
v-show="item.menuKey!=''"
:key="index"
>
{{ item.name }}
</div>
<div class="top-lists">
<div
class="nav-view"
@click="clickHref(item.path)"
:class="navIndex == item.path ? 'styles' : ''"
v-for="(item, index) in navList"
v-show="item.menuKey != ''"
:key="index"
>
{{ item.name }}
</div>
<template>
<firstPurchase v-if="navIndex==0" />
<repurchase v-if="navIndex==1" />
<hignFans v-if="navIndex==2" />
<!-- <seaFans v-if="navIndex==3" />-->
<sbyd v-if="navIndex==3" />
<repurchaseTicket v-if="navIndex==4" />
<markerSpace v-if="navIndex==5" />
<bonusTotal v-if="navIndex==6"/>
</template>
<!-- <div class="topbox">-->
<!-- <el-form label-width="120px">-->
<!-- <el-row>-->
<!-- <el-col :span="7" >-->
<!-- <el-form-item label="奖金日期" prop="teamCode" style="margin-bottom: 15px">-->
<!-- <el-date-picker-->
<!-- v-model="thetime"-->
<!-- type="daterange"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- range-separator="至"-->
<!-- start-placeholder="开始日期"-->
<!-- end-placeholder="结束日期"-->
<!-- >-->
<!-- </el-date-picker>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<!-- <el-col :span="4">-->
<!-- <div class="searchbox">-->
<!-- <el-button class="btn2">{{ '搜索' }}</el-button>-->
<!-- <el-button class="btn1">{{ '重置' }}</el-button>-->
<!-- </div>-->
<!-- </el-col>-->
<!-- </el-row>-->
<!-- </el-form>-->
<!-- </div>-->
<!-- <div class="tablebox">-->
<!-- <div class="tabletop">-->
<!-- <span class="tabletoptitle1">实发合计</span>-->
<!-- <span class="tabletoptitle2">{{ money }}</span>-->
<!-- </div>-->
<!-- <el-table-->
<!-- height="700px"-->
<!-- :data="tableData"-->
<!-- :header-cell-style="{ background: '#EEEEEE' }"-->
<!-- :row-class-name="tableRowClassName"-->
<!-- >-->
<!-- &lt;!&ndash; :row-class-name="tableRowClassName" &ndash;&gt;-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="settleDate"-->
<!-- label="奖金日期"-->
<!-- >-->
<!-- <template slot-scope="scope">-->
<!-- <div @click="dateHref(scope.row)" style="cursor: pointer">{{ scope.row.settleDate}}</div>-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="directIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="直推收益"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="expandIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="拓展收益"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="coachIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="辅导收益"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="shareIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="分红收益"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="repurRangeIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="复购极差收益"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="repurExpandIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="复购拓展收益"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="serviceIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="服务补贴"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="realIncomeTotal"-->
<!-- :formatter="stateFormat"-->
<!-- label="实发金额"-->
<!-- ></el-table-column>-->
<!--&lt;!&ndash; <el-table-column align="center" prop="" :label="'操作'">&ndash;&gt;-->
<!--&lt;!&ndash; <template slot-scope="scope">&ndash;&gt;-->
<!--&lt;!&ndash; <el-button style="color:red" @click="goSource(scope.row)" type="text" size="small">查看详情</el-button>&ndash;&gt;-->
<!--&lt;!&ndash; </template>&ndash;&gt;-->
<!--&lt;!&ndash; </el-table-column>&ndash;&gt;-->
<!-- </el-table>-->
<!-- <pagination-->
<!-- :total="total"-->
<!-- :page.sync="queryParams.pageNum"-->
<!-- :limit.sync="queryParams.pageSize"-->
<!-- @pagination="research"-->
<!-- />-->
</div>
<template>
<firstPurchase v-if="navIndex == 0" />
<repurchase v-if="navIndex == 1" />
<hignFans v-if="navIndex == 2" />
<!-- <seaFans v-if="navIndex==3" />-->
<sbyd v-if="navIndex == 3" />
<repurchaseTicket v-if="navIndex == 4" />
<markerSpace v-if="navIndex == 5" />
<bonusTotal v-if="navIndex == 6" />
</template>
<!-- <div class="topbox">-->
<!-- <el-form label-width="120px">-->
<!-- <el-row>-->
<!-- <el-col :span="7" >-->
<!-- <el-form-item label="奖金日期" prop="teamCode" style="margin-bottom: 15px">-->
<!-- <el-date-picker-->
<!-- v-model="thetime"-->
<!-- type="daterange"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- range-separator="至"-->
<!-- start-placeholder="开始日期"-->
<!-- end-placeholder="结束日期"-->
<!-- >-->
<!-- </el-date-picker>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<!-- <el-col :span="4">-->
<!-- <div class="searchbox">-->
<!-- <el-button class="btn2">{{ '搜索' }}</el-button>-->
<!-- <el-button class="btn1">{{ '重置' }}</el-button>-->
<!-- </div>-->
<!-- </el-col>-->
<!-- </el-row>-->
<!-- </el-form>-->
<!-- </div>-->
<!-- <div class="tablebox">-->
<!-- <div class="tabletop">-->
<!-- <span class="tabletoptitle1">实发合计</span>-->
<!-- <span class="tabletoptitle2">{{ money }}</span>-->
<!-- </div>-->
<!-- <el-table-->
<!-- height="700px"-->
<!-- :data="tableData"-->
<!-- :header-cell-style="{ background: '#EEEEEE' }"-->
<!-- :row-class-name="tableRowClassName"-->
<!-- >-->
<!-- &lt;!&ndash; :row-class-name="tableRowClassName" &ndash;&gt;-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="settleDate"-->
<!-- label="奖金日期"-->
<!-- >-->
<!-- <template slot-scope="scope">-->
<!-- <div @click="dateHref(scope.row)" style="cursor: pointer">{{ scope.row.settleDate}}</div>-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="directIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="直推收益"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="expandIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="拓展收益"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="coachIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="辅导收益"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="shareIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="分红收益"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="repurRangeIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="复购极差收益"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="repurExpandIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="复购拓展收益"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="serviceIncome"-->
<!-- :formatter="stateFormat"-->
<!-- label="服务补贴"-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- align="center"-->
<!-- prop="realIncomeTotal"-->
<!-- :formatter="stateFormat"-->
<!-- label="实发金额"-->
<!-- ></el-table-column>-->
<!--&lt;!&ndash; <el-table-column align="center" prop="" :label="'操作'">&ndash;&gt;-->
<!--&lt;!&ndash; <template slot-scope="scope">&ndash;&gt;-->
<!--&lt;!&ndash; <el-button style="color:red" @click="goSource(scope.row)" type="text" size="small">查看详情</el-button>&ndash;&gt;-->
<!--&lt;!&ndash; </template>&ndash;&gt;-->
<!--&lt;!&ndash; </el-table-column>&ndash;&gt;-->
<!-- </el-table>-->
<!-- <pagination-->
<!-- :total="total"-->
<!-- :page.sync="queryParams.pageNum"-->
<!-- :limit.sync="queryParams.pageSize"-->
<!-- @pagination="research"-->
<!-- />-->
</div>
</div>
</template>
<script>
<script>
import sidebarUserInfo from "@/views/index/components/sidebarUserInfo.vue";
import firstPurchase from "@/components/bonus/firstPurchase.vue"; //
import repurchase from "@/components/bonus/repurchase.vue"; //
@ -152,7 +151,7 @@ import * as api from "@/api/goods";
export default {
name: "IncomeDetail",
components: {
navBar,
navBar,
sidebarUserInfo,
firstPurchase,
repurchase,
@ -163,29 +162,29 @@ export default {
markerSpace,
topBanner,
pagination,
bonusTotal
bonusTotal,
},
data() {
return {
navIndex:0,
navIndex: 0,
marketList: [
{
text: '月度业绩',
text: "月度业绩",
id: 0,
path: "/marketDynamics",
},
{
text: '活动专区',
text: "活动专区",
id: 7,
path: '/activeZone',
path: "/activeZone",
},
{
text: '奖金明细',
text: "奖金明细",
id: 1,
path: "/incomeDetail",
},
{
text: '奖金来源',
text: "奖金来源",
id: 3,
path: "/bonusSource",
},
@ -196,17 +195,17 @@ export default {
// },
{
text: '考核明细',
text: "考核明细",
id: 4,
path: "/appraisal",
},
{
text: '注册列表',
text: "注册列表",
id: 5,
path: "/registration",
},
{
text: '招商列表',
text: "招商列表",
id: 6,
path: "/investment",
},
@ -215,7 +214,7 @@ export default {
thetime: "",
tableData: [],
total: 0,
money:0.00,
money: 0.0,
queryParams: {
pageNum: 1,
pageSize: 50,
@ -223,14 +222,19 @@ export default {
endDate: "",
},
navList: [
{ name: '首购收益',path:0,value:"firstPurchase",menuKey:'' },
// { name: '',path:1 ,value:"repurchaseEarnings",menuKey:''},
{ name: '海粉收益',path:2,value:"hignFans",menuKey:''},
// { name: this.$t('ENU_MENU_534'),path:3,value:"seaFans",menuKey:''},
// { name: '',path:3,value:"sbyd",menuKey:''},
{ name: '复购券收益',path:4,value:"repurchaseTicket",menuKey:''},
{ name: '创客空间收益',path:5,value:"markerSpaceEarnings",menuKey:''},
{ name: '实时收益',path:6,value:"bonusTotal",menuKey:''},
{ name: "首购收益", path: 0, value: "firstPurchase", menuKey: "" },
// { name: '',path:1 ,value:"repurchaseEarnings",menuKey:''},
{ name: "海粉收益", path: 2, value: "hignFans", menuKey: "" },
// { name: this.$t('ENU_MENU_534'),path:3,value:"seaFans",menuKey:''},
// { name: '',path:3,value:"sbyd",menuKey:''},
{ name: "复购券收益", path: 4, value: "repurchaseTicket", menuKey: "" },
{
name: "创客空间收益",
path: 5,
value: "markerSpaceEarnings",
menuKey: "",
},
{ name: "实时收益", path: 6, value: "bonusTotal", menuKey: "" },
],
};
},
@ -242,38 +246,38 @@ export default {
created() {},
mounted() {
this.specialArea = this.$route.query.id;
this.getMenuLists()
this.getMenuLists();
// this.research();
// let allData = decodeURIComponent(window.location.href).split('=')
// this.navIndex =allData[2].split('&')[0]
},
methods: {
getMenuLists(){
api.menuList().then((res) => {
res.data.forEach((item)=>{
this.navList.forEach((items)=>{
if(item.menuKey==items.value){
items.menuKey = item.menuKey
}
})
})
})
},
clickHref(index){
this.navIndex = index
},
dateHref(item){
this.$router.push({
path:"/bonusSource",
query: { id: 3,time:item.settleDate},
getMenuLists() {
api.menuList().then((res) => {
res.data.forEach((item) => {
this.navList.forEach((items) => {
if (item.menuKey == items.value) {
items.menuKey = item.menuKey;
}
});
});
});
},
goSource(){
clickHref(index) {
this.navIndex = index;
},
dateHref(item) {
this.$router.push({
path:"/bonusSource",
query: { id: 3, },
path: "/bonusSource",
query: { id: 3, time: item.settleDate },
});
},
},
goSource() {
this.$router.push({
path: "/bonusSource",
query: { id: 3 },
});
},
changeArea(item) {
this.specialArea = item.id;
// this.research()
@ -303,40 +307,40 @@ export default {
},
};
</script>
<style lang="scss" scoped>
.styles {
border: none !important;
color: #fff !important;
background: var(--primary-color);
}
.top-lists{
display: flex;
padding: 20px 0 0 0;
flex-wrap: wrap;
.nav-view{
//width: 60px;
cursor: pointer;
padding: 0 26px;
height: 44px;
border-radius: 10px;
border: 1px solid #999999;
font-size: 14px;
text-align: center;
line-height: 44px;
margin-right: 20px;
color: #999;
margin-bottom: 10px;
}
}
::v-deep .el-range-editor.el-input__inner{
width: 100%;
height: 32px;
padding: 0 10px;
}
::v-deep .select .el-input--suffix .el-input__inner{
height: 32px;
<style lang="scss" scoped>
.styles {
border: none !important;
color: #fff !important;
background: var(--primary-color);
}
.top-lists {
display: flex;
padding: 20px 0 0 0;
flex-wrap: wrap;
.nav-view {
//width: 60px;
cursor: pointer;
padding: 0 26px;
height: 44px;
border-radius: 10px;
border: 1px solid #999999;
font-size: 14px;
text-align: center;
line-height: 44px;
margin-right: 20px;
color: #999;
margin-bottom: 10px;
}
}
::v-deep .el-range-editor.el-input__inner {
width: 100%;
height: 32px;
padding: 0 10px;
}
::v-deep .select .el-input--suffix .el-input__inner {
height: 32px;
}
::v-deep .el-table .warning-row {
background: #f9f9f9;
}
@ -351,7 +355,7 @@ export default {
.contain {
background: rgba(249, 249, 249, 1);
height: 100vh;
padding: 0!important;
padding: 0 !important;
display: flex;
.goodArea {
display: flex;
@ -368,7 +372,7 @@ export default {
cursor: pointer;
}
.actArea {
color: #00417C;
color: #00417c;
}
}
.topbox {
@ -376,14 +380,14 @@ export default {
background: #ffffff;
box-shadow: 0px 0px 20px 0px rgba(204, 204, 204, 0.5);
border-radius: 8px 8px 8px 8px;
margin: 15px 0 20px 0!important;
padding: 15px 0 0 0!important;
margin: 15px 0 20px 0 !important;
padding: 15px 0 0 0 !important;
.searchbox {
display: flex;
align-items: center;
margin-left: 40px;
.btn1 {
border: 1px solid #CCCCCC;
border: 1px solid #cccccc;
border-radius: 5px 5px 5px 5px;
color: #666;
height: 34px;
@ -416,4 +420,4 @@ export default {
}
}
}
</style>
</style>

View File

@ -1,25 +1,25 @@
<template>
<div class="contain">
<div class="rightbox" style="width: 100%">
<div class="top-lists">
<div
class="nav-view"
v-show="item.menuKey!=''"
@click="clickHref(index)"
:class="navIndex == index ? 'styles' : ''"
v-for="(item, index) in navList"
:key="index"
>
{{ item.name }}
</div>
</div>
<template>
<pushList v-if="navIndex==0 && navList[0].menuKey!=''"/>
<investment v-if="navIndex==1"/>
<fansList v-if="navIndex==2"/>
</template>
<div class="contain">
<div class="rightbox" style="width: 100%">
<div class="top-lists">
<div
class="nav-view"
v-show="item.menuKey != ''"
@click="clickHref(index)"
:class="navIndex == index ? 'styles' : ''"
v-for="(item, index) in navList"
:key="index"
>
{{ item.name }}
</div>
</div>
<template>
<pushList v-if="navIndex == 0 && navList[0].menuKey != ''" />
<investment v-if="navIndex == 1" />
<fansList v-if="navIndex == 2" />
</template>
</div>
</div>
</template>
<script>
@ -29,192 +29,192 @@ import pagination from "@/components/pagination.vue";
import pushList from "@/components/pushList.vue";
import investment from "@/components/investment.vue";
import fansList from "@/components/fansList.vue";
import {getBiddingList, getchangeTypeList} from "@/api/bonus.js";
import {parentList} from "@/api/wallet";
import { getBiddingList, getchangeTypeList } from "@/api/bonus.js";
import { parentList } from "@/api/wallet";
import dividend from "@/components/dividend.vue";
import navBar from "@/components/navBar.vue";
import * as api from "@/api/goods";
export default {
name: "Investment",
components: {
navBar,
pushList,
fansList,
investment,
sidebarUserInfo,
topBanner,
pagination,
},
data() {
return {
navIndex:0,
navList: [
{ name: '直推列表',path:"0",menuKey:'' },
{ name: '三单循环',path:"0",menuKey:''},
{ name: '免费注册' ,path:"0",menuKey:'' },
],
marketList: [
{
text: '月度业绩',
id: 0,
path: "/marketDynamics",
},
{
text: '活动专区',
id: 7,
path: '/activeZone',
},
{
text: '奖金明细',
id: 1,
path: "/incomeDetail",
},
{
text: '奖金来源',
id: 3,
path: "/bonusSource",
},
// {
// text: "",
// id: 2,
// path: "/",
// },
name: "Investment",
components: {
navBar,
pushList,
fansList,
investment,
sidebarUserInfo,
topBanner,
pagination,
},
data() {
return {
navIndex: 0,
navList: [
{ name: "直推列表", path: "0", menuKey: "" },
{ name: "三单循环", path: "0", menuKey: "" },
{ name: "免费注册", path: "0", menuKey: "" },
],
marketList: [
{
text: "月度业绩",
id: 0,
path: "/marketDynamics",
},
{
text: "活动专区",
id: 7,
path: "/activeZone",
},
{
text: "奖金明细",
id: 1,
path: "/incomeDetail",
},
{
text: "奖金来源",
id: 3,
path: "/bonusSource",
},
// {
// text: "",
// id: 2,
// path: "/",
// },
{
text: '考核明细',
id: 4,
path: "/appraisal",
},
{
text: '注册列表',
id: 5,
path: "/registration",
},
{
text: '招商列表',
id: 6,
path: "/investment",
},
],
specialArea: 0,
thetime: "",
flag_s: false,
tableData: [],
total: 0,
queryParams: {
pageNum: 1,
pageSize: 50,
startCreateTime: "",
endCreateTime: "",
memberCode: "",
memberName: "",
},
};
{
text: "考核明细",
id: 4,
path: "/appraisal",
},
{
text: "注册列表",
id: 5,
path: "/registration",
},
{
text: "招商列表",
id: 6,
path: "/investment",
},
],
specialArea: 0,
thetime: "",
flag_s: false,
tableData: [],
total: 0,
queryParams: {
pageNum: 1,
pageSize: 50,
startCreateTime: "",
endCreateTime: "",
memberCode: "",
memberName: "",
},
};
},
watch: {
$route(n, o) {
this.specialArea = n.query.id;
},
watch: {
$route(n, o) {
this.specialArea = n.query.id;
},
},
created() {},
mounted() {
this.getMenuLists();
// this.specialArea = this.$route.query.id;
// this.research();
// this.getchangeTypeList();
},
methods: {
getMenuLists() {
let list = JSON.parse(localStorage.getItem("menuList"));
list.forEach((item) => {
if (item.menuKey == "directList") {
this.navList[0].menuKey = "directList";
}
if (item.menuKey == "attractDetailList") {
this.navList[1].menuKey = "attractDetailList";
}
if (item.menuKey == "haiList") {
this.navList[2].menuKey = "haiList";
}
});
},
created() {},
mounted() {
this.getMenuLists()
// this.specialArea = this.$route.query.id;
// this.research();
// this.getchangeTypeList();
getchangeTypeList() {
getchangeTypeList().then((res) => {
this.changeTypeList = res.data;
});
},
methods: {
getMenuLists(){
let list = JSON.parse(localStorage.getItem('menuList'))
list.forEach((item)=>{
if(item.menuKey == 'directList'){
this.navList[0].menuKey = 'directList'
}
if(item.menuKey == 'attractDetailList'){
this.navList[1].menuKey = 'attractDetailList'
}
if(item.menuKey == 'haiList'){
this.navList[2].menuKey = 'haiList'
}
})
},
getchangeTypeList() {
getchangeTypeList().then((res) => {
this.changeTypeList = res.data;
});
},
clickHref(index){
this.navIndex = index
},
chongzhi() {
this.queryParams = {
pageNum: 1,
pageSize: 50,
startCreateTime: "",
endCreateTime: "",
memberCode: "",
memberName: "",
};
this.research()
},
changeArea(item) {
this.specialArea = item.id;
this.$router.push({
path: item.path,
query: { id: item.id },
});
},
research() {
if (this.thetime) {
this.queryParams.startCreateTime = this.thetime[0];
this.queryParams.endCreateTime = this.thetime[1];
}else{
this.queryParams.startCreateTime = ''
this.queryParams.endCreateTime = ''
}
parentList(this.queryParams).then((res) => {
this.tableData = res.rows;
this.total = res.total;
});
},
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 == 1) {
return "warning-row";
} else if (rowIndex % 2 == 0) {
return "success-row";
}
return "";
},
clickHref(index) {
this.navIndex = index;
},
chongzhi() {
this.queryParams = {
pageNum: 1,
pageSize: 50,
startCreateTime: "",
endCreateTime: "",
memberCode: "",
memberName: "",
};
this.research();
},
changeArea(item) {
this.specialArea = item.id;
this.$router.push({
path: item.path,
query: { id: item.id },
});
},
research() {
if (this.thetime) {
this.queryParams.startCreateTime = this.thetime[0];
this.queryParams.endCreateTime = this.thetime[1];
} else {
this.queryParams.startCreateTime = "";
this.queryParams.endCreateTime = "";
}
parentList(this.queryParams).then((res) => {
this.tableData = res.rows;
this.total = res.total;
});
},
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 == 1) {
return "warning-row";
} else if (rowIndex % 2 == 0) {
return "success-row";
}
return "";
},
},
};
</script>
<style lang="scss" scoped>
.xian {
height: 5px;
background: rgba(0, 0, 0, 0.05);
margin-top: -5px;
height: 5px;
background: rgba(0, 0, 0, 0.05);
margin-top: -5px;
}
.menuList {
display: flex;
margin-top: 20px;
padding: 0 24px;
box-sizing: border-box;
.menu_i {
margin-right: 70px;
line-height: 50px;
cursor: pointer;
}
.actMenu {
border-bottom: 5px solid #00417C;
}
display: flex;
margin-top: 20px;
padding: 0 24px;
box-sizing: border-box;
.menu_i {
margin-right: 70px;
line-height: 50px;
cursor: pointer;
}
.actMenu {
border-bottom: 5px solid #00417c;
}
}
::v-deep .el-range-editor.el-input__inner{
::v-deep .el-range-editor.el-input__inner {
width: 100%;
height: 32px;
padding: 0 10px;
}
::v-deep .select .el-input__inner{
::v-deep .select .el-input__inner {
height: 32px;
}
.styles {
@ -222,10 +222,10 @@ export default {
color: #fff !important;
background: var(--primary-color);
}
.top-lists{
.top-lists {
display: flex;
padding: 20px 0 0 0;
.nav-view{
.nav-view {
width: 60px;
cursor: pointer;
padding: 0 26px;
@ -253,7 +253,7 @@ export default {
.contain {
background: rgba(249, 249, 249, 1);
height: 100vh;
padding: 0!important;
padding: 0 !important;
display: flex;
.goodArea {
display: flex;
@ -270,7 +270,7 @@ export default {
cursor: pointer;
}
.actArea {
color: #00417C;
color: #00417c;
}
}
.topbox {
@ -285,7 +285,7 @@ export default {
align-items: center;
margin-left: 40px;
.btn1 {
border: 1px solid #CCCCCC;
border: 1px solid #cccccc;
border-radius: 5px 5px 5px 5px;
color: #666;
height: 34px;
@ -307,4 +307,4 @@ export default {
border-radius: 10px 10px 10px 10px;
}
}
</style>
</style>

View File

@ -72,7 +72,7 @@
<div class="flex-s">
<div class="content-div2">
<div class="title">
<div>{{ '最末节点' }}</div>
<div>{{ "最末节点" }}</div>
</div>
<div style="position: absolute">
<placement />
@ -97,27 +97,25 @@
<!-- 首购新增业绩 1个月!-->
<div class="content-div3">
<div class="title">
<div>{{ '新增业绩' }}</div>
<div>{{ '近30日' }}</div>
<div>{{ "新增业绩" }}</div>
<div>{{ "近30日" }}</div>
</div>
<div style="position: absolute">
<fistAddPv ref="fistAddPv" />
</div>
</div>
<!-- 首购业绩分布!-->
<div class="content-div3">
<!-- 首购业绩分布!-->
<div class="content-div3">
<div class="title">
<div>{{ '业绩分布' }}</div>
<div>{{ "业绩分布" }}</div>
</div>
<div style="position: absolute">
<firstPv ref="firstPv"></firstPv>
</div>
</div>
</div>
<!-- 复购新增业绩!-->
<!-- 复购业绩分布!-->
<!-- 复购新增业绩!-->
<!-- 复购业绩分布!-->
<!-- <div class="flex-s">
<div class="content-div3">
@ -140,22 +138,22 @@
</div>
</div> -->
<!-- <div class="flex-s"> -->
<!-- 推荐业绩分布!-->
<!-- <div class="content-div3">
<!-- 推荐业绩分布!-->
<!-- <div class="content-div3">
<div class="title">{{ '奖衔业绩分布' }}</div>
<div style="position: absolute">
<placementPerformance ref="placementPerformance" />
</div>
</div> -->
<!-- 推荐小区分布!-->
<!-- <div class="content-div3">
<!-- 推荐小区分布!-->
<!-- <div class="content-div3">
<div class="title">{{ '推荐小区分布' }}</div>
<div style="position: absolute">
<recommendedCommunity ref="recommendedCommunity" />
</div>
</div> -->
<!-- 真实业绩 -->
<!-- <div class="content-div3">
<!-- 真实业绩 -->
<!-- <div class="content-div3">
<div class="title">
<div>{{ '真实业绩' }}</div>
<div>
@ -190,7 +188,7 @@
<!-- 月度新增业绩对比!-->
<div class="content-div3">
<div class="title">
<div>{{ '月度新增业绩对比' }}</div>
<div>{{ "月度新增业绩对比" }}</div>
<div>
<el-select v-model="whatMounth" :placeholder="'请选择'">
<el-option
@ -206,12 +204,11 @@
<div style="position: absolute">
<mounthPvCompare ref="mounthPvCompare" :time="whatMounth" />
</div>
</div>
<!-- 活跃会员对比!-->
<div class="content-div3">
<div class="title">
<div>{{ '活跃会员对比' }}</div>
<div>{{ "活跃会员对比" }}</div>
<div>
<el-select v-model="dateType" :placeholder="'请选择'">
<el-option
@ -265,7 +262,7 @@
>
<!-- 直推业绩!-->
<div class="title" style="width: auto; padding: 20px 20px 0px 20px">
<div>{{ '直推业绩' }}</div>
<div>{{ "直推业绩" }}</div>
<div class="right-flex-s">
<!-- <el-date-picker v-model="thetime"-->
<!-- :picker-options="pickerBeginOption"-->
@ -326,7 +323,7 @@
border-radius: 10px 10px 0 0;
"
>
{{ '推荐列表' }}
{{ "推荐列表" }}
</div>
<div>
<div class="tablebox">
@ -491,36 +488,36 @@ export default {
disabledDate: "",
navList: [
{
name: '月度业绩',
name: "月度业绩",
menuKey: "",
value: "ConsanguinityCheck",
},
// { name: '', menuKey: "", value: "placementChart" },
// { name: '', menuKey: "", value: "monthlyChart" },
{ name: '数据查询', menuKey: "", value: "monthlyPerformance" },
{ name: "数据查询", menuKey: "", value: "monthlyPerformance" },
// { name: '', menuKey: "", value: "recommendTime" },
{ name: '直推业绩', menuKey: "", value: "recommendPerformance" },
{ name: '推荐列表', menuKey: "", value: "recommendList" },
{ name: "直推业绩", menuKey: "", value: "recommendPerformance" },
{ name: "推荐列表", menuKey: "", value: "recommendList" },
],
marketList: [
{
text: '数据查询',
text: "数据查询",
id: 0,
path: "/marketDynamics",
},
{
text: '活动专区',
text: "活动专区",
id: 7,
path: "/activeZone",
},
{
text: '奖金明细',
text: "奖金明细",
id: 1,
path: "/incomeDetail",
},
{
text: '奖金来源',
text: "奖金来源",
id: 3,
path: "/bonusSource",
},
@ -530,17 +527,17 @@ export default {
// path: "/generation",
// },
{
text: '考核明细',
text: "考核明细",
id: 4,
path: "/appraisal",
},
{
text: '注册列表',
text: "注册列表",
id: 5,
path: "/registration",
},
{
text: '招商列表',
text: "招商列表",
id: 6,
path: "/investment",
},
@ -561,51 +558,51 @@ export default {
mounthList: [
{
value: 1,
label: 1 + '月',
label: 1 + "月",
},
{
value: 2,
label: 2 + '月',
label: 2 + "月",
},
{
value: 3,
label: 3 + '月',
label: 3 + "月",
},
{
value: 4,
label: 4 + '月',
label: 4 + "月",
},
{
value: 5,
label: 5 + '月',
label: 5 + "月",
},
{
value: 6,
label: 6 + '月',
label: 6 + "月",
},
{
value: 7,
label: 7 + '月',
label: 7 + "月",
},
{
value: 8,
label: 8 + '月',
label: 8 + "月",
},
{
value: 9,
label: 9 + '月',
label: 9 + "月",
},
{
value: 10,
label: 10 + '月',
label: 10 + "月",
},
{
value: 11,
label: 11 + '月',
label: 11 + "月",
},
{
value: 12,
label: 12 + '月',
label: 12 + "月",
},
],
fgkhDate: "",
@ -616,9 +613,12 @@ export default {
themonth: null,
pickerOptions: {
disabledDate(time) {
return time.getFullYear() < new Date().getFullYear() - 1 || time.getFullYear() > new Date().getFullYear();
}
}
return (
time.getFullYear() < new Date().getFullYear() - 1 ||
time.getFullYear() > new Date().getFullYear()
);
},
},
};
},
watch: {
@ -788,7 +788,6 @@ export default {
return days;
},
navTap(index) {
console.log("dianji", index);
this.navIndex = index;
if (index == 1) {
this.getDayType();
@ -1058,7 +1057,7 @@ export default {
cursor: pointer;
}
.actArea {
color: #00417C;
color: #00417c;
}
}
.topbox {

View File

@ -6,17 +6,18 @@
<el-row>
<el-col :span="5">
<el-form-item :label="'会员编号'" prop="memberCode">
<el-input v-model="queryParams.memberCode"></el-input>
<el-input clearable v-model="queryParams.memberCode"></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item :label="'会员姓名'" prop="memberName">
<el-input v-model="queryParams.memberName"></el-input>
<el-input clearable v-model="queryParams.memberName"></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item :label="'注册等级'" prop="pkRegisterGrade">
<el-select
clearable
v-model="queryParams.pkRegisterGrade"
:placeholder="'请选择'"
>
@ -47,12 +48,10 @@
<el-row>
<el-col :span="4">
<div class="searchbox">
<el-button class="btn2" @click="research">{{
'搜索'
}}</el-button>
<el-button class="btn1" @click="chongzhi">{{
'重置'
<el-button type="primary" @click="research">{{
"搜索"
}}</el-button>
<el-button @click="chongzhi">{{ "重置" }}</el-button>
</div>
</el-col>
</el-row>
@ -171,22 +170,22 @@ export default {
return {
marketList: [
{
text: '月度业绩',
text: "月度业绩",
id: 0,
path: "/marketDynamics",
},
{
text: '活动专区',
text: "活动专区",
id: 7,
path: "/activeZone",
},
{
text: '奖金明细',
text: "奖金明细",
id: 1,
path: "/incomeDetail",
},
{
text: '奖金来源',
text: "奖金来源",
id: 3,
path: "/bonusSource",
},
@ -197,17 +196,17 @@ export default {
// },
{
text: '考核明细',
text: "考核明细",
id: 4,
path: "/appraisal",
},
{
text: '注册列表',
text: "注册列表",
id: 5,
path: "/registration",
},
{
text: '招商列表',
text: "招商列表",
id: 6,
path: "/investment",
},
@ -323,7 +322,7 @@ export default {
cursor: pointer;
}
.actArea {
color: #00417C;
color: #00417c;
}
}
.topbox {
@ -336,16 +335,6 @@ export default {
.searchbox {
display: flex;
align-items: center;
.btn1 {
background: #cccccc;
border-radius: 5px 5px 5px 5px;
color: #ffffff;
}
.btn2 {
border-radius: 5px 5px 5px 5px;
background: rgba(214, 24, 32, 1);
color: #ffffff;
}
}
}
.tablebox {

View File

@ -41,12 +41,8 @@
</el-col>
<el-col :span="4">
<div class="searchbox">
<el-button class="btn2" @click="research">{{
"搜索"
}}</el-button>
<el-button class="btn1" @click="chongzhi">{{
"重置"
}}</el-button>
<el-button type="primary" @click="research">搜索</el-button>
<el-button @click="resetHandle">重置</el-button>
</div>
</el-col>
</el-row>
@ -193,7 +189,7 @@ export default {
path: href,
});
},
chongzhi() {
resetHandle() {
this.queryParams = {
pageNum: 1,
pageSize: 50,
@ -307,7 +303,7 @@ export default {
cursor: pointer;
}
.actArea {
color: #00417C;
color: #00417c;
}
}
.topbox {
@ -321,16 +317,6 @@ export default {
display: flex;
align-items: center;
margin-left: 40px;
.btn1 {
background: #cccccc;
border-radius: 5px 5px 5px 5px;
color: #ffffff;
}
.btn2 {
border-radius: 5px 5px 5px 5px;
background: rgba(214, 24, 32, 1);
color: #ffffff;
}
}
}
.tablebox {

View File

@ -178,14 +178,14 @@ const routes = [
},
},
//奖金来源
{
path: "/bonusSource",
name: "BonusSource",
component: () => import("@/views/marketDynamics/bonusSource.vue"),
meta: {
keepAlive: true,
},
},
// {
// path: "/bonusSource",
// name: "BonusSource",
// component: () => import("@/views/marketDynamics/bonusSource.vue"),
// meta: {
// keepAlive: true,
// },
// },
//考核明细
{
path: "/appraisal",

View File

@ -2,7 +2,8 @@
--primary-color: #005BAC; /* 主题色 */
--highlight-color: #1E90FF; /* 替换 #b42b2a 的高亮/强调色 */
--price-color: #FF8C00; /* 商品价格颜色 */
--button-hover-color: #1A75C8; /* 按钮悬停颜色 */
--disabled-color: #B8CDE0; /* 禁用状态颜色 (基于主题色) */
--button-hover-color: #1A75C8; /* 按钮悬停背景颜色 */
--button-hover-text-color: #FFFFFF; /* 按钮悬停文字颜色 */
--button-active-border-color: #004C8C; /* 按钮激活边框颜色 */
}

View File

@ -3,29 +3,34 @@
<sidebarUserInfo></sidebarUserInfo>
<div class="rightbox" style="width: 100%">
<topBanner></topBanner>
<navBar :myId="2"></navBar>
<div class="mianbao" v-if="returnPath">
<el-breadcrumb separator-class="el-icon-arrow-right">
<el-breadcrumb-item :to="{ path: returnPath }">{{'返回'}}</el-breadcrumb-item>
<el-breadcrumb-item>{{'奖金来源'}}</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="topbox">
<navBar :myId="2"></navBar>
<div class="mianbao" v-if="returnPath">
<el-breadcrumb separator-class="el-icon-arrow-right">
<el-breadcrumb-item :to="{ path: returnPath }"
>返回</el-breadcrumb-item
>
<el-breadcrumb-item>奖金来源</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="topbox333">
<el-form ref="form" :model="queryParams" label-width="80px">
<el-row>
<el-col :span="6">
<el-form-item :label="'来源编号'" prop="sourceMemberCode">
<el-form-item label="来源编号" prop="sourceMemberCode">
<el-input v-model="queryParams.sourceMemberCode"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item :label="'来源姓名'" prop="sourceMemberName">
<el-form-item label="来源姓名" prop="sourceMemberName">
<el-input v-model="queryParams.sourceMemberName"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item :label="'收益类型'" prop="pkBonusItems">
<el-select v-model="queryParams.pkBonusItems" :placeholder="'请选择'">
<el-form-item label="收益类型" prop="pkBonusItems">
<el-select
v-model="queryParams.pkBonusItems"
placeholder="请选择"
>
<el-option
v-for="(item, index) in incomeType"
:key="index"
@ -37,23 +42,26 @@
</el-col>
</el-row>
<el-row>
<el-col :span="7" v-if="userInfo.pkCountry!=1">
<el-form-item :label="'查询时间'" prop="teamCode" label-width="80px">
<el-col :span="7" v-if="userInfo.pkCountry != 1">
<el-form-item label="查询时间" prop="teamCode" label-width="80px">
<el-date-picker
v-model="thetime"
type="daterange"
value-format="yyyy-MM-dd"
:range-separator="'至'"
:start-placeholder="'开始日期'"
:end-placeholder="'结束日期'"
start-placeholder="开始日期"
end-placeholder="结束日期"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4">
<div class="searchbox" :style="userInfo.pkCountry==1?'margin-left:20px':''">
<el-button class="btn2" @click="research" >{{ '搜索' }}</el-button>
<el-button class="btn1" @click="resetAll()">{{ '重置' }}</el-button>
<div
class="searchbox"
:style="userInfo.pkCountry == 1 ? 'margin-left:20px' : ''"
>
<el-button class="search-btn" @click="research">搜索</el-button>
<el-button class="btn1" @click="resetAll()">重置</el-button>
</div>
</el-col>
</el-row>
@ -69,22 +77,22 @@
<el-table-column
align="center"
prop="settleDate"
:label="'奖金日期'"
label="奖金日期"
></el-table-column>
<el-table-column
align="center"
prop="sourceMemberCode"
:label="'来源编号'"
label="来源编号"
></el-table-column>
<el-table-column
align="center"
prop="sourceMemberName"
:label="'来源姓名'"
label="来源姓名"
></el-table-column>
<el-table-column
align="center"
prop="orderAmount"
:label="'订单金额'+'(¥)'"
label="订单金额(¥)"
></el-table-column>
<el-table-column
align="center"
@ -94,25 +102,24 @@
<el-table-column
align="center"
prop="bonusName"
:label="'收益类型'"
label="收益类型"
width="200"
></el-table-column>
<el-table-column
align="center"
prop="round"
:label="'轮次'"
label="轮次"
></el-table-column>
<el-table-column
align="center"
prop="second"
:label="'次数'"
label="次数"
></el-table-column>
<el-table-column
align="center"
prop="realIncome"
:label="'预估收益'"
label="预估收益"
></el-table-column>
</el-table>
<pagination
:total="total"
@ -124,46 +131,46 @@
</div>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import sidebarUserInfo from "@/views/index/components/sidebarUserInfo.vue";
<script>
import { mapGetters } from "vuex";
import sidebarUserInfo from "@/views/index/components/sidebarUserInfo.vue";
import topBanner from "@/components/topBanner.vue";
import pagination from "@/components/pagination.vue";
import { getBonusDetail,getBdBonusitemsList } from "@/api/bonus.js";
import { getBonusDetail, getBdBonusitemsList } from "@/api/bonus.js";
import navBar from "@/components/navBar.vue";
export default {
name: "IncomeDetail",
components: {
navBar,
navBar,
sidebarUserInfo,
topBanner,
pagination,
},
computed: {
...mapGetters(['userInfo']),
...mapGetters(["userInfo"]),
},
data() {
return {
marketList: [
{
text: '月度业绩',
text: "月度业绩",
id: 0,
path: "/marketDynamics",
},
{
text: '活动专区',
text: "活动专区",
id: 7,
path: '/activeZone',
path: "/activeZone",
},
{
text: '奖金明细',
text: "奖金明细",
id: 1,
path: "/incomeDetail",
},
{
text: '奖金来源',
text: "奖金来源",
id: 3,
path: "/bonusSource",
},
@ -174,17 +181,17 @@ export default {
// },
{
text: '考核明细',
text: "考核明细",
id: 4,
path: "/appraisal",
},
{
text: '注册列表',
text: "注册列表",
id: 5,
path: "/registration",
},
{
text: '招商列表',
text: "招商列表",
id: 6,
path: "/investment",
},
@ -192,14 +199,14 @@ export default {
specialArea: 0,
thetime: "",
tableData: [],
returnPath:'',
returnPath: "",
total: 0,
queryParams: {
pageNum: 1,
pageSize: 50,
pkBonusItems:"",
sourceMemberName:"",
sourceMemberCode:"",
pkBonusItems: "",
sourceMemberName: "",
sourceMemberCode: "",
startDate: "",
endDate: "",
},
@ -212,45 +219,45 @@ export default {
},
},
created() {
this.getBdBonusitemsList()
this.getBdBonusitemsList();
},
mounted() {
this.specialArea = this.$route.query.id;
let allData = decodeURIComponent(window.location.href).split('=')
if(allData[2]!=undefined){
this.queryParams.startDate =allData[2].split('&')[0]
this.queryParams.endDate =allData[2].split('&')[0]
this.returnPath = '/incomeDetail?id=1&index='+allData[3].split('&')[0]
}
setTimeout(()=>{
this.research();
},100)
let allData = decodeURIComponent(window.location.href).split("=");
if (allData[2] != undefined) {
this.queryParams.startDate = allData[2].split("&")[0];
this.queryParams.endDate = allData[2].split("&")[0];
this.returnPath = "/incomeDetail?id=1&index=" + allData[3].split("&")[0];
}
setTimeout(() => {
this.research();
}, 100);
},
methods: {
resetAll() {
this.queryParams={
pageNum: 1,
pageSize: 50,
pkBonusItems:"",
sourceMemberName:"",
sourceMemberCode:"",
startDate: "",
endDate: "",
}
this.research()
this.queryParams = {
pageNum: 1,
pageSize: 50,
pkBonusItems: "",
sourceMemberName: "",
sourceMemberCode: "",
startDate: "",
endDate: "",
};
this.research();
},
changeArea(item) {
this.specialArea = item.id;
this.$router.push({
path: item.path,
query: { id: item.id },
})
});
},
getBdBonusitemsList() {
getBdBonusitemsList().then((res) => {
this.incomeType = res.rows;
});
},
getBdBonusitemsList(){
getBdBonusitemsList().then(res=>{
this.incomeType = res.rows
})
},
research() {
if (this.thetime) {
this.queryParams.startDate = this.thetime[0];
@ -272,15 +279,15 @@ export default {
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-range-editor.el-input__inner{
width: 100%;
}
.mianbao {
padding: 0 10px;
margin: 20px 0 0 0;
}
<style lang="scss" scoped>
::v-deep .el-range-editor.el-input__inner {
width: 100%;
}
.mianbao {
padding: 0 10px;
margin: 20px 0 0 0;
}
::v-deep .el-table .warning-row {
background: #f9f9f9;
}
@ -312,7 +319,7 @@ export default {
cursor: pointer;
}
.actArea {
color: #00417C;
color: #00417c;
}
}
.topbox {
@ -331,9 +338,9 @@ export default {
border-radius: 5px 5px 5px 5px;
color: #ffffff;
}
.btn2 {
.search-btn {
border-radius: 5px 5px 5px 5px;
background: rgba(214, 24, 32, 1);
background: var(--primary-color);
color: #ffffff;
}
}
@ -343,4 +350,4 @@ export default {
border-radius: 10px 10px 10px 10px;
}
}
</style>
</style>

View File

@ -29,7 +29,7 @@
<marketDynamicss
@updateValue="updateParentValue"
:ifDetail="ifDetail"
:monthScoreType='monthScoreType'
:monthScoreType="monthScoreType"
v-if="this.specialArea == 0"
/>
</template>
@ -41,21 +41,21 @@
<!-- 奖金明细!-->
<incomeDetail v-if="this.specialArea == 1" />
</template>
<template>
<!-- 奖金来源!-->
<bonusSource v-if="this.specialArea == 3" />
</template>
<!-- 奖金来源!-->
<!-- <template v-if="this.specialArea == 3">
<bonusSource />
</template> -->
<template>
<!-- 考核明细!-->
<appraisal v-if="this.specialArea == 4" />
</template>
<template>
<template v-if="this.specialArea == 5">
<!-- 注册列表!-->
<registration v-if="this.specialArea == 5" />
<registration />
</template>
<template>
<template v-if="this.specialArea == 6">
<!-- 招商列表!-->
<investment v-if="this.specialArea == 6" />
<investment />
</template>
</div>
</div>
@ -63,31 +63,31 @@
<script>
import sidebarUserInfo from "@/views/index/components/sidebarUserInfo.vue";
import recommendTime from "@/components/recommendTime.vue";
import placement from "@/components/placement.vue";
import realPerformance from "@/components/realPerformance.vue";
import placementPerformance from "@/components/placementPerformance.vue";
import realPerformances from "@/components/realPerformances.vue";
import mounthPvCompare from "@/components/mounthPvCompare.vue";
import fistAddPv from "@/components/fistAddPv.vue";
import repAddPv from "@/components/repAddPv.vue";
// import recommendTime from "@/components/recommendTime.vue";
// import placement from "@/components/placement.vue";
// import realPerformance from "@/components/realPerformance.vue";
// import placementPerformance from "@/components/placementPerformance.vue";
// import realPerformances from "@/components/realPerformances.vue";
// import mounthPvCompare from "@/components/mounthPvCompare.vue";
// import fistAddPv from "@/components/fistAddPv.vue";
// import repAddPv from "@/components/repAddPv.vue";
import topBanner from "@/components/topBanner.vue";
import pagination from "@/components/pagination.vue";
import navBar from "@/components/navBar.vue";
import recommendedCommunity from "@/components/marketDynamics/recommendedCommunity.vue";
import activeMembers from "@/components/marketDynamics/activeMembers.vue";
import recommendPerformance from "@/components/recommendPerformance.vue";
import gradePerformance from "@/components/gradePerformance.vue";
import consanguinityPv from "@/components/marketDynamics/consanguinityPv.vue";
// import pagination from "@/components/pagination.vue";
// import navBar from "@/components/navBar.vue";
// import recommendedCommunity from "@/components/marketDynamics/recommendedCommunity.vue";
// import activeMembers from "@/components/marketDynamics/activeMembers.vue";
// import recommendPerformance from "@/components/recommendPerformance.vue";
// import gradePerformance from "@/components/gradePerformance.vue";
// import consanguinityPv from "@/components/marketDynamics/consanguinityPv.vue";
import marketDynamicss from "@/components/marketDynamics/marketDynamicss.vue";
import activeZone from "@/components/marketDynamics/activeZone.vue";
import incomeDetail from "@/components/marketDynamics/incomeDetail.vue";
import bonusSource from "@/components/marketDynamics/bonusSource.vue";
// import bonusSource from "@/components/marketDynamics/bonusSource.vue";
import appraisal from "@/components/marketDynamics/appraisal.vue";
import registration from "@/components/marketDynamics/registration.vue";
import investment from "@/components/marketDynamics/investment.vue";
import { getDayType } from "@/api/activity.js";
import { getWalletBalance, parentList } from "@/api/wallet";
import { parentList } from "@/api/wallet";
import * as api from "@/api/goods";
import noticePopup from "@/components/noticePopup.vue";
import { mapGetters } from "vuex";
@ -99,28 +99,28 @@ export default {
registration,
Registration,
appraisal,
bonusSource,
// bonusSource,
incomeDetail,
activeZone,
marketDynamicss,
noticePopup,
realPerformance,
placementPerformance,
realPerformances,
// realPerformance,
// placementPerformance,
// realPerformances,
sidebarUserInfo,
placement,
recommendTime,
mounthPvCompare,
fistAddPv,
repAddPv,
// placement,
// recommendTime,
// mounthPvCompare,
// fistAddPv,
// repAddPv,
topBanner,
pagination,
navBar,
recommendedCommunity,
activeMembers,
consanguinityPv,
recommendPerformance,
gradePerformance,
// pagination,
// navBar,
// recommendedCommunity,
// activeMembers,
// consanguinityPv,
// recommendPerformance,
// gradePerformance,
},
computed: {
...mapGetters(["userInfo"]),
@ -130,64 +130,60 @@ export default {
index: 50,
navIndex: 0,
navList: [
{ name: '数据查询', menuKey: "", value: "ConsanguinityCheck" },
{ name: '最末节点', menuKey: "", value: "placementChart" },
{ name: '月度新增统计', menuKey: "", value: "monthlyChart" },
{ name: '月度新增业绩', menuKey: "", value: "monthlyPerformance" },
{ name: '推荐平均用时', menuKey: "", value: "recommendTime" },
{ name: '直推业绩', menuKey: "", value: "recommendPerformance" },
{ name: '推荐列表', menuKey: "", value: "recommendList" },
{ name: "数据查询", menuKey: "", value: "ConsanguinityCheck" },
{ name: "最末节点", menuKey: "", value: "placementChart" },
{ name: "月度新增统计", menuKey: "", value: "monthlyChart" },
{ name: "月度新增业绩", menuKey: "", value: "monthlyPerformance" },
{ name: "推荐平均用时", menuKey: "", value: "recommendTime" },
{ name: "直推业绩", menuKey: "", value: "recommendPerformance" },
{ name: "推荐列表", menuKey: "", value: "recommendList" },
],
marketList: [
{
text: '数据查询',
text: "数据查询",
id: 0,
path: "/marketDynamics",
name: "marketDynamics",
isShow: false,
},
{
text: '活动专区',
text: "活动专区",
id: 7,
path: "/marketDynamics",
name: "activeZone",
isShow: false,
},
{
text: '奖金明细',
text: "奖金明细",
id: 1,
path: "/marketDynamics",
name: "incomeDetail",
isShow: false,
},
{
text: '奖金来源',
id: 3,
path: "/marketDynamics",
name: "bonusSource",
isShow: false,
},
// {
// text: "",
// text: "",
// id: 3,
// path: "/generation",
// path: "/marketDynamics",
// name: "bonusSource",
// isShow: false,
// },
{
text: '考核明细',
text: "考核明细",
id: 4,
path: "/marketDynamics",
name: "appraisal",
isShow: false,
},
{
text: '注册列表',
text: "注册列表",
id: 5,
path: "/marketDynamics",
name: "registration",
isShow: false,
},
{
text: '招商列表',
text: "招商列表",
id: 6,
path: "/marketDynamics",
name: "investment",
@ -210,63 +206,63 @@ export default {
mounthList: [
{
value: 1,
label: 1 + '月',
label: 1 + "月",
},
{
value: 2,
label: 2 + '月',
label: 2 + "月",
},
{
value: 3,
label: 3 + '月',
label: 3 + "月",
},
{
value: 4,
label: 4 + '月',
label: 4 + "月",
},
{
value: 5,
label: 5 + '月',
label: 5 + "月",
},
{
value: 6,
label: 6 + '月',
label: 6 + "月",
},
{
value: 7,
label: 7 + '月',
label: 7 + "月",
},
{
value: 8,
label: 8 + '月',
label: 8 + "月",
},
{
value: 9,
label: 9 + '月',
label: 9 + "月",
},
{
value: 10,
label: 10 + '月',
label: 10 + "月",
},
{
value: 11,
label: 11 + '月',
label: 11 + "月",
},
{
value: 12,
label: 12 + '月',
label: 12 + "月",
},
],
fgkhDate: "",
ifDetail: "0",
monthScoreType:""
monthScoreType: "",
};
},
watch: {
$route(n, o) {
this.specialArea = n.query.id;
this.ifDetail = n.query.ifDetail || "0";
this.monthScoreType = n.query.monthScoreType||""
this.monthScoreType = n.query.monthScoreType || "";
},
whatMounth(n) {
this.$refs.mounthPvCompare.upDateCover(n);
@ -304,7 +300,7 @@ export default {
methods: {
updateParentValue(newValue) {
this.ifDetail = newValue;
this.monthScoreType = ""
this.monthScoreType = "";
},
getStartTime() {
let date = new Date();
@ -359,7 +355,6 @@ export default {
});
});
});
},
//
getMounth() {
@ -432,7 +427,7 @@ export default {
cursor: pointer;
}
.actMenu {
border-bottom: 5px solid #00417C;
border-bottom: 5px solid #00417c;
}
}
.height-auto {
@ -592,7 +587,7 @@ export default {
cursor: pointer;
}
.actArea {
color: #00417C;
color: #00417c;
}
}
.topbox {
@ -629,4 +624,4 @@ export default {
::v-deep .pagination-container {
border-radius: 10px;
}
</style>
</style>

File diff suppressed because one or more lines are too long