123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- const api = require('../../../utils/api.js');
- Page({
- data: {
- year: 0,
- month: 0,
- date: ['日', '一', '二', '三', '四', '五', '六'],
- dateArr: [],
- isToday: 0,
- isTodayWeek: false,
- todayIndex: 0
- },
- onLoad: function () {
- wx.showLoading({
- title: '正在加载',
- })
- let now = new Date();
- let year = now.getFullYear();
- let month = now.getMonth() + 1;
- this.dateInit();
- this.req(year + '-' + month + '-' + now.getDate())
- this.setData({
- year: year,
- month: month,
- isToday: '' + year + month + now.getDate()
- })
-
- },
- dateInit: function (setYear, setMonth) {
- //全部时间的月份都是按0~11基准,显示月份才+1
- let dateArr = []; //需要遍历的日历数组数据
- let arrLen = 0; //dateArr的数组长度
- let now = setYear ? new Date(setYear, setMonth) : new Date();
- let year = setYear || now.getFullYear();
- let nextYear = 0;
- let month = setMonth || now.getMonth(); //没有+1方便后面计算当月总天数
- let nextMonth = (month + 1) > 11 ? 1 : (month + 1);
- let startWeek = new Date(year + '/' + (month + 1) + '/' + 1).getDay();
- // let startWeek = new Date(year + ',' + (month + 1) + ',' + 1).getDay(); //目标月1号对应的星期
- let dayNums = new Date(year, nextMonth, 0).getDate(); //获取目标月有多少天
- let obj = {};
- let num = 0;
- if (month + 1 > 11) {
- nextYear = year + 1;
- dayNums = new Date(nextYear, nextMonth, 0).getDate();
- }
- arrLen = startWeek + dayNums;
- for (let i = 0; i < arrLen; i++) {
- if (i >= startWeek) {
- num = i - startWeek + 1;
- obj = {
- isToday: '' + year + (month + 1) + num,
- dateNum: num,
- weight: 5
- }
- } else {
- obj = {};
- }
- dateArr[i] = obj;
- }
- this.setData({
- dateArr: dateArr
- })
- let nowDate = new Date();
- let nowYear = nowDate.getFullYear();
- let nowMonth = nowDate.getMonth() + 1;
- let nowWeek = nowDate.getDay();
- let getYear = setYear || nowYear;
- let getMonth = setMonth >= 0 ? (setMonth + 1) : nowMonth;
- if (nowYear == getYear && nowMonth == getMonth) {
- this.setData({
- isTodayWeek: true,
- todayIndex: nowWeek
- })
- } else {
- this.setData({
- isTodayWeek: false,
- todayIndex: -1
- })
- }
- },
- lastMonth: function () {
- //全部时间的月份都是按0~11基准,显示月份才+1
- let year = this.data.month - 2 < 0 ? this.data.year - 1 : this.data.year;
- let month = this.data.month - 2 < 0 ? 11 : this.data.month - 2;
- this.setData({
- year: year,
- month: (month + 1)
- })
- this.dateInit(year, month);
- },
- nextMonth: function () {
- //全部时间的月份都是按0~11基准,显示月份才+1
- let year = this.data.month > 11 ? this.data.year + 1 : this.data.year;
- let month = this.data.month > 11 ? 0 : this.data.month;
- this.setData({
- year: year,
- month: (month + 1)
- })
- this.dateInit(year, month);
- },
- check(e){
- wx.showLoading({
- title: '正在加载',
- })
- this.setData({
- isToday: e.currentTarget.dataset.year + '' + e.currentTarget.dataset.month + '' + e.currentTarget.dataset.day
- })
- this.req(e.currentTarget.dataset.year + '-' + e.currentTarget.dataset.month + '-' + e.currentTarget.dataset.day)
- },
- req(time){
- let that=this
- wx.request({
- url: api.getAccessInfo,
- method: 'GET',
- data: { 'loginId': wx.getStorageSync('loginId'), 'time': time },
- success(res) {
- wx.hideLoading()
- if (res.data.data.length==0){
- that.setData({
- dataList: res.data.data
- })
- return false
- }
- for (let index in res.data.data){
- var date = new Date(res.data.data[index].openTime);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
- var h = date.getHours() < 10 ? '0' + date.getHours()+':' : date.getHours() + ':';
- var m = date.getMinutes() < 10 ? '0' + date.getMinutes()+':' : date.getMinutes() + ':';
- var s = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds();
- res.data.data[index].openTime = h + m + s;
- }
- that.setData({
- dataList: res.data.data
- })
- }
- })
- }
- })
|