|
|
@ -3,6 +3,7 @@ package com.epmet.util; |
|
|
|
import com.epmet.commons.tools.utils.DateUtils; |
|
|
|
import lombok.Data; |
|
|
|
|
|
|
|
import java.util.Calendar; |
|
|
|
import java.util.Date; |
|
|
|
|
|
|
|
public class DimIdGenerator { |
|
|
@ -25,6 +26,19 @@ public class DimIdGenerator { |
|
|
|
return DateUtils.format(date, DateUtils.DATE_PATTERN_YYYYMM); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 获取周维度ID ,每周的星期一为 周的开始 |
|
|
|
* @param date |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
public static String getWeekDimId(Date date) { |
|
|
|
String yyyy = DateUtils.format(date, DateUtils.DATE_PATTERN_YYYY); |
|
|
|
Calendar calendar = Calendar.getInstance(); |
|
|
|
calendar.setFirstDayOfWeek(Calendar.MONDAY); |
|
|
|
calendar.setTime(date); |
|
|
|
return yyyy.concat("W").concat(calendar.get(Calendar.WEEK_OF_YEAR)+""); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 获取季度维度ID |
|
|
|
* @param date |
|
|
@ -52,15 +66,16 @@ public class DimIdGenerator { |
|
|
|
DimIdBean dimIdBean = new DimIdBean(); |
|
|
|
dimIdBean.setDateId(getDateDimId(date)); |
|
|
|
dimIdBean.setMonthId(getMonthDimId(date)); |
|
|
|
dimIdBean.setWeekId(getWeekDimId(date)); |
|
|
|
dimIdBean.setQuarterId(getQuarterDimId(date)); |
|
|
|
dimIdBean.setYearId(getYearDimId(date)); |
|
|
|
//dimIdBean.setWeekId();
|
|
|
|
return dimIdBean; |
|
|
|
} |
|
|
|
|
|
|
|
public static void main(String[] args) { |
|
|
|
DimIdBean dimIdBean = getDimIdBean(new Date()); |
|
|
|
DimIdBean dimIdBean = getDimIdBean(DateUtils.stringToDate("2020-06-14",DateUtils.DATE_PATTERN)); |
|
|
|
System.out.println(dimIdBean); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
@Data |
|
|
|