From 8735b56eefde751618c819f5b331a56a62274a5c Mon Sep 17 00:00:00 2001
From: lizhanwei <Dana_Lee1016@126.com>
Date: 星期四, 14 五月 2020 18:30:22 +0800
Subject: [PATCH] Merge branch 'newUI'

---
 app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java |  273 ++++++++++++++++++++++++++++++------------------------
 1 files changed, 151 insertions(+), 122 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 0966173..7477d75 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
@@ -1,12 +1,18 @@
 package safeluck.drive.evaluation.fragment;
 
 import android.content.Context;
+import android.graphics.Color;
 import android.graphics.drawable.Drawable;
 import android.os.Bundle;
 
 import android.os.Handler;
 import android.os.Message;
+import android.text.SpannableString;
+import android.text.Spanned;
 import android.text.TextUtils;
+import android.text.style.AbsoluteSizeSpan;
+import android.text.style.ForegroundColorSpan;
+import android.util.Base64;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.MotionEvent;
@@ -21,7 +27,6 @@
 
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
-import androidx.fragment.app.DialogFragment;
 import androidx.lifecycle.Observer;
 import androidx.lifecycle.ViewModelProviders;
 import androidx.work.OneTimeWorkRequest;
@@ -29,7 +34,7 @@
 
 import com.anyun.exam.lib.AYSdk;
 import com.anyun.exam.lib.MyLog;
-import com.google.gson.Gson;
+import com.squareup.picasso.Picasso;
 
 import org.json.JSONException;
 import org.json.JSONObject;
@@ -43,33 +48,26 @@
 import safeluck.drive.evaluation.Constant;
 import safeluck.drive.evaluation.DB.Student;
 import safeluck.drive.evaluation.DB.WokViewModel;
-import safeluck.drive.evaluation.DB.appstatusdb.AppStatus;
-import safeluck.drive.evaluation.DB.appstatusdb.AppStatusViewModel;
 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;
+import safeluck.drive.evaluation.MainActivity;
 import safeluck.drive.evaluation.R;
 import safeluck.drive.evaluation.adapter.ScoreAdapter;
 import safeluck.drive.evaluation.DB.exam_status.ExamStatus;
 import safeluck.drive.evaluation.bean.ExamPlatformData;
 import safeluck.drive.evaluation.bean.ScoreBean;
-import safeluck.drive.evaluation.bean.SimulateNightBean;
 import safeluck.drive.evaluation.cEventCenter.CEventCenter;
 import safeluck.drive.evaluation.cEventCenter.ICEventListener;
-import safeluck.drive.evaluation.customview.ArrowView;
-import safeluck.drive.evaluation.customview.HouseView;
-import safeluck.drive.evaluation.customview.LoadProgressDialog;
-import safeluck.drive.evaluation.customview.MyDialogFragment;
 import safeluck.drive.evaluation.customview.QRCodeDialog;
-import safeluck.drive.evaluation.httpmodule.RetrofitCreator;
+import safeluck.drive.evaluation.customview.SelectDialog;
 import safeluck.drive.evaluation.im.MessageProcessor;
 import safeluck.drive.evaluation.platformMessage.JKMessage0201;
 import safeluck.drive.evaluation.platformMessage.JKMessage0202;
 import safeluck.drive.evaluation.platformMessage.JKMessage0204;
 import safeluck.drive.evaluation.platformMessage.PlatFormConstant;
 import safeluck.drive.evaluation.util.Utils;
-import safeluck.drive.evaluation.viewmodels.TimeViewModel;
 
 /**
  * 鑱旂綉璁粌UI
@@ -86,10 +84,9 @@
     private ListView mListView;
     private Button btn_start_exam;
     private TextView tv_stop;//鍛煎彨璇锋眰锛堢粨鏉熻�冭瘯锛�
-    private Gson gson = new Gson();
     private ScoreAdapter mScoreAdapter;
-    private ArrowView av_zhijiao, av_curve, av_park, av_podao;
-    private HouseView houseView;
+    private Button av_zhijiao, av_curve, av_park, av_podao;
+    private Button houseView;
     private List<ExamStatus> examStatusList = new ArrayList<>();
     private List<String> item_conents = new ArrayList<>();//鍧¢亾瀹氱偣鍋滆溅鍜岃捣姝�
     private int changKaoCount=0;
@@ -97,10 +94,10 @@
     private int item_id;//鎵e垎鍒嗘暟鎬诲拰
     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,
-            tv_qf,tv_start_time,tv_sex;
+    private TextView tv_speed,tv_total_score,tv_name,
+            tv_start_time,tv_coach_name;
     private double speed=0.0;
-    private ImageView iv_rtk_status,iv_head;
+    private ImageView iv_head,iv_coach_head;
 
     private int currTotalScore = 100;
     private List<ScoreBean> mArrayList = new ArrayList<>();
@@ -122,12 +119,12 @@
         public boolean handleMessage(Message msg) {
             if (msg.what == ADD_DATA){
                 MyLog.i("handler add_data totalScore="+currTotalScore);
-                tv_total_score.setText(getResources().getString(R.string.total_score,currTotalScore));
-                houseView.setColor(aaa(safeluck.drive.evaluation.DB.Constant.EXAM_MAP_TYPE_REVERSE));//鍊掕溅鍏ュ簱 type =1
-                av_podao.setColor(aaa(safeluck.drive.evaluation.DB.Constant.EXAM_MAP_TYPE_RAMP));
-                av_park.setColor(aaa(safeluck.drive.evaluation.DB.Constant.EXAM_MAP_TYPE_PARK));
-                av_curve.setColor(aaa(safeluck.drive.evaluation.DB.Constant.EXAM_MAP_TYPE_CURVE));
-                av_zhijiao.setColor(aaa(safeluck.drive.evaluation.DB.Constant.EXAM_MAP_TYPE_ANGLE));
+                setTotalScoreText();
+                houseView.setBackground(aaa(safeluck.drive.evaluation.DB.Constant.EXAM_MAP_TYPE_REVERSE));//鍊掕溅鍏ュ簱 type =1
+                av_podao.setBackground(aaa(safeluck.drive.evaluation.DB.Constant.EXAM_MAP_TYPE_RAMP));
+                av_park.setBackground(aaa(safeluck.drive.evaluation.DB.Constant.EXAM_MAP_TYPE_PARK));
+                av_curve.setBackground(aaa(safeluck.drive.evaluation.DB.Constant.EXAM_MAP_TYPE_CURVE));
+                av_zhijiao.setBackground(aaa(safeluck.drive.evaluation.DB.Constant.EXAM_MAP_TYPE_ANGLE));
 
                 for (int i = 0; i < btn_ids.size(); i++) {
                     int viewId = getResources().getIdentifier(String.valueOf(btn_ids.get(i)),"id",_mActivity.getPackageName());
@@ -163,27 +160,27 @@
         }
     });
 
-    private int aaa(int type) {
+    private Drawable aaa(int type) {
         if (examStatusList!=null &&examStatusList.size()>0){
             for (ExamStatus examStatus:
-                 examStatusList) {
+                    examStatusList) {
                 if (type == examStatus.getMap_item()){
                     if (examStatus.getEnter() == safeluck.drive.evaluation.DB.Constant.BEGIN_ITEM){
                         //杩涘叆鑰冨満
                         if (examStatusList.get(0).getStartExam() == Constant.NONE_BEEN_START_EXAM){
                             //缁撴潫鑰冭瘯浜�
                             MyLog.i("杩涘叆鑰冨満缁撴潫鑰冭瘯锛宻tartexam="+examStatus.getStartExam());
-                            return getResources().getColor(R.color.colorAccent);
+                            return getResources().getDrawable(R.drawable.ic_btn_fail);
                         }else{
                             MyLog.i("杩涘叆鑰冨満锛宼ype="+type);
-                            return getResources().getColor(R.color.pink);
+                            return getResources().getDrawable(R.drawable.ic_btn_examing);
                         }
 
 
                     }else if (examStatus.getEnter() == safeluck.drive.evaluation.DB.Constant.FINISH_ITEM){
 
                         if (examStatusList.get(0).getStartExam()==Constant.NONE_BEEN_START_EXAM){
-                            return getResources().getColor(R.color.examing);
+                            return getResources().getDrawable(R.drawable.ic_btn_daikao);
                         }
 
                         switch (type) {
@@ -191,7 +188,7 @@
                                 if (item_conents.contains("鍊掕溅鍏ュ簱")) {
                                     MyLog.i("璇ラ」鑰冭瘯澶辫触锛宼ype="+type);
 
-                                    return getResources().getColor(R.color.colorAccent);
+                                    return getResources().getDrawable(R.drawable.ic_btn_fail);
                                 }else{
                                     if (examStatus.getResult() ==1){
                                         MyLog.i("宸茬粡鎾斁杩囧�掕溅鍏ュ簱鍚堟牸");
@@ -200,12 +197,12 @@
                                         examStatusViewModel.updateItemExamResult(1,examStatus.getMap_id());
                                     }
 
-                                    return getResources().getColor(R.color.train_btn_return);
+                                    return getResources().getDrawable(R.drawable.ic_btn_succ);
                                 }
                             case 2:
                                 if (item_conents.contains("鍧¢亾瀹氱偣鍋滆溅鍜岃捣姝�")) {
                                     MyLog.i("璇ラ」鑰冭瘯澶辫触锛宼ype="+type);
-                                    return getResources().getColor(R.color.colorAccent);
+                                    return getResources().getDrawable(R.drawable.ic_btn_fail);
                                 }else{
                                     if (examStatus.getResult() ==1){
                                         MyLog.i("宸茬粡鎾斁杩囧潯閬撳畾鐐瑰仠杞﹀拰璧锋鍚堟牸鍚堟牸");
@@ -214,12 +211,12 @@
                                         examStatusViewModel.updateItemExamResult(1,examStatus.getMap_id());
                                     }
 
-                                    return getResources().getColor(R.color.train_btn_return);
+                                    return getResources().getDrawable(R.drawable.ic_btn_succ);
                                 }
                             case 3:
                                 if (item_conents.contains("渚ф柟鍋滆溅")) {
                                     MyLog.i("璇ラ」鑰冭瘯澶辫触锛宼ype="+type);
-                                    return getResources().getColor(R.color.colorAccent);
+                                    return getResources().getDrawable(R.drawable.ic_btn_fail);
                                 }else{
                                     if (examStatus.getResult() ==1){
                                         MyLog.i("宸茬粡鎾斁杩囦晶鏂瑰仠杞﹀悎鏍�");
@@ -228,12 +225,12 @@
                                         ExamPlatformData.getInstance().getTTS().speak("渚ф柟鍋滆溅鍚堟牸");
                                         examStatusViewModel.updateItemExamResult(1,examStatus.getMap_id());
                                     }
-                                    return getResources().getColor(R.color.train_btn_return);
+                                    return getResources().getDrawable(R.drawable.ic_btn_succ);
                                 }
                             case 4:
                                 if (item_conents.contains("鏇茬嚎琛岄┒")) {
                                     MyLog.i("璇ラ」鑰冭瘯澶辫触锛宼ype="+type);
-                                    return getResources().getColor(R.color.colorAccent);
+                                    return getResources().getDrawable(R.drawable.ic_btn_fail);
                                 }else{
                                     if (examStatus.getResult() ==1){
                                         MyLog.i("宸茬粡鎾斁杩囨洸绾胯椹跺悎鏍�");
@@ -242,12 +239,12 @@
                                         ExamPlatformData.getInstance().getTTS().speak("鏇茬嚎琛岄┒鍚堟牸");
                                         examStatusViewModel.updateItemExamResult(1,examStatus.getMap_id());
                                     }
-                                    return getResources().getColor(R.color.train_btn_return);
+                                    return getResources().getDrawable(R.drawable.ic_btn_succ);
                                 }
                             case 5:
                                 if (item_conents.contains("鐩磋杞集")) {
                                     MyLog.i("璇ラ」鑰冭瘯澶辫触锛宼ype="+type);
-                                    return getResources().getColor(R.color.colorAccent);
+                                    return getResources().getDrawable(R.drawable.ic_btn_fail);
                                 }else{
                                     if (examStatus.getResult() ==1){
                                         MyLog.i("宸茬粡鎾斁杩囩洿瑙掕浆寮悎鏍�");
@@ -256,7 +253,7 @@
                                         examStatusViewModel.updateItemExamResult(1,examStatus.getMap_id());
                                     }
 
-                                    return getResources().getColor(R.color.train_btn_return);
+                                    return getResources().getDrawable(R.drawable.ic_btn_succ);
                                 }
 
 
@@ -264,13 +261,14 @@
                         }
 
                     }else{
-                        return getResources().getColor(R.color.examing);
+                        return getResources().getDrawable(R.drawable.ic_btn_daikao);
                     }
                 }
             }
         }
-        return getResources().getColor(R.color.examing);
+        return getResources().getDrawable(R.drawable.ic_btn_daikao);
     }
+
     /**
      * 璺�冮」鐩� 姣忎釜椤圭洰鐨勯鑹插彉鍖�
      * @param type
@@ -463,13 +461,9 @@
                     examStatusList.addAll(examStatus);
                     mHandler.obtainMessage(ADD_DATA).sendToTarget();
                     if (examStatus.get(0).getStartExam() != Constant.NONE_BEEN_START_EXAM){
-                        btn_start_exam.setEnabled(false);
-                        tv_stop.setEnabled(true);
-                        iv_head.getDrawable().setLevel(1);
+                        btn_start_exam.setText("缁撴潫鑰冭瘯");
                     }else{
-                        btn_start_exam.setEnabled(true);
-                        tv_stop.setEnabled(false);
-                        iv_head.getDrawable().setLevel(0);
+                        btn_start_exam.setText("寮�濮嬭�冭瘯");
                     }
                     exam_type = examStatus.get(0).getStartExam();
                 }
@@ -484,51 +478,47 @@
                 for (Student student :
                         students) {
                     MyLog.i(TAG, "onChanged: " + student.toString());
-                    if (!TextUtils.isEmpty(student.getName())&&student.getStu_id()==ExamPlatformData.STU_ID){
-
-                        tv_name.setText(getString(R.string.name)+student.getName());
-                        tv_id.setText(getString(R.string.user_id)+student.getID());
-                        ExamPlatformData.getInstance().setId(student.getID());
-                        tv_sex.setText(getString(R.string.sex)+(student.getSex()==2?"濂�":"鐢�"));
-                        tv_start_time.setText(getString(R.string.begin_time)+Utils.formatTimeYYMMDDHHmmSS(student.getBegin_time()));
-                    }else if (!TextUtils.isEmpty(student.getName())&&student.getStu_id()==ExamPlatformData.COACH_ID){
-                        ExamPlatformData.getInstance().setCoachID(student.getID());
+                    if (ExamPlatformData.getInstance().getSign_mode()==ExamPlatformData.SIGN_MODE_EXAM){
+                        if (!TextUtils.isEmpty(student.getName())&&student.getStu_id()==ExamPlatformData.STU_ID){
+                            tv_name.setText(getNameColor(student.getName()));
+                            Picasso.with(_mActivity).load(student.getHead_url()).into(iv_head);
+                            ExamPlatformData.getInstance().setId(student.getID());
+                            tv_start_time.setText(getString(R.string.begin_time)+Utils.formatTimeYYMMDDHHmmSS(student.getBegin_time()));
+                        }else if (!TextUtils.isEmpty(student.getName())&&student.getStu_id()==ExamPlatformData.COACH_ID){
+                            ExamPlatformData.getInstance().setCoachID(student.getID());
+                            tv_coach_name.setText(getNameColor(student.getName()));
+                            Picasso.with(_mActivity).load(student.getHead_url()).into(iv_coach_head);
+                        }
                     }
+
                 }
             }
         });
 
 
-        AppStatusViewModel appStatusViewModel = ViewModelProviders.of(this).get(AppStatusViewModel.class);
-        appStatusViewModel.getAppStatus().observe(this, new Observer<AppStatus>() {
-            @Override
-            public void onChanged(AppStatus appStatus) {
-                if (appStatus != null){
-                    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(
-                            ExamPlatformData.getInstance().getExamplatformStatus())));
-                    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()]);
-                }
-            }
-        });
 
-        TimeViewModel timeViewModel = ViewModelProviders.of(this).get(TimeViewModel.class);
-        timeViewModel.getLiveDataTime().observe(this, new Observer<String>() {
-            @Override
-            public void onChanged(String s) {
-                tv_network_time.setText(s);
-            }
-        });
 
         return view;
     }
 
+    private SpannableString getNameColor(String str) {
+        SpannableString spannableString = new SpannableString(str);
+        spannableString.setSpan(new ForegroundColorSpan(Color.parseColor("#60FFFF")),0,
+                str.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
 
+        return spannableString;
+    }
 
 
     private void initView(View view) {
+        Log.i(TAG,"currTopFragment="+getTopFragment().getClass().getSimpleName());
+        if (HomeFragment.class.getSimpleName().equals(getTopFragment().getClass().getSimpleName())){
+            ((MainActivity)_mActivity).viewtitle.setVisibility(View.GONE);
+            ((MainActivity)_mActivity).btn_return.setVisibility(View.GONE);
+        }else{
+            ((MainActivity)_mActivity).viewtitle.setVisibility(View.VISIBLE);
+            ((MainActivity)_mActivity).btn_return.setVisibility(View.VISIBLE);
+        }
         btn_ids.add(R.id.btn_1);
         btn_ids.add(R.id.btn_2);
         btn_ids.add(R.id.btn_3);
@@ -540,32 +530,27 @@
         btn_ids.add(R.id.btn_9);
         btn_ids.add(R.id.btn_10);
 
-        view.findViewById(R.id.iv_head).setOnClickListener(this);
+        ((TextView)view.findViewById(R.id.tv_score_tip)).setText("褰撳墠鑰冭瘯寰楀垎");
         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);
         tv_name = view.findViewById(R.id.tv_name);
-        tv_id = view.findViewById(R.id.tv_ID);
+        tv_coach_name = view.findViewById(R.id.tv_coach_name);
         tv_start_time = view.findViewById(R.id.tv_start_time);
-        tv_sex = view.findViewById(R.id.tv_sex);
-        tv_work_platform = view.findViewById(R.id.platform);
 
-        iv_rtk_status = view.findViewById(R.id.iv_rtk_connect);
-        iv_rtk_status.getDrawable().setLevel(0);
+
         iv_head = view.findViewById(R.id.iv_head);
-        tv_sat_num = view.findViewById(R.id.tv_sat_num_instatus);
-        tv_qf = view.findViewById(R.id.tv_qf);
+        iv_head.setOnClickListener(this);
+        iv_coach_head = view.findViewById(R.id.iv_coach_head);
+        iv_coach_head.setOnClickListener(this);
         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);
 
-        tv_network_time.setText(Utils.getHHmm());
 
         tv_speed.setText(getResources().getString(R.string.speed,speed));
 
-        view.findViewById(R.id.btn_return).setOnClickListener(this);
         mListView = view.findViewById(R.id.lv);
         mListView.setFocusable(false);
         mListView.setOnTouchListener((v, ev) -> {
@@ -589,46 +574,42 @@
         btn_start_exam.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));
 
     }
 
-private LoadProgressDialog loadProgressDialog;
-MyDialogFragment myDialogFragment;
     @Override
     public void onClick(View v) {
         switch (v.getId()) {
             case R.id.btn_start:
-
-                clearArrayListResetTotalScore();
+                if (btn_start_exam.getText().toString().equalsIgnoreCase("寮�濮嬭�冭瘯")){
+                    clearArrayListResetTotalScore();
 
 
-                if (myDialogFragment == null){
-                    myDialogFragment = new MyDialogFragment();
+
+
+
+                    SelectDialog selectDialog = SelectDialog.newInstance("杩涜鍦哄湴鑰冭瘯","杩涜閬撹矾鑰冭瘯");
+                    selectDialog.setSelectedListener((int res)->{
+                        if (res != SelectDialog.SELECT_NONE){
+                            if (res== SelectDialog.FIRST){
+                                sendJK0202(2);
+                            }else{
+                                sendJK0202(3);
+                            }
+                        }
+                    });
+                    selectDialog.show(getFragmentManager(),"selectdialog");
+
+                }else{
+                    stopExam();
                 }
-                myDialogFragment.show(getFragmentManager(),"dialog");
-                myDialogFragment.setCallback(new MyDialogFragment.Callback() {
-                    @Override
-                    public void changKao() {
-                        sendJK0202(2);
-                    }
-
-                    @Override
-                    public void luKao() {
-                        sendJK0202(3);
-
-                    }
-                });
 
 
 
 
                 break;
-            case R.id.tv_stop:
-                Toast.makeText(_mActivity, "缁撴潫鑰冭瘯", Toast.LENGTH_SHORT).show();
-                stopExam();
 
-                break;
+
             case R.id.view_map:
                 if (ExamPlatformData.getInstance().getExamType()>ExamPlatformData.EXAM_TYPE_ChangKAO){
                     RoadDriveMapFragmentaa mapFragment = findFragment(RoadDriveMapFragmentaa.class);
@@ -647,20 +628,52 @@
                 }
 
                 break;
-            case R.id.btn_return:
-                _mActivity.onBackPressed();
-                break;
-            case R.id.iv_head:
-                MyLog.i(PlatFormConstant.HTTPTAG,"绛惧埌");
-                loadProgressDialog = LoadProgressDialog.newInstance("璇风◢鍚�...");
-                loadProgressDialog.setStyle(DialogFragment.STYLE_NORMAL,R.style.Dialog_FullScreen);
-                loadProgressDialog.showNow(getFragmentManager(),"loadingdiaolog");
 
-                //浠庢湇鍔″櫒鑾峰彇鐢ㄤ簬鐢熸垚绛惧埌浜岀淮鐮佺殑url
+            case R.id.iv_head:
+                MyLog.i(TAG,"瀛﹀憳绛惧埌");
+                if (ExamPlatformData.getInstance().getSign_mode() == ExamPlatformData.SIGN_MODE_TRAIN){
+                    Toast.makeText(_mActivity, "鎮ㄥ凡缁忓湪\"鍗曟満璁粌\"椤甸潰涓嬬鍒�", Toast.LENGTH_SHORT).show();
+                    return;
+                }
+                if (ExamPlatformData.getInstance().IsStuSign()){
+
+                    ExamPlatformData.getInstance().setStuSign(false);
+                    qrcode(1,false);
+
+                }else{
+                    ExamPlatformData.getInstance().setStuSign(true);
+                    qrcode(1,true);
+                    ExamPlatformData.getInstance().setSingnMode(ExamPlatformData.SIGN_MODE_EXAM);
+                }
+                break;
+            case R.id.iv_coach_head:
+                MyLog.i(PlatFormConstant.HTTPTAG,"鏁欑粌绛惧埌");
+                if (ExamPlatformData.getInstance().getSign_mode() == ExamPlatformData.SIGN_MODE_TRAIN){
+                    Toast.makeText(_mActivity, "鎮ㄥ凡缁忓湪\"鍗曟満璁粌\"椤甸潰涓嬬鍒�", Toast.LENGTH_SHORT).show();
+                    return;
+                }
+                if (ExamPlatformData.getInstance().IsCoachSign()){
+                    ExamPlatformData.getInstance().setCoachSign(false);
+                    qrcode(0,false);
+                }else{
+                    ExamPlatformData.getInstance().setCoachSign(true);
+                    qrcode(0,true);
+                    ExamPlatformData.getInstance().setSingnMode(ExamPlatformData.SIGN_MODE_EXAM);
+                }
+
                 break;
         }
     }
-
+    private void qrcode(int type,boolean isSign) {
+        content = "87,"+String.valueOf(type)+ ","+ExamPlatformData.getInstance().getPhone()
+                +(isSign?",signin":",signout");
+        Log.i(TAG,String.format("浜岀淮鐮佸唴瀹癸細%s",content));
+        byte[] bytes = Utils.qrencrypt(content.getBytes(),"safeluck");
+        String str = Base64.encodeToString(bytes,Base64.DEFAULT);
+        Log.i(TAG,"base64鍔犲瘑鍚庣殑瀛楃涓�="+str);
+        QRCodeDialog qrCodeDialog = QRCodeDialog.newInstance(str);
+        qrCodeDialog.show(getFragmentManager(),"qrdialog" );
+    }
     private void sendJK0202(int type) {
 
         final JKMessage0202 jkMessage0202 = new JKMessage0202();
@@ -718,7 +731,7 @@
         item_id = 0;
 
         failedProjViewModel.deleteAll();
-        tv_total_score.setText(String.valueOf(currTotalScore));
+        setTotalScoreText();
 
 
         ExamPlatformData.getInstance().getTTS().speak("缁撴潫鑰冭瘯");
@@ -757,6 +770,7 @@
     public void onAttach(Context context) {
         super.onAttach(context);
         CEventCenter.onBindEvent(true,icEventListener,Constant.BIND_SPEED_TOPIC);
+
     }
 
     @Override
@@ -765,5 +779,20 @@
         CEventCenter.onBindEvent(false,icEventListener,Constant.BIND_SPEED_TOPIC);
     }
 
+    private void setTotalScoreText() {
+        String totalstr=String.format(getString(R.string.total_score),currTotalScore);
+        SpannableString msp = new SpannableString(totalstr);
+        msp.setSpan(new ForegroundColorSpan(Color.parseColor("#A1A1A3")),totalstr.length()-1,totalstr.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+        msp.setSpan(new AbsoluteSizeSpan(13),totalstr.length()-1,totalstr.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
 
+
+        tv_total_score.setText(msp);
+    }
+
+    @Override
+    public void onDestroyView() {
+        super.onDestroyView();
+        ((MainActivity)_mActivity).viewtitle.setVisibility(View.GONE);
+        ((MainActivity)_mActivity).btn_return.setVisibility(View.GONE);
+    }
 }

--
Gitblit v1.8.0