JAVA實(shí)現(xiàn)按時(shí)間段查詢(xún)數(shù)據(jù)操作
html / jsp
<span style="vertical-align: -webkit-baseline-middle;font-size:16px;font-weight:bold;">開(kāi)始時(shí)間:</span> <input name="startTime" id="startTime" type="text" class="Wdate" onfocus="WdatePicker()" style="height: 34px; line-height: 34px; border-radius: 4px; border: 1px solid #ccc; font-size: 14px;"> <span class="ml10 mr8" style="font-size:16px;font-weight:bold;">結(jié)束時(shí)間: </span> <input name="endTime" id="endTime" type="text" class="Wdate" onfocus="WdatePicker()" style="height: 34px; line-height: 34px; border-radius: 4px; border: 1px solid #ccc; font-size: 14px;"> <input type="submit" class="btn btn-query" id="findTime" value="查詢(xún)" onClick="toFindTime();" style="float:none;"/>
js方法:
function timeCheckInfo(page,startTime,endTime,officeVal){
var startTime=$("#startTime").val();
var endTime=$("#endTime").val();
$.ajax({
url: "../../security/base/peoplesafeimg!findPortFolioByTime.action",
type: "post",
data:{
pagenum:page,
startTime:startTime,
endTime:endTime,
deptid:officeid, // 處室ID來(lái)源于默認(rèn)(頁(yè)面?zhèn)髦?和下拉框選擇 lenian 2018 06 29
depotid:depotid
},
dataType: "json",
success: function (data) {
//alert(JSON.stringify(data));
var dataset = data[0].result;
$(dataset).each(function(i,val) {
});
},
error:function(){
alert("查詢(xún)數(shù)據(jù)失敗")
}
});
}
PeoplesafeimgAction.java
/**
* @author lenian 2018 06 12
* 根據(jù)時(shí)間查詢(xún)?nèi)藛T畫(huà)像機(jī)務(wù)處、運(yùn)輸處、貨運(yùn)處工作量數(shù)據(jù)并展示
* @param page
* @param startTime
* @param endTime
* @return
*/
public String findPortFolioByTime(){
page.setPageNo(pagenum);
page = (Page<Map<String, Object>>) peopleSafeImgManager.getPortFolioByTime(page, startTime, endTime, deptid, depotid);
JSONArray jsonArray = JSONArray.fromObject(page);
renderTextJSONGBK(jsonArray.toString());
return null;
}
PeopleSafeImgManager.java
/**
* @author lenian 2018 06 12
* 根據(jù)時(shí)間查詢(xún)?nèi)藛T畫(huà)像機(jī)務(wù)處、運(yùn)輸處、貨運(yùn)處工作量數(shù)據(jù)并展示
* @param page
* @param startTime
* @param endTime
* @return
*/
@SuppressWarnings("unchecked")
public Page<Map<String, Object>> getPortFolioByTime(Page<Map<String, Object>> page, String startTime, String endTime, Long deptid, Long depotid) {
String depotName = null;
// 判斷當(dāng)站段登錄時(shí),傳到后臺(tái)的depotid為空
if (depotid == null) {
Long depot_id = SessionManager.getDepartmentId();
Department department = departmentManager.getObjectById(depot_id);
depotName = department.getName();//站段
} else if (depotid != null && depotid != 0) { // 當(dāng)處室登錄,選擇其中某個(gè)站段進(jìn)行了查詢(xún)
Department department = departmentManager.getObjectById(depotid);
depotName = department.getName();//站段
}
// 根據(jù)處室將數(shù)據(jù)區(qū)分開(kāi)來(lái) lenian 2018 06 25
Department deparent = departmentManager.getObjectById(deptid);
// 當(dāng)處室登錄,并且depotid==0,表示查詢(xún)所有(注:以上操作可示為參數(shù)的準(zhǔn)備)
String sql;
if (depotid != null && depotid == 0) {
sql = "select spp.id,\n" +
" sei.name,\n" +
" spp.id_card,\n" +
" to_char(spp.time, 'yyyy-MM-dd') time,\n" +
" spp.ins,\n" +
" spp.outs,\n" +
" spp.score,\n" +
" spp.minute,\n" +
" spp.column_number,\n" +
" spp.channel_number\n" +
" from Security_Portrait_Portfolio spp, Security_Employee_Info sei\n" +
" where spp.id_card = sei.idcard_num(+) and sei.office_name = '"+ deparent.getName() +"'";
} else { // 1、當(dāng)處室登錄,選擇其中某個(gè)站段進(jìn)行了查詢(xún); 2、站段登錄,獲取當(dāng)前站段ID
sql = "select spp.id,\n" +
" sei.name,\n" +
" spp.id_card,\n" +
" to_char(spp.time, 'yyyy-MM-dd') time,\n" +
" spp.ins,\n" +
" spp.outs,\n" +
" spp.score,\n" +
" spp.minute,\n" +
" spp.column_number,\n" +
" spp.channel_number\n" +
" from Security_Portrait_Portfolio spp, Security_Employee_Info sei\n" +
" where spp.id_card = sei.idcard_num(+) and spp.depot = '"+ depotName +"' and sei.office_name = '"+ deparent.getName() +"'";
}
if (StrUtils.stringQuery(startTime) && StrUtils.stringQuery(endTime)) {
sql += "and to_char(spp.time, 'yyyy-MM-dd') between '"+ startTime +"' and '"+ endTime +"'";
}
sql += "order by spp.create_time desc";
SQLQuery query = dao.getSession().createSQLQuery(sql);
Integer count = Integer.parseInt(dao.getSession()
.createSQLQuery("select count(1) from (" + sql + ")")
.uniqueResult().toString());
if (page.isAutoCount()) {
page.setTotalCount(count);
}
if (page.isFirstSetted()) {
query.setFirstResult(page.getFirst());
}
if (page.isPageSizeSetted()) {
query.setMaxResults(page.getPageSize());
}
query.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);
page.setResult(query.list());
return page;
}
補(bǔ)充知識(shí):Java 實(shí)現(xiàn)判斷時(shí)間是否在某個(gè)區(qū)間內(nèi)(如是否在23點(diǎn)到凌晨4點(diǎn)之間)
最近遇到一個(gè)需求,就是判斷一個(gè)時(shí)間是否在23點(diǎn)到凌晨4點(diǎn)之間,這個(gè)時(shí)間段是可以修改的。在網(wǎng)上收了一下發(fā)現(xiàn)沒(méi)有符合我的需求的,就自己琢磨了一下,感覺(jué)這樣算還是可以的。

思路:
如上圖的那個(gè)圓形的鐘表,可以從開(kāi)始時(shí)間剪斷,把鐘表的環(huán)鋪平,此時(shí)就變成了一個(gè)刻度尺,這樣就好比較了
代碼塊
測(cè)試代碼:
public static void main(String[] args) {
int start = 23;
int end = 4;
int emp = 24 - start;
for (int d = 0; d < 24; d++) {
System.out.println((start + emp) % 24 + "\t" + (d + emp) % 24 + "\t" + (end + emp) % 24);
}
}
輸出:
0 1 5 0 2 5 0 3 5 0 4 5 0 5 5 0 6 5 0 7 5 0 8 5 0 9 5 0 10 5 0 11 5 0 12 5 0 13 5 0 14 5 0 15 5 0 16 5 0 17 5 0 18 5 0 19 5 0 20 5 0 21 5 0 22 5 0 23 5 0 0 5
以上這篇JAVA實(shí)現(xiàn)按時(shí)間段查詢(xún)數(shù)據(jù)操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java靜態(tài)代理與動(dòng)態(tài)代理案例詳解
這篇文章主要介紹了Java靜態(tài)代理與動(dòng)態(tài)代理案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07
springboot 中 thymeleaf 常用的語(yǔ)法完整實(shí)例
在 Spring Boot 項(xiàng)目中,Thymeleaf 是一個(gè)常用的模板引擎,它提供了豐富的語(yǔ)法來(lái)動(dòng)態(tài)渲染 HTML 頁(yè)面,下面給大家介紹springboot 中 thymeleaf 常用的語(yǔ)法完整實(shí)例,感興趣的朋友一起看看吧2024-03-03
Java核心庫(kù)實(shí)現(xiàn)AOP過(guò)程
給大家分享一下利用Java核心庫(kù)實(shí)現(xiàn)簡(jiǎn)單的AOP的經(jīng)驗(yàn)分享和教學(xué),需要的讀者們參考下吧。2017-12-12
Java中的世界時(shí)區(qū)如何自動(dòng)計(jì)算及生成?
在?Java?中,處理時(shí)區(qū)和時(shí)間計(jì)算是一個(gè)非常常見(jiàn)的需求,尤其是在涉及全球應(yīng)用時(shí),Java?提供了一些強(qiáng)大的?API?來(lái)處理世界時(shí)區(qū)(如?java.time?包),下面將介紹如何基于?Java?自動(dòng)計(jì)算時(shí)區(qū)并生成相應(yīng)的時(shí)間2025-01-01
SpringBoot實(shí)現(xiàn)圖片防盜鏈功能
出于安全考慮,我們需要后端返回的圖片只允許在某個(gè)網(wǎng)站內(nèi)展示,不想被爬蟲(chóng)拿到圖片地址后被下載,或者,不想瀏覽器直接訪(fǎng)問(wèn)圖片鏈接,所以本文將給大家介紹SpringBoot實(shí)現(xiàn)圖片防盜鏈功能,需要的朋友可以參考下2024-04-04
使用Maven Archetype插件構(gòu)建Maven工程原型模板的實(shí)例
下面小編就為大家分享一篇使用Maven Archetype插件構(gòu)建Maven工程原型模板的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助2017-12-12

