From 2fdddd818820b3b93769723079719ee774239a29 Mon Sep 17 00:00:00 2001
From: lizhanwei <Dana_Lee1016@126.com>
Date: 星期一, 13 一月 2020 14:37:28 +0800
Subject: [PATCH] RTK平台连接状态、登录结果保存到数据库;所有连接状态显示在RTK配置页面
---
app/src/main/java/safeluck/drive/evaluation/Constant.java | 4
app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusWorker.java | 62 ++++++++++
app/src/main/assets/rtk_config.json | 2
app/src/main/java/safeluck/drive/evaluation/fragment/RTKConfigFragment.java | 43 ++++---
app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusInitWork.java | 22 +++
app/src/main/java/safeluck/drive/evaluation/app.java | 23 ++-
app/src/main/java/safeluck/drive/evaluation/MainActivity.java | 30 -----
app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatus.java | 71 +++++++++++
app/src/main/java/safeluck/drive/evaluation/fragment/HomeFragment.java | 7
app/src/main/java/safeluck/drive/evaluation/DB/WorkRoomDataBase.java | 9 +
app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusDao.java | 25 ++++
app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusViewModel.java | 22 +++
app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusWorkRepository.java | 30 +++++
app/src/main/java/safeluck/drive/evaluation/fragment/GpsInfoFragment.java | 1
14 files changed, 291 insertions(+), 60 deletions(-)
diff --git a/app/src/main/assets/rtk_config.json b/app/src/main/assets/rtk_config.json
index 4b05563..92c9e6b 100644
--- a/app/src/main/assets/rtk_config.json
+++ b/app/src/main/assets/rtk_config.json
@@ -9,7 +9,7 @@
"imei":"460123874561",
"phone":"2019101500000001",
"password":"123456789",
- "registered":0,
+ "registered":1,
"interval":1
}
diff --git a/app/src/main/java/safeluck/drive/evaluation/Constant.java b/app/src/main/java/safeluck/drive/evaluation/Constant.java
index ecfbc8c..84e427a 100644
--- a/app/src/main/java/safeluck/drive/evaluation/Constant.java
+++ b/app/src/main/java/safeluck/drive/evaluation/Constant.java
@@ -56,4 +56,8 @@
public static final String BIND_CONNECT_RTK_TOPIC = "rtk_connect_login_topic";
public static final String GPS_INFO_DATA = "gps_info_data";
+ public static final String APP_STATUS = "app_status_db_input";
+ public static final String RTK_LOGIN_CODE_COLUMN = "RTK_LOGIN_CODE_COLUMN";
+ public static final String RTK_CONN_STATUS_COLUMN = "RTK_CONN_STATUS_COLUMN";
+ public static final String WORK_PLATFORM_STATUS_COLUMN = "WORK_PLATFORM_STATUS_COLUMN";
}
diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/WorkRoomDataBase.java b/app/src/main/java/safeluck/drive/evaluation/DB/WorkRoomDataBase.java
index ecd4ee3..203bd99 100644
--- a/app/src/main/java/safeluck/drive/evaluation/DB/WorkRoomDataBase.java
+++ b/app/src/main/java/safeluck/drive/evaluation/DB/WorkRoomDataBase.java
@@ -15,6 +15,9 @@
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
+import safeluck.drive.evaluation.DB.appstatusdb.AppStatus;
+import safeluck.drive.evaluation.DB.appstatusdb.AppStatusDao;
+import safeluck.drive.evaluation.DB.appstatusdb.AppStatusInitWork;
import safeluck.drive.evaluation.DB.criterias.CriteriaForI;
import safeluck.drive.evaluation.DB.criterias.CriteriaForII;
import safeluck.drive.evaluation.DB.criterias.CriteriaForIIWorker;
@@ -37,7 +40,7 @@
* 閭锛�632393724@qq.com
* All Rights Saved! Chongqing AnYun Tech co. LTD
*/
-@Database(entities = {Student.class, CriteriaForI.class, FailedProj.class, CriteriaForII.class, RTKConfig.class, GPSInfo.class},version = 1,exportSchema = false)
+@Database(entities = {Student.class, CriteriaForI.class, FailedProj.class, CriteriaForII.class, RTKConfig.class, GPSInfo.class, AppStatus.class},version = 1,exportSchema = false)
public abstract class WorkRoomDataBase extends RoomDatabase {
private static final String TAG = "WorkRoomDataBase";
public abstract StudentDao getstudentDao();
@@ -78,12 +81,14 @@
OneTimeWorkRequest oneTimeWorkRequest3 = OneTimeWorkRequest.from(CriteriaForIIWorker.class);
OneTimeWorkRequest oneTimeWorkRequest2 = OneTimeWorkRequest.from(FailedProjWorker.class);
OneTimeWorkRequest RTKConfigWorkRequest = OneTimeWorkRequest.from(RTKConfigWork.class);
+ OneTimeWorkRequest appStatusInitWork = OneTimeWorkRequest.from(AppStatusInitWork.class);
Log.i(TAG, "onCreate: 鍒涘缓鏁版嵁搴撳悗寤虹珛鏁版嵁琛ㄦ彃鍏ユ暟鎹�");
WorkManager.getInstance(mContext).enqueue(oneTimeWorkRequest);
WorkManager.getInstance(mContext).enqueue(oneTimeWorkRequest1);
WorkManager.getInstance(mContext).enqueue(oneTimeWorkRequest2);
WorkManager.getInstance(mContext).enqueue(oneTimeWorkRequest3);
WorkManager.getInstance(mContext).enqueue(RTKConfigWorkRequest);
+ WorkManager.getInstance(mContext).enqueue(appStatusInitWork);
}
@Override
@@ -103,4 +108,6 @@
public abstract RTKConfigDao getRTKConfigDao();
public abstract GpsInfoDao getGpsInoDao();
+
+ public abstract AppStatusDao getAppStatusDao();
}
diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatus.java b/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatus.java
new file mode 100644
index 0000000..ea4824b
--- /dev/null
+++ b/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatus.java
@@ -0,0 +1,71 @@
+package safeluck.drive.evaluation.DB.appstatusdb;
+
+import androidx.room.Entity;
+import androidx.room.PrimaryKey;
+@Entity(tableName = "app_status")
+public class AppStatus {
+ public AppStatus(int rtk_login_code, int rtk_connect_status, int id, int work_platform, int default_observe1, int default_boserve2) {
+ this.rtk_login_code = rtk_login_code;
+ this.rtk_connect_status = rtk_connect_status;
+ this.id = id;
+ this.work_platform = work_platform;
+ this.default_observe1 = default_observe1;
+ this.default_boserve2 = default_boserve2;
+ }
+
+ private int rtk_login_code = 1;//RTK骞冲彴鐧诲綍缁撴灉 0-鎴愬姛 鍏朵粬澶辫触
+ private int rtk_connect_status;//RTK骞冲彴杩炴帴鐘舵��
+ @PrimaryKey
+ private int id;
+ private int work_platform;//涓氬姟骞冲彴杩炴帴鐘舵��
+ private int default_observe1;//淇濈暀1 涓轰互鍚庢墿灞�
+ private int default_boserve2;//淇濈暀2
+
+ public int getRtk_login_code() {
+ return rtk_login_code;
+ }
+
+ public void setRtk_login_code(int rtk_login_code) {
+ this.rtk_login_code = rtk_login_code;
+ }
+
+ public int getRtk_connect_status() {
+ return rtk_connect_status;
+ }
+
+ public void setRtk_connect_status(int rtk_connect_status) {
+ this.rtk_connect_status = rtk_connect_status;
+ }
+
+ public int getId() {
+ return id;
+ }
+
+ public void setId(int id) {
+ this.id = id;
+ }
+
+ public int getWork_platform() {
+ return work_platform;
+ }
+
+ public void setWork_platform(int work_platform) {
+ this.work_platform = work_platform;
+ }
+
+ public int getDefault_observe1() {
+ return default_observe1;
+ }
+
+ public void setDefault_observe1(int default_observe1) {
+ this.default_observe1 = default_observe1;
+ }
+
+ public int getDefault_boserve2() {
+ return default_boserve2;
+ }
+
+ public void setDefault_boserve2(int default_boserve2) {
+ this.default_boserve2 = default_boserve2;
+ }
+}
diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusDao.java b/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusDao.java
new file mode 100644
index 0000000..76f91a1
--- /dev/null
+++ b/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusDao.java
@@ -0,0 +1,25 @@
+package safeluck.drive.evaluation.DB.appstatusdb;
+
+import androidx.lifecycle.LiveData;
+import androidx.room.Dao;
+import androidx.room.Insert;
+import androidx.room.OnConflictStrategy;
+import androidx.room.Query;
+import androidx.room.Update;
+
+@Dao
+public interface AppStatusDao {
+ @Insert(onConflict = OnConflictStrategy.REPLACE)
+ void insert(AppStatus appStatus);
+
+ @Query("select * from app_status")
+ LiveData<AppStatus> getAppStatus();
+
+ @Query("update app_status set rtk_login_code=:rtklogin_code where id=0")
+ void updateRTKLoginCode(int rtklogin_code);
+ @Query("update app_status set rtk_connect_status=:connStatus where id=0")
+ void updateRTKConnectStatus(int connStatus);
+ //鏇存柊涓氬姟骞冲彴杩炴帴鐘舵��
+ @Query("update app_status set work_platform=:connStatus where id=0")
+ void updatework_platformStatus(int connStatus);
+}
diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusInitWork.java b/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusInitWork.java
new file mode 100644
index 0000000..469914f
--- /dev/null
+++ b/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusInitWork.java
@@ -0,0 +1,22 @@
+package safeluck.drive.evaluation.DB.appstatusdb;
+
+import android.content.Context;
+
+import androidx.annotation.NonNull;
+import androidx.work.Worker;
+import androidx.work.WorkerParameters;
+
+import safeluck.drive.evaluation.DB.WorkRoomDataBase;
+
+public class AppStatusInitWork extends Worker {
+ public AppStatusInitWork(@NonNull Context context, @NonNull WorkerParameters workerParams) {
+ super(context, workerParams);
+ }
+
+ @NonNull
+ @Override
+ public Result doWork() {
+ WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getAppStatusDao().insert(new AppStatus(1,0,0,0,0,0));
+ return Result.success();
+ }
+}
diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusViewModel.java b/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusViewModel.java
new file mode 100644
index 0000000..bec4971
--- /dev/null
+++ b/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusViewModel.java
@@ -0,0 +1,22 @@
+package safeluck.drive.evaluation.DB.appstatusdb;
+
+import android.app.Application;
+
+import androidx.annotation.NonNull;
+import androidx.lifecycle.AndroidViewModel;
+import androidx.lifecycle.LiveData;
+
+public class AppStatusViewModel extends AndroidViewModel {
+
+ private AppStatusWorkRepository appStatusWorkRepository;
+ public AppStatusViewModel(@NonNull Application application) {
+ super(application);
+ appStatusWorkRepository = new AppStatusWorkRepository(application);
+ }
+ public LiveData<AppStatus> getAppStatus(){
+ return appStatusWorkRepository.getAppStatus();
+ }
+ public void insertAppStatus(AppStatus appStatus){
+ appStatusWorkRepository.insertAppstatus(appStatus);
+ }
+}
diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusWorkRepository.java b/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusWorkRepository.java
new file mode 100644
index 0000000..6b9323c
--- /dev/null
+++ b/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusWorkRepository.java
@@ -0,0 +1,30 @@
+package safeluck.drive.evaluation.DB.appstatusdb;
+
+import android.app.Application;
+
+import androidx.lifecycle.LiveData;
+
+import safeluck.drive.evaluation.DB.WorkRoomDataBase;
+
+public class AppStatusWorkRepository {
+
+ private AppStatusDao appStatusDao;
+ private LiveData<AppStatus> appStatus;
+ public AppStatusWorkRepository(Application application) {
+ this.appStatusDao = WorkRoomDataBase.getWorkRoomDataBase(application).getAppStatusDao();
+ appStatus = appStatusDao.getAppStatus();
+ }
+
+ public LiveData<AppStatus> getAppStatus(){
+ return appStatus;
+ }
+
+ public void insertAppstatus(final AppStatus appStatus){
+ WorkRoomDataBase.dataBaseWriteExecutor.execute(new Runnable() {
+ @Override
+ public void run() {
+ appStatusDao.insert(appStatus);
+ }
+ });
+ }
+}
diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusWorker.java b/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusWorker.java
new file mode 100644
index 0000000..7ed1e13
--- /dev/null
+++ b/app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusWorker.java
@@ -0,0 +1,62 @@
+package safeluck.drive.evaluation.DB.appstatusdb;
+
+import android.content.Context;
+
+import androidx.annotation.NonNull;
+import androidx.work.Worker;
+import androidx.work.WorkerParameters;
+
+import com.anyun.exam.lib.MyLog;
+import com.google.gson.Gson;
+import com.google.gson.reflect.TypeToken;
+
+import org.json.JSONException;
+import org.json.JSONObject;
+
+import java.lang.reflect.Type;
+
+import safeluck.drive.evaluation.Constant;
+import safeluck.drive.evaluation.DB.WorkRoomDataBase;
+
+public class AppStatusWorker extends Worker {
+
+ private static final String TAG = "AppStatusWorker";
+ private AppStatusDao appStatusDao;
+
+ public AppStatusWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) {
+ super(context, workerParams);
+ MyLog.d(TAG,"鍒濆鍖朅ppStatusDao");
+ appStatusDao = WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getAppStatusDao();
+ }
+
+ @NonNull
+ @Override
+ public Result doWork() {
+ String[] str = getInputData().getStringArray(Constant.APP_STATUS);
+ JSONObject jsonObject = null;
+ try {
+ jsonObject = new JSONObject(str[1]);
+ switch (str[0]) {
+ case Constant.RTK_LOGIN_CODE_COLUMN:
+ int login =jsonObject.getInt("login_code");
+ appStatusDao.updateRTKLoginCode(login);
+ break;
+ case Constant.RTK_CONN_STATUS_COLUMN:
+ int conn =jsonObject.getInt("connected");
+ appStatusDao.updateRTKConnectStatus(conn);
+ break;
+ case Constant.WORK_PLATFORM_STATUS_COLUMN:
+ int workconn =jsonObject.getInt("work_platform");
+ appStatusDao.updatework_platformStatus(workconn);
+ break;
+
+ }
+
+ return Result.success();
+ } catch (JSONException e) {
+ e.printStackTrace();
+ return Result.failure();
+ }
+
+ }
+}
diff --git a/app/src/main/java/safeluck/drive/evaluation/MainActivity.java b/app/src/main/java/safeluck/drive/evaluation/MainActivity.java
index 0db08b7..a63aff3 100644
--- a/app/src/main/java/safeluck/drive/evaluation/MainActivity.java
+++ b/app/src/main/java/safeluck/drive/evaluation/MainActivity.java
@@ -48,8 +48,6 @@
private RTKConfig mRTKConfig;//RTK閰嶇疆淇℃伅
private Gson gson = new Gson();
String[] PERMISSIONS = new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.CAMERA};
- RTKConnAndLoginViewModel rtkConnAndLoginViewModel;
- RTKConnAndLogin rtkConnAndLogin;
RTKConfigViewModel rtkConfigViewModel;
private ICEventListener icEventListener = new ICEventListener() {
@@ -74,32 +72,6 @@
} else {
MyLog.d(TAG, "RTKConfig鏈彇鍒版暟鎹�");
}
- }
- if (msgCode == Constant.RTK_PLATFORM_CONNECT_STATUS || msgCode == Constant.RTK_PLATFORM_REGISTER_RESULT) {
- if (msgCode == Constant.RTK_PLATFORM_REGISTER_RESULT) {
- try {
- JSONObject jsonObject3 = new JSONObject((String) obj);
- int loginCode = jsonObject3.getInt("login_code");
- MyLog.d(TAG, "RTK骞冲彴鐧诲綍缁撴灉锛�" + loginCode);
- rtkConnAndLogin.setLogin_code(loginCode);
-
- } catch (JSONException e) {
- e.printStackTrace();
- }
-
- } else {
- try {
- JSONObject jsonObject3 = new JSONObject((String) obj);
- int connect_status = jsonObject3.getInt("connected");
- MyLog.i(TAG, "RTK骞冲彴杩炴帴鐘舵�侊細" + connect_status);
- rtkConnAndLogin.setLogin_code(connect_status);
-
- } catch (JSONException e) {
- e.printStackTrace();
- }
-
- }
- rtkConnAndLoginViewModel.getRtkConnAndLogin().postValue(rtkConnAndLogin);
}
if (msgCode == Constant.RTK_PLATFORM_REGISTER_STATUS) {
try {
@@ -149,8 +121,6 @@
}
});
- rtkConnAndLoginViewModel = ViewModelProviders.of(this).get(RTKConnAndLoginViewModel.class);
- rtkConnAndLogin = new RTKConnAndLogin();
mPermissionsManager = new PermissionManager(this) {
diff --git a/app/src/main/java/safeluck/drive/evaluation/app.java b/app/src/main/java/safeluck/drive/evaluation/app.java
index e89276f..efe687a 100644
--- a/app/src/main/java/safeluck/drive/evaluation/app.java
+++ b/app/src/main/java/safeluck/drive/evaluation/app.java
@@ -31,6 +31,8 @@
import java.util.Random;
+import safeluck.drive.evaluation.DB.WorkRoomDataBase;
+import safeluck.drive.evaluation.DB.appstatusdb.AppStatusWorker;
import safeluck.drive.evaluation.DB.failitems.FailedProj;
import safeluck.drive.evaluation.DB.failitems.FailedProjRepository;
import safeluck.drive.evaluation.DB.gps.GpsInfoWorker;
@@ -109,15 +111,19 @@
break;
case Constant.RTK_PLATFORM_REGISTER_STATUS:
- //RTK骞冲彴娉ㄥ唽鐘舵�侊紝闇�瑕佷繚瀛樻暟鎹簱
CEventCenter.dispatchEvent(Constant.BIND_CONNECT_RTK_TOPIC,cmd,0,json);
+
+ //RTK骞冲彴娉ㄥ唽鐘舵�侊紝闇�瑕佷繚瀛樻暟鎹簱
break;
case Constant.RTK_PLATFORM_REGISTER_RESULT:
-
+ String[] strs = new String[2];
+ strs[0] = Constant.RTK_LOGIN_CODE_COLUMN;
+ strs[1] = json;
//RTK骞冲彴鐧诲綍缁撴灉
- CEventCenter.dispatchEvent(Constant.BIND_CONNECT_RTK_TOPIC,cmd,0,json);
-
+ Data rtkLoginData = new Data.Builder().putStringArray(Constant.APP_STATUS,strs).build();
+ OneTimeWorkRequest loginWorkRequest = new OneTimeWorkRequest.Builder(AppStatusWorker.class).setInputData(rtkLoginData).build();
+ WorkManager.getInstance(getApplicationContext()).enqueue(loginWorkRequest);
break;
case Constant.FETCH_RTK_PLATFORM_INFO:
@@ -141,8 +147,13 @@
failedProjRepository.deleteAll();
break;
case Constant.RTK_PLATFORM_CONNECT_STATUS:
-
- CEventCenter.dispatchEvent(Constant.BIND_CONNECT_RTK_TOPIC,cmd,0,json);
+ String[] conn_strs = new String[2];
+ conn_strs[0] = Constant.RTK_CONN_STATUS_COLUMN;
+ conn_strs[1] = json;
+ //RTK骞冲彴杩炴帴鐘舵��
+ Data connStatusData = new Data.Builder().putStringArray(Constant.APP_STATUS,conn_strs).build();
+ OneTimeWorkRequest oneTimeWorkRequest = new OneTimeWorkRequest.Builder(AppStatusWorker.class).setInputData(connStatusData).build();
+ WorkManager.getInstance(getApplicationContext()).enqueue(oneTimeWorkRequest);
break;
case Constant.FETCH_MAP_INFO:
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/GpsInfoFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/GpsInfoFragment.java
index 2be43f3..1904435 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/GpsInfoFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/GpsInfoFragment.java
@@ -16,6 +16,7 @@
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
+import com.anyun.exam.lib.AYSdk;
import com.anyun.exam.lib.MyLog;
import java.lang.reflect.Field;
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/HomeFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/HomeFragment.java
index e32bcda..e09ae7c 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/HomeFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/HomeFragment.java
@@ -13,15 +13,12 @@
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.nio.ByteBuffer;
import me.yokeyword.fragmentation.ISupportFragment;
import me.yokeyword.fragmentation.SupportFragment;
import safeluck.drive.evaluation.BuildConfig;
import safeluck.drive.evaluation.R;
-import safeluck.drive.evaluation.util.DimenUtil;
+
/**
* 棣栭〉
@@ -32,6 +29,7 @@
*/
public class HomeFragment extends SupportFragment implements View.OnClickListener {
+ private static final String TAG = HomeFragment.class.getSimpleName();
private TextView tv_app_version;
public static ISupportFragment newInstance() {
return new HomeFragment();
@@ -43,6 +41,7 @@
View view = inflater.inflate(R.layout.layout_home_fragment, container, false);
initView(view);
+
return view;
}
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/RTKConfigFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/RTKConfigFragment.java
index 4d424ba..423f9e7 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/RTKConfigFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/RTKConfigFragment.java
@@ -19,6 +19,8 @@
import me.yokeyword.fragmentation.SupportFragment;
import safeluck.drive.evaluation.Constant;
+import safeluck.drive.evaluation.DB.appstatusdb.AppStatus;
+import safeluck.drive.evaluation.DB.appstatusdb.AppStatusViewModel;
import safeluck.drive.evaluation.DB.rtktb.RTKConfigViewModel;
import safeluck.drive.evaluation.R;
import safeluck.drive.evaluation.DB.rtktb.RTKConfig;
@@ -42,6 +44,7 @@
private TextView tv_reg,tv_connect,tv_model,tv_sn,tv_imei,tv_login;
private RTKConfigViewModel rtkConfigViewModel;
private RTKConfig mRtkConfig;
+ private AppStatusViewModel appStatusViewModel;
public static SupportFragment newInstance(){
return new RTKConfigFragment();
@@ -58,32 +61,36 @@
rtkConfigViewModel.getRTKConfig().observe(this, new Observer<RTKConfig>() {
@Override
public void onChanged(RTKConfig rtkConfig) {
- Log.i(TAG, "RTKConfig Changed: "+rtkConfig.toString());
- mRtkConfig = rtkConfig;
- et_ip.setText(rtkConfig.getIp());
- et_city_id.setText(String.valueOf(rtkConfig.getCity()));
- et_city_province.setText(String.valueOf(rtkConfig.getProvince()));
- et_port.setText(String.valueOf(rtkConfig.getPort()));
- et_phone.setText(rtkConfig.getPhone());
- tv_sn.setText(getResources().getString(R.string.rtk_config_sn,rtkConfig.getSn()));
- tv_model.setText(getResources().getString(R.string.rtk_config_model,rtkConfig.getModel()));
- tv_imei.setText(getResources().getString(R.string.rtk_config_imei,rtkConfig.getImei()));
- tv_reg.setText(getResources().getString(R.string.rtk_register_status,rtkConfig.getRegistered()));
+ if (rtkConfig != null){
+ Log.i(TAG, "RTKConfig Changed: "+rtkConfig.toString());
+ mRtkConfig = rtkConfig;
+ et_ip.setText(rtkConfig.getIp());
+ et_city_id.setText(String.valueOf(rtkConfig.getCity()));
+ et_city_province.setText(String.valueOf(rtkConfig.getProvince()));
+ et_port.setText(String.valueOf(rtkConfig.getPort()));
+ et_phone.setText(rtkConfig.getPhone());
+ tv_sn.setText(getResources().getString(R.string.rtk_config_sn,rtkConfig.getSn()));
+ tv_model.setText(getResources().getString(R.string.rtk_config_model,rtkConfig.getModel()));
+ tv_imei.setText(getResources().getString(R.string.rtk_config_imei,rtkConfig.getImei()));
+ tv_reg.setText(getResources().getString(R.string.rtk_register_status,rtkConfig.getRegistered()));
+ }
+
}
});
-
- RTKConnAndLoginViewModel rtkConnAndLoginViewModel = ViewModelProviders.of(this).get(RTKConnAndLoginViewModel.class);
- rtkConnAndLoginViewModel.getRtkConnAndLogin().observe(this, new Observer<RTKConnAndLogin>() {
+ appStatusViewModel = ViewModelProviders.of(this).get(AppStatusViewModel.class);
+ appStatusViewModel.getAppStatus().observe(this, new Observer<AppStatus>() {
@Override
- public void onChanged(RTKConnAndLogin rtkConnAndLogin) {
- MyLog.i(TAG,"骞冲彴鐧诲綍缁撴灉鍙婅繛鎺ョ姸鎬�"+rtkConnAndLogin.toString());
- tv_connect.setText(getResources().getString(R.string.rtk_connect_status,rtkConnAndLogin.getConnect_status()));
- tv_connect.setText(getResources().getString(R.string.rtk_config_login,rtkConnAndLogin.getLogin_code()));
+ public void onChanged(AppStatus appStatus) {
+ if (appStatus != null){
+ tv_login.setText(getResources().getString(R.string.rtk_config_login,appStatus.getRtk_login_code()));
+ tv_connect.setText(getResources().getString(R.string.rtk_connect_status,appStatus.getRtk_connect_status()));
+ }
}
});
+
return view;
}
--
Gitblit v1.8.0