Ver Fonte

1.添加测评条件判断

王鹏鹏 há 2 anos atrás
pai
commit
76396ea070

+ 9 - 3
baselib/schemas/com.yingyangfly.baselib.db.AppDataBase/1.json

@@ -2,11 +2,11 @@
   "formatVersion": 1,
   "database": {
     "version": 1,
-    "identityHash": "474960d2bdaae4563ccbe0029c7e2b91",
+    "identityHash": "5c1566a338ca6c5d6398be75acd7150c",
     "entities": [
       {
         "tableName": "Questions",
-        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER NOT NULL, `isJudge` TEXT, `orgCode` TEXT, `orgName` TEXT, `reviewDesc` TEXT, `reviewItem` TEXT, `reviewScore` TEXT, `reviewType` TEXT, `type` TEXT, `updateBy` TEXT, `viewType` TEXT, `inputString` TEXT, `reviewId` INTEGER NOT NULL, `reviewAnswer` TEXT, `correct` TEXT, `score` TEXT, `usedTime` TEXT, PRIMARY KEY(`id`))",
+        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER NOT NULL, `isJudge` TEXT, `orgCode` TEXT, `orgName` TEXT, `reviewDesc` TEXT, `reviewItem` TEXT, `reviewScore` TEXT, `reviewType` TEXT, `type` TEXT, `updateBy` TEXT, `viewType` TEXT, `inputString` TEXT, `reviewId` INTEGER NOT NULL, `reviewAnswer` TEXT, `correct` TEXT, `score` TEXT, `usedTime` TEXT, `reviewTaskId` TEXT, PRIMARY KEY(`id`))",
         "fields": [
           {
             "fieldPath": "id",
@@ -109,6 +109,12 @@
             "columnName": "usedTime",
             "affinity": "TEXT",
             "notNull": false
+          },
+          {
+            "fieldPath": "reviewTaskId",
+            "columnName": "reviewTaskId",
+            "affinity": "TEXT",
+            "notNull": false
           }
         ],
         "primaryKey": {
@@ -338,7 +344,7 @@
     "views": [],
     "setupQueries": [
       "CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
-      "INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '474960d2bdaae4563ccbe0029c7e2b91')"
+      "INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '5c1566a338ca6c5d6398be75acd7150c')"
     ]
   }
 }

+ 6 - 0
home/src/main/java/com/yingyangfly/home/entity/ReviewTask.kt

@@ -0,0 +1,6 @@
+package com.yingyangfly.home.entity
+
+class ReviewTask {
+    var type: String = ""
+    var stasts: String = ""
+}

+ 32 - 0
home/src/main/java/com/yingyangfly/home/entity/ReviewTaskListBean.kt

@@ -0,0 +1,32 @@
+package com.yingyangfly.home.entity
+
+data class ReviewTaskListBean(
+    val countId: Any,
+    val current: Int,
+    val maxLimit: Any,
+    val optimizeCountSql: Boolean,
+    val orders: List<Any>,
+    val pages: Int,
+    val records: List<Records>,
+    val searchCount: Boolean,
+    val size: Int,
+    val total: Int
+)
+
+data class Records(
+    val createBy: Any,
+    val createTime: Any,
+    val id: String,
+    val limit: Int,
+    val orgCode: Any,
+    val orgName: String,
+    val page: Int,
+    val reviewId: Any,
+    val reviewTaskId: String,
+    val reviewTaskName: String,
+    val status: String,
+    val type: String,
+    val updateBy: Any,
+    val updateTime: Any,
+    val userId: String
+)

+ 28 - 2
home/src/main/java/com/yingyangfly/home/evaluation/EvaluationActivity.kt

@@ -22,6 +22,8 @@ import com.yingyangfly.baselib.utils.JumpUtil
 class EvaluationActivity : BaseMVVMActivity<ActivityEvaluationBinding, EvaluationViewModel>(),
     View.OnTouchListener {
 
+    private var reviewTaskId = ""
+
     override fun initViews() {
 
     }
@@ -49,6 +51,9 @@ class EvaluationActivity : BaseMVVMActivity<ActivityEvaluationBinding, Evaluatio
             }, success = {
                 if (it.isNullOrEmpty().not()) {
                     questionsList.addAll(it!!)
+                    questionsList.forEach {
+                        it.reviewTaskId = reviewTaskId
+                    }
                     dao?.insertAll(questionsList)
                 }
                 if (TextUtils.equals("MMSE", type)) {
@@ -72,10 +77,10 @@ class EvaluationActivity : BaseMVVMActivity<ActivityEvaluationBinding, Evaluatio
                 v.startAnimation(getEndAnimation())
                 when (v.id) {
                     R.id.mmseLayout -> {
-                        loadData("MMSE")
+                        getReviewTaskList("MMSE", "0")
                     }
                     R.id.mocaLayout -> {
-                        loadData("MOCA")
+                        getReviewTaskList("MOCA", "0")
                     }
                     R.id.layoutHome -> {
                         finish()
@@ -90,4 +95,25 @@ class EvaluationActivity : BaseMVVMActivity<ActivityEvaluationBinding, Evaluatio
         }
         return true
     }
+
+    /**
+     * 获取测评任务
+     */
+    private fun getReviewTaskList(type: String, status: String) {
+        viewModel.getReviewTaskList(type, status, fail = {
+            it.toast()
+        }, success = {
+            if (it != null) {
+                if (it.records.isNullOrEmpty().not()) {
+                    val record = it.records[0]
+                    if (record != null) {
+                        reviewTaskId = record.reviewTaskId
+                    }
+                    loadData(type)
+                } else {
+                    "您当前没有测评热任务,无需测评".toast()
+                }
+            }
+        })
+    }
 }

+ 22 - 0
home/src/main/java/com/yingyangfly/home/evaluation/EvaluationViewModel.kt

@@ -5,6 +5,8 @@ import com.yingyangfly.baselib.mvvm.BaseViewModel
 import com.yingyangfly.baselib.net.XUtils
 import com.yingyangfly.baselib.utils.GsonUtil
 import com.yingyangfly.home.entity.QuestionsTypeBean
+import com.yingyangfly.home.entity.ReviewTask
+import com.yingyangfly.home.entity.ReviewTaskListBean
 import com.yingyangfly.home.net.HOME_API
 
 /**
@@ -30,4 +32,24 @@ class EvaluationViewModel : BaseViewModel() {
         success,
         fail
     )
+
+    /**
+     * 获取mmse试题
+     */
+    fun getReviewTaskList(
+        method: String,
+        stast: String,
+        fail: ((msg: String) -> Unit)? = null,
+        success: ((success: ReviewTaskListBean?) -> Unit)? = null,
+    ) = launchFlow(true) {
+        val requestBean = ReviewTask().apply {
+            type = method
+            stasts = stast
+        }
+        val body = XUtils.createJson(GsonUtil.GsonString(requestBean))
+        HOME_API.getReviewTaskList(body)
+    }.runUI(
+        success,
+        fail
+    )
 }

+ 6 - 0
home/src/main/java/com/yingyangfly/home/net/HomeApiService.kt

@@ -65,4 +65,10 @@ interface HomeApiService {
         @Query("voiceMsg") voiceMsg: String
     ): BaseResp<String>
 
+    /**
+     * 获取测评任务
+     */
+    @POST("app/reviewTask/list")
+    suspend fun getReviewTaskList(@Body requestBody: RequestBody): BaseResp<ReviewTaskListBean>
+
 }