Browse Source

init

newStyle
wangxiaohua 2 years ago
parent
commit
cc6ab3a0dc
7 changed files with 631 additions and 110 deletions
  1. +2
    -2
      src/api/admin/menu.js
  2. +23
    -0
      src/api/modules/api.js
  3. +4
    -3
      src/page/index/top/index.vue
  4. +4
    -0
      src/router/router.js
  5. +480
    -86
      src/views/Statistics/ConsultantBrand.vue
  6. +117
    -18
      src/views/Statistics/MentoringAbility.vue
  7. +1
    -1
      vue.config.js

+ 2
- 2
src/api/admin/menu.js View File

@@ -4,7 +4,7 @@ import request from '@/router/axios'
export function getMenu(id) {
return request({
url: '/admin/menu',
params: {parentId: id,orgType:localStorage.getItem('orgType'),agentId:localStorage.getItem('agentId'),orgType:localStorage.getItem('orgType')},
params: {parentId: id,orgType:localStorage.getItem('orgType'),agentId:localStorage.getItem('agentId'),orgCode:localStorage.getItem('orgCode')},
method: 'get'
})
}
@@ -12,7 +12,7 @@ export function getMenu(id) {
export function getTopMenu() {
return request({
url: '/admin/menu',
params: {type: 'top',orgType:localStorage.getItem('orgType'),agentId:localStorage.getItem('agentId'),orgType:localStorage.getItem('orgType')},
params: {type: 'top',orgType:localStorage.getItem('orgType'),agentId:localStorage.getItem('agentId'),orgCode:localStorage.getItem('orgCode')},
method: 'get'
})
}


+ 23
- 0
src/api/modules/api.js View File

@@ -918,3 +918,26 @@ export function houseStatistics1(query) {
params:query
})
}
//顾问能力列表
export function prohibitedStatistics(query) {
return request({
url: '/autoSR/cusStageStatistics/prohibitedStatistics',
method:'get',
params:query
})
}
export function accountRank(query) {
return request({
url: '/autoSR/cusStageStatistics/accountRank',
method:'get',
params:query
})
}

export function accountRankTOP10(query) {
return request({
url: '/autoSR/cusStageStatistics/accountRankTOP10',
method:'get',
params:query
})
}

+ 4
- 3
src/page/index/top/index.vue View File

@@ -20,7 +20,7 @@
cursor: pointer;
"
>
<div class="daili" @click="goChange">
<div class="daili " @click="goChange">
{{
orgType == 0
? "系统后台"
@@ -425,7 +425,7 @@ export default {
.daili {
// width: 100px;
height: 30px;
background: #2671e2;
// background: #2671e2;
border-radius: 4px;
line-height: 30px;
text-align: center;
@@ -435,7 +435,8 @@ export default {
}
.change {
font-size: 16px;
color: #2671e2;
// color: #2671e2;
color: white;
margin-left: 10px;
}
</style>

+ 4
- 0
src/router/router.js View File

@@ -8,8 +8,12 @@ Vue.use(VueRouter)
//创建路由
// console.log(PageRouter,ViewsRouter,'123')
// console.log(Store)
console.log(process.env.BASE_URL,123);
export const createRouter = () => new VueRouter({
// mode:'history',
// base:'/wel/index',
routes: [...PageRouter, ...ViewsRouter]

})

const Router = createRouter()


+ 480
- 86
src/views/Statistics/ConsultantBrand.vue View File

@@ -1,13 +1,18 @@
<template>
<div class="box-center">
<!-- 头 -->
<div class="app-titel">
<div class="app-titel" v-if="orgType != 3">
<div class="titel-text">
楼盘选择:
<el-select v-model="houseId" placeholder="请选择">
<el-select
v-model="houseId"
@change="houseChange"
filterable
placeholder="请选择"
>
<el-option
v-for="item in buildingoptions"
:key="item.value"
v-for="item in houseList"
:key="item.id"
:label="item.propertyName"
:value="item.id"
>
@@ -17,14 +22,14 @@
</div>
<div class="app-titel">
<div class="toptimeqhuan">
<div :class="{ tophove: TimetoAhoose == 0 }" @click="tabtimetap(0)">
今日
<div :class="{ tophove: dateType == 4 }" @click="tabtimetap(4)">
近7天
</div>
<div :class="{ tophove: TimetoAhoose == 1 }" @click="tabtimetap(1)">
昨日
<div :class="{ tophove: dateType == 5 }" @click="tabtimetap(5)">
近15天
</div>
<div :class="{ tophove: TimetoAhoose == 2 }" @click="tabtimetap(2)">
一周
<div :class="{ tophove: dateType == 6 }" @click="tabtimetap(6)">
30天
</div>
</div>
<div style="margin-left: 26px">
@@ -41,25 +46,19 @@
</el-date-picker>
</div>
<div style="margin-left: 26px" class="div-lab">
<div class="label">员工</div>
<el-select v-model="value" placeholder="请选择" class="div-inp">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</div>
<div style="margin-left: 26px" class="div-lab">
<div class="label">对比</div>
<el-select v-model="value" placeholder="请选择" class="div-inp">
<div class="label">团队</div>
<el-select
v-model="deptId"
filterable
@change="deptChange"
placeholder="请选择"
class="div-inp"
>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
:key="item.deptId"
:label="item.name"
:value="item.deptId"
>
</el-option>
</el-select>
@@ -78,33 +77,26 @@
</div>
</div>
</div>
<el-table :data="tableData" stripe style="width: 100%">
<!-- <el-table :data="tableData" stripe style="width: 100%">
<el-table-column prop="batchId" label="序号" align="center">
</el-table-column>
<el-table-column prop="name" label="顾问" align="center">
</el-table-column>
<el-table-column prop="name" label="归属团队" align="center">
</el-table-column>
<el-table-column
prop="name"
v-if="tabFlag == 0"
label="设备在线天数"
align="center"
>
</el-table-column>
<el-table-column prop="name" label="接待量" align="center">
</el-table-column>
<el-table-column
v-if="tabFlag == 1"
prop="realityEquipmentCount"
label="违禁次数"
label="违禁接待次数"
align="center"
>
</el-table-column>
<el-table-column
v-if="tabFlag == 1"
prop="receivableEquipmentCount"
label="违禁占比"
label="违禁接待占比"
align="center"
>
</el-table-column>
@@ -118,14 +110,21 @@
<el-table-column
v-if="tabFlag == 1"
prop="acceptanceNum"
label="返现执行率"
label="返现次数"
align="center"
>
</el-table-column>
<el-table-column
v-if="tabFlag == 1"
prop="acceptanceNum"
label="过度保证执行率"
label="过度保证次数"
align="center"
>
</el-table-column>
<el-table-column
v-if="tabFlag == 1"
prop="acceptanceNum"
label="次数"
align="center"
>
</el-table-column>
@@ -143,17 +142,79 @@
align="center"
>
</el-table-column>
<el-table-column prop="remark" label="...执行性率" align="center">
<el-table-column prop="remark" label="执行性率" align="center">
</el-table-column>
<el-table-column v-if="tabFlag == 0" label="销奖执行率" align="center">
</el-table-column>
</el-table> -->
<el-table max-height="300" :data="tableData" stripe style="width: 100%">
<el-table-column prop="batchId" label="序号" align="center">
<template slot-scope="scope">
{{
scope.$index == tableData.length - 1
? "合计/平均"
: scope.$index + 1
}}
</template>
</el-table-column>
<el-table-column prop="accountName" label="顾问" align="center">
</el-table-column>
<el-table-column prop="deptName" label="归属团队" align="center">
</el-table-column>
<!-- <el-table-column prop="statDate" label="日期" align="center">
<template slot-scope="scope">
{{scope.$index==tableData.length-1?'合计/平均':scope.row.statDate.substring(0,10)}}
</template>
</el-table-column> -->
<el-table-column prop="activeCustomer" label="接待量" align="center">
</el-table-column>
<el-table-column
v-if="tabFlag == 1"
prop="prohibitedCustomer"
label="违禁接待次数"
align="center"
>
</el-table-column>
<el-table-column
v-if="tabFlag == 1"
prop="prohibitedZb"
label="违禁接待占比"
align="center"
>
</el-table-column>
<el-table-column
v-if="tabFlag == 0"
prop="realityEquipmentCount"
label="接待时长"
align="center"
>
<template slot-scope="{ row }">
{{ Math.floor(row.sumDuration / 60) }}
</template>
</el-table-column>
<el-table-column
v-if="tabFlag == 0"
prop="fraction"
label="销奖执行率"
align="center"
>
</el-table-column>
<el-table-column
v-for="(item, idx) in tablist"
:key="idx"
:prop="item.props"
:label="item.label"
align="center"
>
</el-table-column>
<el-table-column label="违禁执行率" align="center"> </el-table-column>
</el-table>
<div style="display: flex; justify-content: flex-end; margin-top: 10px">
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage4"
:current-page="current"
:page-sizes="[8, 16, 24, 32]"
:page-size="4"
:page-size="size"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
@@ -164,41 +225,51 @@
<div class="app-box-san">
<div class="zuo">
<div class="title">
<div class="text1">接待量(TOP10)</div>
<div class="text1">接待量排名(TOP10)</div>
</div>
<div class="hejisan">
<div class="sanbox1" style="width: 35%">
<div class="text1-1">合计</div>
<div class="text1-2">1</div>
<div class="text1-2">{{sum1}}</div>
</div>
<div class="sanbox1" style="width: 40%">
<div class="text1-1">顾问</div>
<div class="text1-2">1</div>
<div class="text1-2">{{num1}}</div>
</div>
<div class="sanbox1" style="width: 25%">
<div class="text1-1">人均接待量</div>
<div class="text1-2">1</div>
<div class="text1-2">{{avg1}}</div>
</div>
</div>
<div
style="overflow-y: auto; height: 350px; width: 94%; margin: 0 auto"
style="overflow-y: auto; height: 258px; width: 94%; margin: 0 auto"
>
<div id="echar" style="height: 250px; width: 100%"></div>
<div class="jinbox" v-for="(item, i) in echarlist" :key="i">
<div class="jinboxtit">{{ item.accountName }}</div>
<div class="jinbox-box">
<div
class="boxbaifenbi"
:style="'width:' + item.activeCustomer + '%;'"
></div>
</div>
<div class="jinboxbott">{{ item.activeCustomer }}</div>
</div>
</div>
</div>
<div class="you">
<div class="title">
<div class="text1">销讲执行率(TOP10)</div>
<div class="text1">销讲执行率排名(TOP10)</div>
<div class="text2">
<el-select
@change="teamAllLevelidtap()"
style="width: 90%; margin: 0 auto"
v-model="value"
v-model="teamAllLevelid"
placeholder="请选择"
>
<el-option
v-for="item in options"
v-for="item in teamAllLevel"
:key="item.value"
:label="item.label"
:label="item.name"
:value="item.value"
>
</el-option>
@@ -208,29 +279,114 @@
<div class="hejisan">
<div class="sanbox1" style="width: 35%">
<div class="text1-1">合计</div>
<div class="text1-2">1</div>
<div class="text1-2">{{sum2}}</div>
</div>
<div class="sanbox1" style="width: 40%">
<div class="text1-1">顾问</div>
<div class="text1-2">1</div>
<div class="text1-2">{{num2}}</div>
</div>
<div class="sanbox1" style="width: 25%">
<div class="text1-1">人均接待量</div>
<div class="text1-2">1</div>
<div class="text1-2">{{avg2}}</div>
</div>
</div>
<div
style="overflow-y: auto; height: 350px; width: 94%; margin: 0 auto"
style="overflow-y: auto; height: 258px; width: 94%; margin: 0 auto"
>
<div class="jinbox" v-for="(item, i) in ceratelist" :key="i">
<div class="jinboxtit">{{ item.name }}</div>
<div class="jinbox" v-for="(item, i) in echarlist1" :key="i">
<div class="jinboxtit">{{ item.accountName }}</div>
<div class="jinbox-box">
<div
class="boxbaifenbi"
:style="'width:' + item.avgZxl + '%;'"
:style="'width:' + item.fraction + '%;'"
></div>
</div>
<div class="jinboxbott">{{ item.avgZxl }}%</div>
<div class="jinboxbott">{{ item.fraction }}%</div>
</div>
</div>
</div>
</div>

<div class="app-box-san">
<div class="zuo">
<div class="title">
<div class="text1">接待时长排名(TOP10)</div>
</div>
<div class="hejisan">
<div class="sanbox1" style="width: 35%">
<div class="text1-1">合计</div>
<div class="text1-2">{{sum3}}</div>
</div>
<div class="sanbox1" style="width: 40%">
<div class="text1-1">顾问</div>
<div class="text1-2">{{num3}}</div>
</div>
<div class="sanbox1" style="width: 25%">
<div class="text1-1">人均接待量</div>
<div class="text1-2">{{avg3}}</div>
</div>
</div>
<div
style="overflow-y: auto; height: 258px; width: 94%; margin: 0 auto"
>
<div class="jinbox" v-for="(item, i) in echarlist2" :key="i">
<div class="jinboxtit">{{ item.accountName }}</div>
<div class="jinbox-box">
<div
class="boxbaifenbi"
:style="'width:' + item.sumDuration + '%;'"
></div>
</div>
<div class="jinboxbott">{{ item.sumDuration }}</div>
</div>
</div>
</div>
<div class="you">
<div class="title">
<div class="text1">违禁接待次数排名(TOP10)</div>
<div class="text2">
<el-select
@change="teamAllLeve2tap()"
style="width: 90%; margin: 0 auto"
v-model="teamAllLeve2id"
placeholder="请选择"
>
<el-option
v-for="item in teamAllLeve2"
:key="item.value"
:label="item.name"
:value="item.value"
>
</el-option>
</el-select>
</div>
</div>
<div class="hejisan">
<div class="sanbox1" style="width: 35%">
<div class="text1-1">合计</div>
<div class="text1-2">{{sum4}}</div>
</div>
<div class="sanbox1" style="width: 40%">
<div class="text1-1">顾问</div>
<div class="text1-2">{{num4}}</div>
</div>
<div class="sanbox1" style="width: 25%">
<div class="text1-1">人均接待量</div>
<div class="text1-2">{{avg4}}</div>
</div>
</div>
<div
style="overflow-y: auto; height: 258px; width: 94%; margin: 0 auto"
>
<div class="jinbox" v-for="(item, i) in echarlist3" :key="i">
<div class="jinboxtit">{{ item.accountName }}</div>
<div class="jinbox-box">
<div
class="boxbaifenbi"
:style="'width:' + item.prohibitedCustomer + '%;'"
></div>
</div>
<div class="jinboxbott">{{ item.prohibitedCustomer }}</div>
</div>
</div>
</div>
@@ -245,36 +401,220 @@ export default {
return {
houseId: "",
buildingoptions: [],
TimetoAhoose: 2,
tabFlag: 1,
houseList: [],
dateType: 2,
tabFlag: 0,
current: 1,
size: 8,
total: 20,
customtime: [],
tablist: [],
deptId: "",
tableData: [],
currentPage4: 1,
total: 20,
options: [
{
value: "1",
label: "排名",
},
{
value: "2",
label: "趋势",
},
],
orgType: localStorage.getItem("orgType"),
options: [],
value: "1",
ceratelist: [
{ name: "还是得", avgZxl: 80 },
{ name: "大大奥德赛", avgZxl: 90 },
{ name: "沙发和", avgZxl: 20 },
{ name: "还是得", avgZxl: 10 },
{ name: "还客户家客户是得", avgZxl: 80 },
],
statDateStart: "",
statDateEnd: "",
echarlist: [],
echarlist1: [],
echarlist2: [],
echarlist3: [],
teamAllLevel: [],
teamAllLevelid: "",
teamAllLeve2id:"",
teamAllLeve2: [],
sum1:'',
avg1:'',
num1:'',
sum2:'',
avg2:'',
num2:'',
sum3:'',
avg3:'',
num3:'',
sum4:'',
avg4:'',
num4:'',
};
},
mounted() {
this.echarCreat();
this.tabtimetap(4);
this.zkhousePage();
// this.echarCreat();

},
methods: {
zkhousePage() {
this.$api.api
.findHouseByUser({
orgType: localStorage.getItem("orgType"),
})
.then((res) => {
this.houseList = res.data;
if (localStorage.getItem("orgType") == 3) {
this.houseId = localStorage.getItem("houseId");
} else {
this.houseId = res.data[0].id;
}
// this.houseId = res.data[0].id;
this.deptFindList();
this.teamAllLeve()
});
},
deptChange() {
this.init();
},
// 获取一级
teamAllLeve() {
this.teamAllLevel = [{ name: "平均执行", value: "" }];
this.teamAllLeve2 = [{ name: "总次数", value: "" }];
let pamaet = {
houseId: this.houseId,
dateType: 0,
statDateStart: this.statDateStart,
statDateEnd: this.statDateEnd,
};
if (this.dateType == 7) {
pamaet.dateType = null;
} else {
pamaet.dateType = this.dateType;
}
this.$api.http.teamAllLevel(pamaet).then((res) => {
let arr1 = res.data.resultsList || [];
let arr2 = res.data.sensitiveWordsList || [];
arr1.map((item) => {
this.teamAllLevel.push({
name: item.name,
value: item.marketingId,
});
});
arr2.map((item) => {
this.teamAllLeve2.push({
name: item.words,
value: item.words,
});
});
this.teamAllLevelid = "";
this.teamAllLeve2id = "";
});
},
deptFindList() {
// 获取团队
this.$api.api
.deptFindList({
houseId: this.houseId,
})
.then((res) => {
console.log(res);
this.options = [
{
name: "全部",
deptId: "",
},
];
this.options.push(...res.data);
this.accountRank();
});
},
async init() {
this.accountRank();
this.echarlist=await this.accountRankTOP10(1);
this.echarlist1=await this.accountRankTOP10(2,this.teamAllLevelid,'');
this.echarlist2=await this.accountRankTOP10(3);
this.echarlist3=await this.accountRankTOP10(4,'',this.teamAllLeve2id);
console.log(this.echarlist);
},
houseChange(e) {
console.log(e);
},
// 获取图标
async accountRankTOP10(type,marketingId='',words='') {
let res = await this.$api.api.accountRankTOP10({
houseId: this.houseId,
statDateStart: this.statDateStart,
statDateEnd: this.statDateEnd,
current: this.current,
size: this.size,
deptId: this.deptId,
dateType: this.dateType == 7 ? null : this.dateType,
type,
marketingId,
words,
});
this['sum'+type]=res.data.sum
this['num'+type]=res.data.num
this['avg'+type]=res.data.avg
return res.data.list;
},
accountRank() {
this.$api.api
.accountRank({
houseId: this.houseId,
statDateStart: this.statDateStart,
statDateEnd: this.statDateEnd,
current: this.current,
size: this.size,
deptId: this.deptId,
dateType: this.dateType == 7 ? null : this.dateType,
})
.then((res) => {
this.tableData = res.data.records;
// 数据处理
// 需要两个数组,一个用来展示
this.deailDate();
this.total = res.data.total;
});
},
confirmtime() {
this.dateType = 7;
this.statDateStart = this.customtime[0];
this.statDateEnd = this.customtime[1];
this.init();
},
deailDate() {
this.tablist = [];
// 当他是第一个 小将
if (this.tabFlag == 0) {
// console.log("第一个");
this.tableData[0].resultsList.map((item, idx) => {
let obj = {};
obj.label = item.name;
obj.props = "str" + idx;
this.tablist.push(obj);
});
this.tableData.map((item) => {
this.tablist.map((item1, idx) => {
item[item1.props] = item.resultsList[idx].zxl;
});
});
} else {
// console.log("第二个");
this.tableData[0].sensitiveWordsList.map((item, idx) => {
let obj = {};
obj.label = item.words;
obj.props = "str" + idx;
this.tablist.push(obj);
});
this.tableData.map((item) => {
this.tablist.map((item1, idx) => {
item[item1.props] = item.sensitiveWordsList[idx].num;
});
});
}

// console.log(this.tableData);
},
//销讲执行率切换一级
async teamAllLevelidtap() {
// this.teamData3();
this.echarlist1=await this.accountRankTOP10(2,this.teamAllLevelid,'');
},
//违禁接待次数一级切换
async teamAllLeve2tap() {
// this.teamData5();
this.echarlist3=await this.accountRankTOP10(4,'',this.teamAllLeve2id);
},
echarCreat() {
let myChart = echarts.init(document.getElementById("echar"));
let option = {
@@ -331,14 +671,68 @@ export default {
};
myChart.setOption(option);
},
handleCurrentChange() {},
handleSizeChange() {},
handleCurrentChange(e) {
this.current = e;
this.accountRank();
},
handleSizeChange(e) {
this.size = e;
this.accountRank();
},
//切换时间
tabtimetap(index) {
this.TimetoAhoose = index;
this.statDateStart = "";
this.statDateEnd = "";
//给时间选择器赋值
let num = 24 * 3600 * 1000;
// 获取当前时间戳转换为日期格式
if (this.dateType == 4) {
num = 24 * 3600 * 1000 * 6;
}
if (this.dateType == 5) {
num = 24 * 3600 * 1000 * 14;
}
if (this.dateType == 6) {
num = 24 * 3600 * 1000 * 29;
}

this.customtime = [
this.timestampToTime(new Date().getTime() - num),
this.timestampToTime(new Date().getTime()),
];
this.dateType = index;
this.init();
},
timestampToTime(timestamp) {
var date = new Date(timestamp); //时间戳为10位需*1000,时间戳为13位的话不需乘1000
// var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000

var yyyy = date.getFullYear() + "-";

var MM =
(date.getMonth() + 1 < 10
? "0" + (date.getMonth() + 1)
: date.getMonth() + 1) + "-";

// var dd = date.getDate() + ' ';
var dd =
(date.getDate() < 10 ? "0" + date.getDate() : date.getDate()) + " ";

// var HH = date.getHours() + ':';
// var HH = (date.getHours() < 10 ? '0'+(date.getHours()) : date.getHours()) + ':';
//
// // var mm = date.getMinutes() + ':';
// var mm = (date.getMinutes() < 10 ? '0'+(date.getMinutes()) : date.getMinutes()) + ':';
//
// // var ss = date.getSeconds();
// var ss = (date.getSeconds() < 10 ? '0'+(date.getSeconds()) : date.getSeconds());

// return yyyy+MM+dd+HH+mm+ss;
return yyyy + MM + dd;
},
tabFlagChange(idx) {
this.tabFlag = idx;
this.deailDate();
},
},
};


+ 117
- 18
src/views/Statistics/MentoringAbility.vue View File

@@ -208,24 +208,42 @@
</div>
</div>
</div>
<el-table :data="tableData" stripe style="width: 100%">
<el-table-column prop="batchId" label="日期" align="center">
<el-table max-height="300" :data="tableData" stripe style="width: 100%;">
<el-table-column prop="statDate" label="日期" align="center">
<template slot-scope="scope">
{{scope.$index==tableData.length-1?'合计/平均':scope.row.statDate.substring(0,10)}}
<!-- {{scope.$index}} -->
</template>
</el-table-column>
<el-table-column prop="name" label="接待量" align="center">
<el-table-column prop="activeCustomer" label="接待量" align="center">
</el-table-column>
<el-table-column
v-if="tabFlag == 1"
prop="realityEquipmentCount"
label="违禁次数"
prop="prohibitedCustomer"
label="违禁接待次数"
align="center"
>
</el-table-column>
<el-table-column
v-if="tabFlag == 1"
prop="prohibitedZb"
label="违禁接待占比"
align="center"
>
<!-- </el-table-column>
<el-table-column
v-if="tabFlag == 1"
prop="receivableEquipmentCount"
label="违禁占比"
label="返现次数"
align="center"
>
</el-table-column>
<el-table-column
v-if="tabFlag == 1"
prop="receivableEquipmentCount"
label="过度保证次数"
align="center"
> -->
</el-table-column>
<el-table-column
v-if="tabFlag == 0"
@@ -233,27 +251,35 @@
label="接待时长"
align="center"
>
<template slot-scope="{row}">
{{Math.floor(row.sumDuration/60)}}
</template>
</el-table-column>
<el-table-column prop="acceptanceNum" label="返现执行率" align="center">
<!-- <el-table-column v-if="tabFlag == 0" prop="acceptanceNum" label="品牌介绍执行率" align="center">
</el-table-column>
<el-table-column
v-if="tabFlag == 0"
prop="createTime"
label="过度保证执行率"
label="区位介绍执行率"
align="center"
>
</el-table-column>

<el-table-column prop="remark" label="...执行性率" align="center">
<el-table-column prop="remark" v-if="tabFlag == 0" label="...执行性率" align="center">
</el-table-column>
<el-table-column prop="remark" v-if="tabFlag == 1" label="...执行性次数" align="center">
</el-table-column> -->
<el-table-column v-if="tabFlag == 0" prop="fraction" label="销奖执行率" align="center"> </el-table-column>
<el-table-column v-for="(item,idx) in tablist" :key="idx" :prop="item.props" :label="item.label" align="center">
</el-table-column>
<el-table-column label="违禁执行率" align="center"> </el-table-column>
</el-table>
<div style="display: flex; justify-content: flex-end; margin-top: 10px">
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage4"
:current-page="current"
:page-sizes="[8, 16, 24, 32]"
:page-size="4"
:page-size="size"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
@@ -271,12 +297,12 @@ export default {
houseId: "",
buildingoptions: [],
TimetoAhoose: 4,
tabFlag: 1,
tabFlag: 0,
customtime: [],
tableData: [],
currentPage4: 1,
current: 1,
size:8,
total: 20,

statDateStart:'',
statDateEnd:'',
consultantlist:[],
@@ -325,17 +351,29 @@ export default {
listA:[],
listB:[],
},

tablist:[
// {
// label:'1',
// props:'1'
// },
// {
// label:'2',
// props:'1'
// },
]
};
},
mounted() {
this.houseId = localStorage.getItem("houseId");
// this.prohibitedStatistics()
// return
this.init()
},
methods: {
init(){
this.getAccount()
this.teamAllLeve()

},
accountData1(){
let pamaet={
@@ -373,6 +411,57 @@ export default {
this.SwitchCARDS1(arr1,arr2,timelist,"data1")
})
},
prohibitedStatistics(){
this.$api.api.prohibitedStatistics({
houseId:this.houseId,
statDateStart:this.statDateStart,
statDateEnd:this.statDateEnd,
current:this.current,
size:this.size,
accountId:this.consultantlistid,
dateType:this.TimetoAhoose==7?null:this.TimetoAhoose
})
.then(res=>{
this.tableData=res.data.records
// 数据处理
// 需要两个数组,一个用来展示
this.deailDate()
this.total=res.data.total
})
},
deailDate(){
this.tablist=[]
// 当他是第一个 小将
if(this.tabFlag==0){
console.log('第一个');
this.tableData[0].resultsList.map((item,idx)=>{
let obj={}
obj.label=item.name
obj.props="str"+idx
this.tablist.push(obj)
})
this.tableData.map(item=>{
this.tablist.map((item1,idx)=>{
item[item1.props]=item.resultsList[idx].zxl
})
})
}else{
console.log('第二个');
this.tableData[0].sensitiveWordsList.map((item,idx)=>{
let obj={}
obj.label=item.words
obj.props="str"+idx
this.tablist.push(obj)
})
this.tableData.map(item=>{
this.tablist.map((item1,idx)=>{
item[item1.props]=item.sensitiveWordsList[idx].num
})
})
}

// console.log(this.tableData);
},
accountData2(){
let pamaet={
houseId:this.houseId,
@@ -571,6 +660,7 @@ export default {
this.accountData4()
this.accountData5()
this.accountData6()
this.prohibitedStatistics()
},
//对比切换
packtap(){
@@ -662,6 +752,8 @@ export default {
this.accountData4()
this.accountData5()
this.accountData6()
this.prohibitedStatistics()
// 代码绝了
})
},
SwitchCARDS1(arr1,arr2,timelist,data1) {
@@ -790,8 +882,14 @@ export default {
myChart.resize();
});
},
handleCurrentChange() {},
handleSizeChange() {},
handleCurrentChange(e) {
this.current=e
this.prohibitedStatistics()
},
handleSizeChange(e) {
this.size=e
this.prohibitedStatistics()
},
confirmtime(){
this.TimetoAhoose = 7;
this.statDateStart=this.customtime[0];
@@ -807,6 +905,7 @@ export default {
},
tabFlagChange(idx) {
this.tabFlag = idx;
this.deailDate()
},
},
};


+ 1
- 1
vue.config.js View File

@@ -7,7 +7,7 @@
// const url = 'http://192.168.31.169:9999' //长龙
const url = 'http://192.168.31.134:9999' //嘉豪
// const url = 'http://192.168.31.100:9999' //王笑
// const url = 'http://pmsa8v.natappfree.cc' //王笑
// const url = 'http://jw2vzp.natappfree.cc' //王笑

const CompressionWebpackPlugin = require('compression-webpack-plugin')
const productionGzipExtensions = ['js', 'css']


Loading…
Cancel
Save