//月份始末key
private static final String BM = "beginOfMonth";
private static final String EM = "endOfMonth";
/**
* 获取十二个月份的统计时间区间.
*
* @param statistTime 统计时间 2021
* @return list
*/
private List<Map<String, String>> getMonthDate(String statistTime) {
List<Map<String, String>> resList = new ArrayList<>();
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
Calendar c = Calendar.getInstance();
int year = Integer.parseInt(statistTime);
Date startDate = sdf.parse(year + "-01");
Date endDate = sdf.parse(year + "-12");
c.setTime(startDate);
while (c.getTime().compareTo(endDate) <= 0) {
String time = sdf.format(c.getTime());
c.add(Calendar.MONTH, 1);
String beginOfMonth = DateUtil.format(DateUtil.beginOfMonth(sdf.parse(time)).toJdkDate(), "yyyy-MM-dd HH:mm:ss");
String endOfMonth = DateUtil.format(DateUtil.endOfMonth(sdf.parse(time)).toJdkDate(), "yyyy-MM-dd HH:mm:ss");
Map<String, String> resMap = new LinkedHashMap<>();
resMap.put(BM, beginOfMonth);
resMap.put(EM, endOfMonth);
resList.add(resMap);
}
} catch (ParseException e) {
LOGGER.error("日期转化异常:", e);
}
return resList;
}
网友评论