You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

149 lines
5.8 KiB

const app = getApp();
import brokenLine from "../../../../../components/option/stackingLineOption"
const dName=['新闻', '论坛','微信', '微博','APP', '短视频', '其他']
const dColor=['#FF4852','#FF6E25','#FFBF00','#20CC62','#00D6D6','#00AAFF','#7257FF']
Component({
properties: {
id: {
type: String
}
},
data: {
showChart: true,
currentId: '',
//事件传播态势
eventTransform: brokenLine([],[],[],[]),
//传播重点媒体
imageUrl: getApp().globalData.imageUrl,
transRankList: [],
//调性分布态势
affTransform: brokenLine([],[],[],[]),
//事件传播历程
eventSteps: [],
//媒体解读
mediaData: [],
//热门词云
wordCloudActive: 0,
wordCloudData: [],
},
methods: {
getData() {
app.globalData.request({
action: 'getSourcetypeTime', //事件传播态势
token: 't%2BrswgjvzGM=',
sType: 'HotEvent',
sTimeType: wx.getStorageSync('sTimeType') || 34,
sStartTime: wx.getStorageSync('sStartTime') || '',
sEndTime: wx.getStorageSync('sEndTime') || '',
sRele: wx.getStorageSync('sRele') || '',
}).then(res => {
let dx = [];
let dValue = [[],[],[],[],[],[],[]];
res.forEach(ele => {
dx.push(ele.Time)
for(let i=0;i<ele.Data.length;i++) {
dValue[i].push(ele.Data[i])
}
});
this.setData({
eventTransform: brokenLine(dName,dValue,dColor,dx)
})
});
app.globalData.request({
action: 'getSourceTop', //传播重点媒体
token: 't%2BrswgjvzGM=',
sType: 'HotEvent',
sTimeType: wx.getStorageSync('sTimeType') || 34,
sStartTime: wx.getStorageSync('sStartTime') || '',
sEndTime: wx.getStorageSync('sEndTime') || '',
sRele: wx.getStorageSync('sRele') || '',
}).then(res => {
let arr = [];
for(let key in res) {
let obj = {name: key, value: res[key]};
arr.push(obj)
};
this.setData({ transRankList: arr });
});
app.globalData.request({
action: 'getAffectionsTime', //调性分布态势
token: 't%2BrswgjvzGM=',
sType: 'HotEvent',
sTimeType: wx.getStorageSync('sTimeType') || 34,
sStartTime: wx.getStorageSync('sStartTime') || '',
sEndTime: wx.getStorageSync('sEndTime') || '',
sRele: wx.getStorageSync('sRele') || '',
}).then(res => {
let dx = []; let dAff = ['正面','中性','负面'];
let dValue = [[],[],[]];
res.forEach(ele => {
dx.push(ele.Time)
for(let i=0;i<ele.Data.length;i++) {
dValue[i].push(ele.Data[i])
}
});
this.setData({
affTransform: brokenLine(dAff,dValue,dColor,dx)
})
});
app.globalData.request({
action: 'getEventSpreadProcess0528', //事件传播历程
token: 't%2BrswgjvzGM=',
sType: 'HotEvent',
sTimeType: wx.getStorageSync('sTimeType') || 34,
sStartTime: wx.getStorageSync('sStartTime') || '',
sEndTime: wx.getStorageSync('sEndTime') || '',
sRele: wx.getStorageSync('sRele') || '',
}).then(res => {
let arr = [];
res.forEach(ele => {
let obj = {
text: ele._source.firsttime+' '+ele._source.category,
desc: ele._source.title
};
arr.push(obj);
});
this.setData({eventSteps: arr})
});
app.globalData.request({
action: 'getSource', //媒体解读
token: 't%2BrswgjvzGM=',
sType: 'HotEvent',
sTimeType: wx.getStorageSync('sTimeType') || 34,
sStartTime: wx.getStorageSync('sStartTime') || '',
sEndTime: wx.getStorageSync('sEndTime') || '',
sRele: wx.getStorageSync('sRele') || '',
}).then(res => {
this.setData({mediaData: res})
});
this.getWordCloud();
},
getWordCloud() {
app.globalData.request({
action: this.data.wordCloudActive == 0?'getHotWord':this.data.wordCloudActive == 1?'getPositive':'getNegative', //热门词云 正面词云 负面词云
token: 't%2BrswgjvzGM=',
sType: 'HotEvent',
sTimeType: wx.getStorageSync('sTimeType') || 34,
sStartTime: wx.getStorageSync('sStartTime') || '',
sEndTime: wx.getStorageSync('sEndTime') || '',
sRele: wx.getStorageSync('sRele') || '',
}).then(res => {
let arr1 = [];
Object.keys(res).forEach(key => {
let o = [key, res[key]]
arr1.push(o)
});
this.setData({wordCloudData: arr1})
});
},
changeWordCloud(event) {
this.setData({wordCloudActive: event.detail.index});
this.getWordCloud()
}
},
lifetimes: {
attached() {
this.getData()
}
}
})