1089 lines
36 KiB
JavaScript
1089 lines
36 KiB
JavaScript
"use strict";
|
|
const common_vendor = require("../../common/vendor.js");
|
|
const request_api = require("../../request/api.js");
|
|
const utils_util = require("../../utils/util.js");
|
|
const common_assets = require("../../common/assets.js");
|
|
const echarts = require("../../uni_modules/lime-echart/static/echarts.min.js");
|
|
const _sfc_main = {
|
|
data() {
|
|
return {
|
|
menuTop: common_vendor.inject("menuTop"),
|
|
menuH: common_vendor.inject("menuHeight"),
|
|
navH: common_vendor.inject("navHeight"),
|
|
windowWidth: common_vendor.inject("windowWidth"),
|
|
contentTop: "",
|
|
listTop: "",
|
|
screenCategoryList: [
|
|
{
|
|
icon: "/static/icon/home/timeScreen.png",
|
|
title: "时间筛选"
|
|
},
|
|
{
|
|
icon: "/static/icon/home/industryScreen.png",
|
|
title: "行业筛选"
|
|
},
|
|
{
|
|
icon: "/static/icon/home/eventLevel.png",
|
|
title: "事件等级"
|
|
}
|
|
],
|
|
keywords: "",
|
|
//关键词
|
|
timeCategoryList: [],
|
|
selectTimeCategory: 0,
|
|
stockCategoryList: [],
|
|
topScrollWidth: 0,
|
|
secondScrollWidth: 0,
|
|
selectTopCategory: 0,
|
|
topScrollLeft: 0,
|
|
selectSecondCategory: 0,
|
|
secondScrollLeft: 0,
|
|
selectScreenCategory: 0,
|
|
//0时间筛选1行业筛选2事件等级3最新排序
|
|
quickTimeList: [
|
|
{
|
|
title: "最新",
|
|
key: "latest"
|
|
},
|
|
{
|
|
title: "盘中",
|
|
key: "intraday"
|
|
},
|
|
{
|
|
title: "早盘",
|
|
key: "morning"
|
|
},
|
|
{
|
|
title: "午盘",
|
|
key: "afternoon"
|
|
},
|
|
{
|
|
title: "今日全天",
|
|
key: "today"
|
|
},
|
|
{
|
|
title: "昨日",
|
|
key: "yesterday"
|
|
},
|
|
{
|
|
title: "近一周",
|
|
key: "week"
|
|
},
|
|
{
|
|
title: "近一月",
|
|
key: "month"
|
|
}
|
|
],
|
|
selectQuickTimeIndex: -1,
|
|
startDateStr: "",
|
|
//选择开始日期
|
|
startTimeStamp: "",
|
|
//开始日期时间戳
|
|
endDateStr: "",
|
|
//选择结束日期
|
|
endTimeStamp: "",
|
|
//结束日期时间戳
|
|
yearList: [],
|
|
//年份列表
|
|
monthList: [],
|
|
//月份列表
|
|
dayList: [],
|
|
//日列表
|
|
startDateValue: [0, 0, 0],
|
|
endDateValue: [0, 0, 0],
|
|
industryCategoryList: [],
|
|
//行业分类数组
|
|
industryKeywords: "",
|
|
//行业分类搜索关键词
|
|
searchResultList: [],
|
|
//行业分类搜索结果数组
|
|
selectIndustryTopCategory: 0,
|
|
//选中行业一级分类
|
|
selectIndustrySecondCategory: 0,
|
|
//选中行业二级分类
|
|
selectIndustryThirdCategory: 0,
|
|
//选中行业三级分类
|
|
searchIndustryTopCategory: 0,
|
|
//搜索结果选中行业一级分类
|
|
searchIndustrySecondCategory: 0,
|
|
//搜索结果选中行业二级分类
|
|
searchIndustryThirdCategory: 0,
|
|
//搜索结果选中行业三级分类
|
|
importanceList: [],
|
|
//重要性数组
|
|
sortTypeList: [],
|
|
selectSortKey: "",
|
|
//选中排序key
|
|
option: {
|
|
tooltip: {
|
|
trigger: "axis",
|
|
axisPointer: {
|
|
type: "shadow"
|
|
},
|
|
confine: true
|
|
},
|
|
grid: {
|
|
left: "0%",
|
|
right: "0%",
|
|
top: "10%",
|
|
bottom: "20%"
|
|
},
|
|
xAxis: [
|
|
{
|
|
type: "category",
|
|
data: ["跌停", "跌停~5%", "5~1%", "1~0%", "平盘", "0~1%", "1~5%", "5%~涨停", "涨停"],
|
|
axisTick: {
|
|
show: false
|
|
},
|
|
axisLine: {
|
|
show: false
|
|
},
|
|
axisLabel: {
|
|
fontSize: 10,
|
|
interval: "0",
|
|
textStyle: {
|
|
color: function(value, index) {
|
|
return index == 0 ? "#355422" : index == 8 ? "#C00000" : "#515151";
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
yAxis: [
|
|
{
|
|
type: "value",
|
|
show: false,
|
|
axisTick: { show: false }
|
|
}
|
|
],
|
|
series: [
|
|
{
|
|
name: "热度",
|
|
type: "bar",
|
|
label: {
|
|
show: true,
|
|
position: "top",
|
|
fontSize: 12
|
|
},
|
|
itemStyle: {
|
|
borderRadius: [5, 5, 0, 0]
|
|
},
|
|
data: []
|
|
}
|
|
]
|
|
},
|
|
eventList: [],
|
|
page: 1,
|
|
isRefreshing: false,
|
|
//是否正在下拉刷新
|
|
loadAll: false,
|
|
//是否加载完毕
|
|
getRateStr: utils_util.getRateStr,
|
|
getRateUpOrDown: utils_util.getRateUpOrDown,
|
|
getLocaleTime: utils_util.getLocaleTime
|
|
};
|
|
},
|
|
onLoad() {
|
|
this.contentTop = this.navH + (70 + 74) / 750 * this.windowWidth;
|
|
this.listTop = this.contentTop + (22 + 72) / 750 * this.windowWidth;
|
|
this.generateDateListData();
|
|
Promise.all([this.getEventFilterListData(), this.getIndustryCategoryListData(), this.getStockCategoryListData()]).then((res) => {
|
|
this.getEventListData();
|
|
}).catch((error) => {
|
|
});
|
|
},
|
|
onReady() {
|
|
},
|
|
methods: {
|
|
/**
|
|
* 生成日期数据
|
|
*/
|
|
generateDateListData() {
|
|
let currentDate = /* @__PURE__ */ new Date();
|
|
let year = currentDate.getFullYear();
|
|
let month = currentDate.getMonth();
|
|
let day = currentDate.getDate();
|
|
let date = new Date(year, month + 1, 0);
|
|
let monthDays = date.getDate();
|
|
for (var i = 2e3; i < 2060; i++) {
|
|
this.yearList.push(i);
|
|
}
|
|
for (var i = 0; i < 12 * 60; i++) {
|
|
this.monthList.push(i % 12 + 1);
|
|
}
|
|
for (var i = 0; i < monthDays * 60; i++) {
|
|
this.dayList.push(i % monthDays + 1);
|
|
}
|
|
let that = this;
|
|
setTimeout(function() {
|
|
that.startDateValue = [year - 2e3, month + 12 * 30, day - 1 + monthDays * 30];
|
|
that.endDateValue = [year - 2e3, month + 12 * 30, day - 1 + monthDays * 30];
|
|
}, 100);
|
|
},
|
|
/**
|
|
* 下拉刷新
|
|
*/
|
|
pullDownRefresh() {
|
|
this.isRefreshing = true;
|
|
this.clickSearch();
|
|
},
|
|
/**
|
|
* 上拉加载
|
|
*/
|
|
loadMoreData() {
|
|
if (!this.loadAll) {
|
|
this.page++;
|
|
if (this.selectTimeCategory == 0) {
|
|
this.getEventListData();
|
|
} else
|
|
this.getHotEventListData();
|
|
}
|
|
},
|
|
async init() {
|
|
const chart = await this.$refs.chartRef.init(echarts);
|
|
chart.setOption(this.option);
|
|
},
|
|
/**
|
|
* 点击搜索
|
|
*/
|
|
clickSearch() {
|
|
this.loadAll = false;
|
|
this.page = 1;
|
|
if (this.selectTimeCategory == 1) {
|
|
this.getHotEventListData();
|
|
} else
|
|
this.getEventListData();
|
|
},
|
|
/**
|
|
* 点击事件筛选
|
|
* @param {Object} index
|
|
*/
|
|
clickTimeCategoryItem(index) {
|
|
if (this.selectTimeCategory != index) {
|
|
this.selectTimeCategory = index;
|
|
this.clickSearch();
|
|
}
|
|
},
|
|
/**
|
|
* 点击排序选项
|
|
*/
|
|
clickSortListItem(item) {
|
|
this.selectSortKey = item.key;
|
|
this.clickCancel();
|
|
this.clickSearch();
|
|
},
|
|
/**
|
|
* 点击筛选
|
|
*/
|
|
clickScreenItem(index) {
|
|
this.selectScreenCategory = index;
|
|
this.$refs["screenPopup"].open();
|
|
},
|
|
/**
|
|
* 点击筛选弹窗取消
|
|
*/
|
|
clickCancel() {
|
|
this.$refs["screenPopup"].close();
|
|
},
|
|
/**
|
|
* 点击筛选弹窗重置
|
|
*/
|
|
clickReset() {
|
|
if (this.selectScreenCategory == 0) {
|
|
this.selectQuickTimeIndex = -1;
|
|
this.startDateStr = this.endDateStr = "";
|
|
} else if (this.selectScreenCategory == 1) {
|
|
this.industryKeywords = "";
|
|
this.searchResultList = [];
|
|
this.selectIndustryTopCategory = 0;
|
|
this.selectIndustrySecondCategory = 0;
|
|
this.selectIndustryThirdCategory = 0;
|
|
this.searchIndustryTopCategory = 0;
|
|
this.searchIndustrySecondCategory = 0;
|
|
this.searchIndustryThirdCategory = 0;
|
|
} else if (this.selectScreenCategory == 2) {
|
|
for (let item of this.importanceList) {
|
|
item.select = false;
|
|
}
|
|
}
|
|
this.clickCancel();
|
|
this.clickSearch();
|
|
},
|
|
/**
|
|
* 点击筛选弹窗确定
|
|
*/
|
|
clickCertain() {
|
|
if (this.selectScreenCategory == 0) {
|
|
if (this.selectQuickTimeIndex == -1) {
|
|
if (!this.startDateStr) {
|
|
common_vendor.index.showToast({
|
|
title: "请选择开始时间",
|
|
icon: "none"
|
|
});
|
|
return;
|
|
}
|
|
if (!this.endDateStr) {
|
|
common_vendor.index.showToast({
|
|
title: "请选择结束时间",
|
|
icon: "none"
|
|
});
|
|
return;
|
|
}
|
|
if (this.endTimeStamp < this.startTimeStamp) {
|
|
common_vendor.index.showToast({
|
|
title: "开始时间不能晚于结束时间",
|
|
icon: "none"
|
|
});
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
this.clickCancel();
|
|
this.clickSearch();
|
|
},
|
|
/**
|
|
* 点击筛选分类
|
|
* @param {Object} index
|
|
*/
|
|
clickScreenCategoryItem(index) {
|
|
if (this.selectScreenCategory != index) {
|
|
this.selectScreenCategory = index;
|
|
}
|
|
},
|
|
/**
|
|
* 点击选择一级分类
|
|
* @param {Object} index
|
|
*/
|
|
clickTopCategoryItem(event, index) {
|
|
if (this.selectTopCategory != index) {
|
|
this.selectTopCategory = index;
|
|
this.selectSecondCategory = 0;
|
|
let offsetLeft = event.currentTarget.offsetLeft;
|
|
this.topScrollLeft = offsetLeft - this.topScrollWidth / 2;
|
|
this.listTop = this.contentTop + (22 + 80 + 72) / 750 * this.windowWidth;
|
|
this.clickSearch();
|
|
}
|
|
},
|
|
/**
|
|
* 点击选择二级分类
|
|
* @param {Object} index
|
|
*/
|
|
clickSecondCategoryItem(event, index) {
|
|
if (this.selectSecondCategory != index) {
|
|
this.selectSecondCategory = index;
|
|
let offsetLeft = event.currentTarget.offsetLeft;
|
|
this.secondScrollLeft = offsetLeft - this.secondScrollWidth / 2;
|
|
this.clickSearch();
|
|
}
|
|
},
|
|
/**
|
|
* 点击选择快捷时间
|
|
*/
|
|
clickQuickTimeItem(index) {
|
|
this.startDateStr = this.endDateStr = "";
|
|
if (this.selectQuickTimeIndex != index) {
|
|
this.selectQuickTimeIndex = index;
|
|
}
|
|
},
|
|
/**
|
|
* 监听日期选择
|
|
* @param {Object} e
|
|
*/
|
|
startDateChange(e) {
|
|
this.selectQuickTimeIndex = -1;
|
|
let value = e.detail.value;
|
|
if (value[1] != this.startDateValue[1]) {
|
|
let year2 = value[0] + 2e3;
|
|
let month2 = value[1] % 12;
|
|
let date2 = new Date(year2, month2 + 1, 0);
|
|
let monthDays2 = date2.getDate();
|
|
this.dayList = [];
|
|
for (var i = 0; i < monthDays2 * 60; i++) {
|
|
this.dayList.push(i % monthDays2 + 1);
|
|
}
|
|
}
|
|
this.startDateValue = e.detail.value;
|
|
let year = value[0] + 2e3;
|
|
let month = value[1] % 12 + 1;
|
|
let date = new Date(year, month, 0);
|
|
let monthDays = date.getDate();
|
|
let day = value[2] % monthDays + 1;
|
|
this.startDateStr = year + "-" + (month > 9 ? month : "0" + month) + "-" + (day > 9 ? day : "0" + day);
|
|
var startDateStr = this.startDateStr.replace(/-/g, "/") + " 00:00:00";
|
|
this.startTimeStamp = new Date(startDateStr).getTime();
|
|
},
|
|
/**
|
|
* 监听结束日期选择
|
|
* @param {Object} e
|
|
*/
|
|
endDateChange(e) {
|
|
this.selectQuickTimeIndex = -1;
|
|
let value = e.detail.value;
|
|
if (value[1] != this.endDateValue[1]) {
|
|
let year2 = value[0] + 2e3;
|
|
let month2 = value[1] % 12;
|
|
let date2 = new Date(year2, month2 + 1, 0);
|
|
let monthDays2 = date2.getDate();
|
|
this.dayList = [];
|
|
for (var i = 0; i < monthDays2 * 60; i++) {
|
|
this.dayList.push(i % monthDays2 + 1);
|
|
}
|
|
}
|
|
this.endDateValue = e.detail.value;
|
|
let year = value[0] + 2e3;
|
|
let month = value[1] % 12 + 1;
|
|
let date = new Date(year, month, 0);
|
|
let monthDays = date.getDate();
|
|
let day = value[2] % monthDays + 1;
|
|
this.endDateStr = year + "-" + (month > 9 ? month : "0" + month) + "-" + (day > 9 ? day : "0" + day);
|
|
var endDateStr = this.endDateStr.replace(/-/g, "/") + " 00:00:00";
|
|
this.endTimeStamp = new Date(endDateStr).getTime();
|
|
},
|
|
/**
|
|
* 行业分类搜索
|
|
*/
|
|
industrySearch(e) {
|
|
let keywords = e.detail.value;
|
|
this.industryKeywords = keywords;
|
|
if (keywords) {
|
|
let arr = [];
|
|
for (let item of this.industryCategoryList) {
|
|
let index = this.industryCategoryList.indexOf(item);
|
|
if (item.level1_sector.indexOf(keywords) > -1) {
|
|
item.index = index;
|
|
arr.push(item);
|
|
} else {
|
|
let arr1 = [];
|
|
for (let item1 of item.level2_sectors) {
|
|
let index1 = item.level2_sectors.indexOf(item1);
|
|
if (item1.level2_sector.indexOf(keywords) > -1) {
|
|
item1.index = index;
|
|
item1.index1 = index1;
|
|
arr1.push(item1);
|
|
} else {
|
|
let arr2 = [];
|
|
for (let item2 of item1.level3_sectors) {
|
|
let index2 = item1.level3_sectors.indexOf(item2);
|
|
if (item2.level3_sector.indexOf(keywords) > -1) {
|
|
item2.index = index;
|
|
item2.index1 = index1;
|
|
item2.index2 = index2;
|
|
arr2.push(item2);
|
|
}
|
|
}
|
|
if (arr2.length > 0) {
|
|
arr2.unshift({ level3_sector: "全部", index, index2: 0 });
|
|
arr1.push({ level2_sector: item1.level2_sector, level3_sectors: arr2, index, index1 });
|
|
}
|
|
}
|
|
}
|
|
if (arr1.length > 0) {
|
|
arr1.unshift({ level2_sector: "全部", level3_sectors: [{ level3_sector: "全部", level4_sectors: [] }], index, index1: 0 });
|
|
arr.push({ level1_sector: item.level1_sector, level2_sectors: arr1, index });
|
|
}
|
|
}
|
|
}
|
|
this.searchResultList = arr;
|
|
} else {
|
|
this.searchResultList = this.industryCategoryList;
|
|
this.searchIndustryTopCategory = this.searchIndustrySecondCategory = this.searchIndustryThirdCategory = 0;
|
|
}
|
|
},
|
|
/**
|
|
* 选择行业分类搜索结果一级分类
|
|
*/
|
|
clickSearchIndustryTopCategoryItem(index, item) {
|
|
if (this.searchIndustryTopCategory != index) {
|
|
this.searchIndustryTopCategory = index;
|
|
this.selectIndustryTopCategory = item.index;
|
|
this.searchIndustrySecondCategory = this.selectIndustrySecondCategory = 0;
|
|
}
|
|
},
|
|
/**
|
|
* 选择行业分类搜索结果二级分类
|
|
*/
|
|
clickSearchIndustrySecondCategoryItem(index, item) {
|
|
if (this.searchIndustrySecondCategory != index) {
|
|
this.searchIndustrySecondCategory = index;
|
|
this.selectIndustrySecondCategory = item.index1;
|
|
this.searchIndustryThirdCategory = this.selectIndustryThirdCategory = 0;
|
|
}
|
|
},
|
|
/**
|
|
* 选择行业分类搜索结果三级分类
|
|
*/
|
|
clickSearchIndustryThirdCategoryItem(index, item) {
|
|
if (this.searchIndustryThirdCategory != index) {
|
|
this.searchIndustryThirdCategory = index;
|
|
this.selectIndustryThirdCategory = item.index2;
|
|
}
|
|
},
|
|
/**
|
|
* 选择行业分类一级分类
|
|
*/
|
|
clickIndustryTopCategoryItem(index) {
|
|
if (this.selectIndustryTopCategory != index) {
|
|
this.selectIndustryTopCategory = index;
|
|
this.selectIndustrySecondCategory = 0;
|
|
}
|
|
},
|
|
/**
|
|
* 选择行业分类二级分类
|
|
*/
|
|
clickIndustrySecondCategoryItem(index) {
|
|
if (this.selectIndustrySecondCategory != index) {
|
|
this.selectIndustrySecondCategory = index;
|
|
this.selectIndustryThirdCategory = 0;
|
|
}
|
|
},
|
|
/**
|
|
* 选择行业分类三级分类
|
|
*/
|
|
clickIndustryThirdCategoryItem(index) {
|
|
if (this.selectIndustryThirdCategory != index) {
|
|
this.selectIndustryThirdCategory = index;
|
|
}
|
|
},
|
|
/**
|
|
* 点击选择重要性
|
|
*/
|
|
clickImportanceItem(item) {
|
|
item.select = !item.select;
|
|
if (item.key == "all") {
|
|
if (item.select) {
|
|
for (let item1 of this.importanceList) {
|
|
if (item1.key != item.key) {
|
|
item1.select = false;
|
|
}
|
|
}
|
|
}
|
|
} else {
|
|
for (let item1 of this.importanceList) {
|
|
if (item1.key == "all") {
|
|
item1.select = false;
|
|
}
|
|
}
|
|
}
|
|
},
|
|
/**
|
|
* 点击展开收起内容
|
|
* @param {Object} index
|
|
*/
|
|
clickExpandOrRetract(index) {
|
|
this.eventList[index].isExpand = !this.eventList[index].isExpand;
|
|
},
|
|
/**
|
|
* 点击相关股票
|
|
* @param {Object} id 事件id
|
|
* @param {Object} code 股票代码
|
|
*/
|
|
clickLookRelatedStockItem(id, code) {
|
|
common_vendor.index.navigateTo({
|
|
url: "/pages/index/stockDetails/stockDetails?type=1&code=" + code + "&id=" + id
|
|
});
|
|
},
|
|
/**
|
|
* 点击关注事件
|
|
* @param {Object} id
|
|
*/
|
|
clickFollowEvent(id) {
|
|
request_api.followEvent(id).then((res) => {
|
|
common_vendor.index.showToast({
|
|
title: res.message,
|
|
icon: "none"
|
|
});
|
|
this.clickSearch();
|
|
}).catch((error) => {
|
|
});
|
|
},
|
|
/**
|
|
* 查看事件详情
|
|
*/
|
|
clickEventItem(id) {
|
|
let that = this;
|
|
common_vendor.index.$on("editSuccess", (res) => {
|
|
that.clickSearch();
|
|
common_vendor.index.$off("editSuccess");
|
|
});
|
|
common_vendor.index.navigateTo({
|
|
url: "/pages/index/eventDetails/eventDetails?id=" + id
|
|
});
|
|
},
|
|
/**
|
|
* 获取事件筛选项
|
|
*/
|
|
getEventFilterListData() {
|
|
return new Promise((resolve, reject) => {
|
|
request_api.filterOptions().then((res) => {
|
|
if (res.code == 200) {
|
|
resolve(1);
|
|
this.timeCategoryList = res.data.sort_options;
|
|
this.importanceList = res.data.importance_options;
|
|
this.importanceList.unshift({ desc: "全部", key: "all", name: "全部" });
|
|
} else {
|
|
resolve(1);
|
|
common_vendor.index.showToast({
|
|
title: res.message,
|
|
icon: "none"
|
|
});
|
|
}
|
|
}).catch((error) => {
|
|
reject(1);
|
|
});
|
|
});
|
|
},
|
|
/**
|
|
* 获取行业分类
|
|
*/
|
|
getIndustryCategoryListData() {
|
|
return new Promise((resolve, reject) => {
|
|
request_api.industryCategoryList().then((res) => {
|
|
let list = res.data[0].hierarchy;
|
|
list.unshift({ level1_sector: "全部", level2_sectors: [] });
|
|
for (let item of list) {
|
|
let index = list.indexOf(item);
|
|
item.index = index;
|
|
item.level2_sectors.unshift({ level2_sector: "全部", level3_sectors: [] });
|
|
for (let item1 of item.level2_sectors) {
|
|
let index1 = item.level2_sectors.indexOf(item1);
|
|
item1.index1 = index1;
|
|
item1.level3_sectors.unshift({ level3_sector: "全部", level4_sectors: [] });
|
|
for (let item2 of item1.level3_sectors) {
|
|
let index2 = item1.level3_sectors.indexOf(item2);
|
|
item2.index2 = index2;
|
|
}
|
|
}
|
|
}
|
|
this.industryCategoryList = list;
|
|
resolve(1);
|
|
}).catch((error) => {
|
|
reject(1);
|
|
});
|
|
});
|
|
},
|
|
/**
|
|
* 获取股票分类
|
|
*/
|
|
getStockCategoryListData() {
|
|
return new Promise((resolve, reject) => {
|
|
request_api.stockCategoryList().then((res) => {
|
|
if (res.code == 200) {
|
|
for (let item of res.data) {
|
|
item.sub_sectors.unshift("全部");
|
|
}
|
|
res.data.unshift({ primary_sector: "全部", sub_sectors: [] });
|
|
this.stockCategoryList = res.data;
|
|
resolve(1);
|
|
} else {
|
|
common_vendor.index.showToast({
|
|
title: res.message,
|
|
icon: "none"
|
|
});
|
|
reject(1);
|
|
}
|
|
}).catch((error) => {
|
|
reject(1);
|
|
});
|
|
});
|
|
},
|
|
/**
|
|
* 获取事件列表数据
|
|
*/
|
|
getEventListData() {
|
|
let param = { page: this.page, q: this.keywords };
|
|
if (this.selectTopCategory > 0) {
|
|
param.stock_sector = this.stockCategoryList[this.selectTopCategory].primary_sector;
|
|
}
|
|
if (this.selectSecondCategory > 0) {
|
|
param.secondary_sector = this.stockCategoryList[this.selectTopCategory].sub_sectors[this.selectSecondCategory];
|
|
}
|
|
if (this.selectQuickTimeIndex > -1) {
|
|
param.time_filter = this.quickTimeList[this.selectQuickTimeIndex].key;
|
|
}
|
|
if (this.startDateStr) {
|
|
param.start_date = this.startDateStr;
|
|
}
|
|
if (this.endDateStr) {
|
|
param.end_date = this.endDateStr;
|
|
}
|
|
if (this.selectIndustryThirdCategory > 0) {
|
|
param.industry_level = 4;
|
|
param.industry_classification = this.industryCategoryList[this.selectIndustryTopCategory].level2_sectors[this.selectIndustrySecondCategory].level3_sectors[this.selectIndustryThirdCategory].level3_sector;
|
|
} else {
|
|
if (this.selectIndustrySecondCategory > 0) {
|
|
param.industry_level = 3;
|
|
param.industry_classification = this.industryCategoryList[this.selectIndustryTopCategory].level2_sectors[this.selectIndustrySecondCategory].level2_sector;
|
|
} else {
|
|
if (this.selectIndustryTopCategory > 0) {
|
|
param.industry_level = 2;
|
|
param.industry_classification = this.industryCategoryList[this.selectIndustryTopCategory].level1_sector;
|
|
}
|
|
}
|
|
}
|
|
let arr = [];
|
|
for (let item of this.importanceList) {
|
|
if (item.select) {
|
|
arr.push(item.key);
|
|
}
|
|
}
|
|
if (arr.length > 0) {
|
|
param.importance = arr.join(",");
|
|
}
|
|
if (this.selectTimeCategory != 1) {
|
|
param.sort = this.timeCategoryList[this.selectTimeCategory].key;
|
|
}
|
|
request_api.eventList(param).then((res) => {
|
|
this.isRefreshing = false;
|
|
if (res.success) {
|
|
if (this.page == 1) {
|
|
this.eventList = res.data.events;
|
|
} else
|
|
this.eventList = this.eventList.concat(res.data.events);
|
|
this.loadAll = !res.data.pagination.has_next;
|
|
}
|
|
}).catch((error) => {
|
|
this.isRefreshing = false;
|
|
});
|
|
},
|
|
/**
|
|
* 获取热门事件数据
|
|
*/
|
|
getHotEventListData() {
|
|
let param = { page: this.page, q: this.keywords };
|
|
if (this.selectTopCategory > 0) {
|
|
param.stock_sector = this.stockCategoryList[this.selectTopCategory].primary_sector;
|
|
}
|
|
if (this.selectSecondCategory > 0) {
|
|
param.secondary_sector = this.stockCategoryList[this.selectTopCategory].sub_sectors[this.selectSecondCategory];
|
|
}
|
|
if (this.selectQuickTimeIndex > -1) {
|
|
param.time_filter = this.quickTimeList[this.selectQuickTimeIndex].key;
|
|
}
|
|
if (this.startDateStr) {
|
|
param.start_date = this.startDateStr;
|
|
}
|
|
if (this.endDateStr) {
|
|
param.end_date = this.endDateStr;
|
|
}
|
|
if (this.selectIndustryThirdCategory > 0) {
|
|
param.industry_level = 4;
|
|
param.industry_classification = this.industryCategoryList[this.selectIndustryTopCategory].level2_sectors[this.selectIndustrySecondCategory].level3_sectors[this.selectIndustryThirdCategory].level3_sector;
|
|
} else {
|
|
if (this.selectIndustrySecondCategory > 0) {
|
|
param.industry_level = 3;
|
|
param.industry_classification = this.industryCategoryList[this.selectIndustryTopCategory].level2_sectors[this.selectIndustrySecondCategory].level2_sector;
|
|
} else {
|
|
if (this.selectIndustryTopCategory > 0) {
|
|
param.industry_level = 2;
|
|
param.industry_classification = this.industryCategoryList[this.selectIndustryTopCategory].level1_sector;
|
|
}
|
|
}
|
|
}
|
|
let arr = [];
|
|
for (let item of this.importanceList) {
|
|
if (item.select) {
|
|
arr.push(item.key);
|
|
}
|
|
}
|
|
if (arr.length > 0) {
|
|
param.importance = arr.join(",");
|
|
}
|
|
if (this.selectSortKey) {
|
|
param.sort = this.selectSortKey;
|
|
}
|
|
request_api.homeData(param).then((res) => {
|
|
if (res.code == 200) {
|
|
if (this.page == 1) {
|
|
this.eventList = res.data.events;
|
|
} else
|
|
this.eventList = this.eventList.concat(res.data.events);
|
|
} else
|
|
common_vendor.index.showToast({
|
|
title: res.message,
|
|
icon: "none"
|
|
});
|
|
}).catch((error) => {
|
|
});
|
|
}
|
|
}
|
|
};
|
|
if (!Array) {
|
|
const _easycom_navBar2 = common_vendor.resolveComponent("navBar");
|
|
const _easycom_uni_popup2 = common_vendor.resolveComponent("uni-popup");
|
|
(_easycom_navBar2 + _easycom_uni_popup2)();
|
|
}
|
|
const _easycom_navBar = () => "../../components/navBar/navBar.js";
|
|
const _easycom_uni_popup = () => "../../uni_modules/uni-popup/components/uni-popup/uni-popup.js";
|
|
if (!Math) {
|
|
(_easycom_navBar + _easycom_uni_popup)();
|
|
}
|
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
return common_vendor.e({
|
|
a: common_assets._imports_0,
|
|
b: common_vendor.p({
|
|
leftText: "事件中心",
|
|
hideNavBg: true,
|
|
hideBack: true
|
|
}),
|
|
c: common_assets._imports_1,
|
|
d: common_vendor.o(($event) => $options.clickSearch()),
|
|
e: $data.keywords,
|
|
f: common_vendor.o(($event) => $data.keywords = $event.detail.value),
|
|
g: common_vendor.f($data.screenCategoryList, (item, index, i0) => {
|
|
return common_vendor.e({
|
|
a: item.icon,
|
|
b: common_vendor.t(item.title),
|
|
c: common_vendor.n("item flex " + (index == 2 ? "level" : "")),
|
|
d: common_vendor.o(($event) => $options.clickScreenItem(index), index),
|
|
e: index < $data.screenCategoryList.length - 1
|
|
}, index < $data.screenCategoryList.length - 1 ? {} : {}, {
|
|
f: index
|
|
});
|
|
}),
|
|
h: common_assets._imports_3,
|
|
i: common_vendor.f($data.timeCategoryList, (item, index, i0) => {
|
|
return {
|
|
a: common_vendor.t(item.name),
|
|
b: common_vendor.n("item flex1 " + ($data.selectTimeCategory == index ? "select" : "")),
|
|
c: index,
|
|
d: common_vendor.o(($event) => $options.clickTimeCategoryItem(index), index)
|
|
};
|
|
}),
|
|
j: common_vendor.s("top:" + $data.navH + "px;"),
|
|
k: common_vendor.f($data.eventList, (item, index, i0) => {
|
|
return common_vendor.e({
|
|
a: common_vendor.t(item.importance),
|
|
b: common_vendor.n("level " + item.importance),
|
|
c: common_vendor.t(item.title),
|
|
d: common_vendor.t(item.description),
|
|
e: common_vendor.n("content " + (item.isExpand ? "" : "retract")),
|
|
f: common_vendor.o(($event) => $options.clickExpandOrRetract(index), index),
|
|
g: $data.getRateUpOrDown(item.related_avg_chg)
|
|
}, $data.getRateUpOrDown(item.related_avg_chg) ? {
|
|
h: common_assets._imports_1$1
|
|
} : {
|
|
i: common_assets._imports_2$1
|
|
}, {
|
|
j: common_vendor.t($data.getRateStr(item.related_avg_chg)),
|
|
k: common_vendor.n("rateItem " + ($data.getRateUpOrDown(item.related_avg_chg) ? "down" : "up")),
|
|
l: $data.getRateUpOrDown(item.related_max_chg)
|
|
}, $data.getRateUpOrDown(item.related_max_chg) ? {
|
|
m: common_assets._imports_1$1
|
|
} : {
|
|
n: common_assets._imports_2$1
|
|
}, {
|
|
o: common_vendor.t($data.getRateStr(item.related_max_chg)),
|
|
p: common_vendor.n("rateItem " + ($data.getRateUpOrDown(item.related_max_chg) ? "down" : "up")),
|
|
q: $data.getRateUpOrDown(item.related_week_chg)
|
|
}, $data.getRateUpOrDown(item.related_week_chg) ? {
|
|
r: common_assets._imports_1$1
|
|
} : {
|
|
s: common_assets._imports_2$1
|
|
}, {
|
|
t: common_vendor.t($data.getRateStr(item.related_week_chg)),
|
|
v: common_vendor.n("rateItem " + ($data.getRateUpOrDown(item.related_week_chg) ? "down" : "up")),
|
|
w: common_vendor.t($data.getLocaleTime(item.created_at)),
|
|
x: common_vendor.t(item.view_count),
|
|
y: common_vendor.t(item.follower_count),
|
|
z: common_vendor.o(($event) => $options.clickFollowEvent(item.id), index),
|
|
A: common_vendor.t(item.follower_count),
|
|
B: common_vendor.o(($event) => $options.clickFollowEvent(item.id), index),
|
|
C: common_vendor.o(($event) => $options.clickEventItem(item.id), index),
|
|
D: index
|
|
});
|
|
}),
|
|
l: common_assets._imports_3$1,
|
|
m: common_assets._imports_11,
|
|
n: common_assets._imports_7,
|
|
o: common_vendor.s("top:" + $data.listTop + "px"),
|
|
p: $data.isRefreshing,
|
|
q: common_vendor.o(($event) => $options.pullDownRefresh()),
|
|
r: common_vendor.o(($event) => $options.loadMoreData()),
|
|
s: common_assets._imports_2,
|
|
t: common_vendor.s("height:" + $data.menuH + "px;"),
|
|
v: common_vendor.o(($event) => $options.clickCancel()),
|
|
w: common_vendor.f($data.screenCategoryList, (item, index, i0) => {
|
|
return common_vendor.e({
|
|
a: item.icon,
|
|
b: common_vendor.t(item.title),
|
|
c: common_vendor.n("item flex " + (index == 2 ? "level" : "")),
|
|
d: common_vendor.o(($event) => $options.clickScreenItem(index), index),
|
|
e: index < $data.screenCategoryList.length - 1
|
|
}, index < $data.screenCategoryList.length - 1 ? {} : {}, {
|
|
f: index
|
|
});
|
|
}),
|
|
x: common_assets._imports_3,
|
|
y: $data.selectScreenCategory == 0
|
|
}, $data.selectScreenCategory == 0 ? common_vendor.e({
|
|
z: common_vendor.f($data.quickTimeList, (item, index, i0) => {
|
|
return {
|
|
a: common_vendor.t(item.title),
|
|
b: common_vendor.n("item " + ($data.selectQuickTimeIndex == index ? "select" : "")),
|
|
c: index,
|
|
d: common_vendor.o(($event) => $options.clickQuickTimeItem(index, item), index)
|
|
};
|
|
}),
|
|
A: common_assets._imports_9,
|
|
B: $data.startDateStr
|
|
}, $data.startDateStr ? {
|
|
C: common_vendor.t($data.startDateStr)
|
|
} : {}, {
|
|
D: common_assets._imports_9,
|
|
E: $data.endDateStr
|
|
}, $data.endDateStr ? {
|
|
F: common_vendor.t($data.endDateStr)
|
|
} : {}, {
|
|
G: common_vendor.f($data.yearList, (item, index, i0) => {
|
|
return {
|
|
a: common_vendor.t(item),
|
|
b: index
|
|
};
|
|
}),
|
|
H: common_vendor.f($data.monthList, (item, index, i0) => {
|
|
return {
|
|
a: common_vendor.t(item),
|
|
b: index
|
|
};
|
|
}),
|
|
I: common_vendor.f($data.dayList, (item, index, i0) => {
|
|
return {
|
|
a: common_vendor.t(item),
|
|
b: index
|
|
};
|
|
}),
|
|
J: $data.startDateValue,
|
|
K: common_vendor.o((...args) => $options.startDateChange && $options.startDateChange(...args)),
|
|
L: common_vendor.f($data.yearList, (item, index, i0) => {
|
|
return {
|
|
a: common_vendor.t(item),
|
|
b: index
|
|
};
|
|
}),
|
|
M: common_vendor.f($data.monthList, (item, index, i0) => {
|
|
return {
|
|
a: common_vendor.t(item),
|
|
b: index
|
|
};
|
|
}),
|
|
N: common_vendor.f($data.dayList, (item, index, i0) => {
|
|
return {
|
|
a: common_vendor.t(item),
|
|
b: index
|
|
};
|
|
}),
|
|
O: $data.endDateValue,
|
|
P: common_vendor.o((...args) => $options.endDateChange && $options.endDateChange(...args))
|
|
}) : {}, {
|
|
Q: $data.selectScreenCategory == 1
|
|
}, $data.selectScreenCategory == 1 ? common_vendor.e({
|
|
R: common_assets._imports_10,
|
|
S: common_vendor.o([($event) => $data.industryKeywords = $event.detail.value, (...args) => $options.industrySearch && $options.industrySearch(...args)]),
|
|
T: $data.industryKeywords,
|
|
U: $data.industryKeywords.length > 0
|
|
}, $data.industryKeywords.length > 0 ? common_vendor.e({
|
|
V: common_vendor.f($data.searchResultList, (item, index, i0) => {
|
|
return {
|
|
a: common_vendor.t(item.level1_sector),
|
|
b: common_vendor.n("item relative " + ($data.searchIndustryTopCategory == index ? "select" : "")),
|
|
c: index,
|
|
d: common_vendor.o(($event) => $options.clickSearchIndustryTopCategoryItem(index, item), index)
|
|
};
|
|
}),
|
|
W: common_vendor.f($data.searchResultList[$data.searchIndustryTopCategory].level2_sectors, (item, index, i0) => {
|
|
return {
|
|
a: common_vendor.t(item.level2_sector),
|
|
b: common_vendor.n("item relative " + ($data.searchIndustrySecondCategory == index ? "select" : "")),
|
|
c: index,
|
|
d: common_vendor.o(($event) => $options.clickSearchIndustrySecondCategoryItem(index, item), index)
|
|
};
|
|
}),
|
|
X: $data.searchResultList[$data.searchIndustryTopCategory].level2_sectors.length > 0
|
|
}, $data.searchResultList[$data.searchIndustryTopCategory].level2_sectors.length > 0 ? {
|
|
Y: common_vendor.f($data.searchResultList[$data.searchIndustryTopCategory].level2_sectors[$data.searchIndustrySecondCategory].level3_sectors, (item, index, i0) => {
|
|
return common_vendor.e({
|
|
a: common_vendor.t(item.level3_sector),
|
|
b: $data.searchIndustryThirdCategory == index
|
|
}, $data.searchIndustryThirdCategory == index ? {
|
|
c: common_assets._imports_11$1
|
|
} : {}, {
|
|
d: common_vendor.n("item flex relative " + ($data.searchIndustryThirdCategory == index ? "select" : "")),
|
|
e: index,
|
|
f: common_vendor.o(($event) => $options.clickSearchIndustryThirdCategoryItem(index, item), index)
|
|
});
|
|
})
|
|
} : {}) : common_vendor.e({
|
|
Z: common_vendor.f($data.industryCategoryList, (item, index, i0) => {
|
|
return {
|
|
a: common_vendor.t(item.level1_sector),
|
|
b: common_vendor.n("item relative " + ($data.selectIndustryTopCategory == index ? "select" : "")),
|
|
c: index,
|
|
d: common_vendor.o(($event) => $options.clickIndustryTopCategoryItem(index), index)
|
|
};
|
|
}),
|
|
aa: common_vendor.f($data.industryCategoryList[$data.selectIndustryTopCategory].level2_sectors, (item, index, i0) => {
|
|
return {
|
|
a: common_vendor.t(item.level2_sector),
|
|
b: common_vendor.n("item relative " + ($data.selectIndustrySecondCategory == index ? "select" : "")),
|
|
c: index,
|
|
d: common_vendor.o(($event) => $options.clickIndustrySecondCategoryItem(index), index)
|
|
};
|
|
}),
|
|
ab: $data.industryCategoryList[$data.selectIndustryTopCategory].level2_sectors.length > 0
|
|
}, $data.industryCategoryList[$data.selectIndustryTopCategory].level2_sectors.length > 0 ? {
|
|
ac: common_vendor.f($data.industryCategoryList[$data.selectIndustryTopCategory].level2_sectors[$data.selectIndustrySecondCategory].level3_sectors, (item, index, i0) => {
|
|
return common_vendor.e({
|
|
a: common_vendor.t(item.level3_sector),
|
|
b: $data.selectIndustryThirdCategory == index
|
|
}, $data.selectIndustryThirdCategory == index ? {
|
|
c: common_assets._imports_11$1
|
|
} : {}, {
|
|
d: common_vendor.n("item flex relative " + ($data.selectIndustryThirdCategory == index ? "select" : "")),
|
|
e: index,
|
|
f: common_vendor.o(($event) => $options.clickIndustryThirdCategoryItem(index), index)
|
|
});
|
|
})
|
|
} : {})) : {}, {
|
|
ad: $data.selectScreenCategory == 2
|
|
}, $data.selectScreenCategory == 2 ? {
|
|
ae: common_vendor.f($data.importanceList, (item, index, i0) => {
|
|
return common_vendor.e({
|
|
a: common_vendor.t(item.name),
|
|
b: item.select
|
|
}, item.select ? {
|
|
c: common_assets._imports_12
|
|
} : {}, {
|
|
d: common_vendor.n("item flex " + (item.select ? "select" : "")),
|
|
e: index,
|
|
f: common_vendor.o(($event) => $options.clickImportanceItem(item), index)
|
|
});
|
|
})
|
|
} : {}, {
|
|
af: $data.selectScreenCategory == 3
|
|
}, $data.selectScreenCategory == 3 ? {
|
|
ag: common_vendor.f($data.sortTypeList, (item, index, i0) => {
|
|
return {
|
|
a: item.icon,
|
|
b: common_vendor.t(item.name),
|
|
c: common_vendor.n("item flex " + ($data.selectSortKey == item.key ? "select" : "")),
|
|
d: index,
|
|
e: common_vendor.o(($event) => $options.clickSortListItem(item), index)
|
|
};
|
|
})
|
|
} : {}, {
|
|
ah: $data.selectScreenCategory != 3
|
|
}, $data.selectScreenCategory != 3 ? {
|
|
ai: common_vendor.o(($event) => $options.clickReset()),
|
|
aj: common_vendor.o(($event) => $options.clickCertain())
|
|
} : {}, {
|
|
ak: common_vendor.s("padding-top:" + $data.menuTop + "px;"),
|
|
al: common_vendor.sr("screenPopup", "c48facd8-1"),
|
|
am: common_vendor.p({
|
|
type: "top"
|
|
})
|
|
});
|
|
}
|
|
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
|
|
wx.createPage(MiniProgramPage);
|
|
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/index/index.js.map
|