1.取消零点清空天气列表,改成每次查询的时候判断是否是当天查询的。如果不是则去查询天气并写入数据库中。
authorkfl_614 <kfl_614@163.com>
Sat, 11 Apr 2020 09:18:50 +0000 (17:18 +0800)
committerkfl_614 <kfl_614@163.com>
Sat, 11 Apr 2020 09:18:50 +0000 (17:18 +0800)
app/src/main/java/com/ic/work/MainActivity.java
app/src/main/java/com/ic/work/WorkService.java
app/src/main/java/com/ic/work/hardware/BeforeDawnRunnable.java
app/src/main/java/com/ic/work/weather/WeatherDBRun.java
app/version_code.properties

index 26d5ca0..aaf58f7 100644 (file)
@@ -8,10 +8,12 @@ import android.os.Handler;
 import android.widget.Button;
 
 import com.ic.work.hardware.BeforeDawnRunnable;
+import com.ic.work.utils.IcLog;
 import com.ic.work.utils.ServiceUtil;
 import com.ic.work.weather.LocationState;
 import com.ic.work.weather.WeatherHelper;
 
+import org.threeten.bp.Duration;
 import org.threeten.bp.OffsetDateTime;
 import org.threeten.bp.ZoneId;
 import org.threeten.bp.format.DateTimeFormatter;
@@ -39,22 +41,11 @@ public class MainActivity extends AppCompatActivity {
         context = this;
         app =(WorkServiceApp) getApplication();
 
-        /**OffsetDateTime time = OffsetDateTime.now(ZoneId.systemDefault()).plusDays(1);
-
-        ThreadPoolManager.getInstance().execute(new BeforeDawnRunnable(
-                app.getApplicationContext(),
-                app.getRepository(),
-                app.getWeatherRepository(),
-                11000));
-
-        new Handler().postDelayed(new Runnable() {
-            @Override
-            public void run() {
-                WeatherHelper  weather = new WeatherHelper();
-                LocationState  state = new LocationState(null,true,"深圳市");
-                weather.queryWeatherServerInfo(app.getWeatherRepository(),state);
-            }
-        },10000);**/
+        OffsetDateTime now = OffsetDateTime.now(ZoneId.systemDefault());
+        OffsetDateTime old = OffsetDateTime.parse("2020-04-11T10:19:16.341+08:00");
+
+        Duration interval = Duration.between(old,now);
+        IcLog.i(TAG,"interval: "+interval.toDays());
     }
 
 
index e111994..6d35a9b 100644 (file)
@@ -283,7 +283,6 @@ public class WorkService extends Service {
         ThreadPoolManager.getInstance().execute(new BeforeDawnRunnable(
                 mApp.getApplicationContext(),
                 mApp.getRepository(),
-                mApp.getWeatherRepository(),
                 intent.getIntExtra(PED_TOTAL_KEY, 0)));
     }
 }
index 818afdb..c80e92d 100644 (file)
@@ -11,21 +11,15 @@ public class BeforeDawnRunnable extends PedBaseRunnable implements Runnable {
     private static final String TAG = "BeforeDawnRunnable";
 
     private int mTotalPed;
-    private WeatherInjection weatherInjection;
 
-    public BeforeDawnRunnable(Context context, PedInjection pedInjection, WeatherInjection weatherInjection, int totalPed) {
+    public BeforeDawnRunnable(Context context, PedInjection pedInjection, int totalPed) {
         super(context, pedInjection);
         this.mTotalPed = totalPed;
-        this.weatherInjection = weatherInjection;
     }
 
     @Override
     public void run() {
 
-        if(weatherInjection != null){
-            weatherInjection.deleteDBWeatherDate();
-        }
-
         IcLog.i(TAG, "Before Ped Count" + mTotalPed);
 
         updateCountDB(mTotalPed, getFrontOffsetDateTime());
index 5db44d5..fe03e57 100644 (file)
@@ -7,8 +7,9 @@ import com.ic.work.event.WeatherAgainEvent;
 import com.ic.work.event.WeatherResultEvent;
 
 import org.greenrobot.eventbus.EventBus;
-import org.threeten.bp.LocalDate;
+import org.threeten.bp.Duration;
 import org.threeten.bp.OffsetDateTime;
+import org.threeten.bp.ZoneId;
 import org.threeten.bp.format.DateTimeFormatter;
 
 import java.util.ArrayList;
@@ -33,23 +34,31 @@ public class WeatherDBRun implements Runnable {
             EventBus.getDefault().post(new WeatherAgainEvent());
         }else {
             List<WeatherParcelable> wpList = new ArrayList<>(weatherList.size());
-            for (int i=0; i<weatherList.size(); i++){
-                WeatherEntity entity = weatherList.get(i);
-
-                WeatherParcelable parcelable = new WeatherParcelable();
-                parcelable.setCity(entity.getCity());
-                parcelable.setFigureDay(entity.getFigureDay());
-                parcelable.setFigureNight(entity.getFigureNight());
-                parcelable.setStatusDay(entity.getStatusDay());
-                parcelable.setStatusNight(entity.getStatusNight());
-                parcelable.setTemperatureDay(entity.getTemperatureDay());
-                parcelable.setTemperatureNight(entity.getTemperatureNight());
-                parcelable.setUpdateTime(entity.getUpdateTime());
-                wpList.add(parcelable);
-            }
 
-            //通知主线程 更新UI
-            EventBus.getDefault().post(new WeatherResultEvent(wpList));
+            //判断当天是否有昨天的数据,如果有则不是最新数据,要请求数据库
+            OffsetDateTime now = OffsetDateTime.now(ZoneId.systemDefault());
+            Duration interval = Duration.between(weatherList.get(0).getQueryTime(),now);
+            if(interval.toDays() != 0){
+                EventBus.getDefault().post(new WeatherAgainEvent());
+            }else{
+                for (int i=0; i<weatherList.size(); i++){
+                    WeatherEntity entity = weatherList.get(i);
+
+                    WeatherParcelable parcelable = new WeatherParcelable();
+                    parcelable.setCity(entity.getCity());
+                    parcelable.setFigureDay(entity.getFigureDay());
+                    parcelable.setFigureNight(entity.getFigureNight());
+                    parcelable.setStatusDay(entity.getStatusDay());
+                    parcelable.setStatusNight(entity.getStatusNight());
+                    parcelable.setTemperatureDay(entity.getTemperatureDay());
+                    parcelable.setTemperatureNight(entity.getTemperatureNight());
+                    parcelable.setUpdateTime(entity.getUpdateTime());
+                    wpList.add(parcelable);
+                }
+
+                //通知主线程 更新UI
+                EventBus.getDefault().post(new WeatherResultEvent(wpList));
+            }
         }
     }
 }
index 0f89718..b7b3bbf 100644 (file)
@@ -1,2 +1,2 @@
-#Fri Apr 10 13:53:45 CST 2020
-VERSION_CODE=29
+#Sat Apr 11 17:08:31 CST 2020
+VERSION_CODE=32