feat(视图): 同比环比

This commit is contained in:
junjie 2021-12-24 14:48:16 +08:00
parent a67ffcc413
commit dc0a280366

View File

@ -600,50 +600,54 @@ public class ChartViewService {
} }
private String calcLastTime(String cTime, String type, String dateStyle) throws Exception { private String calcLastTime(String cTime, String type, String dateStyle) throws Exception {
String lastTime = null; try {
Calendar calendar = Calendar.getInstance(); String lastTime = null;
if (StringUtils.equalsIgnoreCase(type, ChartConstants.YEAR_MOM)) { Calendar calendar = Calendar.getInstance();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy"); if (StringUtils.equalsIgnoreCase(type, ChartConstants.YEAR_MOM)) {
Date date = simpleDateFormat.parse(cTime); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy");
calendar.setTime(date); Date date = simpleDateFormat.parse(cTime);
calendar.add(Calendar.YEAR, -1); calendar.setTime(date);
lastTime = simpleDateFormat.format(calendar.getTime()); calendar.add(Calendar.YEAR, -1);
} else if (StringUtils.equalsIgnoreCase(type, ChartConstants.MONTH_MOM)) { lastTime = simpleDateFormat.format(calendar.getTime());
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM"); } else if (StringUtils.equalsIgnoreCase(type, ChartConstants.MONTH_MOM)) {
Date date = simpleDateFormat.parse(cTime); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM");
calendar.setTime(date); Date date = simpleDateFormat.parse(cTime);
calendar.add(Calendar.MONTH, -1); calendar.setTime(date);
lastTime = simpleDateFormat.format(calendar.getTime()); calendar.add(Calendar.MONTH, -1);
} else if (StringUtils.equalsIgnoreCase(type, ChartConstants.YEAR_YOY)) { lastTime = simpleDateFormat.format(calendar.getTime());
SimpleDateFormat simpleDateFormat = null; } else if (StringUtils.equalsIgnoreCase(type, ChartConstants.YEAR_YOY)) {
if (StringUtils.equalsIgnoreCase(dateStyle, "y_M")) { SimpleDateFormat simpleDateFormat = null;
simpleDateFormat = new SimpleDateFormat("yyyy-MM"); if (StringUtils.equalsIgnoreCase(dateStyle, "y_M")) {
} else if (StringUtils.equalsIgnoreCase(dateStyle, "y_M_d")) { simpleDateFormat = new SimpleDateFormat("yyyy-MM");
simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); } else if (StringUtils.equalsIgnoreCase(dateStyle, "y_M_d")) {
simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
}
Date date = simpleDateFormat.parse(cTime);
calendar.setTime(date);
calendar.add(Calendar.YEAR, -1);
lastTime = simpleDateFormat.format(calendar.getTime());
} else if (StringUtils.equalsIgnoreCase(type, ChartConstants.DAY_MOM)) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date date = simpleDateFormat.parse(cTime);
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, -1);
lastTime = simpleDateFormat.format(calendar.getTime());
} else if (StringUtils.equalsIgnoreCase(type, ChartConstants.MONTH_YOY)) {
SimpleDateFormat simpleDateFormat = null;
if (StringUtils.equalsIgnoreCase(dateStyle, "y_M")) {
simpleDateFormat = new SimpleDateFormat("yyyy-MM");
} else if (StringUtils.equalsIgnoreCase(dateStyle, "y_M_d")) {
simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
}
Date date = simpleDateFormat.parse(cTime);
calendar.setTime(date);
calendar.add(Calendar.MONTH, -1);
lastTime = simpleDateFormat.format(calendar.getTime());
} }
Date date = simpleDateFormat.parse(cTime); return lastTime;
calendar.setTime(date); } catch (Exception e) {
calendar.add(Calendar.YEAR, -1); return cTime;
lastTime = simpleDateFormat.format(calendar.getTime());
} else if (StringUtils.equalsIgnoreCase(type, ChartConstants.DAY_MOM)) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date date = simpleDateFormat.parse(cTime);
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, -1);
lastTime = simpleDateFormat.format(calendar.getTime());
} else if (StringUtils.equalsIgnoreCase(type, ChartConstants.MONTH_YOY)) {
SimpleDateFormat simpleDateFormat = null;
if (StringUtils.equalsIgnoreCase(dateStyle, "y_M")) {
simpleDateFormat = new SimpleDateFormat("yyyy-MM");
} else if (StringUtils.equalsIgnoreCase(dateStyle, "y_M_d")) {
simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
}
Date date = simpleDateFormat.parse(cTime);
calendar.setTime(date);
calendar.add(Calendar.MONTH, -1);
lastTime = simpleDateFormat.format(calendar.getTime());
} }
return lastTime;
} }
private boolean checkDrillExist(List<ChartViewFieldDTO> xAxis, List<ChartViewFieldDTO> extStack, ChartViewFieldDTO dto, ChartViewWithBLOBs view) { private boolean checkDrillExist(List<ChartViewFieldDTO> xAxis, List<ChartViewFieldDTO> extStack, ChartViewFieldDTO dto, ChartViewWithBLOBs view) {