BJUI實現每日資料彙總預設顯示某天的資料
阿新 • • 發佈:2018-12-10
背景:
使用定時任務每天0點查詢某張表的資料進行彙總到新的彙總表。
當在BJUI框架中點選某個許可權中時會跳到指定 的action。
在此action中會對資料進行查詢以及匯出。
當直接點選許可權列表時,即初始化載入時,不經過頁面的篩選條件,這裡是
searchTime。
此時在action中的doList下的ModelAnddView中加入引數
String searchTime
然後:
//餘額彙總預設查詢昨天的 Date today = new Date();//獲取當前日期 //獲取昨天日期 Date yesterday = new Date(today.getTime() - 86400000L);//86400000L;1天的時間=24小時 x 60分鐘 x 60秒 x 1000毫秒 單位是L。 SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd ");//設定日期格式 String yesterdayFormat=df.format(yesterday);// //如果是初始化時進來的,即不經過篩選條件進來的,那麼searchTime肯定為空,然後把格式化後的昨天存到引數裡 if(searchTime==null||!"".equals(searchTime)){ pageResult.getParam().put("searchTime", yesterdayFormat); pageResult.getExt().put("searchTime", yesterdayFormat); } //如果不為空,那麼就是通過晒選得到的頁面進來的,那麼將傳過來的searchTime放在引數裡 if(searchTime!=null&&!"".equals(searchTime)){ pageResult.getParam().put("searchTime", searchTime); pageResult.getExt().put("searchTime", searchTime); }
然後在mapper裡面:
<iftest="searchTime!= null and searchTime != ''">and DATE_FORMAT(bmf.recordTime,'%y-%m-%d') = DATE_FORMAT( #{searchTime},'%y-%m-%d')</if>
匯出Excel功能:
在@RequestMapping("/exportMerchantBalanceSumReport")下:
方法名引數下加上:
String searchTime
然後:
Date today = new Date(); Date yesterday = new Date(today.getTime() - 86400000L);//86400000L,1天的時間=24小時 x 60分鐘 x 60秒 x 1000毫秒 單位是L。 SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd ");//設定日期格式 String yesterdayFormat=df.format(yesterday); //判空同上 if(StringUtils.isBlank(searchTime)) { param.put("searchTime", yesterdayFormat); pageResult.getExt().put("searchTime", yesterdayFormat); multiFuzzyQuery.add(true); }else { multiFuzzyQuery.add(false); } if(StringUtils.isNotBlank(searchTime)) { param.put("searchTime", searchTime); pageResult.getExt().put("searchTime", searchTime); multiFuzzyQuery.add(true); }else { multiFuzzyQuery.add(false); }
jsp頁面:
<label>日期:
<input type="text" name="searchTime" data-toggle="datepicker" data-pattern="yyyy-MM-dd" value="${pageResult.ext.searchTime}" size="20" placeholder="請輸入時間" >
</label>