| | |
| | | Integer regionCode; |
| | | |
| | | /* |
| | | * 地区类型 0为市内城市,1为省内城市,2为28城市 |
| | | * 地区类型 city为市内城市,province为省内城市,28为28城市 |
| | | * */ |
| | | String regionType; |
| | | |
| | | /* |
| | | * 对比类型,0为同比 1为环比 |
| | | * 对比类型,yoy为同比 mom为环比 |
| | | * */ |
| | | String comparisonType; |
| | | |
| | |
| | | @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") |
| | | Date endDate; |
| | | |
| | | /* |
| | | * 对比开始时间 |
| | | * */ |
| | | Date comparisonStartDate; |
| | | |
| | | /* |
| | | * 对比结束时间 |
| | | * */ |
| | | Date comparisonEndDate; |
| | | |
| | | public boolean valid() { |
| | | //校验地区类型对应的地区码 |
| | | if(regionType==null||comparisonType==null) |
| | |
| | | Date date = DateUtils.getDate(time, "yyyy-MM"); |
| | | startDate = DateUtils.getFirstDayOfMonth(date); |
| | | endDate = DateUtils.getLastDayOfMonth(date); |
| | | return true; |
| | | } |
| | | |
| | | if(dateType.equals(Constants.YEAR)){ |
| | | Date date = DateUtils.getDate(time, "yyyy"); |
| | | startDate = DateUtils.getFirstDayOfYear(date); |
| | | endDate = DateUtils.getLastDayOfYear(date); |
| | | return true; |
| | | } |
| | | |
| | | if(startDate!=null&&endDate!=null) |
| | | return true; |
| | | if(startDate==null||endDate==null) |
| | | return false; |
| | | |
| | | return false; |
| | | calculateComparisonDate(); |
| | | |
| | | return true; |
| | | } |
| | | |
| | | public static void main(String[] args) { |
| | | |
| | | /** |
| | | * @Description: 计算对比时间 |
| | | * @Param: [startDate, endDate] |
| | | * @return: void |
| | | * @Author: 陈凯裕 |
| | | * @Date: 2022/1/14 |
| | | */ |
| | | private void calculateComparisonDate(){ |
| | | if(comparisonType.equals(Constants.MOM)){ |
| | | comparisonStartDate = DateUtils.addMonths(startDate,-1); |
| | | comparisonEndDate = DateUtils.addMonths(endDate,-1); |
| | | }else{ |
| | | comparisonStartDate = DateUtils.addMonths(startDate,-12); |
| | | comparisonEndDate = DateUtils.addMonths(endDate,-12); |
| | | } |
| | | } |
| | | } |