128 lines
3.4 KiB
TypeScript
128 lines
3.4 KiB
TypeScript
import dayjs from 'dayjs'
|
|
|
|
interface Date{
|
|
day?: number;
|
|
list?: Array<any>;
|
|
}
|
|
|
|
interface GetDate{
|
|
date: Array<Array<Date>>;
|
|
year: number;
|
|
yue: number;
|
|
day: number;
|
|
zhou: number;
|
|
start: string;
|
|
end: string;
|
|
}
|
|
|
|
export function getdate(yue?: number): GetDate{
|
|
let now = dayjs()
|
|
if(yue != undefined){
|
|
now = now.month(now.month() + yue);
|
|
}
|
|
yue = now.month() + 1;
|
|
const day = now.date() // 当前天
|
|
const zhou = now.day(); // 当前周
|
|
now = now.date(1)
|
|
const week = now.day(); // 第一天是星期几
|
|
now = now.month(now.month() + 1);
|
|
now = now.date(0);
|
|
const month = now.date(); // 当前月有几天
|
|
const year = now.year()
|
|
const start = year + "-" + yue + '-01';
|
|
const end = year + "-" + yue + '-' + month;
|
|
console.log(day,week,month)
|
|
let i = 0;
|
|
let w = 0;
|
|
|
|
|
|
const date: Array<Array<Date>> = [[]];
|
|
|
|
while(i < month){
|
|
|
|
for(w = 0; w < week; w++){
|
|
date[0][w] = {};
|
|
}
|
|
i++;
|
|
const zhou = Math.floor((i + w - 1) / 7)
|
|
const d = {
|
|
day: i,
|
|
list: []
|
|
}
|
|
if(date[zhou] == undefined){
|
|
date[zhou] = []
|
|
}
|
|
date[zhou].push(d)
|
|
}
|
|
while(date[date.length - 1].length < 7){
|
|
date[date.length - 1].push({})
|
|
}
|
|
console.log(date)
|
|
|
|
return {date, year, yue, day, zhou, start, end};
|
|
}
|
|
|
|
|
|
export function getweek(zhou?: number){
|
|
let now = dayjs()
|
|
if(zhou != undefined){
|
|
now = now.day(now.day() + (zhou * 6));
|
|
}
|
|
const yue = (now.month() + 1 < 10 ? '0' + (now.month() + 1) : (now.month() + 1));
|
|
const day = now.date() // 当前天
|
|
zhou = now.day(); // 当前周几
|
|
const year = now.year()
|
|
const startd = now.day(1).date();
|
|
const start = `${year}-${yue}-${startd}`
|
|
interface Date{
|
|
day: string;
|
|
list?: Array<any>;
|
|
}
|
|
const date: Array<Date> = [];
|
|
|
|
for(let i = 0; i < 7; i++){
|
|
console.log(i);
|
|
now = now.day(i + 1)
|
|
date[i] = {day: ""};
|
|
date[i].day = now.year() + "-" + (now.month() + 1 < 10 ? '0' + (now.month() + 1) : (now.month() + 1)) + "-" + (now.date() < 10 ? '0' + now.date() : now.date())
|
|
date[i].list = []
|
|
for(let j = 0;j < 24; j++){
|
|
date[i].list?.push({
|
|
start:"",
|
|
num:"",
|
|
title: "",
|
|
time:""
|
|
})
|
|
}
|
|
}
|
|
const end = `${now.year()}-${(now.month() + 1 < 10 ? '0' + (now.month() + 1) : (now.month() + 1))}-${now.date()}`
|
|
console.log(date)
|
|
return {date, year, yue, day, zhou, start, end}
|
|
}
|
|
|
|
|
|
export function getDay(date: string){
|
|
const now = dayjs(date)
|
|
console.log(now.date())
|
|
return now.date();
|
|
}
|
|
|
|
export function gethour(date: string){
|
|
const now = dayjs(date)
|
|
console.log(now.hour(), now.date(), now.minute())
|
|
return now.hour();
|
|
}
|
|
|
|
export function getminute(date: string){
|
|
const now = dayjs(date)
|
|
// console.log(now.hour(), now.date(), now.minute())
|
|
return now.minute();
|
|
}
|
|
|
|
export function gettime(date: string, num: number){
|
|
let now = dayjs(date)
|
|
const start = `${now.hour() > 9 ? now.hour() : '0' + now.hour()}:${now.minute() > 9 ? now.minute() : '0' + now.minute()}`
|
|
now = now.minute(now.minute() + num);
|
|
const end = `${now.hour() > 9 ? now.hour() : '0' + now.hour()}:${now.minute() > 9 ? now.minute() : '0' + now.minute()}`
|
|
return start + "-" + end;
|
|
} |