123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 |
- // 常规列表混入
- export default {
- data() {
- return {
- stroes: this.$useStore(),
- resizeTime: true,
- windowWidth: 1920 + 1080,
- // windowWidth: 6144 + 2304,
- isVsFirePie: false,
- distance: 300, // 3D饼图大小配置
- isVsTab: false,
- current: 1,
- size: 20,
- //size: 6.25,
- };
- },
- watch: {
- "stroes.$state.typeTime" (val) {
- this.getData && this.getData(val);
- },
- "stroes.$state.timeList" (val) {
- this.getData && this.getData(val);
- },
- },
- mounted() {
- // window.addEventListener("resize", this.resizeTimeActions);
- },
- methods: {
- resizeTimeActions(list) {
- if (!this.resizeTime) return;
- this.resizeTime = false;
- setTimeout(() => {
- list.forEach((element) => {
- element && element.resize();
- });
- this.resizeTime = true;
- this.windowWidth = document.documentElement.clientWidth + document.documentElement.clientHeight;
- }, 300);
- },
- vsClick(val) {
- this[val] = !this[val];
- if (val === "isVsFirePie") {
- this.$nextTick(() => {
- this.$refs.firePie1 && this.$refs.firePie1.resize();
- this.$refs.firePie2 && this.$refs.firePie2.resize();
- });
- }
- },
- /**
- * @获取当前日期前七天的日期
- */
- getMonth() {
- let oneDay = 24 * 60 * 60 * 1000;
- let endTime = new Date(Date.now());
- endTime = this.formatterDate(endTime, "yyyy-MM-dd hh:mm:ss");
- let startTime = new Date(Date.now() - 30 * oneDay);
- startTime = this.formatterDate(startTime, "yyyy-MM-dd hh:mm:ss");
- const days = {
- startTime,
- endTime,
- };
- return days;
- },
- /**
- * @获取当前日期前七天的日期
- */
- getDays() {
- let oneDay = 24 * 60 * 60 * 1000;
- let endTime = new Date(Date.now());
- endTime = this.formatterDate(endTime, "yyyy-MM-dd hh:mm:ss");
- let startTime = new Date(Date.now() - 7 * oneDay);
- startTime = this.formatterDate(startTime, "yyyy-MM-dd hh:mm:ss");
- const days = {
- startTime,
- endTime,
- };
- return days;
- },
- /**
- * @处理公共日期格式
- */
- formatterDate(date, fmt) {
- let nowDate = {
- yyyy: date.getFullYear(), // 年
- MM: date.getMonth() + 1, // 月份
- dd: date.getDate(), //日
- hh: date.getHours(),
- mm: date.getMinutes(),
- ss: date.getSeconds(),
- };
- if (/(y+)/.test(fmt)) {
- fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
- }
- for (var k in nowDate) {
- if (new RegExp("(" + k + ")").test(fmt)) {
- fmt = fmt.replace(RegExp.$1, RegExp.$1.length == 1 ? nowDate[k] : ("00" + nowDate[k]).substr(("" + nowDate[k]).length));
- }
- }
- return fmt;
- },
- autoScroll(stop) {
- // 拿到表格中承载数据的div元素
- const divData = this.$refs.reportTable.$refs.bodyWrapper
- // 拿到元素后,对元素进行定时增加距离顶部距离,实现滚动效果(此配置为每100毫秒移动1像素)
- if (stop) {
- //再通过事件监听,监听到 组件销毁 后,再执行关闭计时器。
- window.clearInterval(this.scrolltimer)
- } else {
- this.scrolltimer = window.setInterval(() => {
- // 元素自增距离顶部1像素
- divData.scrollTop += 1
- // 判断元素是否滚动到底部(可视高度+距离顶部=整个高度)
- if (divData.clientHeight + divData.scrollTop == divData.scrollHeight) {
- // 重置table距离顶部距离
- divData.scrollTop = 0
- // 重置table距离顶部距离。值=(滚动到底部时,距离顶部的大小) - 整个高度/2
- // divData.scrollTop = divData.scrollTop - divData.scrollHeight / 2
- }
- }, 150) // 滚动速度
- }
- },
- autoScroll1(stop) {
- // 拿到表格中承载数据的div元素
- const divData = this.$refs.reportTable1.$refs.bodyWrapper
- // 拿到元素后,对元素进行定时增加距离顶部距离,实现滚动效果(此配置为每100毫秒移动1像素)
- if (stop) {
- //再通过事件监听,监听到 组件销毁 后,再执行关闭计时器。
- window.clearInterval(this.scrolltimer)
- } else {
- this.scrolltimer = window.setInterval(() => {
- // 元素自增距离顶部1像素
- divData.scrollTop += 1
- // 判断元素是否滚动到底部(可视高度+距离顶部=整个高度)
- if (divData.clientHeight + divData.scrollTop == divData.scrollHeight) {
- // 重置table距离顶部距离
- divData.scrollTop = 0
- // 重置table距离顶部距离。值=(滚动到底部时,距离顶部的大小) - 整个高度/2
- // divData.scrollTop = divData.scrollTop - divData.scrollHeight / 2
- }
- }, 150) // 滚动速度
- }
- },
- },
- unmount() {
- window.removeEventListener("resize", this.resizeTimeActions, true);
- },
- };
|