张雄 3 years ago
parent f5b0776eed
commit 33dba19770

@ -2,7 +2,7 @@ import httpService from "@/request"
// 主题分析-看板 主页 // 主题分析-看板 主页
export function getSummarizeMerge(params) { export function getSummarizeMerge(params) {
let obj = Object.assign({action: 'getSummarizeMerge', sType: ''}, params) let obj = Object.assign({action: 'getSummarizeMerge', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -15,7 +15,7 @@ export function getSummarizeMerge(params) {
// 主题分析-事件传播历程 // 主题分析-事件传播历程
export function getList(params) { export function getList(params) {
let obj = Object.assign({action: 'getList', sType: ''}, params) let obj = Object.assign({action: 'getList', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -28,7 +28,7 @@ export function getList(params) {
// 主题分析-总声量趋势 // 主题分析-总声量趋势
export function getVolumeTime(params) { export function getVolumeTime(params) {
let obj = Object.assign({action: 'getVolumeTime', sType: ''}, params) let obj = Object.assign({action: 'getVolumeTime', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -41,7 +41,7 @@ export function getVolumeTime(params) {
// 主题分析-核心传播媒体 // 主题分析-核心传播媒体
export function getCoreWebsite(params) { export function getCoreWebsite(params) {
let obj = Object.assign({action: 'getCoreWebsite', sType: ''}, params) let obj = Object.assign({action: 'getCoreWebsite', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -54,7 +54,7 @@ export function getCoreWebsite(params) {
// 主题分析-核心传播网民 // 主题分析-核心传播网民
export function getCoreDiffuse(params) { export function getCoreDiffuse(params) {
let obj = Object.assign({action: 'getCoreDiffuse', sType: ''}, params) let obj = Object.assign({action: 'getCoreDiffuse', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -67,7 +67,7 @@ export function getCoreDiffuse(params) {
// 主题分析-热议话题 // 主题分析-热议话题
export function getHottalk(params) { export function getHottalk(params) {
let obj = Object.assign({action: 'getHottalk', sType: ''}, params) let obj = Object.assign({action: 'getHottalk', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -80,7 +80,7 @@ export function getHottalk(params) {
// 主题分析-渠道分布占比 // 主题分析-渠道分布占比
export function getSourcetype(params) { export function getSourcetype(params) {
let obj = Object.assign({action: 'getSourcetype', sType: ''}, params) let obj = Object.assign({action: 'getSourcetype', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -93,7 +93,7 @@ export function getSourcetype(params) {
// 主题分析-渠道分布 // 主题分析-渠道分布
export function getSourcetypeTime(params) { export function getSourcetypeTime(params) {
let obj = Object.assign({action: 'getSourcetypeTime', sType: ''}, params) let obj = Object.assign({action: 'getSourcetypeTime', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -106,7 +106,7 @@ export function getSourcetypeTime(params) {
// 主题分析-热门词云 // 主题分析-热门词云
export function getHotWord(params) { export function getHotWord(params) {
let obj = Object.assign({action: 'getHotWord', sType: ''}, params) let obj = Object.assign({action: 'getHotWord', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -119,7 +119,7 @@ export function getHotWord(params) {
// 主题分析-正面词 // 主题分析-正面词
export function getPositive(params) { export function getPositive(params) {
let obj = Object.assign({action: 'getPositive', sType: ''}, params) let obj = Object.assign({action: 'getPositive', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -132,7 +132,7 @@ export function getPositive(params) {
// 主题分析-负面词 // 主题分析-负面词
export function getNegative(params) { export function getNegative(params) {
let obj = Object.assign({action: 'getNegative', sType: ''}, params) let obj = Object.assign({action: 'getNegative', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -145,7 +145,7 @@ export function getNegative(params) {
// 主题分析-性别 认证 // 主题分析-性别 认证
export function getSexMerge(params) { export function getSexMerge(params) {
let obj = Object.assign({action: 'getSexMerge', sType: ''}, params) let obj = Object.assign({action: 'getSexMerge', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -158,7 +158,7 @@ export function getSexMerge(params) {
// 主题分析-区域分布 // 主题分析-区域分布
export function getVolume(params) { export function getVolume(params) {
let obj = Object.assign({action: 'getVolume', sType: ''}, params) let obj = Object.assign({action: 'getVolume', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -171,7 +171,7 @@ export function getVolume(params) {
// 主题分析-区域分布 // 主题分析-区域分布
export function getRegion(params) { export function getRegion(params) {
let obj = Object.assign({action: 'getRegion', sType: ''}, params) let obj = Object.assign({action: 'getRegion', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -184,7 +184,7 @@ export function getRegion(params) {
// 主题分析-大V分析 // 主题分析-大V分析
export function getVAnalyze(params) { export function getVAnalyze(params) {
let obj = Object.assign({action: 'getVAnalyze', sType: ''}, params) let obj = Object.assign({action: 'getVAnalyze', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -197,7 +197,7 @@ export function getVAnalyze(params) {
// 主题分析-核心传播网民 // 主题分析-核心传播网民
export function getDiffuseZhuTi(params) { export function getDiffuseZhuTi(params) {
let obj = Object.assign({action: 'getDiffuseZhuTi', sType: ''}, params) let obj = Object.assign({action: 'getDiffuseZhuTi', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -210,7 +210,7 @@ export function getDiffuseZhuTi(params) {
// 主题分析-博主区域分布 // 主题分析-博主区域分布
export function getRegionWeiBo(params) { export function getRegionWeiBo(params) {
let obj = Object.assign({action: 'getRegionWeiBo', sType: ''}, params) let obj = Object.assign({action: 'getRegionWeiBo', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',
@ -223,7 +223,7 @@ export function getRegionWeiBo(params) {
// 主题分析-热点资讯 // 主题分析-热点资讯
export function getSsimData(params) { export function getSsimData(params) {
let obj = Object.assign({action: 'getSsimData', sType: ''}, params) let obj = Object.assign({action: 'getSsimData', sType: 'ZhuTiFenXiBl'}, params)
return httpService({ return httpService({
url: `/api/v6.ashx`, url: `/api/v6.ashx`,
method: 'post', method: 'post',

@ -82,12 +82,12 @@
<v-label-div title="名称设置"></v-label-div> <v-label-div title="名称设置"></v-label-div>
<a-form-model-item label="主题名称"><a-input placeholder="请输入主题名称" v-model="addForm.Name"></a-input></a-form-model-item> <a-form-model-item label="主题名称"><a-input placeholder="请输入主题名称" v-model="addForm.Name"></a-input></a-form-model-item>
<a-form-model-item label="监测周期"> <a-form-model-item label="监测周期">
<a-range-picker show-time v-model="selTime" :disabled-date="disabledDate" @calendarChange="calendarPriceRangeChange" valueFormat="YYYY-MM-DD HH:mm:ss" @ok="handlerChangeTime"> <a-range-picker style="width: 360px" show-time v-model="selTime" :disabled-date="disabledDate" @calendarChange="calendarPriceRangeChange" valueFormat="YYYY-MM-DD HH:mm:ss" @ok="handlerChangeTime">
<a-icon slot="suffixIcon" type="calendar" /> <a-icon slot="suffixIcon" type="calendar" />
</a-range-picker> </a-range-picker>
</a-form-model-item> </a-form-model-item>
<v-label-div title="分析词设置"> <v-label-div title="分析词设置">
<v-tab-group style="margin-right: 48px" :btns="['必选词和的关系', '主题词或的关系']" @change="handlerHH"></v-tab-group> <v-tab-group style="margin-right: 42px" :btns="['必选词和的关系', '主题词或的关系']" @change="handlerHH"></v-tab-group>
</v-label-div> </v-label-div>
<div v-if="mode == 0"> <div v-if="mode == 0">
<a-form-model-item label="必选词"><a-input placeholder="请输入分析关键词多个词用隔开最多支持5个" @change="doCombo" v-model="addForm.DetailsData[0].AnalyzeWord"></a-input></a-form-model-item> <a-form-model-item label="必选词"><a-input placeholder="请输入分析关键词多个词用隔开最多支持5个" @change="doCombo" v-model="addForm.DetailsData[0].AnalyzeWord"></a-input></a-form-model-item>
@ -135,25 +135,22 @@
<div class="modal-container" > <div class="modal-container" >
<div class="modal-form"> <div class="modal-form">
<a-form-model :model="addForm" :label-col="{span : 4}" :wrapper-col="{span : 18}"> <a-form-model :model="addForm" :label-col="{span : 4}" :wrapper-col="{span : 18}">
<a-tabs type="card"><a-tab-pane key="21" tab="名称设置"> <v-label-div title="名称设置"></v-label-div>
<a-form-model-item label="主题名称"><a-input placeholder="请输入主题名称" v-model="addForm.Name"></a-input></a-form-model-item> <a-form-model-item label="主题名称"><a-input placeholder="请输入主题名称" v-model="addForm.Name"></a-input></a-form-model-item>
<a-form-model-item label="监测周期"> <a-form-model-item label="监测周期">
<a-range-picker show-time v-model="selTime" :disabled-date="disabledDate" @calendarChange="calendarPriceRangeChange" valueFormat="YYYY-MM-DD HH:mm:ss" @ok="handlerChangeTime"> <a-range-picker show-time style="width: 360px" v-model="selTime" :disabled-date="disabledDate" @calendarChange="calendarPriceRangeChange" valueFormat="YYYY-MM-DD HH:mm:ss" @ok="handlerChangeTime">
<a-icon slot="suffixIcon" type="calendar" /> <a-icon slot="suffixIcon" type="calendar" />
</a-range-picker> </a-range-picker>
</a-form-model-item> </a-form-model-item>
</a-tab-pane></a-tabs> <v-label-div title="分析词设置"></v-label-div>
<a-tabs type="card"><a-tab-pane key="22" tab="分析词设置"> <a-form-model-item label="分析词"><a-textarea placeholder="请输入分析词" v-model="addForm.DetailsData[0].AnalyzeWord"></a-textarea></a-form-model-item>
<a-form-model-item label="分析词"><a-textarea placeholder="请输入分析词" v-model="addForm.DetailsData[0].AnalyzeWord"></a-textarea></a-form-model-item> <v-label-div title="定向监测"></v-label-div>
</a-tab-pane></a-tabs>
<a-tabs type="card"><a-tab-pane key="23" tab="定向监测">
<a-form-model-item label="媒体"> <a-form-model-item label="媒体">
<a-textarea placeholder="请输入媒体名称多个词用隔开最多支持5个" v-model="addForm.DetailsData[0].Source"></a-textarea> <a-textarea placeholder="请输入媒体名称多个词用隔开最多支持5个" v-model="addForm.DetailsData[0].Source"></a-textarea>
</a-form-model-item> </a-form-model-item>
<a-form-model-item label="作者"> <a-form-model-item label="作者">
<a-textarea placeholder="请输入作者名称多个词用隔开最多支持5个" v-model="addForm.DetailsData[0].UserAuthor"></a-textarea> <a-textarea placeholder="请输入作者名称多个词用隔开最多支持5个" v-model="addForm.DetailsData[0].UserAuthor"></a-textarea>
</a-form-model-item> </a-form-model-item>
</a-tab-pane></a-tabs>
</a-form-model> </a-form-model>
</div> </div>
<div class="modal-display"> <div class="modal-display">

@ -53,6 +53,7 @@ export default {
getSchemeDataByGuid(obj).then(res => { getSchemeDataByGuid(obj).then(res => {
let data = res.data; let data = res.data;
this.addForm = data; this.addForm = data;
this.selTime = [data.StartTime, data.EndTime]
this.doCombo(); this.doCombo();
this.doCombo2(); this.doCombo2();
this.modalObj.visible = true; this.modalObj.visible = true;
@ -164,6 +165,7 @@ export default {
}, },
//重置表单 //重置表单
reSet() { reSet() {
this.selTime = [];
this.addForm = { this.addForm = {
Name: "", Name: "",
Classify: 0, Classify: 0,
@ -198,22 +200,7 @@ export default {
{ {
path: '/ThemeData', path: '/ThemeData',
query: { query: {
// action: "getList", sGuid: guids,
// sTimeType,
// sQuDao,
// sQingGan,
// iPageIndex,
// iPageSize,
startTime: sTime,
endTime: eTime,
// token: this.getToken,
// sType: "ZhuTiFenXiBl",
sGuid: guids,
// iGroupBy,
// isSourcetype,
// listType,
// website,
// iTimeType
}, },
} }
) )

@ -1,5 +1,6 @@
import { getQuDao, getQingGan, getTwoTime,getQueryType ,getToExcelField} from "@/api/comm"; import { getQuDao, getQingGan, getQueryType ,getToExcelField} from "@/api/comm";
import {getList} from "@/api/ThemeAnalizeDec" import {getList} from "@/api/ThemeAnalizeDec"
import {getSchemeDataByGuid} from "@/api/ThemeAnalize"
export default { export default {
//获取表格数据 //获取表格数据
getTableData() { getTableData() {
@ -14,11 +15,11 @@ export default {
let ssims = []; let ssims = [];
let ssk = [...this.sk]; let ssk = [...this.sk];
data.forEach((ele) => { data.forEach((ele) => {
let _source = ele._source; let _source = ele._source;
let id = _source.id; let id = _source.id;
ssims.push(ele._source.ssid); ssims.push(ele._source.ssid);
ids.push(id); ids.push(id);
arr.push(_source); arr.push(_source);
}); });
if(this.tableAll) { if(this.tableAll) {
ids.forEach(ele => { ids.forEach(ele => {
@ -31,6 +32,11 @@ export default {
}) })
this.sk = ssk; this.sk = ssk;
} }
arr.forEach(ele => {
ele.title = ele.title.replace(/<.*?>/ig,"")
// let keyWords = ele.keywords.split(',');
// ele.kwList = ele.keywords.split(',');
})
this.tbData = arr; this.tbData = arr;
this.tableLoading = false; this.tableLoading = false;
}) })
@ -39,19 +45,21 @@ export default {
getListData() { getListData() {
}, },
// 获取时间选项 // 获取设置的时间
getSetTime() {},
// 获取设置的时间
getTime() { getTime() {
let obj = {
token: this.getToken,
Guids: this.$route.query.sGuid
}
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
getTwoTime().then((res) => { getSchemeDataByGuid(obj).then((res) => {
let data = res.data; let data = res.data;
this.timesSel = data; this.form.sStartTime = data.StartTime;
this.form.sTimeType = this.timesSel[0].key; this.form.sEndTime = data.EndTime
let arr = []; this.setStartTime = data.StartTime;
data.forEach((ele) => { this.setEndTime = data.EndTime
let value = ele.value;
arr.push(value);
});
this.buttonTime = arr;
resolve(data); resolve(data);
}) })
.catch(() => { .catch(() => {

@ -6,9 +6,10 @@
<v-btn @click="handlerBack"></v-btn> <v-btn @click="handlerBack"></v-btn>
</v-label-div> </v-label-div>
<div class="d-inner-d1"> <div class="d-inner-d1">
<span class="s1">时间</span> <span class="s1">时间{{setStartTime}} {{setEndTime}} </span>
<v-tab-group :value="tValue" :style="{ background: 'transparent' }" :btns="buttonTime" @change="handlerTime"></v-tab-group> <span class="s2">自定义</span>
<a-range-picker show-time v-model="selTime" style="margin-left: 0.8rem" :disabled-date="disabledDate" @calendarChange="calendarPriceRangeChange" :size="$vuiSize" valueFormat="YYYY-MM-DD HH:mm:ss" v-if="form.sTimeType == selVal" @ok="handlerChangeTime"> <!-- <v-tab-group :value="tValue" :style="{ background: 'transparent' }" :btns="buttonTime" @change="handlerTime"></v-tab-group> -->
<a-range-picker show-time v-model="selTime" :disabled-date="disabledDate" @calendarChange="calendarPriceRangeChange" :size="$vuiSize" valueFormat="YYYY-MM-DD HH:mm:ss" @ok="handlerChangeTime">
<a-icon slot="suffixIcon" type="calendar" /> <a-icon slot="suffixIcon" type="calendar" />
</a-range-picker> </a-range-picker>
</div> </div>
@ -33,14 +34,10 @@
{{ item.value }} {{ item.value }}
</a-select-option> </a-select-option>
</a-select> </a-select>
<a-input-search style="width: 250px;margin-left: 12px" placeholder="请输入关键词" enter-button v-model="searchTitle" @search="onSearch"></a-input-search> <a-input-search style="width: 250px" placeholder="请输入关键词" enter-button v-model="searchTitle" @search="onSearch"></a-input-search>
</div> <span class="s2">时间筛选</span>
<div class="d-inner-d1">
<span class="s1">时间筛选</span>
<v-tab-group :value="gValue" :style="{ background: 'transparent' }" :btns="btnTimes" @change="handlerSxTime"></v-tab-group> <v-tab-group :value="gValue" :style="{ background: 'transparent' }" :btns="btnTimes" @change="handlerSxTime"></v-tab-group>
</div> <span class="s2">去重筛选</span>
<div class="d-inner-d1">
<span class="s1">去重筛选</span>
<v-tab-group :value="gValue2" :style="{ background: 'transparent' }" :btns="btnTimes2" @change="handlerTime2"></v-tab-group> <v-tab-group :value="gValue2" :style="{ background: 'transparent' }" :btns="btnTimes2" @change="handlerTime2"></v-tab-group>
</div> </div>
<div class="d-inner-d2"> <div class="d-inner-d2">
@ -139,12 +136,14 @@ export default {
iTimeType: '' // 0 1 iTimeType: '' // 0 1
}, },
// //
tValue: 0, // tValue: 0,
selVal: 4, selVal: 4,
selTime: [], selTime: [],
timesSel: [], timesSel: [],
buttonTime: [], // buttonTime: [],
selectPriceDate: "", selectPriceDate: "",
setStartTime: '',
setEndTime: '',
// //
quDao: [], quDao: [],
plainOptions: [], plainOptions: [],
@ -172,6 +171,11 @@ export default {
key: "title", key: "title",
scopedSlots: { customRender: "titlex" }, scopedSlots: { customRender: "titlex" },
}, },
{
title: "关键字",
dataIndex: "keywords",
key: "keywords",
},
{ {
title: "来源", title: "来源",
dataIndex: "source", dataIndex: "source",
@ -208,6 +212,11 @@ export default {
methods: { methods: {
...tableEvent, ...tableEvent,
...getApi ...getApi
},
filters: {
keyStr(str) {
}
} }
} }
</script> </script>
@ -230,6 +239,11 @@ export default {
font-size: 14px; font-size: 14px;
color: #fff; color: #fff;
} }
.s2 {
font-size: 14px;
color: #fff;
margin-left: 24px;
}
} }
.d-inner-d2 { .d-inner-d2 {
display: flex; display: flex;

@ -51,9 +51,7 @@ export default {
this.doFormQudao(qudao); this.doFormQudao(qudao);
this.doFormQS(series); this.doFormQS(series);
this.form.sTimeType = this.$route.query.sTimeType || '4'; this.form.sTimeType = 4;
this.form.sStartTime = this.$route.query.startTime || "";
this.form.sEndTime = this.$route.query.endTime || "";
if (this.form.sStartTime && this.form.sEndTime) { if (this.form.sStartTime && this.form.sEndTime) {
this.selTime = [this.form.sStartTime, this.form.sEndTime]; this.selTime = [this.form.sStartTime, this.form.sEndTime];
} }
@ -77,7 +75,7 @@ export default {
path: '/ThemeBoard', path: '/ThemeBoard',
query: { query: {
sGuid: this.$route.query.sGuid, sGuid: this.$route.query.sGuid,
sType: 'ZhuTiFenXiBl', // sType: 'ZhuTiFenXiBl',
token: this.getToken, token: this.getToken,
website: this.form.website, website: this.form.website,
sTitle: this.form.sTitle, sTitle: this.form.sTitle,
@ -103,18 +101,20 @@ export default {
this.getTableData(); this.getTableData();
}, },
disabledDate(current) { disabledDate(current) {
return current > moment(); let s = moment(this.setStartTime);
}, let e = moment(this.setEndTime);
handlerTime(n) { return current < s || current > e
let ele = this.timesSel[n];
this.form.sTimeType = ele.key;
this.sk = [];
this.tableAll = false;
if (ele.key != this.selVal) {
this.getTableData();
// this.getList();
}
}, },
// handlerTime(n) {
// let ele = this.timesSel[n];
// this.form.sTimeType = ele.key;
// this.sk = [];
// this.tableAll = false;
// if (ele.key != this.selVal) {
// this.getTableData();
// // this.getList();
// }
// },
// 选择情感和渠道的情况 // 选择情感和渠道的情况
onChange(val, type) { onChange(val, type) {
this.noClick = true; this.noClick = true;

Loading…
Cancel
Save