import moment from 'moment';

/**
 * 获取日期所在年份、月份、季度、星期的第一天和最后一天
 * @param dimension 维度 ----- 年份year、月份month、季度quarter、星期week、天day
 * @param showDetail 如果为true，返回的格式为YYYY-MM-DD HH:mm:ss，如果为false，返回的格式为YYYY-MM-DD，默认为false
 * @param date 日期，默认为当前日期，格式为YYYY-MM-DD，如2023-01-01
 */
export const GetBeginAndEndDate = (dimension: "year" | "month" | "quarter" | "week" | "day", showDetail = false, date = moment(new Date()).format("YYYY-MM-DD")) => {
  let formatStr = showDetail ? "YYYY-MM-DD HH:mm:ss" : "YYYY-MM-DD"
  let startTime = moment(date).startOf(dimension).format(formatStr);
  let endTime = moment(date).endOf(dimension).format(formatStr);
  return {
    startTime,
    endTime
  }
}