fix: 修正查询条件

dev
huangfeng 1 year ago
parent d07112b387
commit 574881f87a

@ -100,6 +100,7 @@ public class DataServiceImpl implements DataService {
if (dayPerPage < 1) {
dayPerPage = 1;
}
ConditionModel newmodel = new ConditionModel();
// 处理开始和结束时间
Date end = model.getEndTime();
@ -108,22 +109,23 @@ public class DataServiceImpl implements DataService {
}
end = DateUtil.addDay(end, 1);
end = DateUtil.getDayZero(end);
model.setEndTime(end);
if (model.getStartTime() != null) {
totalDays = DateUtil.getDifferenceInDays(model.getStartTime(), model.getEndTime());
totalDays = DateUtil.getDifferenceInDays(model.getStartTime(), end);
}
if (model.getPageNum() > 1) {
int p = model.getPageNum() - 1;
end = DateUtil.addDay(end, -dayPerPage * p);
}
model.setEndTime(end);
newmodel.setEndTime(end);
Date start = DateUtil.addDay(end, -dayPerPage);
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());
} else {
@ -156,7 +158,7 @@ public class DataServiceImpl implements DataService {
sqlWhere = sqlWhere + " AND " + timeField + " >= '" + DateUtil.format(model.getStartTime()) + "'";
}
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 sqlLimit = "";

Loading…
Cancel
Save