From 305d905f1efbc832b4a72894124e324c6a87e25b Mon Sep 17 00:00:00 2001 From: lfs3 Date: Wed, 28 Aug 2019 18:18:25 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E6=B5=8F=E8=A7=88=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/common/util.js | 168 +++++++++++++++++++++++----------- src/view/choose-community.vue | 30 +++--- src/view/home.vue | 4 +- 3 files changed, 129 insertions(+), 73 deletions(-) diff --git a/src/common/util.js b/src/common/util.js index af8a178..666753d 100644 --- a/src/common/util.js +++ b/src/common/util.js @@ -1,69 +1,131 @@ /** * Created by jerry on 2017/4/14. */ +import homeApi from "../models/home-model.js"; var SIGN_REGEXP = /([yMdhsm])(\1*)/g var DEFAULT_PATTERN = 'yyyy-MM-dd' -function padding (s, len) { - let l = len - (s + '').length - for (var i = 0; i < l; i++) { s = '0' + s } - return s +function padding(s, len) { + let l = len - (s + '').length + for (var i = 0; i < l; i++) { s = '0' + s } + return s }; export default { - getQueryStringByName: function (name) { - var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i') - var r = window.location.search.substr(1).match(reg) - var context = '' - if (r != null) { context = r[2] } - reg = null - r = null - return context === null || context === '' || context === 'undefined' ? '' : context - }, - formatDate: { - - format: function (date, pattern) { - pattern = pattern || DEFAULT_PATTERN - return pattern.replace(SIGN_REGEXP, function ($0) { - switch ($0.charAt(0)) { - case 'y': return padding(date.getFullYear(), $0.length) - case 'M': return padding(date.getMonth() + 1, $0.length) - case 'd': return padding(date.getDate(), $0.length) - case 'w': return date.getDay() + 1 - case 'h': return padding(date.getHours(), $0.length) - case 'm': return padding(date.getMinutes(), $0.length) - case 's': return padding(date.getSeconds(), $0.length) - } - }) + getQueryStringByName: function (name) { + var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i') + var r = window.location.search.substr(1).match(reg) + var context = '' + if (r != null) { context = r[2] } + reg = null + r = null + return context === null || context === '' || context === 'undefined' ? '' : context }, - parse: function (dateString, pattern) { - var matchs1 = pattern.match(SIGN_REGEXP) - var matchs2 = dateString.match(/(\d)+/g) - if (matchs1.length === matchs2.length) { - var _date = new Date(1970, 0, 1) - for (var i = 0; i < matchs1.length; i++) { - var _int = parseInt(matchs2[i]) - var sign = matchs1[i] - switch (sign.charAt(0)) { - case 'y': _date.setFullYear(_int); break - case 'M': _date.setMonth(_int - 1); break - case 'd': _date.setDate(_int); break - case 'h': _date.setHours(_int); break - case 'm': _date.setMinutes(_int); break - case 's': _date.setSeconds(_int); break - } + formatDate: { + + format: function (date, pattern) { + pattern = pattern || DEFAULT_PATTERN + return pattern.replace(SIGN_REGEXP, function ($0) { + switch ($0.charAt(0)) { + case 'y': return padding(date.getFullYear(), $0.length) + case 'M': return padding(date.getMonth() + 1, $0.length) + case 'd': return padding(date.getDate(), $0.length) + case 'w': return date.getDay() + 1 + case 'h': return padding(date.getHours(), $0.length) + case 'm': return padding(date.getMinutes(), $0.length) + case 's': return padding(date.getSeconds(), $0.length) + } + }) + }, + parse: function (dateString, pattern) { + var matchs1 = pattern.match(SIGN_REGEXP) + var matchs2 = dateString.match(/(\d)+/g) + if (matchs1.length === matchs2.length) { + var _date = new Date(1970, 0, 1) + for (var i = 0; i < matchs1.length; i++) { + var _int = parseInt(matchs2[i]) + var sign = matchs1[i] + switch (sign.charAt(0)) { + case 'y': _date.setFullYear(_int); break + case 'M': _date.setMonth(_int - 1); break + case 'd': _date.setDate(_int); break + case 'h': _date.setHours(_int); break + case 'm': _date.setMinutes(_int); break + case 's': _date.setSeconds(_int); break + } + } + return _date + } + return null } - return _date - } - return null - } - }, + }, }; export function isEmpty(val) { return ( - val === undefined || - val === null || - val === "undefined" || - val === "") + val === undefined || + val === null || + val === "undefined" || + val === "") +} + +export function countPartner() { + + var estateId = ""; + let estateStr = localStorage.getItem("estate") || ""; + if (!estateStr) { + } else { + let estateArr = estateStr.split("&"); + estateId = estateArr[0]; + } + + if(estateId !== ""){ + let keyStr = "1hjz_open_housing_log_" + estateId + let open_housing = localStorage.getItem(keyStr) || ""; + + if (!open_housing) { + return new Promise((resolve, reject) => { + var params = { + buryingPointType: 0, + housingEstateId: estateId, + timeStr: getTime(Date.now()) + }; + homeApi.countPartner(params).then(res => { + localStorage.setItem(keyStr, getTime(Date.now())) + resolve(); + }); + }); + }else{ + if(open_housing !== getTime(Date.now())){ + return new Promise((resolve, reject) => { + var params = { + buryingPointType: 0, + housingEstateId: estateId, + timeStr: getTime(Date.now()) + }; + homeApi.countPartner(params).then(res => { + localStorage.setItem(keyStr, getTime(Date.now())) + resolve(); + }); + }); + } + } + } + + +} + +export function getTime(time) { + let date = new Date(time); + let year = date.getFullYear(); + let month = checkTime(date.getMonth() + 1); + let day = checkTime(date.getDate()); + let str = year + "-" + month + "-" + day; + return str; +} +export function checkTime(i) { + if (i < 10) { + i = "0" + i; + } + return i; } diff --git a/src/view/choose-community.vue b/src/view/choose-community.vue index 4e79329..5acdb63 100644 --- a/src/view/choose-community.vue +++ b/src/view/choose-community.vue @@ -58,6 +58,7 @@ import homeApi from "../models/home-model.js"; import { Alert, Toast, Loading } from "vux"; import popupPicker from "../components/popup-picker.vue"; import chooseCommunity from "../api/chooseCommunity"; +import { countPartner } from "@/common/util"; export default { components: { Toast, @@ -158,9 +159,10 @@ export default { this.$vux.toast.text("请选择一个小区", "middle"); return; } - this.$router.push({ - name: "首页" - }); + history.go(-1) + // this.$router.push({ + // name: "首页" + // }); }, //确定时保存记录 confirm(list) { @@ -281,10 +283,11 @@ export default { item.housingEstateId + "&" + item.housingEstateName ); this.estateId = item.housingEstateId; - this.countPartner(); - this.$router.push({ - name: "首页" - }); + countPartner(); + history.go(-1) + // this.$router.push({ + // name: "首页" + // }); }, ShareWenXin() { var merchantNo = this.merchantNo; @@ -307,18 +310,7 @@ export default { }); }); }, - countPartner() { - return new Promise((resolve, reject) => { - var params = { - buryingPointType: 0, - housingEstateId: this.estateId, - timeStr: this.getTime(Date.now()) - }; - homeApi.countPartner(params).then(res => { - resolve(); - }); - }); - }, + getTime(time) { let date = new Date(time); let year = date.getFullYear(); diff --git a/src/view/home.vue b/src/view/home.vue index 0350483..81f0a0b 100644 --- a/src/view/home.vue +++ b/src/view/home.vue @@ -152,6 +152,7 @@ import { Alert, Toast, Loading } from "vux"; import {isEmpty} from "@/common/util"; import routerFooter from "../components/nav-bottom"; import popupPicker from "../components/popup-picker.vue"; +import { countPartner } from "@/common/util"; import Qs from "qs"; //引入BMap import BMap from "BMap"; @@ -382,6 +383,7 @@ export default { }); } else if (data.userAddress.type == 0) { this.getGoodsList(); + countPartner(); } else if (data.userAddress.type == -1) { // this.state = -1; this.$vux.alert.show({ @@ -528,6 +530,7 @@ export default { : this.defaultCommunity; if(!isEmpty(this.estateId)){ localStorage.setItem("estate",this.estateId + "&" + this.defaultCommunity); + countPartner(); } } @@ -539,7 +542,6 @@ mounted() { // this.getLocation(); this.getId(); let eId = this.$route.query.estateId; - this.wxLocation({}); if (!isEmpty(eId) ) { if (!isEmpty(this.estateId)) { this.showLoading = true;