"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"), contentTop: "", listTop: "", sortListTop: "", keywords: "", //关键词 sortList: [], timeCategoryList: [], selectTimeCategory: 0, topCategoryList: ["全部", "大周期", "大消费", "大金融地产", "TMT板块", "公共产业板块"], selectTopCategory: 0, secondCategoryList: ["全部", "石油石化", "煤炭", "有色金属", "钢铁", "基础化工", "建筑材料"], selectSecondCategory: 0, screenCategoryList: ["日期范围", "行业分类", "重要性"], selectYearMonth: "", //选择的年月日 startDate: "", //选择开始日期 startTimeStamp: "", //开始日期时间戳 endDate: "", //选择结束日期 endTimeStamp: "", //结束日期时间戳 weekList: ["一", "二", "三", "四", "五", "六", "日"], monthDateList: [], selectMonthIndex: 0, //选中月份下标 selectMonth: "", //选中年月 industryTopCategoryList: ["巨潮行业分类", "新财富行业分类", "申银万国行业分类", "证监会行业分类"], selectScreenCategory: 0, importanceList: [], //重要性数组 selectImportanceIndex: 0, //选择重要性下标 option: { tooltip: { trigger: "axis", axisPointer: { type: "shadow" }, confine: true }, grid: { left: "0%", right: "0%", top: "0%", 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 }, data: [ { value: 0, itemStyle: { color: "#355422" }, label: { textStyle: { color: "#355422" } } }, { value: 44, itemStyle: { color: "#35542299" }, label: { textStyle: { color: "#355422" } } }, { value: 315, itemStyle: { color: "#355422CC" }, label: { textStyle: { color: "#355422" } } }, { value: 1264, itemStyle: { color: "#355422" }, label: { textStyle: { color: "#355422" } } }, { value: 1064, itemStyle: { color: "#ACB0C0" }, label: { textStyle: { color: "#666" } } }, { value: 1809, itemStyle: { color: "#C00000" }, label: { textStyle: { color: "#C00000" } } }, { value: 602, itemStyle: { color: "#C00000CC" }, label: { textStyle: { color: "#C00000" } } }, { value: 44, itemStyle: { color: "#C0000099" }, label: { textStyle: { color: "#C00000" } } }, { value: 0, itemStyle: { color: "#C00000" }, label: { textStyle: { color: "#C00000" } } } ] } ] }, eventList: [], page: 1, loadAll: false, getRateStr: utils_util.getRateStr, getRateUpOrDown: utils_util.getRateUpOrDown, getLocaleTime: utils_util.getLocaleTime }; }, onLoad() { this.contentTop = this.navH + (75 + 20) / 750 * common_vendor.inject("windowWidth"); this.listTop = this.contentTop + (22 + 80 + 72 + 44 + 44) / 750 * common_vendor.inject("windowWidth"); this.sortListTop = this.navH + (22 + 80 + 80) / 750 * common_vendor.inject("windowWidth"); this.getEventFilterListData(); this.getEventListData(); let currentDate = /* @__PURE__ */ new Date(); let currentYear = currentDate.getFullYear(); let currentMonth = currentDate.getMonth() + 1; let currentDay = currentDate.getDate(); let monthDateList = []; this.selectMonthIndex = 20 * 12 + currentMonth - 1; this.selectMonth = currentYear + "-" + (currentMonth > 9 ? currentMonth : "0" + currentMonth); for (var i = currentYear - 20; i < currentYear + 20; i++) { for (var j = 0; j < 12; j++) { let date = new Date(i, j + 1, 0); let firstDayOfMonth = new Date(i, j + 1, 0); firstDayOfMonth.setDate(1); let currentMonthDay = date.getDate(); let firstDayWeek = firstDayOfMonth.getDay() || 7; let daysOfMonth = []; for (var k = 1; k <= currentMonthDay; k++) { let newDate = new Date(i, j + 1, 0); newDate.setDate(k); let newMonth = newDate.getMonth() + 1; let newDay = newDate.getDate(); let time = newDate.getTime(); let date2 = i + "-" + (newMonth > 9 ? newMonth : "0" + newMonth) + "-" + (newDay > 9 ? newDay : "0" + newDay); daysOfMonth.push({ date: date2, year: i, month: newMonth, day: newDay, isToday: i == currentYear && newMonth == currentMonth && newDay == currentDay ? true : false, isCurrentMonth: true, timestamp: time }); } for (var k = 0; k < firstDayWeek - 1; k++) { let year = i; let month = j; if (j < 1) { year = i - 1; month = 12; } let lastMonthDay = new Date(year, month, 0).getDate(); let newDate = new Date(year, month - 1, lastMonthDay - k); let newMonth = newDate.getMonth() + 1; let newDay = newDate.getDate(); let time = newDate.getTime(); let date2 = year + "-" + (newMonth > 9 ? newMonth : "0" + newMonth) + "-" + (newDay > 9 ? newDay : "0" + newDay); daysOfMonth.unshift({ date: date2, year, month: newMonth, day: newDay, isToday: false, isCurrentMonth: false, timestamp: time }); } let nextMonthFirstDay = new Date(i, j + 1, 1); let lastDayOfMonth = new Date(nextMonthFirstDay - 24 * 60 * 60 * 1e3); let lastDayWeek = lastDayOfMonth.getDay() || 7; for (var k = 1; k < 8 - lastDayWeek; k++) { let year = i; let month = j; if (month > 11) { month = 0; year++; } let newDate = new Date(year, month + 1, k); let newMonth = newDate.getMonth() + 1; let newDay = newDate.getDate(); let time = newDate.getTime(); let date2 = year + "-" + (newMonth > 9 ? newMonth : "0" + newMonth) + "-" + (newDay > 9 ? newDay : "0" + newDay); daysOfMonth.push({ date: date2, year, month: newMonth, day: newDay, isToday: false, isCurrentMonth: false, timestamp: time }); } monthDateList.push(daysOfMonth); } } this.monthDateList = monthDateList; }, onPullDownRefresh() { this.page = 1; this.getEventListData(); }, methods: { loadMoreData() { if (!this.loadAll) { this.page++; this.getEventListData(); } }, async init() { const chart = await this.$refs.chartRef.init(echarts); chart.setOption(this.option); }, /** * 点击搜索 */ clickSearch() { this.page = 1; this.getEventListData(); }, /** * 点击事件筛选 * @param {Object} index */ clickTimeCategoryItem(index) { if (this.selectTimeCategory != index) { this.selectTimeCategory = index; } }, /** * 点击排序 */ clickSortItem() { this.$refs["sortPopup"].open(); }, /** * 点击筛选 */ clickScreenItem() { this.$refs["screenPopup"].open(); }, /** * 点击筛选弹窗取消 */ clickCancel() { this.$refs["screenPopup"].close(); }, /** * 点击筛选弹窗确定 */ clickCertain() { this.clickCancel(); this.clickSearch(); }, /** * 点击筛选分类 * @param {Object} index */ clickScreenCategoryItem(index) { if (this.selectScreenCategory != index) { this.selectScreenCategory = index; } }, /** * 点击选择一级分类 * @param {Object} index */ clickTopCategoryItem(index) { if (this.selectTopCategory != index) { this.selectTopCategory = index; } }, /** * 点击选择二级分类 * @param {Object} index */ clickSecondCategoryItem(index) { if (this.selectSecondCategory != index) { this.selectSecondCategory = index; } }, /** * 点击上个月 */ clickPreMonth() { if (this.selectMonthIndex > 0) { this.selectMonthIndex--; let monthList = this.monthDateList[this.selectMonthIndex]; let month = ""; for (let item of monthList) { if (item.isCurrentMonth) { month = item.month; break; } } this.selectMonth = this.monthDateList[this.selectMonthIndex][0].year + "-" + (month > 9 ? month : "0" + month); } }, /** * 点击下个月 */ clickNextMonth() { if (this.selectMonthIndex < this.monthDateList.length - 1) { this.selectMonthIndex++; let monthList = this.monthDateList[this.selectMonthIndex]; let month = ""; for (let item of monthList) { if (item.isCurrentMonth) { month = item.month; break; } } this.selectMonth = this.monthDateList[this.selectMonthIndex][0].year + "-" + (month > 9 ? month : "0" + month); } }, /** * 点击选择开始日期和结束日期 * @param {Object} item */ clickSelectDate(item) { if (this.startDate) { let date1 = new Date(this.startDate); let date2 = new Date(item.date); if (date1 > date2) { this.endDate = this.startDate; this.endTimeStamp = this.startTimeStamp; this.startDate = item.date; this.startTimeStamp = item.timestamp; } else { this.endDate = item.date; this.endTimeStamp = item.timestamp; } } else { this.startDate = item.date; this.startTimeStamp = item.timestamp; } }, /** * 点击选择重要性 */ clickImportanceItem(index) { if (this.selectImportanceIndex != index) { this.selectImportanceIndex = index; } }, /** * 查看事件详情 */ clickEventItem(id) { common_vendor.index.navigateTo({ url: "/pages/index/eventDetails/eventDetails?id=" + id }); }, /** * 获取事件筛选项 */ getEventFilterListData() { request_api.eventFilterList().then((res) => { let timeList = [...res.data.available_sorts]; this.timeCategoryList = timeList.splice(0, 2); let sortList = [...res.data.available_sorts]; for (let item of sortList) { if (item.name == "最新") { item.icon = "/static/icon/home/new.png"; } if (item.name == "热门") { item.icon = "/static/icon/home/hot.png"; } if (item.name == "收益率") { item.icon = "/static/icon/home/yield.png"; } } this.sortList = res.data.available_sorts.splice(0, 3); this.importanceList = res.data.available_importance_levels; this.importanceList.unshift({ desc: "全部", key: "all", name: "全部" }); }).catch((error) => { }); }, /** * 获取事件列表数据 */ getEventListData() { let param = { page: this.page, keywords: this.keywords }; if (this.startDate) { param.start_date = this.startDate; } if (this.endDate) { param.end_date = this.endDate; } if (this.selectImportanceIndex > 0) { param.importance = this.importanceList[this.selectImportanceIndex].key; } request_api.eventList(param).then((res) => { if (res.success) { if (this.page == 1) { this.eventList = res.data.events; } else this.eventList = this.eventList.concat(res.data.events); } }).catch((error) => { }); } } }; if (!Array) { const _easycom_uni_popup2 = common_vendor.resolveComponent("uni-popup"); _easycom_uni_popup2(); } const _easycom_uni_popup = () => "../../uni_modules/uni-popup/components/uni-popup/uni-popup.js"; if (!Math) { _easycom_uni_popup(); } function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { return common_vendor.e({ a: common_assets._imports_0, b: common_vendor.s("top:" + $data.menuTop + "px;line-height:" + $data.menuH + "px;"), c: common_assets._imports_1, d: $data.keywords, e: common_vendor.o(($event) => $data.keywords = $event.detail.value), f: common_vendor.o(($event) => $options.clickSearch()), g: common_vendor.s("top:" + $data.navH + "px;"), h: common_vendor.f($data.timeCategoryList, (item, index, i0) => { return { a: common_vendor.t(item.name), b: common_vendor.n("item " + ($data.selectTimeCategory == index ? "select" : "")), c: index, d: common_vendor.o(($event) => $options.clickTimeCategoryItem(index), index) }; }), i: common_assets._imports_2, j: common_vendor.o(($event) => $options.clickSortItem()), k: common_assets._imports_3, l: common_vendor.o(($event) => $options.clickScreenItem()), m: common_vendor.f($data.topCategoryList, (item, index, i0) => { return { a: common_vendor.t(item), b: common_vendor.n("item relative " + ($data.selectTopCategory == index ? "select" : "")), c: index, d: common_vendor.o(($event) => $options.clickTopCategoryItem(index), index) }; }), n: common_vendor.f($data.secondCategoryList, (item, index, i0) => { return { a: common_vendor.t(item), b: common_vendor.n("item " + ($data.selectSecondCategory == index ? "select" : "")), c: index, d: common_vendor.o(($event) => $options.clickSecondCategoryItem(index), index) }; }), o: common_vendor.s("top:" + $data.contentTop + "px"), p: 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: $data.getRateUpOrDown(item.related_avg_chg) }, $data.getRateUpOrDown(item.related_avg_chg) ? { f: common_assets._imports_4 } : { g: common_assets._imports_5 }, { h: common_vendor.t($data.getRateStr(item.related_avg_chg)), i: common_vendor.n("rateItem " + ($data.getRateUpOrDown(item.related_avg_chg) ? "down" : "up")), j: $data.getRateUpOrDown(item.related_max_chg) }, $data.getRateUpOrDown(item.related_max_chg) ? { k: common_assets._imports_4 } : { l: common_assets._imports_5 }, { m: common_vendor.t($data.getRateStr(item.related_max_chg)), n: common_vendor.n("rateItem " + ($data.getRateUpOrDown(item.related_max_chg) ? "down" : "up")), o: $data.getRateUpOrDown(item.related_week_chg) }, $data.getRateUpOrDown(item.related_week_chg) ? { p: common_assets._imports_4 } : { q: common_assets._imports_5 }, { r: common_vendor.t($data.getRateStr(item.related_week_chg)), s: common_vendor.n("rateItem " + ($data.getRateUpOrDown(item.related_week_chg) ? "down" : "up")), t: common_vendor.t($data.getLocaleTime(item.created_at)), v: common_vendor.t(item.view_count), w: common_vendor.t(item.post_count), x: common_vendor.t(item.follower_count), y: common_vendor.o(($event) => $options.clickEventItem(item.id), index), z: index }); }), q: common_assets._imports_1$1, r: common_assets._imports_2$1, s: common_assets._imports_3$1, t: common_vendor.s("top:" + $data.listTop + "px"), v: common_vendor.o(($event) => $options.loadMoreData()), w: common_assets._imports_9, x: common_vendor.f($data.sortList, (item, index, i0) => { return { a: item.icon, b: common_vendor.t(item.name), c: index }; }), y: common_vendor.s("margin-top:" + $data.sortListTop + "px;"), z: common_vendor.sr("sortPopup", "9dfd58d8-0"), A: common_vendor.p({ type: "top", ["mask-background-color"]: "transparent" }), B: common_assets._imports_2$2, C: common_vendor.s("height:" + $data.menuH + "px;"), D: common_vendor.f($data.screenCategoryList, (item, index, i0) => { return common_vendor.e({ a: common_vendor.t(item), b: $data.selectScreenCategory == index }, $data.selectScreenCategory == index ? {} : {}, { c: common_vendor.n("item relative " + ($data.selectScreenCategory == index ? "select" : "")), d: index, e: common_vendor.o(($event) => $options.clickScreenCategoryItem(index), index) }); }), E: $data.selectScreenCategory == 0 }, $data.selectScreenCategory == 0 ? { F: common_vendor.t($data.startDate), G: common_vendor.t($data.endDate), H: common_assets._imports_11, I: common_vendor.o(($event) => $options.clickPreMonth()), J: common_vendor.t($data.selectMonth), K: common_assets._imports_12, L: common_vendor.o(($event) => $options.clickNextMonth()), M: common_vendor.f($data.weekList, (item, index, i0) => { return { a: common_vendor.t(item), b: index }; }), N: common_vendor.f($data.monthDateList[$data.selectMonthIndex], (item, index, i0) => { return common_vendor.e({ a: item.isToday || item.date == $data.startDate || item.date == $data.endDate }, item.isToday || item.date == $data.startDate || item.date == $data.endDate ? { b: common_vendor.t(item.day) } : common_vendor.e({ c: item.timestamp > $data.startTimeStamp && item.timestamp < $data.endTimeStamp }, item.timestamp > $data.startTimeStamp && item.timestamp < $data.endTimeStamp ? { d: common_vendor.t(item.day) } : common_vendor.e({ e: !item.isCurrentMonth }, !item.isCurrentMonth ? { f: common_vendor.t(item.day) } : { g: common_vendor.t(item.day) })), { h: index, i: common_vendor.o(($event) => $options.clickSelectDate(item), index) }); }) } : {}, { O: $data.selectScreenCategory == 1 }, $data.selectScreenCategory == 1 ? { P: common_vendor.f($data.industryTopCategoryList, (item, index, i0) => { return { a: common_vendor.t(item), b: index }; }), Q: common_assets._imports_1 } : {}, { R: $data.selectScreenCategory == 2 }, $data.selectScreenCategory == 2 ? { S: common_vendor.f($data.importanceList, (item, index, i0) => { return { a: common_vendor.t(item.name), b: common_vendor.n("item " + ($data.selectImportanceIndex == index ? "select" : "")), c: index, d: common_vendor.o(($event) => $options.clickImportanceItem(index), index) }; }) } : {}, { T: common_vendor.o(($event) => $options.clickCancel()), U: common_vendor.o(($event) => $options.clickCertain()), V: common_vendor.s("padding-top:" + $data.menuTop + "px;"), W: common_vendor.sr("screenPopup", "9dfd58d8-1"), X: 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