zoukankan      html  css  js  c++  java
  • 获取近一周,近两周,本月,上个月

        @RequestMapping(value = "/date", method = RequestMethod.GET)
        public String agentHouseClick(DataRangRequest dataRangRequest,Model model){
            
            String[] days = dataRangService.computeTimeRange(dataRangRequest.getTimeRange());
    		model.addAttribute("days",days);
            return "xxx";
        }
    	public interface DataRangService {
      
          String[] computeTimeRange(Integer timeRange);
       
        }
    
    	@Service
    	public class DataRangServiceImpl implements DataRangService {
    		@Override
    		public String[] computeTimeRange(Integer timeRange){
    			Calendar startTime = Calendar.getInstance(TimeZone.getTimeZone("GMT+08:00"));
    			Calendar endTime = Calendar.getInstance(TimeZone.getTimeZone("GMT+08:00"));
    			if(timeRange==1){   //近一周
    				startTime.add(Calendar.DATE,-7);
    				return computeDate(startTime,endTime);
    			}else if(timeRange==2){ //近二周
    				startTime.add(Calendar.DATE,-14);
    				return computeDate(startTime,endTime);
    			}else if(timeRange==3){ //本月
    				startTime.set(Calendar.DAY_OF_MONTH,1);
    				return computeDate(startTime,endTime);
    			}else if(timeRange==4){ //上个月
    				startTime.add(Calendar.MONTH,-1);
    				startTime.set(Calendar.DAY_OF_MONTH,1);
    				endTime.set(Calendar.DAY_OF_MONTH,0);
    				return computeDate(startTime,endTime);
    			}
    			return null;
    		}
    		private String[] computeDate(Calendar startTime,Calendar endTime){
    			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    			String day = sdf.format(startTime.getTime());
    			List<String> days = new LinkedList<>();
    			days.add(day);
    			do{
    				startTime.add(Calendar.DAY_OF_YEAR,1);
    				days.add(sdf.format(startTime.getTime()));
    			}while(!(startTime.get(Calendar.YEAR)==endTime.get(Calendar.YEAR)&&startTime.get(Calendar.MONTH)
    			==endTime.get(Calendar.MONTH)&&startTime.get(Calendar.DAY_OF_MONTH)==endTime.get(Calendar.DAY_OF_MONTH)));
    			String[] dayArr = days.toArray(new String[0]);
    			return dayArr;
    		}
    	}
    

      

  • 相关阅读:
    美文:人生如果是十分
    收藏若干敏捷开发的博文充电
    推荐 xiaotie 的开源GIS专题文章索引
    影像融合操作的几种途径
    开源版多用户博客系统
    软件的架构与设计模式之模式的种类介绍
    开源摄影测量与遥感处理软件OSSIM简介
    从面向对象到模式再到真正的面向对象
    MapGuide和MapServer的一些资源
    ArcInfo常用命令整理
  • 原文地址:https://www.cnblogs.com/likeyou1/p/8608493.html
Copyright © 2011-2022 走看看