fix: 修正查询条件

dev
huangfeng 1 year ago
parent d07112b387
commit 574881f87a

@ -100,6 +100,7 @@ public class DataServiceImpl implements DataService {
if (dayPerPage < 1) { if (dayPerPage < 1) {
dayPerPage = 1; dayPerPage = 1;
} }
ConditionModel newmodel = new ConditionModel();
// 处理开始和结束时间 // 处理开始和结束时间
Date end = model.getEndTime(); Date end = model.getEndTime();
@ -108,22 +109,23 @@ public class DataServiceImpl implements DataService {
} }
end = DateUtil.addDay(end, 1); end = DateUtil.addDay(end, 1);
end = DateUtil.getDayZero(end); end = DateUtil.getDayZero(end);
model.setEndTime(end);
if (model.getStartTime() != null) { if (model.getStartTime() != null) {
totalDays = DateUtil.getDifferenceInDays(model.getStartTime(), model.getEndTime()); totalDays = DateUtil.getDifferenceInDays(model.getStartTime(), end);
} }
if (model.getPageNum() > 1) { if (model.getPageNum() > 1) {
int p = model.getPageNum() - 1; int p = model.getPageNum() - 1;
end = DateUtil.addDay(end, -dayPerPage * p); end = DateUtil.addDay(end, -dayPerPage * p);
} }
model.setEndTime(end); newmodel.setEndTime(end);
Date start = DateUtil.addDay(end, -dayPerPage); Date start = DateUtil.addDay(end, -dayPerPage);
if (model.getStartTime() == null || start.compareTo(model.getStartTime()) > 0) { if (model.getStartTime() == null || start.compareTo(model.getStartTime()) > 0) {
model.setStartTime(start); newmodel.setStartTime(start);
} else {
newmodel.setStartTime(model.getStartTime());
} }
page = this.doSqlData(sensor, points, model); page = this.doSqlData(sensor, points, newmodel);
page.setTotal(totalDays * model.getNumPerDay()); page.setTotal(totalDays * model.getNumPerDay());
} else { } else {
@ -156,7 +158,7 @@ public class DataServiceImpl implements DataService {
sqlWhere = sqlWhere + " AND " + timeField + " >= '" + DateUtil.format(model.getStartTime()) + "'"; sqlWhere = sqlWhere + " AND " + timeField + " >= '" + DateUtil.format(model.getStartTime()) + "'";
} }
if (model.getEndTime() != null) { if (model.getEndTime() != null) {
sqlWhere = sqlWhere + " AND " + timeField + " <= '" + DateUtil.format(model.getEndTime()) + "'"; sqlWhere = sqlWhere + " AND " + timeField + " < '" + DateUtil.format(model.getEndTime()) + "'";
} }
String sqlOrder = " ORDER BY " + timeField + " DESC"; String sqlOrder = " ORDER BY " + timeField + " DESC";
String sqlLimit = ""; String sqlLimit = "";

Loading…
Cancel
Save