Selaa lähdekoodia

首页简报数据穿透

newStyle
douzhuo 2 vuotta sitten
vanhempi
commit
801088909e
4 muutettua tiedostoa jossa 156 lisäystä ja 40 poistoa
  1. +57
    -8
      src/page/wel.vue
  2. +92
    -30
      src/views/ReceivingRecords/index.vue
  3. +6
    -1
      src/views/Statistics/ConsultantBrand.vue
  4. +1
    -1
      vue.config.js

+ 57
- 8
src/page/wel.vue Näytä tiedosto

@@ -33,11 +33,11 @@
<img src="../../public/img/indexIcon/indexCardIcon14.png" alt="">
</div>
</div>
<div class="pagechen" @click="toDetail('/ReceivingRecords/index', '', '接待记录')">
<div class="pagechen" @click="toDetail('/ReceivingRecords/index', nowSelectTime(1), '接待记录')">
<div style="width:100%">
<div class="pageboxtitle1 projectCardItem">
<div class="sum">接待量 (次)
<el-tooltip effect="light" content="筛选时间内,已经结束的接待条数,不包含待接单;" placement="bottom-end">
<el-tooltip effect="light" content="筛选时间内,已经结束的接待条数,不包含待接单;////" placement="bottom-end">
<i style="
border: 1px solid #afa8a8;
color: #9e9e9e;
@@ -83,7 +83,7 @@
</div>
</div>
<div class="pagechen" @click="
toDetail('/ReceivingRecords/index', 'validInvalid,0', '接待记录')
toDetail('/ReceivingRecords/index', nowSelectTime(2), '接待记录')
">
<div style="width:100%">
<div class="pageboxtitle1 projectCardItem">
@@ -133,7 +133,7 @@
</div>
</div>
</div>
<div class="pagechen projectCardItem" @click="toDetail('/Statistics/ConsultantBrand', '', '顾问排名')">
<div class="pagechen projectCardItem" @click="toDetail('/Statistics/ConsultantBrand', nowSelectTime(3), '顾问排名')">
<div>
<div class="pageboxtitle1">顾问(人)</div>
<div class="pageboxtitle2 projectColumn">
@@ -156,7 +156,7 @@
<img src="../../public/img/indexIcon/indexCardIcon21.png" alt="" />
</div>
</div>
<div class="pagechen" @click="toDetail('/ReceivingRecords/index', '', '接待记录')">
<div class="pagechen" @click="toDetail('/ReceivingRecords/index', nowSelectTime(2), '接待记录')">
<div style="width:100%">
<div class="pageboxtitle1 projectCardItem">
<div class="sum">平均执行率
@@ -205,7 +205,7 @@
</div>
</div>
</div>
<div class="pagechen" @click="toDetail('/ReceivingRecords/index', '', '接待记录')">
<div class="pagechen" @click="toDetail('/ReceivingRecords/index', nowSelectTime(2), '接待记录')">
<div style="width:100%">
<div class="pageboxtitle1 projectCardItem">
<div class="sum">平均接待时长(分钟)
@@ -258,7 +258,7 @@



<div class="pagechen" @click="toDetail('/ReceivingRecords/index', 'taboo,1', '接待记录')">
<div class="pagechen" @click="toDetail('/ReceivingRecords/index', nowSelectTime(4), '接待记录')">
<div style="width:100%">
<div class="pageboxtitle1 projectCardItem">
<div class="sum">违禁接待次数(次)
@@ -307,7 +307,7 @@
</div>
</div>
</div>
<div class="pagechen" @click="toDetail('/ReceivingRecords/index', '', '接待记录')">
<div class="pagechen" @click="toDetail('/ReceivingRecords/index', nowSelectTime(4), '接待记录')">
<div style="width:100%">
<div class="pageboxtitle1 projectCardItem">
<div class="sum">违禁接待占比
@@ -1786,6 +1786,55 @@ export default {
}
},
methods: {
// 当前选中时间类型之接待记录
/**
* 1、接待量跳转
* 2、有效接待、平均执行率、平均接待时长:打开接待页面,筛选条件:日期+有效接待
* 3、顾问:打开顾问排名,筛选条件:时间;
* 4、违禁接待次数、违禁接待占比:打开接待记录,筛选条件:日期+违禁是+有效接待;
* */
nowSelectTime(type) {
let str = ''
switch(type) {
case 1:
if (this.TimetoAhoose == 0) {
str = `dateType,${this.TimetoAhoose}`
} else if(this.TimetoAhoose == 1) {
str = `dateType,${2}`
} else {
str = ''
}
break;
case 2:
if (this.TimetoAhoose == 0) {
str = `dateType,${this.TimetoAhoose}&validInvalid,0`
} else if(this.TimetoAhoose == 1) {
str = `dateType,${2}&validInvalid,0`
} else {
str = 'validInvalid,0'
}
break;
case 3:
if (this.TimetoAhoose == 1) {
str = `dateType,4`
} else {
str = ''
}
break;
case 4:
if (this.TimetoAhoose == 0) {
str = `dateType,${this.TimetoAhoose}&taboo,1&validInvalid,0`
} else if(this.TimetoAhoose == 1) {
str = `dateType,${2}&taboo,1&validInvalid,0`
} else {
str = 'taboo,1&validInvalid,0'
}
break;
}

return str
},

// 跳转详情
toDetail(path, params2 = "", name) {
if (path == "") return;


+ 92
- 30
src/views/ReceivingRecords/index.vue Näytä tiedosto

@@ -290,8 +290,14 @@
</div>
<div style="margin-left: 20px">
<el-button @click="clearScreen" type="text">清空筛选条件</el-button>
</div>
<el-button style="margin-left:10px;" @click="isSystoleForm" type="text">{{isOpen?'收起':'展开'}}<i style="margin-left:5px;" :class="isOpen?'el-icon-arrow-up':'el-icon-arrow-down'"></i></el-button>
</div>
<el-button style="margin-left: 10px" @click="isSystoleForm" type="text"
>{{ isOpen ? "收起" : "展开"
}}<i
style="margin-left: 5px"
:class="isOpen ? 'el-icon-arrow-up' : 'el-icon-arrow-down'"
></i
></el-button>

<div
style="margin-left: auto; margin-right: 10px"
@@ -306,12 +312,12 @@
<div class="cen-tab">
<el-table :data="tableData" stripe style="width: 100%" height="390">
<el-table-column
prop="staTimeOfCN"
prop="staTime"
label="接待开始时间"
align="center"
width="200"
sortable
height="390"
height="390"
>
</el-table-column>
<el-table-column prop="agentName" label="顾问" align="center">
@@ -321,7 +327,13 @@
<el-table-column prop="visitRecordName" label="到访次数" align="center">
</el-table-column>

<el-table-column prop="mm" label="录音时长" align="center" width="100" sortable>
<el-table-column
prop="mm"
label="录音时长"
align="center"
width="100"
sortable
>
</el-table-column>
<el-table-column prop="recording" label="录音类型" align="center">
<template slot-scope="{ row }">
@@ -340,12 +352,18 @@
</template>
</el-table-column>

<el-table-column prop="total" label="画像标签触达次数" align="center" width="150" sortable>
<el-table-column
prop="total"
label="画像标签触达次数"
align="center"
width="150"
sortable
>
</el-table-column>
<el-table-column prop="fraction" label="执行率" align="center" sortable>
<template slot-scope="{ row }"> {{ row.fraction || "0" }}% </template>
</el-table-column>
<!-- <el-table-column prop="address" label="禁忌执行率" align="center">
</el-table-column> -->
<!-- scope -->
@@ -359,8 +377,16 @@
{{ row.zfal == 0 ? "已加精" : "未加精" }}
</template>
</el-table-column> -->
<el-table-column prop="validInvalidName" label="接待标识" align="center"></el-table-column>
<el-table-column prop="zfalName" label="推荐案例" align="center"></el-table-column>
<el-table-column
prop="validInvalidName"
label="接待标识"
align="center"
></el-table-column>
<el-table-column
prop="zfalName"
label="推荐案例"
align="center"
></el-table-column>
<el-table-column label="操作" align="center" width="80" fixed="right">
<template slot-scope="{ row }">
<el-button
@@ -398,7 +424,7 @@ import { exportMethodPost } from "@/util/util";
export default {
data() {
return {
isOpen:false,
isOpen: false,
TimetoAhoose: 2,
time: [],
houseList: [],
@@ -500,7 +526,7 @@ export default {
label: "全部",
value: "",
},
{
label: "有效接待",
value: "0",
@@ -511,7 +537,8 @@ export default {
},
],

options14: [ // 正反案例
options14: [
// 正反案例
{
label: "全部",
value: "",
@@ -547,7 +574,7 @@ export default {
dateType: null,
projectId: "",
taboo: "",
zfal: "", // 正反案例 0:正面案例 1:反面案例
zfal: "", // 正反案例 0:正面案例 1:反面案例
validInvalid: "", // 是否为有效接待 0:有效 1:无效
},
rec_index_show: false, // 按钮权限
@@ -559,11 +586,46 @@ export default {
computed: {
...mapGetters(["permissions"]),
},

activated() {
if (this.$route.query.types) {
if (this.$route.query.types.indexOf("&") != -1) {
let arr = this.$route.query.types.split("&");
arr.forEach((item) => {
let as = item.split(",");
this.searchForm[as[0]] = as[1];
});
} else {
let arr = this.$route.query.types.split(",");
this.searchForm[arr[0]] = arr[1];
}
}

if (this.$route.query.date) {
this.time = this.$route.query.date.split(",");
this.searchForm.staDate = this.time[0];
this.searchForm.endDate = this.time[1];
console.log("时间");
}

// 获取项目列表
this.zkhousePage();
},

created() {
if (this.$route.query.types) {
let arr = this.$route.query.types.split(",");
this.searchForm[arr[0]] = arr[1];
console.log(arr);
if (this.$route.query.types.indexOf("&") != -1) {
let arr = this.$route.query.types.split("&");
arr.forEach((item) => {
let as = item.split(",");
this.searchForm[as[0]] = as[1];
});
} else {
let arr = this.$route.query.types.split(",");
this.searchForm[arr[0]] = arr[1];
}
}

if (this.$route.query.date) {
@@ -584,16 +646,16 @@ export default {
},

methods: {
isSystoleForm(){
this.isOpen = !this.isOpen
isSystoleForm() {
this.isOpen = !this.isOpen;
},
// 清除上次进入遗留的数据
resetParams() {
this.searchForm.taboo = ''
this.searchForm.validInvalid = ''
this.searchForm.endDate = ''
this.searchForm.staDate = ''
this.time = ''
this.searchForm.taboo = "";
this.searchForm.validInvalid = "";
this.searchForm.endDate = "";
this.searchForm.staDate = "";
this.time = "";
},

downLoad() {
@@ -745,7 +807,7 @@ export default {
this.searchForm.endDate = "";
// this.$set(this, "time", null);
this.searchForm.dateType = idx;
this.time = []
this.time = [];
this.houseChange();
},
timestampToTime(timestamp) {
@@ -768,7 +830,7 @@ export default {

watch: {
$route(to, from) {
this.resetParams()
this.resetParams();
//监听路由是否变化
if (to.query.types != from.query.types && to.query.types != null) {
let arr = this.$route.query.types.split(",");
@@ -858,11 +920,11 @@ export default {
.div-inp {
width: 250px;
}
/deep/ .el-table__header-wrapper{
thead{
tr{
th{
background: #F5F7FA;
/deep/ .el-table__header-wrapper {
thead {
tr {
th {
background: #f5f7fa;
color: #333333;
}
}


+ 6
- 1
src/views/Statistics/ConsultantBrand.vue Näytä tiedosto

@@ -478,7 +478,7 @@
<div class="hejisan">
<div class="sanbox1" style="width: 50%;text-align: center;">
<div class="text1-1">未标记合计</div>
<div class="text1-2">{{ num5 }}个</div>
<div class="text1-2">{{ sum5 }}个</div>
</div>
<div class="sanbox1" style="width: 50%;text-align: center;">
<div class="text1-1">均值</div>
@@ -668,6 +668,11 @@ export default {
...mapGetters(["permissions"]),
},
created() {
if (this.$route.query.types) {
let arr = this.$route.query.types.split(",");
this[arr[0]] = arr[1];
console.log(arr);
}
this.sta_men_downLoad = this.permissions["sta_men_downLoad"];
},
mounted() {


+ 1
- 1
vue.config.js Näytä tiedosto

@@ -2,7 +2,7 @@
* 配置参考:
* https://cli.vuejs.org/zh/config/
*/
// const url = 'http://192.168.31.167:9999' //长龙
// const url = 'http://192.168.31.161:9999' //长龙
// const url = 'http://192.168.31.211:9999' // 泽明
// const url = 'http://192.168.31.100:9999' //王笑
// const url = 'http://62.234.122.43:9999' //正式


Ladataan…
Peruuta
Tallenna