Ver Fonte

1.修改智能测评历史记录详情展示参数

王鹏鹏 há 2 anos atrás
pai
commit
5ddbdbd993

+ 7 - 0
baselib/src/main/java/com/yingyangfly/baselib/db/QuestionRecordsBean.java

@@ -285,4 +285,11 @@ public class QuestionRecordsBean {
     public void setIsCorrect(String isCorrect) {
         this.isCorrect = isCorrect;
     }
+
+    public String getQuestionInfo() {
+        if (TextUtils.isEmpty(getScore())) {
+            return getTitle();
+        }
+        return getTitle() + " (" + getScore() + ")";
+    }
 }

+ 24 - 0
evaluation/src/main/java/com/yingyangfly/evaluation/adapter/OtherEvaluationHistoryAdapter.kt

@@ -1,10 +1,12 @@
 package com.yingyangfly.evaluation.adapter
 
 import android.annotation.SuppressLint
+import android.text.TextUtils
 import com.yingyangfly.baselib.adapter.BaseDataBindingAdapter
 import com.yingyangfly.baselib.ext.setOnSingleClickListener
 import com.yingyangfly.evaluation.R
 import com.yingyangfly.evaluation.databinding.ItemOtherEvaluationHistoryBinding
+import com.yingyangfly.evaluation.entity.EvaluationTypeBean
 import com.yingyangfly.evaluation.entity.SelectAnswerRecord
 
 /**
@@ -15,11 +17,33 @@ class OtherEvaluationHistoryAdapter(override val layoutId: Int = R.layout.item_o
 
     var onClickListener: ((bean: SelectAnswerRecord) -> Unit)? = null
 
+
+    private var evaluationTypeList = mutableListOf<EvaluationTypeBean>()
+
+    @SuppressLint("NotifyDataSetChanged")
+    fun setEvaluationType(list: List<EvaluationTypeBean>) {
+        evaluationTypeList.clear()
+        if (list.isNullOrEmpty().not()) {
+            evaluationTypeList.addAll(list)
+        }
+        notifyDataSetChanged()
+    }
+
     @SuppressLint("SetTextI18n")
     override fun onBindViewHolder(
         binding: ItemOtherEvaluationHistoryBinding, item: SelectAnswerRecord, position: Int
     ) {
         binding.data = item
+        var questionType = ""
+        if (evaluationTypeList.isNullOrEmpty().not()) {
+            evaluationTypeList.forEach {
+                if (TextUtils.equals(it.dictValue, item.questionType)) {
+                    questionType = it.dictLabel
+                }
+            }
+        }
+        binding.tvQuestionType.text = questionType
+
         if (position % 2 == 0) {
             binding.evaluationLayout.setBackgroundResource(R.drawable.bg_other_evaluation_result)
         } else {

+ 2 - 1
evaluation/src/main/java/com/yingyangfly/evaluation/entity/SelectAnswerRecordBean.kt

@@ -35,5 +35,6 @@ data class SelectAnswerRecord(
     val recordId: String,
     val updateBy: String,
     val updateTime: String,
-    val usedTime: String
+    val usedTime: String,
+    val questionType: String
 )

+ 22 - 0
evaluation/src/main/java/com/yingyangfly/evaluation/history/EvaluationHistoryActivity.kt

@@ -18,6 +18,7 @@ import com.yingyangfly.evaluation.adapter.EvaluationHistoryAdapter
 import com.yingyangfly.evaluation.adapter.OtherEvaluationHistoryAdapter
 import com.yingyangfly.evaluation.databinding.ActivityEvaluationHistoryBinding
 import com.yingyangfly.evaluation.entity.EvaluationHistoryBean
+import com.yingyangfly.evaluation.entity.EvaluationTypeBean
 import com.yingyangfly.evaluation.entity.SelectAnswerRecord
 
 
@@ -43,6 +44,11 @@ class EvaluationHistoryActivity :
     private var results = mutableListOf<EvaluationHistoryBean>()
     private val adapter by lazy { EvaluationHistoryAdapter() }
 
+    /**
+     * 试题类型
+     */
+    private var evaluationTypeList = mutableListOf<EvaluationTypeBean>()
+
     override fun initViews() {
         jumpType = intent.getStringExtra("url") ?: ""
         binding {
@@ -101,6 +107,7 @@ class EvaluationHistoryActivity :
         } else {
             binding.radioProfessionalEvaluation.isChecked = true
         }
+        getSelectByDictType()
     }
 
     override fun onResume() {
@@ -221,4 +228,19 @@ class EvaluationHistoryActivity :
             }
         })
     }
+
+    /**
+     * 获取试题类型
+     */
+    private fun getSelectByDictType() {
+        viewModel.getSelectByDictType(fail = {
+
+        }, success = {
+            evaluationTypeList.clear()
+            if (it.isNullOrEmpty().not()) {
+                evaluationTypeList.addAll(it!!)
+            }
+            otherEvaluationHistoryAdapter.setEvaluationType(evaluationTypeList)
+        })
+    }
 }

+ 13 - 0
evaluation/src/main/java/com/yingyangfly/evaluation/history/EvaluationHistoryViewModel.kt

@@ -5,6 +5,7 @@ import com.yingyangfly.baselib.mvvm.BaseViewModel
 import com.yingyangfly.baselib.net.XUtils
 import com.yingyangfly.baselib.utils.GsonUtil
 import com.yingyangfly.evaluation.entity.EvaluationHistoryBean
+import com.yingyangfly.evaluation.entity.EvaluationTypeBean
 import com.yingyangfly.evaluation.entity.GetSelectAnswerRecordBean
 import com.yingyangfly.evaluation.entity.SelectAnswerRecordBean
 import com.yingyangfly.evaluation.net.EVALUATION_API
@@ -58,4 +59,16 @@ class EvaluationHistoryViewModel : BaseViewModel() {
     }.runUI(
         success, fail
     )
+
+    /**
+     * 获取试题类型
+     */
+    fun getSelectByDictType(
+        fail: ((msg: String) -> Unit)? = null,
+        success: ((success: List<EvaluationTypeBean>?) -> Unit)? = null,
+    ) = launchFlow(true) {
+        EVALUATION_API.getSelectByDictType("exam_type")
+    }.runUI(
+        success, fail
+    )
 }

+ 1 - 1
evaluation/src/main/java/com/yingyangfly/evaluation/otherevaluation/OtherEvaluationViewModel.kt

@@ -17,7 +17,7 @@ import com.yingyangfly.evaluation.net.EVALUATION_API
 class OtherEvaluationViewModel : BaseViewModel() {
 
     /**
-     * 获取推送消息类型
+     * 获取试题类型
      */
     fun getSelectByDictType(
         fail: ((msg: String) -> Unit)? = null,

+ 0 - 2
evaluation/src/main/java/com/yingyangfly/evaluation/questionlist/QuestionListViewModel.kt

@@ -1,6 +1,5 @@
 package com.yingyangfly.evaluation.questionlist
 
-import android.util.Log
 import com.yingyangfly.baselib.mvvm.BaseViewModel
 import com.yingyangfly.baselib.net.XUtils
 import com.yingyangfly.baselib.utils.GsonUtil
@@ -21,7 +20,6 @@ class QuestionListViewModel : BaseViewModel() {
         fail: ((msg: String) -> Unit)? = null,
         success: ((success: Any?) -> Unit)? = null,
     ) = launchFlow(true) {
-        Log.e("wpp", "--------------->" + GsonUtil.GsonString(saveAnswerRecordBean))
         val body = XUtils.createJson(GsonUtil.GsonString(saveAnswerRecordBean))
         EVALUATION_API.saveAnswerRecord(body)
     }.runUI(

+ 2 - 2
evaluation/src/main/res/layout/activity_evaluation_history.xml

@@ -291,9 +291,9 @@
                     <androidx.appcompat.widget.AppCompatTextView
                         android:layout_width="0dp"
                         android:layout_height="match_parent"
-                        android:layout_weight="1.8"
+                        android:layout_weight="1"
                         android:gravity="center"
-                        android:text="@string/id"
+                        android:text="@string/assessment_type"
                         android:textColor="@android:color/white"
                         android:textSize="@dimen/divider_24px"
                         android:textStyle="bold" />

+ 1 - 1
evaluation/src/main/res/layout/activity_question_list.xml

@@ -69,7 +69,7 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_marginTop="@dimen/divider_27px"
-                    android:text="@{data.getTitle()}"
+                    android:text="@{data.getQuestionInfo()}"
                     android:textColor="@color/color_FF222222"
                     android:textSize="@dimen/divider_34px"
                     android:textStyle="bold"

+ 2 - 2
evaluation/src/main/res/layout/item_other_evaluation_history.xml

@@ -17,11 +17,11 @@
         android:orientation="horizontal">
 
         <androidx.appcompat.widget.AppCompatTextView
+            android:id="@+id/tvQuestionType"
             android:layout_width="0dp"
             android:layout_height="match_parent"
-            android:layout_weight="1.8"
+            android:layout_weight="1"
             android:gravity="center"
-            android:text="@{data.recordId}"
             android:textColor="@color/color_FF4A76FF"
             android:textSize="@dimen/divider_24px"
             android:textStyle="bold" />