From 2c215172a767c6101d530da549c4dd5d570719c7 Mon Sep 17 00:00:00 2001
From: yy1717 <fctom1215@outlook.com>
Date: 星期二, 14 一月 2020 11:35:02 +0800
Subject: [PATCH] Merge branch 'master' of https://gitee.com/endian11/DriveJudge

---
 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