Browse Source

Merge branch 'master' into zx28

newStyle
douzhuo 1 year ago
parent
commit
c0dbef536b
7 changed files with 157 additions and 107 deletions
  1. +18
    -0
      src/api/modules/http.js
  2. +0
    -1
      src/router/axios.js
  3. +78
    -0
      src/views/Receive/index.vue
  4. +1
    -1
      src/views/Statistics/ConsultantBrand.vue
  5. +3
    -0
      src/views/Statistics/MentoringAbility.vue
  6. +55
    -10
      src/views/Statistics/ReceptionOverview.vue
  7. +2
    -95
      src/views/Statistics/TheTeamCompared.vue

+ 18
- 0
src/api/modules/http.js View File

@@ -824,6 +824,24 @@ export function keyWordsMatching(obj) {
}) })
} }


// 修改销讲业务
export function updateMarketingBusiness(obj) {
return request({
url: 'autoSR/customer/updateMarketingBusiness',
method: 'post',
data: obj
})
}

// 获取销讲业务模板
export function marketingBusinessNoApi(params) {
return request({
url: 'autoSR/customer/marketingBusiness',
method: 'get',
params: params
})
}



//小程序权限 //小程序权限
export function geTmenu(query) { export function geTmenu(query) {


+ 0
- 1
src/router/axios.js View File

@@ -63,7 +63,6 @@ axios.interceptors.response.use(res => {
NProgress.done() NProgress.done()
const status = Number(res.status) || 200 const status = Number(res.status) || 200
const message = res.data.msg || errorCode[status] || errorCode['default'] const message = res.data.msg || errorCode[status] || errorCode['default']
// if (status === 401) {
if (status === 401 || status === 500) { if (status === 401 || status === 500) {
idx++ idx++
if(idx==1){ if(idx==1){


+ 78
- 0
src/views/Receive/index.vue View File

@@ -27,6 +27,12 @@
align-items: center; align-items: center;
" "
> >
<div v-if="permissions.rec_index_checkoutSales">
<div @click="showSalesBusiness = true;marketingBusiness=userinformationlist.marketingBusiness" style="display: flex; align-items: center;margin-right: 12px;">
<span style="font-size: 14px; color: #333333; margin-left: 4px"
>切换销讲业务</span>
</div>
</div>
<div v-if="rec_index_addJ" @click="Addtodigest()"> <div v-if="rec_index_addJ" @click="Addtodigest()">
<div <div
v-if="arr[aplayerId].status == 0" v-if="arr[aplayerId].status == 0"
@@ -1271,6 +1277,40 @@
<el-button type="primary" @click="editSure()">确认</el-button> <el-button type="primary" @click="editSure()">确认</el-button>
</div> </div>
</el-dialog> </el-dialog>


<el-dialog
title="更换销讲业务"
:visible.sync="showSalesBusiness"
center
width="600px"
:close-on-click-modal="false"
>
<div style="display: flex;align-items: center;">
<div class="titel-text" style="margin-left: 20px">销讲业务:</div>
<el-select
class="div-inp"
v-model="marketingBusiness"
clearable
filterable
collapse-tags
placeholder="请选择"
>
<el-option
v-for="item in templateList"
:key="item.id"
:label="item.templateName"
:value="item.id"
>
</el-option>
</el-select>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="showSalesBusiness = false">取消</el-button>
<el-button type="primary" @click="enterSalesBusiness()">确认</el-button>
</div>
</el-dialog>
</div> </div>
</template> </template>


@@ -1288,6 +1328,10 @@ import { saveAs } from "file-saver";
export default { export default {
data() { data() {
return { return {
showSalesBusiness: false, // 更换销讲业务
templateList: [], // 销讲业务列表
marketingBusiness: '', // 选中的销讲业务

keyWordsList: [], keyWordsList: [],
imgArr: [ imgArr: [
"", "",
@@ -1450,6 +1494,39 @@ export default {
}, },


methods: { methods: {
// 确认切换销讲业务
enterSalesBusiness() {
this.$api.http.updateMarketingBusiness({
marketingBusiness: this.marketingBusiness,
id: this.fileId,
}).then(res=> {
console.log(res, 'cnmcm,cxcvnklfdkldflkfdalk')
if (res.code == 10000) {
this.$message.success(res.message);
this.init()
this.showSalesBusiness = false
} else {
this.$message.error(res.message);
}
})
},

// 销讲模板列表
marketingBusinessNoApi() {
this.$api.http.marketingBusinessNoApi({
houseId: localStorage.getItem("houseId"),
status: 0, // 固定传0
}).then(res => {
console.log(res, 'asdklasjdkasljsalkd')
if (res.code == 10000) {
this.templateList = res.data
}
})
},

// 修改销讲业务模板
updateMarketingBusiness() {},

changeshow1(item) { changeshow1(item) {
item.show = !item.show; item.show = !item.show;
}, },
@@ -2137,6 +2214,7 @@ export default {
this.findCARKeywords(); this.findCARKeywords();
this.findBannedWordsByCusId(); this.findBannedWordsByCusId();
this.Getsthetransliteratecontent(); this.Getsthetransliteratecontent();
this.marketingBusinessNoApi();
}); });
}, },




+ 1
- 1
src/views/Statistics/ConsultantBrand.vue View File

@@ -975,7 +975,7 @@ export default {
role: "", role: "",


templateList: [], // 销讲业务列表 templateList: [], // 销讲业务列表
marketingBusiness: "", // 选中的销讲业务
marketingBusiness: [], // 选中的销讲业务
}; };
}, },
computed: { computed: {


+ 3
- 0
src/views/Statistics/MentoringAbility.vue View File

@@ -575,6 +575,7 @@ export default {
statDateEnd: this.statDateEnd, statDateEnd: this.statDateEnd,
accountId: this.consultantlistid, accountId: this.consultantlistid,
dateType: this.TimetoAhoose == 7 ? null : this.TimetoAhoose, dateType: this.TimetoAhoose == 7 ? null : this.TimetoAhoose,
marketingBusiness: this.marketingBusiness.join(','),
}; };
exportMethodPost( exportMethodPost(
"autoSR/cusStageStatistics/prohibitedStatisticsExport", "autoSR/cusStageStatistics/prohibitedStatisticsExport",
@@ -746,6 +747,7 @@ export default {
userB: this.Pklistid, userB: this.Pklistid,
type: 3, type: 3,
marketingId: this.teamAllLevelid, marketingId: this.teamAllLevelid,
marketingBusiness: this.marketingBusiness.join(','),
}; };
if (this.TimetoAhoose == 7) { if (this.TimetoAhoose == 7) {
pamaet.dateType = null; pamaet.dateType = null;
@@ -927,6 +929,7 @@ export default {
this.accountData4(); this.accountData4();
this.accountData5(); this.accountData5();
this.accountData6(); this.accountData6();
this.prohibitedStatistics()
}, },


// 获取一级 // 获取一级


+ 55
- 10
src/views/Statistics/ReceptionOverview.vue View File

@@ -54,6 +54,26 @@
> >
</el-date-picker> </el-date-picker>
</div> </div>

<div class="label" style="margin-left: 20px">销讲业务:</div>
<el-select
class="div-inp"
@change="packtaps"
v-model="marketingBusiness"
multiple
clearable
filterable
collapse-tags
placeholder="请选择"
>
<el-option
v-for="item in templateList"
:key="item.id"
:label="item.templateName"
:value="item.id"
>
</el-option>
</el-select>
</div> </div>
</div> </div>


@@ -355,11 +375,7 @@
</div> </div>
<div <div
v-if="Zxllist.length != 0" v-if="Zxllist.length != 0"
style="
min-height: 320px;
width: 94%;
margin: -18px auto 16px;
"
style="min-height: 320px; width: 94%; margin: -18px auto 16px"
> >
<div class="jinbox" v-for="(item, i) in Zxllist" :key="i"> <div class="jinbox" v-for="(item, i) in Zxllist" :key="i">
<!-- <div class="jinboxtit">{{ item.name }}</div> --> <!-- <div class="jinboxtit">{{ item.name }}</div> -->
@@ -469,11 +485,7 @@
</div> </div>
<div <div
v-if="Zxllistchildren.length != 0" v-if="Zxllistchildren.length != 0"
style="
min-height: 320px;
width: 94%;
margin: -18px auto 16px;
"
style="min-height: 320px; width: 94%; margin: -18px auto 16px"
> >
<div class="jinbox" v-for="(item, i) in Zxllistchildren" :key="i"> <div class="jinbox" v-for="(item, i) in Zxllistchildren" :key="i">
<!-- <div class="jinboxtit">{{ item.name }}</div> --> <!-- <div class="jinboxtit">{{ item.name }}</div> -->
@@ -617,6 +629,9 @@ export default {


activeName: localStorage.getItem("activeName") || "0", // 顾问选项卡选中变量值 activeName: localStorage.getItem("activeName") || "0", // 顾问选项卡选中变量值
activeIndex: localStorage.getItem("activeIndex") || "", // 系统访问来源的下标 activeIndex: localStorage.getItem("activeIndex") || "", // 系统访问来源的下标

templateList: [], // 销讲业务列表
marketingBusiness: [], // 选中的销讲业务
}; };
}, },
watch: { watch: {
@@ -641,6 +656,7 @@ export default {
this.overviewreceptionOverviewZxl(); this.overviewreceptionOverviewZxl();
this.overviewteamOrAccountSellingTrends(); this.overviewteamOrAccountSellingTrends();
this.overviewteamOrAccountSellingTrends1(); this.overviewteamOrAccountSellingTrends1();
this.getMarketingBusiness()
} else { } else {
this.zkhousePage(); this.zkhousePage();
} }
@@ -659,6 +675,17 @@ export default {
} }
}, },
methods: { methods: {
// 获取销讲业务
getMarketingBusiness() {
this.$api.http
.marketingBusiness({ houseId: this.houseId })
.then((res) => {
console.log(res);
if (res.code == 10000) {
this.templateList = res.data;
}
});
},
// 选项卡切换事件 // 选项卡切换事件
handleClick(tab) { handleClick(tab) {
this.activeName = tab; this.activeName = tab;
@@ -735,6 +762,7 @@ export default {
dateType: this.TimetoAhoose, dateType: this.TimetoAhoose,
statDateStart: this.fromobj.statDateStart, statDateStart: this.fromobj.statDateStart,
statDateEnd: this.fromobj.statDateEnd, statDateEnd: this.fromobj.statDateEnd,
marketingBusiness: this.marketingBusiness.join(','),
}; };
if (this.TimetoAhoose == 8) { if (this.TimetoAhoose == 8) {
parmo.dateType = null; parmo.dateType = null;
@@ -760,6 +788,7 @@ export default {
dateType: this.TimetoAhoose, dateType: this.TimetoAhoose,
type: this.activeName, type: this.activeName,
...this.fromobj, ...this.fromobj,
marketingBusiness: this.marketingBusiness.join(','),
}; };
if (this.TimetoAhoose == 8) { if (this.TimetoAhoose == 8) {
parmo.dateType = null; parmo.dateType = null;
@@ -1000,6 +1029,7 @@ export default {
statDateStart: this.fromobj.statDateStart, statDateStart: this.fromobj.statDateStart,
statDateEnd: this.fromobj.statDateEnd, statDateEnd: this.fromobj.statDateEnd,
flag: this.activeIndex, flag: this.activeIndex,
marketingBusiness: this.marketingBusiness.join(','),
}; };
if (this.TimetoAhoose == 8) { if (this.TimetoAhoose == 8) {
parmo.dateType = null; parmo.dateType = null;
@@ -1042,6 +1072,7 @@ export default {
statDateStart: this.fromobj.statDateStart, statDateStart: this.fromobj.statDateStart,
statDateEnd: this.fromobj.statDateEnd, statDateEnd: this.fromobj.statDateEnd,
deptId: this.departmentsri, deptId: this.departmentsri,
marketingBusiness: this.marketingBusiness.join(','),
}; };
if (this.TimetoAhoose == 8) { if (this.TimetoAhoose == 8) {
parmo.dateType = null; parmo.dateType = null;
@@ -1070,6 +1101,7 @@ export default {
statDateStart: this.fromobj.statDateStart, statDateStart: this.fromobj.statDateStart,
statDateEnd: this.fromobj.statDateEnd, statDateEnd: this.fromobj.statDateEnd,
accountId: this.consultantsri, accountId: this.consultantsri,
marketingBusiness: this.marketingBusiness.join(','),
}; };
if (this.TimetoAhoose == 8) { if (this.TimetoAhoose == 8) {
parmo.dateType = null; parmo.dateType = null;
@@ -1131,6 +1163,7 @@ export default {
dateType: this.TimetoAhoose, dateType: this.TimetoAhoose,
statDateStart: this.fromobj.statDateStart, statDateStart: this.fromobj.statDateStart,
statDateEnd: this.fromobj.statDateEnd, statDateEnd: this.fromobj.statDateEnd,
marketingBusiness: this.marketingBusiness.join(','),
}; };
if (this.TimetoAhoose == 8) { if (this.TimetoAhoose == 8) {
parmo.dateType = null; parmo.dateType = null;
@@ -1149,6 +1182,7 @@ export default {
dateType: this.TimetoAhoose, dateType: this.TimetoAhoose,
statDateStart: this.fromobj.statDateStart, statDateStart: this.fromobj.statDateStart,
statDateEnd: this.fromobj.statDateEnd, statDateEnd: this.fromobj.statDateEnd,
marketingBusiness: this.marketingBusiness.join(','),
}; };
if (this.TimetoAhoose == 8) { if (this.TimetoAhoose == 8) {
parmo.dateType = null; parmo.dateType = null;
@@ -1566,6 +1600,17 @@ export default {
this.systemAccessranking(); this.systemAccessranking();
this.overviewreceptionOverviewZxl(); this.overviewreceptionOverviewZxl();
}, },

packtaps() {
this.overviewreceptionOverview();
this.overviewreceptionData();
this.overviewteamOrAccountSellingTrends();
this.overviewteamOrAccountSellingTrends1();
this.overviewreceptionRanking();
this.systemAccessranking();
this.overviewreceptionOverviewZxl();
},

// 计算百分比 // 计算百分比
dealData(arr) { dealData(arr) {
let num = Math.max.apply( let num = Math.max.apply(


+ 2
- 95
src/views/Statistics/TheTeamCompared.vue View File

@@ -584,101 +584,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="you">
<div class="title">
<div class="text1">违禁话术雷达图</div>
</div>
<div
v-if="isshowcd == true"
id="main2"
style="width: 94%; margin: 0 auto"
></div>
<div class="nulllist" v-if="isshowcd == false">
<div class="imgboxc">
<img class="imgboxc-img" src="/img/nullnull.png" alt="" />
<div class="nulltext" style="font-size: 14px">暂无数据</div>
</div>
</div>
</div>
</div>

<div class="app-box-san">
<div class="zuo" style="margin-right: 0">
<div class="title">
<div class="text1">
违禁接待次数
<el-tooltip
effect="light"
content="筛选时间内,出现违禁的接待次数,不包含待接单/无效接待/无效违禁;"
placement="bottom-end"
>
<i class="el-icon-question" style="color: #74a3ea"></i>
</el-tooltip>
</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" style="margin: 0 auto">
<div class="sanbox1" style="width: 50%">
<div class="text1-1">团队总数</div>
<div class="text1-2">{{ teamobj5.num || 0 }}个</div>
</div>
<div class="sanbox1" style="width: 50%">
<div class="text1-1">均值</div>
<div class="text1-2">{{ teamobj5.avg || 0 }}次</div>
</div>
</div>
<div
v-if="teamobj5.list.length != 0"
style="width: 94%; margin: 0 auto"
>
<div class="jinbox" v-for="(item, i) in teamobj5.list" :key="i">
<div class="jinboxtit">{{ item.name }}</div>
<div class="jinbox-box">
<div
class="boxbaifenbi"
:style="'width:' + item.zxl1 + '%;'"
></div>
</div>
<div class="jinboxbott">{{ item.zxl }}次</div>
</div>
</div>
<div class="nulllist" v-if="teamobj5.list.length == 0">
<div class="imgboxc">
<img class="imgboxc-img" src="/img/nullnull.png" alt="" />
<div class="nulltext">暂无数据</div>
</div>
</div>
</div>
<div class="you" v-if="false">
<div class="title">
<div class="text1">违禁话术雷达图</div>
</div>
<div
v-if="isshowcd == true"
id="main2"
style="width: 94%; margin: 0 auto"
></div>
<div class="nulllist" v-if="isshowcd == false">
<div class="imgboxc">
<img class="imgboxc-img" src="/img/nullnull.png" alt="" />
<div class="nulltext">暂无数据</div>
</div>
</div>
<div class="you" style="opacity: 0;">
</div> </div>
</div> </div>
</div> </div>
@@ -779,6 +685,7 @@ export default {
dateType: 0, dateType: 0,
statDateStart: this.statDateStart, statDateStart: this.statDateStart,
statDateEnd: this.statDateEnd, statDateEnd: this.statDateEnd,
marketingBusiness: this.marketingBusiness.join(','),
}; };
if (this.TimetoAhoose == 7) { if (this.TimetoAhoose == 7) {
pamaet.dateType = null; pamaet.dateType = null;


Loading…
Cancel
Save