ソースを参照

排除星期天

tomatozq 5 年 前
コミット
ce3bf610d3

+ 11 - 16
web/src/main/java/com/jpsoft/smart/modules/mobile/controller/IndividualLogApiController.java

@@ -128,25 +128,20 @@ public class IndividualLogApiController {
 
             int i = 0;
 
-            Date now = new Date();
+            DateTime today = DateTime.now().withTimeAtStartOfDay();
 
-            while (curTemperature < 37) {
+            //最多查一年
+            while (curTemperature < 37 && i<=365) {
+                DateTime startTime = today.minusDays(i+1);
+                DateTime endTime = today.minusDays(i);
 
-                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-
-                Calendar rightNow = Calendar.getInstance();
-                rightNow.setTime(now);
-                rightNow.add(Calendar.DATE, -(i+1));
-                Date dt1 = rightNow.getTime();
-                String startDate = sdf.format(dt1);
-
-                Calendar rightNow2 = Calendar.getInstance();
-                rightNow2.setTime(now);
-                rightNow2.add(Calendar.DATE, -i);
-                Date dt2 = rightNow2.getTime();
-                String endDate = sdf.format(dt2);
+                //先排除星期天
+                if (startTime.getDayOfWeek()==7){
+                    i++;
+                    continue;
+                }
 
-                PersonDeviceFilterLog item = personDeviceFilterLogService.findByPersonOrderTemperature(person.getId(), startDate, endDate);
+                PersonDeviceFilterLog item = personDeviceFilterLogService.findByPersonOrderTemperature(person.getId(), startTime.toString("yyyy-MM-dd"), endTime.toString("yyyy-MM-dd"));
 
                 if(item!=null){
                     curTemperature = item.getTemperature().doubleValue();