app/src/main/java/safeluck/drive/evaluation/Constant.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatus.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusDao.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusWorker.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/safeluck/drive/evaluation/DB/gps/GpsInfoWorker.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/safeluck/drive/evaluation/app.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/res/layout/networktoolbar.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/res/values/arrays.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
app/src/main/java/safeluck/drive/evaluation/Constant.java
@@ -85,6 +85,7 @@ public static final String BIND_MCUINFO_TOPIC = "bind_mcu_info_topic"; public static final String BIND_RTK_SPEED_TOPIC = "BIND_RTK_SPEED_TOPIC"; public static final int EXIT_CURRENT_ITEM = 0;//退出某场地 public static final String RTK_INFO_SAT_QF = "RTK_INFO_SAT_QF";//从RTK info中获取的卫星颗数和qf 组成的json public static String exam_enter_exitdata="exam_enter_exitdata"; public static int Chang_di = 2; public static int DaoLu_night = 3; app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatus.java
@@ -18,9 +18,27 @@ @PrimaryKey private int id; private int work_platform;//业务平台连接状态 private int sat_num;//卫星颗数 private int qf;//解状态 private int default_observe1;//保留1 为以后扩展 private int default_boserve2;//保留2 public int getSat_num() { return sat_num; } public void setSat_num(int sat_num) { this.sat_num = sat_num; } public int getQf() { return qf; } public void setQf(int qf) { this.qf = qf; } public int getRtk_login_code() { return rtk_login_code; } app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusDao.java
@@ -23,7 +23,13 @@ //更新业务平台连接状态 @Query("update app_status set work_platform=:connStatus where id=0") void updatework_platformStatus(int connStatus); //更新保留值1 @Query("update app_status set default_observe1=:default_observe1 where id=0") void updatedDefaultObserve1(int default_observe1); //更新卫星数 @Query("update app_status set default_observe1=:saliteNums where id=0") void updatedDefaultObserve1(int saliteNums); @Query("update app_status set sat_num=:sat_num where id=0") void updatedSatNum(int sat_num); //更新qf状态 @Query("update app_status set qf=:qf where id=0") void updatedQf(int qf); } app/src/main/java/safeluck/drive/evaluation/DB/appstatusdb/AppStatusWorker.java
@@ -24,6 +24,8 @@ private static final String TAG = "AppStatusWorker"; private AppStatusDao appStatusDao; private int lastSatNum = 0; private int lastQf = 0; public AppStatusWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) { super(context, workerParams); @@ -53,8 +55,25 @@ appStatusDao.updatework_platformStatus(workconn); break; case Constant.RTK_INFO_SAT_QF: int qf = jsonObject.getInt("qf"); int satNum = jsonObject.getInt("sat_num"); if (qf==lastQf){ Log.i(TAG,"解状态和上次的一样,不保存数据库"+qf); }else{ lastQf = qf; appStatusDao.updatedQf(qf); } if (satNum==lastSatNum){ Log.i(TAG,"卫星颗数和上次的一样,不保存数据库"+lastSatNum); }else{ appStatusDao.updatedSatNum(satNum); lastSatNum = satNum; } break; } return Result.success(); app/src/main/java/safeluck/drive/evaluation/DB/gps/GpsInfoWorker.java
@@ -44,7 +44,7 @@ Type type = new TypeToken<GPSInfo>(){}.getType(); GPSInfo mstus=gson.fromJson(getInputData().getString(Constant.GPS_INFO_DATA), type); WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getAppStatusDao().updatedDefaultObserve1(mstus.getSat_num()); WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getAppStatusDao().updatedSatNum(mstus.getSat_num()); WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getGpsInoDao().insert(mstus); } catch (Exception e) { app/src/main/java/safeluck/drive/evaluation/app.java
@@ -306,6 +306,36 @@ CEventCenter.dispatchEvent(Constant.BIND_SPEED_TOPIC,cmd,0,json); break; case Constant.RTK_INFO: JSONObject jsonObject = null; try { jsonObject = new JSONObject(json); int qf = jsonObject.getInt("qf"); int satNum = jsonObject.getInt("sat_num"); if (lastSatEqualNow(satNum)){ }else{ String[] rtk_strs = new String[2]; rtk_strs[0] = Constant.RTK_INFO_SAT_QF; rtk_strs[1] = json; Data rtkInfoData = new Data.Builder().putStringArray(Constant.APP_STATUS,rtk_strs).build(); OneTimeWorkRequest appStatusWorker = new OneTimeWorkRequest.Builder(AppStatusWorker.class).setInputData(rtkInfoData).build(); WorkManager.getInstance(getApplicationContext()).enqueue(appStatusWorker); } if (lastQfEqualNow(qf)){ }else{ String[] rtk_strs = new String[2]; rtk_strs[0] = Constant.RTK_INFO_SAT_QF; rtk_strs[1] = json; Data rtkInfoData = new Data.Builder().putStringArray(Constant.APP_STATUS,rtk_strs).build(); OneTimeWorkRequest appStatusWorker = new OneTimeWorkRequest.Builder(AppStatusWorker.class).setInputData(rtkInfoData).build(); WorkManager.getInstance(getApplicationContext()).enqueue(appStatusWorker); } } catch (JSONException e) { e.printStackTrace(); } if (ExamPlatformData.getInstance().getExamplatformStatus()==ExamPlatformData.DEV_LOGIN){ try { JSONObject jsSpeed = new JSONObject(json); @@ -361,6 +391,26 @@ } private int lastSatNum= 0; private int lastQf = 0; private boolean lastSatEqualNow(int satNum) { if (lastSatNum == satNum){ return true; }else{ lastSatNum = satNum; } return false; } private boolean lastQfEqualNow(int qf) { if (lastQf == qf){ return true; }else{ lastQf = qf; } return false; } private void sendVechileInfo() { new Thread(new Runnable() { @Override app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
@@ -97,7 +97,8 @@ private int item_id;//扣分分数总和 private ExamStatusViewModel examStatusViewModel; private static final int ADD_DATA = 1; private TextView tv_speed,tv_total_score,tv_sat_num,tv_name,tv_id,tv_work_platform,tv_network_time; private TextView tv_speed,tv_total_score,tv_sat_num,tv_name,tv_id,tv_work_platform,tv_network_time, tv_qf; private double speed=0.0; private ImageView iv_rtk_status,iv_head; @@ -106,7 +107,6 @@ private static final int SPEED_DATA = 2; private FailedProjViewModel failedProjViewModel; String icson;//返回的ic卡信息 json private Random random = new Random(); private List<SimulateNightBean.QuestionBean> tempQs= new ArrayList<>(); public static SupportFragment newInstance() { @@ -127,7 +127,7 @@ av_zhijiao.setColor(aaa(safeluck.drive.evaluation.DB.Constant.EXAM_MAP_TYPE_ANGLE)); } if (msg.what == SPEED_DATA){ tv_speed.setText(getActivity().getApplicationContext().getResources().getString(R.string.speed,speed)); tv_speed.setText(_mActivity.getApplicationContext().getResources().getString(R.string.speed,speed)); } if (msg.what == Constant.IC_ID){ try { @@ -367,7 +367,8 @@ Log.i(TAG, "onChanged: "+appStatus.toString()); iv_rtk_status.getDrawable().setLevel(appStatus.getRtk_connect_status()); tv_work_platform.setText(getString(R.string.platform_status,ExamPlatformData.getInstance().getExamplatformStatusStr(appStatus.getWork_platform()))); tv_sat_num.setText(String.valueOf(appStatus.getDefault_observe1()).length()==1?"0"+appStatus.getDefault_observe1():String.valueOf(appStatus.getDefault_observe1())); tv_sat_num.setText(String.valueOf(appStatus.getSat_num()).length()==1?"0"+appStatus.getSat_num():String.valueOf(appStatus.getSat_num())); tv_qf.setText(getResources().getStringArray(R.array.qf_status)[appStatus.getQf()]); } } }); @@ -444,7 +445,8 @@ iv_rtk_status = view.findViewById(R.id.iv_rtk_connect); iv_head = view.findViewById(R.id.iv_head); tv_sat_num = view.findViewById(R.id.tv_sat_num); tv_sat_num = view.findViewById(R.id.tv_sat_num_instatus); tv_qf = view.findViewById(R.id.tv_qf); tv_speed = view.findViewById(R.id.tv_speed); tv_total_score = view.findViewById(R.id.tv_total_score); tv_network_time = view.findViewById(R.id.network_time); app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java
@@ -106,7 +106,8 @@ private int item_id;//扣分分数总和 private ExamStatusViewModel examStatusViewModel; private static final int ADD_DATA = 1; private TextView tv_speed,tv_total_score,tv_sat_num,tv_name,tv_id,tv_work_platform,tv_network_time; private TextView tv_speed,tv_total_score,tv_sat_num,tv_name,tv_id,tv_work_platform,tv_network_time ,tv_qf; private double speed=0.0; private ImageView iv_rtk_status,iv_head; @@ -115,7 +116,6 @@ private static final int SPEED_DATA = 2; private FailedProjViewModel failedProjViewModel; String icson;//返回的ic卡信息 json private Random random = new Random(); private List<SimulateNightBean.QuestionBean> tempQs= new ArrayList<>(); @@ -372,7 +372,8 @@ Log.i(TAG, "onChanged: "+appStatus.toString()); iv_rtk_status.getDrawable().setLevel(appStatus.getRtk_connect_status()); tv_work_platform.setText(getString(R.string.platform_status,ExamPlatformData.getInstance().getExamplatformStatusStr(appStatus.getWork_platform()))); tv_sat_num.setText(String.valueOf(appStatus.getDefault_observe1()).length()==1?"0"+appStatus.getDefault_observe1():String.valueOf(appStatus.getDefault_observe1())); tv_sat_num.setText(String.valueOf(appStatus.getSat_num()).length()==1?"0"+appStatus.getSat_num():String.valueOf(appStatus.getSat_num())); tv_qf.setText(getResources().getStringArray(R.array.qf_status)[appStatus.getQf()]); } } }); @@ -450,7 +451,8 @@ iv_rtk_status = view.findViewById(R.id.iv_rtk_connect); iv_head = view.findViewById(R.id.iv_head); tv_sat_num = view.findViewById(R.id.tv_sat_num); tv_sat_num = view.findViewById(R.id.tv_sat_num_instatus); tv_qf = view.findViewById(R.id.tv_qf); tv_speed = view.findViewById(R.id.tv_speed); tv_total_score = view.findViewById(R.id.tv_total_score); tv_network_time = view.findViewById(R.id.network_time); app/src/main/res/layout/networktoolbar.xml
@@ -20,17 +20,26 @@ android:layout_height="wrap_content" android:text="02" android:gravity="center" android:id="@+id/tv_sat_num_instatus" android:drawableLeft="@drawable/gps" android:textColor="@android:color/white" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/iv_rtk_connect" android:layout_marginLeft="50dp" android:layout_marginLeft="30dp" android:src="@drawable/antennaxml"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/tv_qf" android:singleLine="true" android:layout_marginLeft="30dp" android:textColor="@android:color/white" android:text="无效解"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:id="@+id/network_time" android:singleLine="true" app/src/main/res/values/arrays.xml
@@ -4,4 +4,11 @@ <item>张三</item> <item>李四</item> </string-array> <string-array name="qf_status"> <item>无效解</item> <item>单点定位解</item> <item>伪距差分</item> <item>固定解</item> <item>浮动解</item> </string-array> </resources>