张雄 3 years ago
parent 51105bc41d
commit ad47f68362

@ -47,7 +47,7 @@ export function getSourcetypeTime(params) {
//品牌洞察-重点媒体
export function getWebsiteBrand(params) {
let obj = Object.assign({action: 'getWebsite', sType: 'BrandOverview'}, params)
let obj = Object.assign({action: 'getSourceTop', sType: 'BrandOverview'}, params)
return httpService({
url: `/api/v6.ashx`,
method: 'post',
@ -200,7 +200,7 @@ export function getWeiYiVolumeTime(params) {
// 尾翼洞察-重点媒体
export function getWebsite(params) {
let obj = Object.assign({action: 'getWebsite', sType: 'BrandWeiYi'}, params)
let obj = Object.assign({action: 'getSourceTop', sType: 'BrandWeiYi'}, params)
return httpService({
url: `/api/v6.ashx`,
method: 'post',

@ -38,7 +38,7 @@ export function toExcel(params) {
// 事件详情-重点媒体
export function getWebsiteEvent(params) {
let obj = Object.assign({action: 'getWebsite', sType: 'HotEvent'}, params)
let obj = Object.assign({action: 'getSourceTop', sType: 'HotEvent'}, params)
return httpService({
url: `/api/v6.ashx`,
method: 'post',
@ -184,7 +184,7 @@ export function getWeiYiVolumeTime(params) {
}
// 尾翼分析-重点媒体分布
export function getWebsite(params) {
let obj = Object.assign({action: 'getWebsite', sType: 'BrandWeiYi'}, params)
let obj = Object.assign({action: 'getSourceTop', sType: 'BrandWeiYi'}, params)
return httpService({
url: `/api/v6.ashx`,
method: 'post',

@ -21,7 +21,7 @@ export function getBrandSourceType0528(params) {
}
// 重点活跃媒体TOP10排行
export function getWebsite(params) {
let obj = Object.assign({action: 'getWebsite',sType: 'Marketing'}, params)
let obj = Object.assign({action: 'getSourceTop',sType: 'Marketing'}, params)
return httpService({
url: `/api/v6.ashx`,
method: 'post',

@ -50,7 +50,7 @@ export function getSourcetypeTime(params) {
// 车型洞察-重点媒体
export function getWebsiteModel(params) {
let obj = Object.assign({action: 'getWebsite', sType: 'BrandOverview'}, params)
let obj = Object.assign({action: 'getSourceTop', sType: 'BrandOverview'}, params)
return httpService({
url: `/api/v6.ashx`,
method: 'post',
@ -174,7 +174,7 @@ export function getWeiYiVolumeTime(params) {
// 车型重点媒体
export function getWebsite(params) {
let obj = Object.assign({action: 'getWebsite', sType: 'BrandWeiYi'}, params)
let obj = Object.assign({action: 'getSourceTop', sType: 'BrandWeiYi'}, params)
return httpService({
url: `/api/v6.ashx`,
method: 'post',

@ -390,6 +390,11 @@ li.ant-calendar-time-picker-select-option-selected {
color: #63AECC !important;
background: #0F2A4D !important;
}
.lightSy {
.ant-menu-dark {
background: #E7F1FF !important;
}
}
.ant-menu-submenu-title {
color: #63AECC !important;
}
@ -513,3 +518,8 @@ li.ant-calendar-time-picker-select-option-selected {
color: #000000 !important;
}
}
.ant-select-dropdown-menu-item-group-title { //选项分组
color: #63AECC !important;
font-weight: 600 !important;
font-size: 14px !important;
}

@ -8,7 +8,7 @@
-->
<template>
<div class="kcp-outter" v-loading="load">
<v-label-div title="传播重点媒体"></v-label-div>
<v-label-div title="传播媒体"></v-label-div>
<div class="kcp-inner">
<div class="d1">
<v-ranking v-for="(item,index) in d1" :key="index" :lineShow="index === 0 ? false : true" :num="index + 1" :label="item.label|doStr(8)" :val="item.val" @toMedia="goKeyMedia(item)"></v-ranking>

@ -31,7 +31,7 @@
<img class="dd1" src="../../assets/images/BrandInsight/ic_dvsl.png" />
<div class="dd2">
<span class="s1">{{ totalRep }}</span>
<span class="s2">评论总</span>
<span class="s2">互动人</span>
</div>
</div>
<!-- <div class="d2">

@ -31,7 +31,7 @@
<img class="dd1" src="../../assets/images/BrandInsight/ic_dvsl.png" />
<div class="dd2">
<span class="s1">{{ totalRep }}</span>
<span class="s2">评论总</span>
<span class="s2">互动人</span>
</div>
</div>
<!-- <div class="d2">

@ -31,7 +31,7 @@
<img class="dd1" src="../../assets/images/BrandInsight/ic_dvsl.png" />
<div class="dd2">
<span class="s1">{{ totalRep }}</span>
<span class="s2">评论总</span>
<span class="s2">互动人</span>
</div>
</div>
<!-- <div class="d2">

@ -31,7 +31,7 @@
<img class="dd1" src="../../assets/images/BrandInsight/ic_dvsl.png" />
<div class="dd2">
<span class="s1">{{ totalRep }}</span>
<span class="s2">评论总</span>
<span class="s2">互动人</span>
</div>
</div>
<!-- <div class="d2">

@ -31,7 +31,7 @@
<img class="dd1" src="../../assets/images/BrandInsight/ic_dvsl.png" />
<div class="dd2">
<span class="s1">{{ totalRep }}</span>
<span class="s2">评论总</span>
<span class="s2">互动人</span>
</div>
</div>
<!-- <div class="d2">

@ -6,13 +6,24 @@
<v-label-div-light v-else title="中国汽车市场竞争格局图" class="lightSy">
<a-button type="primary" @click="report"></a-button>
</v-label-div-light>
<div class="d2">
<div :class="getIsLight?'lightSy':'dark'">
<a-menu mode="inline" style="width: 15%" @openChange="handlerMenu" theme="dark">
<a-sub-menu title="筛选项" key="sub1">
</a-sub-menu>
</a-menu>
</div>
<div class="d2" v-if="filterActive.length!=0">
<a-form-model layout="inline">
<a-form-model-item :class="getIsLight?'lightSy':'dark'" label="数据筛选">
<a-select style="width: 200px" mode="multiple" v-model="countries" placeholder="选择国别" allowClear>
<a-select-option v-for="(item) in countryList" :value="item.key" :key="item.value">
{{item.value}}
</a-select-option>
<a-select-opt-group v-for="(it,id) in countryList" :key="id*10" :label="it.value">
<a-select-option v-for="(item) in it.data" :value="item.key" :key="item.value">
{{item.value}}
</a-select-option>
</a-select-opt-group>
</a-select>
<a-select style="width: 200px" mode="multiple" v-model="energies" placeholder="选择能源" allowClear>
<a-select-option v-for="(item) in energyList" :value="item.key" :key="item.value">
@ -28,6 +39,11 @@
<a-select-option v-for="(item) in specList" :value="item.key" :key="item.value">
{{item.value}}
</a-select-option>
<a-select-opt-group v-for="(it,id) in specList" :key="id*10" :label="it.value">
<a-select-option v-for="(item) in it.data" :value="item.key" :key="item.value">
{{item.value}}
</a-select-option>
</a-select-opt-group>
</a-select>
<a-select style="width: 200px" mode="multiple" v-model="displacements" placeholder="选择排量" allowClear>
<a-select-option v-for="(item) in displacementList" :value="item.key" :key="item.value">
@ -43,7 +59,7 @@
</a-form-model-item>
</a-form-model>
</div>
<div class="d2">
<div class="d2" v-if="filterActive.length!=0">
<a-form-model :class="getIsLight?'lightSy':'dark'" layout="inline">
<a-form-model-item label="选择日期">
<a-month-picker style="width: 146px" :allowClear="false" v-model="selTime[0]" valueFormat="YYYY-MM" placeholder="开始日期"></a-month-picker>
@ -51,14 +67,14 @@
</a-form-model-item>
</a-form-model>
</div>
<div class="d2">
<div class="d2" v-if="filterActive.length!=0">
<div :class="getIsLight?'lightSy':'dark'">
<span v-for="(item, index) in stableList" :key="index">
<a-button style="margin-left: 12px" @click="onDelete(index)" ghost type="primary" disabled>{{item}}</a-button>
<a-button style="margin-left: 12px" @click="onDeleteStable(index)" ghost type="primary">{{item.Name}}<a-icon type="close" /></a-button>
</span>
</div>
</div>
<div class="d2" :class="getIsLight?'lightSy':'dark'">
<div class="d2" :class="getIsLight?'lightSy':'dark'" v-if="filterActive.length!=0">
<a-button style="margin-left: 12px" type="primary" icon="plus" @click="hanlderAddSeries"></a-button>
<span v-for="(item, index) in seriesList" :key="index">
<a-button style="margin-left: 12px" @click="onDelete(index)" type="primary">{{item}}<a-icon type="close" /></a-button>
@ -125,6 +141,8 @@ export default {
modelShow: false,
brand: '奥迪',
model: '',
//
filterActive: []
}
},
created() {
@ -175,16 +193,16 @@ export default {
let data = res.data;
// [ ['total'],[] ]
let arr = [];
let sList = []
// let sList = []
data.forEach(ele => {
if(ele.CheChang * 1 != 0) {
let item = [ele.CheChang * 1, ele.MainPrice, ele.Count, ele.Name, 'total'];
// let item = [ele.Count, ele.MainPrice, ele.CheChang * 1, ele.Name, 'total'];
arr.push(item);
};
sList.push(ele.Name)
// sList.push(ele.Name)
});
this.stableList = sList;
this.stableList = data;
this.totalData = arr;
this.opt = createOpt(this.totalData, this.extraData);
this.opt2 = createOptLight(this.totalData, this.extraData)
@ -195,7 +213,14 @@ export default {
this.modelShow = true;
},
handlerBrand(val) {
if(val) { this.seriesList.push(val[1].name) };
if(val) {
if(this.seriesList.indexOf(val[1].name) != -1) {
this.$message.error('该车型已存在')
return false
} else {
this.seriesList.push(val[1].name)
}
};
let obj = {
token: this.form.token,
sSeriesName: this.seriesList.join(','),
@ -246,6 +271,21 @@ export default {
})
}
},
onDeleteStable(index) {
this.stableList.splice(index,1);
let data = this.stableList;
let arr = [];
data.forEach(ele => {
if(ele.CheChang * 1 != 0) {
let item = [ele.CheChang * 1, ele.MainPrice, ele.Count, ele.Name, 'total'];
// let item = [ele.Count, ele.MainPrice, ele.CheChang * 1, ele.Name, 'total'];
arr.push(item);
};
});
this.totalData = arr;
this.opt = createOpt(this.totalData, this.extraData);
this.opt2 = createOptLight(this.totalData, this.extraData)
},
report() {
let obj = {
token: this.form.token,
@ -266,6 +306,9 @@ export default {
let data = res.data;
window.open(data);
})
},
handlerMenu(value) {
this.filterActive = value
}
}
}
@ -280,11 +323,16 @@ export default {
display: flex;
justify-content: flex-start;
padding: 8px 16px 0px 16px;
animation:fadenum 0.5s;
@keyframes fadenum{ /*设置内容由显示变为隐藏*/
0%{opacity: 0;}
100%{opacity: 1;}
}
}
.d3 {
// padding: 0px 16px 16px 16px;
width: 100%;
height: 1060px;
height: 670px;
}
}
</style>

@ -1,10 +1,10 @@
import * as echarts from "echarts";
import { bigNumberTransform } from "@/utils/gol/dataTool"
export default function createOpt(data = [],extraData = []) {
return {
grid: {
left: '6%',
// top: '10%'
top: '8%',
right: '7%',
bottom: '8%'
},
xAxis: {
splitLine: false,

@ -6,13 +6,24 @@
<v-label-div-light v-else title="全车型竞争关系图谱" class="lightSy">
<a-button type="primary" @click="report"></a-button>
</v-label-div-light>
<div class="d2">
<div :class="getIsLight?'lightSy':'dark'">
<a-menu mode="inline" style="width: 15%" @openChange="handlerMenu" theme="dark">
<a-sub-menu title="筛选项" key="sub1">
</a-sub-menu>
</a-menu>
</div>
<div class="d2" v-if="filterActive.length!=0">
<a-form-model layout="inline">
<a-form-model-item :class="getIsLight?'lightSy':'dark'" label="数据筛选">
<a-select style="width: 200px" mode="multiple" v-model="countries" placeholder="选择国别" allowClear>
<a-select-option v-for="(item) in countryList" :value="item.key" :key="item.value">
{{item.value}}
</a-select-option>
<a-select-opt-group v-for="(it,id) in countryList" :key="id*10" :label="it.value">
<a-select-option v-for="(item) in it.data" :value="item.key" :key="item.value">
{{item.value}}
</a-select-option>
</a-select-opt-group>
</a-select>
<a-select style="width: 200px" mode="multiple" v-model="energies" placeholder="选择能源" allowClear>
<a-select-option v-for="(item) in energyList" :value="item.key" :key="item.value">
@ -28,6 +39,11 @@
<a-select-option v-for="(item) in specList" :value="item.key" :key="item.value">
{{item.value}}
</a-select-option>
<a-select-opt-group v-for="(it,id) in specList" :key="id*10" :label="it.value">
<a-select-option v-for="(item) in it.data" :value="item.key" :key="item.value">
{{item.value}}
</a-select-option>
</a-select-opt-group>
</a-select>
<a-select style="width: 200px" mode="multiple" v-model="displacements" placeholder="选择排量" allowClear>
<a-select-option v-for="(item) in displacementList" :value="item.key" :key="item.value">
@ -43,7 +59,7 @@
</a-form-model-item>
</a-form-model>
</div>
<div class="d2">
<div class="d2" v-if="filterActive.length!=0">
<a-form-model layout="inline">
<a-form-model-item label="选择日期" :class="getIsLight?'lightSy':'dark'">
<a-month-picker style="width: 146px" :allowClear="false" v-model="selTime[0]" valueFormat="YYYY-MM" placeholder="开始日期"></a-month-picker>
@ -51,7 +67,7 @@
</a-form-model-item>
</a-form-model>
</div>
<div class="d2">
<div class="d2" v-if="filterActive.length!=0">
<div :class="getIsLight?'lightSy':'dark'">
<span v-for="(item, index) in seriesList" :key="index">
<a-button style="margin-left: 12px" @click="onDelete(index)" type="primary">{{item}}<a-icon type="close" /></a-button>
@ -117,6 +133,8 @@ export default {
modelShow: false,
brand: '奥迪',
model: '',
//
filterActive: []
}
},
created() {
@ -183,7 +201,14 @@ export default {
this.modelShow = true;
},
handlerBrand(val) {
if(val) { this.seriesList.push(val[1].name) };
if(val) {
if(this.seriesList.indexOf(val[1].name) != -1) {
this.$message.error('该车型已存在')
return false
} else {
this.seriesList.push(val[1].name)
}
};
let obj = {
token: this.form.token,
sSeriesName: this.seriesList.join(','),
@ -253,6 +278,9 @@ export default {
let data = res.data;
window.open(data);
})
},
handlerMenu(value) {
this.filterActive = value
}
}
}
@ -267,11 +295,16 @@ export default {
display: flex;
justify-content: flex-start;
padding: 8px 16px 0px 16px;
animation:fadenum 0.5s;
@keyframes fadenum{ /*设置内容由显示变为隐藏*/
0%{opacity: 0;}
100%{opacity: 1;}
}
}
.d3 {
// padding: 0px 16px 16px 16px;
width: 100%;
height: 1060px;
height: 670px;
}
}
.mcomp-light {

@ -1,8 +1,10 @@
export default function createOpt(data = [],extraData = []) {
return {
grid: {
left: '6%',
// top: '10%'
left: '6%',
top: '8%',
right: '7%',
bottom: '8%'
},
xAxis: {
splitLine: false,

@ -1,7 +1,11 @@
<template>
<div class="mscet-outter" :style="getIsLight?{background: '#FFF'}:{}">
<v-label-div v-if="!getIsLight" title="能源类型占比分布"></v-label-div>
<v-label-div-light v-else title="能源类型占比分布"></v-label-div-light>
<v-label-div v-if="!getIsLight" title="能源类型占比分布">
<a-button type="primary" @click="report"></a-button>
</v-label-div>
<v-label-div-light v-else title="能源类型占比分布" class="lightSy">
<a-button type="primary" @click="report"></a-button>
</v-label-div-light>
<div class="d2">
<a-form-model :class="getIsLight?'lightSy':'dark'" layout="inline">
<a-form-model-item label="选择日期">
@ -70,6 +74,19 @@ export default {
this.opt2 = createOptLight(dx, ds);
})
},
report() {
let obj = {
token: this.form.token,
sTimeType: 4,
sStartTime: this.selTime[0],
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesEnergyTypes(obj).then((res) => {
let data = res.data;
window.open(data);
});
}
}
}
</script>

@ -102,7 +102,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesCountrysTypesE(obj).then(() => {
getSalesCountrysTypesE(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -104,7 +104,7 @@ export default {
sEndTime: this.form.sEndTime,
isExcel: 1,
};
getSalesSpecName1TypesE(obj).then(() => {
getSalesSpecName1TypesE(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -58,7 +58,6 @@ function createData(ds = []) {
], false);
}
}
},
data: [arr1[j].Value]
}

@ -83,7 +83,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesSpecNameTypesBySedanE(obj).then(() => {
getSalesSpecNameTypesBySedanE(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -83,7 +83,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesSpecNameTypesByMpvE(obj).then(() => {
getSalesSpecNameTypesByMpvE(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -83,7 +83,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesSpecNameTypesE(obj).then(() => {
getSalesSpecNameTypesE(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -83,7 +83,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesSpecNameTypesBySuvE(obj).then(() => {
getSalesSpecNameTypesBySuvE(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -102,7 +102,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesCountrysTypes(obj).then(() => {
getSalesCountrysTypes(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -102,7 +102,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesSpecNameByPriceRange(obj).then(() => {
getSalesSpecNameByPriceRange(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -96,7 +96,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesPriceRangeSBrand(obj).then(() => {
getSalesPriceRangeSBrand(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -104,7 +104,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesPriceRangeSTypes(obj).then(() => {
getSalesPriceRangeSTypes(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -83,7 +83,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesSpecNameTypesBySedan(obj).then(() => {
getSalesSpecNameTypesBySedan(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -83,7 +83,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesSpecNameTypesByMpv(obj).then(() => {
getSalesSpecNameTypesByMpv(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -83,7 +83,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesSpecNameTypes(obj).then(() => {
getSalesSpecNameTypes(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -83,7 +83,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesSpecNameTypesBySuv(obj).then(() => {
getSalesSpecNameTypesBySuv(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -104,7 +104,7 @@ export default {
sEndTime: this.selTime[1],
isExcel: 1,
};
getSalesSpecName1Types(obj).then(() => {
getSalesSpecName1Types(obj).then((res) => {
let data = res.data;
window.open(data);
});

@ -58,7 +58,6 @@ function createData(ds = []) {
], false);
}
}
},
data: [arr1[j].Value]
}

Loading…
Cancel
Save