فهرست منبع

1.修改数据监控页面UI

王鹏鹏 2 سال پیش
والد
کامیت
896689f846

+ 17 - 5
workbenches/src/main/java/com/yingyang/workbenches/datamonitor/DataMonitorFragment.kt

@@ -10,6 +10,7 @@ import com.yingyang.workbenches.databinding.FragmentDataMonitorBinding
 import com.yingyang.workbenches.entity.DayBean
 import com.yingyang.workbenches.entity.MonthRecordBean
 import com.yingyangfly.baselib.ext.setOnSingleClickListener
+import com.yingyangfly.baselib.ext.toast
 import com.yingyangfly.baselib.mvvm.BaseMVVMFragment
 import com.yingyangfly.baselib.utils.RxBusCodes
 import com.yingyangfly.baselib.utils.StringUtil
@@ -39,11 +40,6 @@ class DataMonitorFragment : BaseMVVMFragment<FragmentDataMonitorBinding, DataMon
             rvDate.layoutManager = GridLayoutManager(mContext, 7)
             rvDate.adapter = dateAdapter
             dateAdapter.setData(dataList)
-            val summarize =
-                "您已开通专属训练<font color='#FF0000'>10</font>天,共累计完成了专属训练<font color='#FF0000'>5</font>次"
-            tvSummarize.setText(Html.fromHtml(summarize))
-            val trainingTime = "累计训练时长(含自由训练)<font color='#FF0000'>300</font>分钟"
-            tvTrainingTime.setText(Html.fromHtml(trainingTime))
         }
     }
 
@@ -63,6 +59,22 @@ class DataMonitorFragment : BaseMVVMFragment<FragmentDataMonitorBinding, DataMon
 
     override fun initData() {
         loadData()
+        getStatisticRecord()
+    }
+
+    private fun getStatisticRecord() {
+        viewModel.getStatisticRecord(fail = {
+            it.toast()
+        }, success = {
+            if (it != null) {
+                val summarize =
+                    "您已开通专属训练<font color='#FF0000'>" + it.taskCount + "</font>天,共累计完成了专属训练<font color='#FF0000'>" + it.successCount + "</font>次"
+                binding.tvSummarize.setText(Html.fromHtml(summarize))
+                val trainingTime =
+                    "累计训练时长(含自由训练)<font color='#FF0000'>" + it.trainTime + "</font>分钟"
+                binding.tvTrainingTime.setText(Html.fromHtml(trainingTime))
+            }
+        })
     }
 
     /**

+ 16 - 0
workbenches/src/main/java/com/yingyang/workbenches/datamonitor/DataMonitorViewModel.kt

@@ -2,6 +2,7 @@ package com.yingyang.workbenches.datamonitor
 
 import com.yingyang.workbenches.entity.GetMonthRecordBean
 import com.yingyang.workbenches.entity.MonthRecordBean
+import com.yingyang.workbenches.entity.StatisticRecordBean
 import com.yingyang.workbenches.net.WORKBENCHES_API
 import com.yingyangfly.baselib.mvvm.BaseViewModel
 import com.yingyangfly.baselib.net.XUtils
@@ -30,4 +31,19 @@ class DataMonitorViewModel : BaseViewModel() {
         success,
         fail
     )
+
+    /**
+     * 统计训练天数、时长
+     */
+    fun getStatisticRecord(
+        fail: ((msg: String) -> Unit)? = null,
+        success: ((success: StatisticRecordBean?) -> Unit)? = null,
+    ) = launchFlow(false) {
+        WORKBENCHES_API.getStatisticRecord()
+    }.runUI(
+        success,
+        fail
+    )
+
+
 }

+ 10 - 0
workbenches/src/main/java/com/yingyang/workbenches/entity/StatisticRecordBean.kt

@@ -0,0 +1,10 @@
+package com.yingyang.workbenches.entity
+
+/**
+ * 统计训练天数、时长接口bean
+ */
+data class StatisticRecordBean(
+    val taskCount: String,
+    val trainTime: String,
+    val successCount: String
+)

+ 6 - 0
workbenches/src/main/java/com/yingyang/workbenches/net/WorkbenchesApiService.kt

@@ -98,4 +98,10 @@ interface WorkbenchesApiService {
      */
     @POST("game/play/record/queryMonthRecord")
     suspend fun getMonthRecord(@Body requestBody: RequestBody): BaseResp<List<MonthRecordBean>>
+
+    /**
+     * 统计训练天数、时长
+     */
+    @POST("game/play/record/statisticRecord")
+    suspend fun getStatisticRecord(): BaseResp<StatisticRecordBean>
 }