Quellcode durchsuchen

1.添加脑能力值功能

王鹏鹏 vor 2 Jahren
Ursprung
Commit
e63495df55

+ 2 - 1
.idea/misc.xml

@@ -616,7 +616,7 @@
         <entry key="..\:/workspace/hcp-pads/workbenches/src/main/res/layout/activity_service_package.xml" value="0.3953084274543875" />
         <entry key="..\:/workspace/hcp-pads/workbenches/src/main/res/layout/activity_train_content_details.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/workbenches/src/main/res/layout/activity_train_data.xml" value="0.23697916666666666" />
-        <entry key="..\:/workspace/hcp-pads/workbenches/src/main/res/layout/fragment_brain_ability.xml" value="0.49295774647887325" />
+        <entry key="..\:/workspace/hcp-pads/workbenches/src/main/res/layout/fragment_brain_ability.xml" value="0.176" />
         <entry key="..\:/workspace/hcp-pads/workbenches/src/main/res/layout/fragment_data_monitor.xml" value="0.8800000000000001" />
         <entry key="..\:/workspace/hcp-pads/workbenches/src/main/res/layout/fragment_train_content.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/workbenches/src/main/res/layout/fragment_train_report.xml" value="0.41704857928505956" />
@@ -628,6 +628,7 @@
         <entry key="..\:/workspace/hcp-pads/workbenches/src/main/res/layout/item_service_package_type.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/workbenches/src/main/res/layout/item_task.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/workbenches/src/main/res/layout/item_train_report.xml" value="0.536" />
+        <entry key="..\:/workspace/hcp-pads/workbenches/src/main/res/layout/item_training_content.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/yingyangfly/app/src/main/res/layout/activity_main.xml" value="0.22826086956521738" />
         <entry key="..\:/workspace/yingyangfly/app/src/main/res/layout/activity_push.xml" value="0.22239583333333332" />
         <entry key="..\:/workspace/yingyangfly/baselib/src/main/res/drawable/bg_center_toast.xml" value="0.2265" />

+ 22 - 3
workbenches/src/main/java/com/yingyang/workbenches/brainability/BrainAbilityFragment.kt

@@ -1,8 +1,6 @@
 package com.yingyang.workbenches.brainability
 
-import android.graphics.Color
 import android.graphics.Typeface
-import android.text.TextUtils
 import androidx.recyclerview.widget.LinearLayoutManager
 import androidx.recyclerview.widget.RecyclerView
 import com.github.mikephil.charting.components.XAxis
@@ -10,6 +8,7 @@ import com.github.mikephil.charting.components.YAxis
 import com.github.mikephil.charting.data.Entry
 import com.github.mikephil.charting.data.LineData
 import com.github.mikephil.charting.data.LineDataSet
+import com.github.mikephil.charting.formatter.ValueFormatter
 import com.yingyang.workbenches.R
 import com.yingyang.workbenches.adapter.BrainAbilityTypeAdapter
 import com.yingyang.workbenches.databinding.FragmentBrainAbilityBinding
@@ -82,12 +81,25 @@ class BrainAbilityFragment :
                     }
                 }
                 binding.lineChart.data = lineData
+                val xAxis: XAxis = binding.lineChart.xAxis
+                if (xType.isEmpty().not()) {
+                    setAXisData(xAxis)
+                }
                 binding.lineChart.invalidate()
             }
             adapter.setData(variationTendencyByTypeBean)
         })
     }
 
+    private fun setAXisData(xAxis: XAxis) {
+        val valueFormatter = object : ValueFormatter() {
+            override fun getFormattedValue(value: Float): String {
+                return xType[value.toInt() % xType.size]
+            }
+        }
+        xAxis.valueFormatter = valueFormatter
+    }
+
     /**
      * 设置线条颜色
      */
@@ -122,6 +134,13 @@ class BrainAbilityFragment :
         binding.lineChart.description = null
         //Y 自下往上动态绘制  这里添加初始的动画效果
         binding.lineChart.animateY(1000)
+        binding.lineChart.setTouchEnabled(true)
+        binding.lineChart.setScaleEnabled(false)
+        binding.lineChart.setPinchZoom(true)
+        binding.lineChart.isDragEnabled = true
+        binding.lineChart.extraBottomOffset = 20f
+        binding.lineChart.extraRightOffset = 30f
+        binding.lineChart.extraLeftOffset = 10f//间距
         //获取柱状图的X轴
         val xAxis: XAxis = binding.lineChart.xAxis
         //下面两个是获取Y轴  包括左右
@@ -146,7 +165,7 @@ class BrainAbilityFragment :
         //设置X轴显示
         axis.isEnabled = true
         axis.textColor = resources.getColor(R.color.color_FF222222)
-        axis.textSize = resources.getDimension(R.dimen.divider_20px)
+        axis.textSize = 12f
         axis.setLabelCount(7, true)
         //y轴0刻度
         axisLeft.axisMinimum = 0f

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

@@ -44,7 +44,7 @@ interface WorkbenchesApiService {
      * 获取疗程列表
      */
     @POST("app/task/findMyTask")
-    suspend fun findMyTask(@Query("treatmentId") treatmentId: String): BaseResp<List<TrainContentBean>>
+    suspend fun findMyTask(): BaseResp<List<TrainContentBean>>
 
     /**
      * 获取训练内容列表

+ 4 - 34
workbenches/src/main/java/com/yingyang/workbenches/traincontent/TrainContentFragment.kt

@@ -1,12 +1,8 @@
 package com.yingyang.workbenches.traincontent
 
-import android.text.SpannableString
 import com.yingyang.workbenches.adapter.TrainContentAdapter
 import com.yingyang.workbenches.databinding.FragmentTrainContentBinding
 import com.yingyang.workbenches.entity.TrainContentBean
-import com.yingyang.workbenches.entity.TreatmentBean
-import com.yingyang.workbenches.widget.OnSpinnerItemSelectedListener
-import com.yingyang.workbenches.widget.SpinnerTextFormatter
 import com.yingyangfly.baselib.ext.toast
 import com.yingyangfly.baselib.mvvm.BaseMVVMFragment
 import com.yingyangfly.baselib.router.RouterUrlCommon
@@ -37,13 +33,7 @@ class TrainContentFragment :
     }
 
     override fun initListener() {
-        binding.treatmentSpinner.onSpinnerItemSelectedListener =
-            OnSpinnerItemSelectedListener { parent, view, position, id ->
-                val bean = binding.treatmentSpinner.selectedItem as TreatmentBean
-                adapter.showEmptyView = false
-                adapter.clearData()
-                findMyTask(bean.id)
-            }
+
     }
 
     override fun initData() {
@@ -55,35 +45,15 @@ class TrainContentFragment :
      */
     @Subscribe(code = RxBusCodes.GetTrainContent, threadMode = ThreadMode.MAIN)
     fun loadData() {
-        findAllTreatment()
-    }
-
-    /**
-     * 获取疗程列表
-     */
-    private fun findAllTreatment() {
-        viewModel.findAllTreatment(fail = {
-            it.toast()
-        }, success = {
-            if (it.isNullOrEmpty().not()) {
-                val textFormatter: SpinnerTextFormatter<*> =
-                    SpinnerTextFormatter { bean: TreatmentBean ->
-                        SpannableString(bean.packageName)
-                    }
-                binding.treatmentSpinner.setSpinnerTextFormatter(textFormatter)
-                binding.treatmentSpinner.setSelectedTextFormatter(textFormatter)
-                binding.treatmentSpinner.attachDataSource(it!!)
-                findMyTask(it[0].id)
-            }
-        })
+        findMyTask()
     }
 
     /**
      * 获取训练内容列表
      */
-    private fun findMyTask(treatmentId: String) {
+    private fun findMyTask() {
         trainContentBeanList.clear()
-        viewModel.findMyTask(treatmentId, fail = {
+        viewModel.findMyTask(fail = {
             it.toast()
         }, success = {
             trainContentBeanList.clear()

+ 1 - 16
workbenches/src/main/java/com/yingyang/workbenches/traincontent/TrainContentViewModel.kt

@@ -1,7 +1,6 @@
 package com.yingyang.workbenches.traincontent
 
 import com.yingyang.workbenches.entity.TrainContentBean
-import com.yingyang.workbenches.entity.TreatmentBean
 import com.yingyang.workbenches.net.WORKBENCHES_API
 import com.yingyangfly.baselib.mvvm.BaseViewModel
 
@@ -11,28 +10,14 @@ import com.yingyangfly.baselib.mvvm.BaseViewModel
  */
 class TrainContentViewModel : BaseViewModel() {
 
-    /**
-     * 获取训练内容列表
-     */
-    fun findAllTreatment(
-        fail: ((msg: String) -> Unit)? = null,
-        success: ((success: List<TreatmentBean>?) -> Unit)? = null,
-    ) = launchFlow(false) {
-        WORKBENCHES_API.findAllTreatment()
-    }.runUI(
-        success,
-        fail
-    )
-
     /**
      * 获取疗程列表
      */
     fun findMyTask(
-        treatmentId: String,
         fail: ((msg: String) -> Unit)? = null,
         success: ((success: List<TrainContentBean>?) -> Unit)? = null,
     ) = launchFlow(true) {
-        WORKBENCHES_API.findMyTask(treatmentId)
+        WORKBENCHES_API.findMyTask()
     }.runUI(
         success,
         fail

+ 1 - 38
workbenches/src/main/res/layout/fragment_train_content.xml

@@ -12,43 +12,6 @@
         android:layout_width="match_parent"
         android:layout_height="match_parent">
 
-        <androidx.constraintlayout.widget.ConstraintLayout
-            android:id="@+id/treatmentLayout"
-            android:layout_width="@dimen/divider_335px"
-            android:layout_height="@dimen/divider_62px"
-            android:layout_marginTop="@dimen/divider_60px"
-            android:background="@drawable/bg_training_content"
-            android:gravity="center"
-            app:layout_constraintEnd_toEndOf="parent"
-            app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintTop_toTopOf="parent">
-
-            <com.yingyang.workbenches.widget.NiceSpinner
-                android:id="@+id/treatmentSpinner"
-                android:layout_width="@dimen/divider_327px"
-                android:layout_height="@dimen/divider_54px"
-                android:gravity="center_horizontal"
-                android:paddingStart="@dimen/divider_32px"
-                android:textColor="@color/color_FF4773FF"
-                android:textSize="@dimen/divider_28px"
-                app:hideArrow="true"
-                app:layout_constraintBottom_toBottomOf="parent"
-                app:layout_constraintEnd_toEndOf="parent"
-                app:layout_constraintStart_toStartOf="parent"
-                app:layout_constraintTop_toTopOf="parent"
-                tools:ignore="RtlSymmetry" />
-
-            <androidx.appcompat.widget.AppCompatImageView
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_marginEnd="@dimen/divider_13px"
-                android:src="@mipmap/icon_arrow_down"
-                app:layout_constraintBottom_toBottomOf="parent"
-                app:layout_constraintEnd_toEndOf="parent"
-                app:layout_constraintTop_toTopOf="parent" />
-
-        </androidx.constraintlayout.widget.ConstraintLayout>
-
         <androidx.constraintlayout.widget.ConstraintLayout
             android:id="@+id/contentTitleLayout"
             android:layout_width="match_parent"
@@ -59,7 +22,7 @@
             android:background="@drawable/bg_training_content_title"
             app:layout_constraintEnd_toEndOf="parent"
             app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintTop_toBottomOf="@+id/treatmentLayout">
+            app:layout_constraintTop_toTopOf="parent">
 
             <androidx.appcompat.widget.AppCompatTextView
                 android:id="@+id/tvDate"

+ 2 - 0
workbenches/src/main/res/layout/item_training_content.xml

@@ -50,6 +50,8 @@
             style="@style/item_training_content_appcompattextview"
             android:layout_marginStart="@dimen/divider_32px"
             android:text="@{data.gameNames}"
+            android:paddingTop="@dimen/divider_6px"
+            android:paddingBottom="@dimen/divider_8px"
             app:layout_constraintEnd_toStartOf="@id/tvDetail"
             app:layout_constraintHorizontal_weight="2"
             app:layout_constraintStart_toEndOf="@id/tvTrainingProgress"