From 9b0311fad79e23cbf38b36a700e0869f3d0089c5 Mon Sep 17 00:00:00 2001
From: lizhanwei <Dana_Lee1016@126.com>
Date: 星期二, 14 一月 2020 11:17:56 +0800
Subject: [PATCH] 用户点击结束考试的时候,考试状态复位;
---
app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java | 95 +++++++++++++++++++++++++++--------------------
1 files changed, 55 insertions(+), 40 deletions(-)
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
index 1b59726..bcb7af0 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
@@ -10,6 +10,7 @@
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ListView;
+import android.widget.TextView;
import android.widget.Toast;
@@ -17,8 +18,11 @@
import androidx.annotation.Nullable;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
+import androidx.work.OneTimeWorkRequest;
+import androidx.work.WorkManager;
import com.anyun.exam.lib.AYSdk;
+import com.anyun.exam.lib.MyLog;
import org.json.JSONException;
import org.json.JSONObject;
@@ -28,6 +32,7 @@
import me.yokeyword.fragmentation.SupportFragment;
import safeluck.drive.evaluation.Constant;
+import safeluck.drive.evaluation.DB.exam_status.ExamStatusInitWorker;
import safeluck.drive.evaluation.DB.exam_status.ExamStatusViewModel;
import safeluck.drive.evaluation.DB.failitems.FailedProjViewModel;
import safeluck.drive.evaluation.DB.failitems.FailedProj_select;
@@ -50,6 +55,7 @@
private static final String TAG = NetWorkTrainFragment.class.getSimpleName();
private ListView mListView;
private Button btn_start_exam;
+ private TextView tv_stop;//鍛煎彨璇锋眰锛堢粨鏉熻�冭瘯锛�
private ScoreAdapter mScoreAdapter;
private ArrowView av_zhijiao, av_curve, av_park, av_podao;
private HouseView houseView;
@@ -70,11 +76,11 @@
@Override
public boolean handleMessage(Message msg) {
if (msg.what == ADD_DATA){
- av_curve.setColor(whatPaintColor(examStatusList.get(3)));
- av_zhijiao.setColor(whatPaintColor(examStatusList.get(4)));
+ houseView.setColor(whatPaintColor(examStatusList.get(0)));
av_podao.setColor(whatPaintColor(examStatusList.get(1)));
av_park.setColor(whatPaintColor(examStatusList.get(2)));
- houseView.setColor(whatPaintColor(examStatusList.get(0)));
+ av_curve.setColor(whatPaintColor(examStatusList.get(3)));
+ av_zhijiao.setColor(whatPaintColor(examStatusList.get(4)));
}
return false;
}
@@ -84,23 +90,28 @@
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.layout_train_fragment, container, false);
- item_conents.add("渚ф柟鍋滆溅");
initView(view);
FailedProjViewModel failedProjViewModel = ViewModelProviders.of(this).get(FailedProjViewModel.class);
failedProjViewModel.getFailedProjectsForI(Constant.TEST_STU_ID).observe(this, new Observer<List<FailedProj_select>>() {
@Override
public void onChanged(List<FailedProj_select> failedProj_selects) {
- item_id = 0;
- mArrayList.clear();
- item_conents.clear();
- for (FailedProj_select f :
- failedProj_selects) {
- item_id += f.getScore_deducting();
- Log.i(TAG, "onChanged: " + f.toString());
- mArrayList.add(new ScoreBean(f.getScore_deducting(), f.getItem_content(), f.getDeducting_reason()));
- item_conents.add(f.getItem_content());
- mScoreAdapter.addDatas(mArrayList);
+ if (failedProj_selects != null && failedProj_selects.size()>0){
+
+ item_id = 0;
+ mArrayList.clear();
+ item_conents.clear();
+ for (FailedProj_select f :
+ failedProj_selects) {
+ item_id += f.getScore_deducting();
+ Log.i(TAG, "onChanged: " + f.toString());
+ mArrayList.add(new ScoreBean(f.getScore_deducting(), f.getItem_content(), f.getDeducting_reason()));
+ item_conents.add(f.getItem_content());
+ mScoreAdapter.addDatas(mArrayList);
+ }
+
+ MyLog.i(TAG,"鐩戞祴鍒版湁澶辫触椤圭洰鍔犲叆锛岄�氱煡UI鏇存柊棰滆壊");
+ mHandler.obtainMessage(ADD_DATA).sendToTarget();
}
}
});
@@ -111,17 +122,27 @@
@Override
public void onChanged(List<ExamStatus> examStatus) {
- for (ExamStatus e :
- examStatus) {
- Log.i(TAG, "onChanged: e="+e.toString());
+
+
+ Log.i(TAG, "ExamStatus onChanged: ");
+ if (examStatus!=null && examStatus.size()>0){
+ MyLog.i(TAG,"鑰冭瘯鐘舵�佹洿鏂�");
+ examStatusList.clear();
+ examStatusList.addAll(examStatus);
+ mHandler.obtainMessage(ADD_DATA).sendToTarget();
+ if (examStatus.get(0).getStartExam() == Constant.HAS_BEEN_START_EXAM){
+ btn_start_exam.setEnabled(false);
+ tv_stop.setEnabled(true);
+ }else{
+ btn_start_exam.setEnabled(true);
+ tv_stop.setEnabled(false);
+ }
}
- Log.i(TAG, "onChanged: ");
- examStatusList.clear();
- examStatusList.addAll(examStatus);
- mHandler.obtainMessage(ADD_DATA).sendToTarget();
+
}
});
+
return view;
}
@@ -175,26 +196,13 @@
private void initView(View view) {
- av_curve = view.findViewById(R.id.av2);
- av_park = view.findViewById(R.id.av3);
- av_podao = view.findViewById(R.id.av4);
- av_zhijiao = view.findViewById(R.id.av1);
+ av_curve = view.findViewById(R.id.av3);
+ av_park = view.findViewById(R.id.av2);
+ av_podao = view.findViewById(R.id.av1);
+ av_zhijiao = view.findViewById(R.id.av4);
houseView = view.findViewById(R.id.hv);
-//绮夌孩鑹叉鍦ㄨ繘琛岃椤圭洰鐨勮�冭瘯
-// examStatusList.add(new ExamStatus(1, 0));
-// examStatusList.add(new ExamStatus(2, 1));
-// examStatusList.add(new ExamStatus(3, 0));
-// examStatusList.add(new ExamStatus(4, 2));
-// examStatusList.add(new ExamStatus(5, 1));
-
-// mHandler.obtainMessage(ADD_DATA).sendToTarget();
-// av_curve.setColor(whatPaintColor(examStatusList.get(3)));
-// av_zhijiao.setColor(whatPaintColor(examStatusList.get(4)));
-// av_podao.setColor(whatPaintColor(examStatusList.get(1)));
-// av_park.setColor(whatPaintColor(examStatusList.get(2)));
-// houseView.setColor(whatPaintColor(examStatusList.get(0)));
-
+ view.findViewById(R.id.btn_return).setOnClickListener(this);
mListView = view.findViewById(R.id.lv);
mListView.setFocusable(false);
view.findViewById(R.id.view_map).setOnClickListener(this);
@@ -202,7 +210,8 @@
mListView.setAdapter(mScoreAdapter);
btn_start_exam = view.findViewById(R.id.btn_start);
btn_start_exam.setOnClickListener(this);
- view.findViewById(R.id.tv_stop).setOnClickListener(this);
+ tv_stop = view.findViewById(R.id.tv_stop);
+ tv_stop.setOnClickListener(this);
mListView.addHeaderView(LayoutInflater.from(_mActivity).inflate(R.layout.layout_score_item, null));
}
@@ -213,6 +222,7 @@
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_start:
+ examStatusViewModel.updateStartExam(Constant.HAS_BEEN_START_EXAM);
try {
JSONObject jsonObject = new JSONObject();
jsonObject.put("exam", 1);
@@ -225,6 +235,8 @@
break;
case R.id.tv_stop:
Toast.makeText(_mActivity, "缁撴潫鑰冭瘯", Toast.LENGTH_SHORT).show();
+ OneTimeWorkRequest examStatusInitWork = OneTimeWorkRequest.from(ExamStatusInitWorker.class);
+ WorkManager.getInstance(_mActivity).enqueue(examStatusInitWork);
try {
JSONObject jsonObject = new JSONObject();
jsonObject.put("exam", 0);
@@ -242,6 +254,9 @@
}
start(mapFragment);
break;
+ case R.id.btn_return:
+ _mActivity.onBackPressed();
+ break;
}
}
--
Gitblit v1.8.0