Browse Source

1.添加套餐列表接口和UI

王鹏鹏 2 years ago
parent
commit
a7366ed9ed

+ 11 - 1
.idea/misc.xml

@@ -46,6 +46,14 @@
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_item_task.xml" value="0.2165" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_record.xml" value="0.2265" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_record_title.xml" value="0.2265" />
+        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_select_training_package.xml" value="0.219" />
+        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_select_training_package_selected.xml" value="0.219" />
+        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_service_package_button.xml" value="0.219" />
+        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_service_package_left.xml" value="0.219" />
+        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_service_package_right.xml" value="0.219" />
+        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_service_package_selected.xml" value="0.219" />
+        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_service_package_type.xml" value="0.219" />
+        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_service_package_type_unselected.xml" value="0.219" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_task_btn.xml" value="0.2165" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_task_progress.xml" value="0.2165" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/bg_train.xml" value="0.2265" />
@@ -67,7 +75,7 @@
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/tips_shadow_bg.xml" value="0.2265" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/activity_free_train.xml" value="0.176" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/activity_leisure_brain.xml" value="0.22826086956521738" />
-        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/activity_service_package.xml" value="0.22826086956521738" />
+        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/activity_service_package.xml" value="0.30660377358490565" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/activity_train_content_details.xml" value="0.176" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/activity_train_data.xml" value="0.4700413223140496" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/activity_workbenches.xml" value="0.72" />
@@ -84,6 +92,8 @@
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/item_free_training_type.xml" value="0.536" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/item_game_list.xml" value="0.4" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/item_leisure_brain_list.xml" value="0.1" />
+        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/item_service_package_list.xml" value="0.4" />
+        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/item_service_package_type.xml" value="0.1" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/item_task.xml" value="0.8800000000000001" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/item_train_report.xml" value="0.536" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/item_training_content.xml" value="0.176" />

+ 34 - 0
workbenches/src/main/java/com/yingyang/workbenches/adapter/ServicePackageListAdapter.kt

@@ -0,0 +1,34 @@
+package com.yingyang.workbenches.adapter
+
+import android.annotation.SuppressLint
+import com.yingyang.workbenches.R
+import com.yingyang.workbenches.databinding.ItemServicePackageListBinding
+import com.yingyang.workbenches.databinding.ItemServicePackageTypeBinding
+import com.yingyang.workbenches.entity.PackageInfoBean
+import com.yingyang.workbenches.entity.TrainTypeBean
+import com.yingyangfly.baselib.adapter.BaseDataBindingAdapter
+import com.yingyangfly.baselib.ext.setOnSingleClickListener
+import com.yingyangfly.baselib.ext.setTextColorResource
+
+/**
+ * 服务套餐列表
+ */
+class ServicePackageListAdapter(override val layoutId: Int = R.layout.item_service_package_list) :
+    BaseDataBindingAdapter<PackageInfoBean, ItemServicePackageListBinding>() {
+
+    var onServicePackageListClickListener: ((bean: PackageInfoBean) -> Unit)? = null
+
+    @SuppressLint("NotifyDataSetChanged")
+    override fun onBindViewHolder(
+        binding: ItemServicePackageListBinding,
+        item: PackageInfoBean,
+        position: Int
+    ) {
+        binding.data = item
+
+        binding.buyBtn.setOnSingleClickListener {
+            onServicePackageListClickListener?.invoke(item)
+        }
+    }
+
+}

+ 74 - 0
workbenches/src/main/java/com/yingyang/workbenches/adapter/ServicePackageTypeAdapter.kt

@@ -0,0 +1,74 @@
+package com.yingyang.workbenches.adapter
+
+import android.annotation.SuppressLint
+import com.yingyang.workbenches.R
+import com.yingyang.workbenches.databinding.ItemServicePackageTypeBinding
+import com.yingyang.workbenches.entity.TrainTypeBean
+import com.yingyangfly.baselib.adapter.BaseDataBindingAdapter
+import com.yingyangfly.baselib.ext.setOnSingleClickListener
+import com.yingyangfly.baselib.ext.setTextColorResource
+
+/**
+ * 服务套餐类型
+ */
+class ServicePackageTypeAdapter(override val layoutId: Int = R.layout.item_service_package_type) :
+    BaseDataBindingAdapter<TrainTypeBean, ItemServicePackageTypeBinding>() {
+
+    var onServicePackageTypeClickListener: ((bean: TrainTypeBean) -> Unit)? = null
+
+    private var currentPosition = 0
+
+    /**
+     * 数据总数
+     */
+    private var dataSize = 0
+
+    fun setServicePackageTypeSize(size: Int) {
+        dataSize = size
+        notifyDataSetChanged()
+    }
+
+    @SuppressLint("NotifyDataSetChanged")
+    override fun onBindViewHolder(
+        binding: ItemServicePackageTypeBinding,
+        item: TrainTypeBean,
+        position: Int
+    ) {
+        binding.data = item
+        val index = dataSize - 1
+        if (position == currentPosition) {
+            binding.tvType.setTextColorResource(R.color.color_ffffff)
+            when (position) {
+                0 -> {
+                    binding.tvType.setBackgroundResource(R.drawable.bg_service_package_left)
+                }
+                index -> {
+                    binding.tvType.setBackgroundResource(R.drawable.bg_service_package_right)
+                }
+                else -> {
+                    binding.tvType.setBackgroundResource(R.drawable.bg_service_package_selected)
+                }
+            }
+        } else {
+            binding.tvType.setTextColorResource(R.color.color_FF2B70FF)
+            when (position) {
+                0 -> {
+                    binding.tvType.setBackgroundResource(R.drawable.selector_train_report_tab_left)
+                }
+                index -> {
+                    binding.tvType.setBackgroundResource(R.drawable.selector_train_report_tab_right)
+                }
+                else -> {
+                    binding.tvType.setBackgroundResource(R.drawable.bg_service_package_unselected)
+                }
+            }
+        }
+
+        binding.tvType.setOnSingleClickListener {
+            currentPosition = position
+            notifyDataSetChanged()
+            onServicePackageTypeClickListener?.invoke(item)
+        }
+    }
+
+}

+ 0 - 8
workbenches/src/main/java/com/yingyang/workbenches/entity/ServicePackageBean.kt → workbenches/src/main/java/com/yingyang/workbenches/entity/PackageInfoBean.kt

@@ -3,14 +3,6 @@ package com.yingyang.workbenches.entity
 /**
  * 服务套餐
  */
-data class ServicePackageBean(
-    val A: List<PackageInfoBean>,//居家套餐
-    val B: List<PackageInfoBean>//医生随访套餐
-)
-
-/**
- * 居家套餐
- */
 data class PackageInfoBean(
     val createTime: String,
     val id: String,

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

@@ -22,8 +22,8 @@ interface WorkbenchesApiService {
     /**
      * 获取服务套餐列表
      */
-    @POST("app/user/selectAllPackage")
-    suspend fun getSelectAllPackage(): BaseResp<ServicePackageBean>
+    @POST("app/learn/package/list")
+    suspend fun getServicePackageList(@Query("packageType") packageType: String): BaseResp<List<PackageInfoBean>>
 
     /**
      * 获取休闲健脑视频列表

+ 63 - 6
workbenches/src/main/java/com/yingyang/workbenches/servicepackage/ServicePackageActivity.kt

@@ -1,8 +1,12 @@
 package com.yingyang.workbenches.servicepackage
 
-import android.util.Log
+import androidx.recyclerview.widget.GridLayoutManager
 import com.alibaba.android.arouter.facade.annotation.Route
+import com.yingyang.workbenches.adapter.ServicePackageListAdapter
+import com.yingyang.workbenches.adapter.ServicePackageTypeAdapter
 import com.yingyang.workbenches.databinding.ActivityServicePackageBinding
+import com.yingyang.workbenches.entity.PackageInfoBean
+import com.yingyang.workbenches.entity.TrainTypeBean
 import com.yingyangfly.baselib.ext.setOnSingleClickListener
 import com.yingyangfly.baselib.ext.toast
 import com.yingyangfly.baselib.mvvm.BaseMVVMActivity
@@ -16,8 +20,28 @@ import com.yingyangfly.baselib.utils.JumpUtil
 class ServicePackageActivity :
     BaseMVVMActivity<ActivityServicePackageBinding, ServicePackageViewModel>() {
 
+    /**
+     * 服务套餐类型
+     */
+    private var servicePackageTypeList = mutableListOf<TrainTypeBean>()
+    private val servicePackageTypeAdapter by lazy { ServicePackageTypeAdapter() }
+    private var packageType = ""
+
+    /**
+     * 服务套餐列表
+     */
+    private var servicePackageList = mutableListOf<PackageInfoBean>()
+    private val servicePackageListAdapter by lazy { ServicePackageListAdapter() }
+
+
     override fun initViews() {
+        binding {
+            rvTrainingPackage.layoutManager = GridLayoutManager(this@ServicePackageActivity, 3)
+            rvTrainingPackage.adapter = servicePackageListAdapter
+            servicePackageListAdapter.onServicePackageListClickListener = {
 
+            }
+        }
     }
 
     override fun initListener() {
@@ -27,15 +51,48 @@ class ServicePackageActivity :
     }
 
     override fun initData() {
-        viewModel.getSelectAllPackage(fail = {
+        getSelectByDictType()
+    }
+
+    /**
+     * 获取服务套餐类型列表
+     */
+    private fun getSelectByDictType() {
+        servicePackageTypeList.clear()
+        viewModel.getSelectByDictType(fail = {
             it.toast()
         }, success = {
-            if (it.A.isNullOrEmpty().not()) {
-                Log.e("wpp", "还有居家套餐")
+            runOnUiThread {
+                if (it.isNullOrEmpty().not()) {
+                    servicePackageTypeList.addAll(it)
+                }
+                binding {
+                    rvType.layoutManager =
+                        GridLayoutManager(this@ServicePackageActivity, servicePackageTypeList.size)
+                    rvType.adapter = servicePackageTypeAdapter
+                    servicePackageTypeAdapter.setServicePackageTypeSize(servicePackageTypeList.size)
+                    servicePackageTypeAdapter.setData(servicePackageTypeList)
+                    servicePackageTypeAdapter.onServicePackageTypeClickListener = {
+                        packageType = it.dictValue
+                        getServicePackageList()
+                    }
+                }
             }
-            if (it.B.isNullOrEmpty().not()) {
-                Log.e("wpp", "还有医生随访套餐")
+        })
+    }
+
+    /**
+     * 获取套餐内容
+     */
+    private fun getServicePackageList() {
+        servicePackageList.clear()
+        viewModel.getServicePackageList(packageType, fail = {
+            it.toast()
+        }, success = {
+            if (it.isNullOrEmpty().not()) {
+                servicePackageList.addAll(it)
             }
+            servicePackageListAdapter.setData(servicePackageList)
         })
     }
 }

+ 19 - 4
workbenches/src/main/java/com/yingyang/workbenches/servicepackage/ServicePackageViewModel.kt

@@ -1,6 +1,7 @@
 package com.yingyang.workbenches.servicepackage
 
-import com.yingyang.workbenches.entity.ServicePackageBean
+import com.yingyang.workbenches.entity.PackageInfoBean
+import com.yingyang.workbenches.entity.TrainTypeBean
 import com.yingyang.workbenches.net.WORKBENCHES_API
 import com.yingyangfly.baselib.mvvm.BaseViewModel
 
@@ -10,14 +11,28 @@ import com.yingyangfly.baselib.mvvm.BaseViewModel
  */
 class ServicePackageViewModel : BaseViewModel() {
 
+    /**
+     * 获取服务套餐类型列表
+     */
+    fun getSelectByDictType(
+        fail: ((msg: String) -> Unit)? = null,
+        success: ((success: List<TrainTypeBean>) -> Unit)? = null,
+    ) = launchFlow(true) {
+        WORKBENCHES_API.getSelectByDictType("package_type")
+    }.runUI(
+        success,
+        fail
+    )
+
     /**
      * 获取服务套餐列表
      */
-    fun getSelectAllPackage(
+    fun getServicePackageList(
+        packageType: String,
         fail: ((msg: String) -> Unit)? = null,
-        success: ((success: ServicePackageBean) -> Unit)? = null,
+        success: ((success: List<PackageInfoBean>) -> Unit)? = null,
     ) = launchFlow(false) {
-        WORKBENCHES_API.getSelectAllPackage()
+        WORKBENCHES_API.getServicePackageList(packageType)
     }.runUI(
         success,
         fail

+ 7 - 0
workbenches/src/main/res/drawable/bg_service_package_button.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="ResourceName">
+    <corners android:radius="@dimen/divider_20px" />
+    <solid android:color="@color/color_FFCFDFFF" />
+</shape>

+ 9 - 0
workbenches/src/main/res/drawable/bg_service_package_left.xml

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="ResourceName">
+    <corners
+        android:bottomLeftRadius="@dimen/divider_20px"
+        android:topLeftRadius="@dimen/divider_20px" />
+    <solid android:color="@color/color_FF2B70FF" />
+</shape>

+ 9 - 0
workbenches/src/main/res/drawable/bg_service_package_right.xml

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="ResourceName">
+    <corners
+        android:bottomRightRadius="@dimen/divider_20px"
+        android:topRightRadius="@dimen/divider_20px" />
+    <solid android:color="@color/color_FF2B70FF" />
+</shape>

+ 6 - 0
workbenches/src/main/res/drawable/bg_service_package_selected.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="ResourceName">
+    <solid android:color="@color/color_FF2B70FF" />
+</shape>

+ 9 - 0
workbenches/src/main/res/drawable/bg_service_package_unselected.xml

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="ResourceName">
+    <solid android:color="@color/color_FF2B70FF" />
+    <stroke
+        android:width="@dimen/divider_1px"
+        android:color="@color/color_FF2B70FF" />
+</shape>

+ 1 - 1
workbenches/src/main/res/layout/activity_free_train.xml

@@ -53,7 +53,7 @@
             android:layout_marginTop="@dimen/divider_18px"
             android:layout_marginEnd="@dimen/divider_18px"
             android:layout_marginBottom="@dimen/divider_18px"
-            android:background="@android:color/white"
+            app:cardBackgroundColor="@android:color/white"
             app:cardCornerRadius="@dimen/divider_38px"
             app:layout_constraintBottom_toBottomOf="parent"
             app:layout_constraintLeft_toRightOf="@id/rvTrainType"

+ 63 - 2
workbenches/src/main/res/layout/activity_service_package.xml

@@ -39,18 +39,79 @@
                 android:textStyle="bold" />
         </LinearLayout>
 
-
         <androidx.cardview.widget.CardView
+            android:id="@+id/titleLayout"
             android:layout_width="@dimen/divider_237px"
             android:layout_height="@dimen/divider_68px"
+            android:layout_marginTop="@dimen/divider_40px"
             app:cardBackgroundColor="@android:color/white"
             app:cardCornerRadius="@dimen/divider_39px"
             app:cardElevation="@dimen/divider_4px"
-            app:contentPadding="@dimen/divider_4px"
             app:layout_constraintLeft_toLeftOf="parent"
             app:layout_constraintRight_toRightOf="parent"
             app:layout_constraintTop_toTopOf="parent">
 
+            <androidx.appcompat.widget.AppCompatTextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="center"
+                android:text="@string/service_package"
+                android:textColor="@color/color_FF4974FF"
+                android:textSize="@dimen/divider_34px" />
+
+        </androidx.cardview.widget.CardView>
+
+        <androidx.cardview.widget.CardView
+            android:layout_width="match_parent"
+            android:layout_height="0dp"
+            android:layout_marginStart="@dimen/divider_60px"
+            android:layout_marginTop="@dimen/divider_35px"
+            android:layout_marginEnd="@dimen/divider_60px"
+            android:layout_marginBottom="@dimen/divider_27px"
+            app:cardBackgroundColor="@android:color/white"
+            app:cardCornerRadius="@dimen/divider_20px"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintLeft_toLeftOf="parent"
+            app:layout_constraintRight_toRightOf="parent"
+            app:layout_constraintTop_toBottomOf="@+id/titleLayout">
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_gravity="center"
+                android:orientation="vertical">
+
+                <androidx.recyclerview.widget.RecyclerView
+                    android:id="@+id/rvType"
+                    android:layout_width="wrap_content"
+                    android:layout_height="@dimen/divider_55px"
+                    android:layout_gravity="center_horizontal"
+                    android:layout_marginTop="@dimen/divider_26px"
+                    app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager" />
+
+                <Button
+                    android:layout_width="match_parent"
+                    android:layout_height="@dimen/divider_65px"
+                    android:layout_marginStart="@dimen/divider_48px"
+                    android:layout_marginTop="@dimen/divider_26px"
+                    android:layout_marginEnd="@dimen/divider_46px"
+                    android:background="@drawable/bg_service_package_button"
+                    android:gravity="center"
+                    android:text="@string/select_training_package"
+                    android:textColor="@color/color_FF333333"
+                    android:textSize="@dimen/divider_24px" />
+
+                <androidx.recyclerview.widget.RecyclerView
+                    android:id="@+id/rvTrainingPackage"
+                    android:layout_width="match_parent"
+                    android:layout_height="match_parent"
+                    android:layout_marginStart="@dimen/divider_46px"
+                    android:layout_marginTop="@dimen/divider_20px"
+                    android:layout_marginEnd="@dimen/divider_46px" />
+
+            </LinearLayout>
+
+
         </androidx.cardview.widget.CardView>
 
 

+ 68 - 0
workbenches/src/main/res/layout/item_service_package_list.xml

@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="ResourceName">
+
+    <data>
+
+        <variable
+            name="data"
+            type="com.yingyang.workbenches.entity.PackageInfoBean" />
+    </data>
+
+    <androidx.cardview.widget.CardView
+        android:layout_width="@dimen/divider_313px"
+        android:layout_height="@dimen/divider_432px"
+        android:orientation="vertical"
+        app:cardCornerRadius="@dimen/divider_20px">
+
+        <androidx.constraintlayout.widget.ConstraintLayout
+            android:layout_width="match_parent"
+            android:layout_height="match_parent">
+
+            <androidx.appcompat.widget.AppCompatTextView
+                android:id="@+id/tvTitle"
+                android:layout_width="match_parent"
+                android:layout_height="@dimen/divider_203px"
+                android:background="@color/color_FF343049"
+                android:gravity="center"
+                android:text="@{data.packageName}"
+                android:textColor="@android:color/white"
+                android:textSize="@dimen/divider_34px"
+                app:layout_constraintLeft_toLeftOf="parent"
+                app:layout_constraintRight_toRightOf="parent"
+                app:layout_constraintTop_toTopOf="parent" />
+
+            <androidx.appcompat.widget.AppCompatTextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/divider_29px"
+                android:background="@color/color_FF343049"
+                android:gravity="center"
+                android:textColor="@color/color_FFC46D40"
+                android:textSize="@dimen/divider_48px"
+                app:layout_constraintLeft_toLeftOf="parent"
+                app:layout_constraintRight_toRightOf="parent"
+                app:layout_constraintTop_toBottomOf="@+id/tvTitle" />
+
+            <Button
+                android:id="@+id/buyBtn"
+                android:layout_width="match_parent"
+                android:layout_height="@dimen/divider_59px"
+                android:layout_marginStart="@dimen/divider_55px"
+                android:layout_marginEnd="@dimen/divider_54px"
+                android:layout_marginBottom="@dimen/divider_48px"
+                android:background="@drawable/bg_work_benches_btn"
+                android:text="购买"
+                android:textColor="@android:color/white"
+                android:textSize="@dimen/divider_24px"
+                app:layout_constraintBottom_toBottomOf="parent"
+                app:layout_constraintLeft_toLeftOf="parent"
+                app:layout_constraintRight_toRightOf="parent" />
+
+
+        </androidx.constraintlayout.widget.ConstraintLayout>
+    </androidx.cardview.widget.CardView>
+
+</layout>

+ 29 - 0
workbenches/src/main/res/layout/item_service_package_type.xml

@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="ResourceName">
+
+    <data>
+
+        <variable
+            name="data"
+            type="com.yingyang.workbenches.entity.TrainTypeBean" />
+    </data>
+
+    <LinearLayout
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:orientation="vertical">
+
+        <androidx.appcompat.widget.AppCompatTextView
+            android:id="@+id/tvType"
+            android:layout_width="wrap_content"
+            android:layout_height="match_parent"
+            android:gravity="center"
+            android:paddingStart="@dimen/divider_10px"
+            android:paddingEnd="@dimen/divider_10px"
+            android:text="@{data.dictLabel}"
+            android:textSize="@dimen/divider_24px" />
+    </LinearLayout>
+
+</layout>

+ 6 - 0
workbenches/src/main/res/values/colors.xml

@@ -1,5 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <resources xmlns:tools="http://schemas.android.com/tools">
+    <color name="color_ffffff" tools:ignore="ResourceName">#ffffff</color>
     <color name="color_491797" tools:ignore="ResourceName">#491797</color>
     <color name="color_947CFF" tools:ignore="ResourceName">#947CFF</color>
     <color name="color_B494FE" tools:ignore="ResourceName">#B494FE</color>
@@ -37,4 +38,9 @@
     <color name="color_FF383838" tools:ignore="ResourceName">#FF383838</color>
     <color name="color_FFF2F5FF" tools:ignore="ResourceName">#FFF2F5FF</color>
     <color name="color_FFFF2B2B" tools:ignore="MissingDefaultResource,ResourceName">#FFFF2B2B</color>
+    <color name="color_FF4974FF" tools:ignore="ResourceName">#FF4974FF</color>
+    <color name="color_80BFDAFF" tools:ignore="ResourceName">#80BFDAFF</color>
+    <color name="color_FFCFDFFF" tools:ignore="ResourceName">#FFCFDFFF</color>
+    <color name="color_FF343049" tools:ignore="ResourceName">#FF343049</color>
+    <color name="color_FFC46D40" tools:ignore="ResourceName">#FFC46D40</color>
 </resources>

+ 3 - 0
workbenches/src/main/res/values/dimens.xml

@@ -4,6 +4,7 @@
     <dimen name="divider_689px" tools:ignore="PxUsage">689px</dimen>
     <dimen name="divider_533px" tools:ignore="PxUsage">533px</dimen>
     <dimen name="divider_440px" tools:ignore="PxUsage">440px</dimen>
+    <dimen name="divider_432px" tools:ignore="PxUsage">432px</dimen>
     <dimen name="divider_430px" tools:ignore="PxUsage">430px</dimen>
     <dimen name="divider_418px" tools:ignore="PxUsage">418px</dimen>
     <dimen name="divider_416px" tools:ignore="PxUsage">416px</dimen>
@@ -23,6 +24,7 @@
     <dimen name="divider_329px" tools:ignore="PxUsage">329px</dimen>
     <dimen name="divider_327px" tools:ignore="PxUsage">327px</dimen>
     <dimen name="divider_320px" tools:ignore="PxUsage">320px</dimen>
+    <dimen name="divider_313px" tools:ignore="PxUsage">313px</dimen>
     <dimen name="divider_289px" tools:ignore="PxUsage">289px</dimen>
     <dimen name="divider_270px" tools:ignore="PxUsage">270px</dimen>
     <dimen name="divider_264px" tools:ignore="PxUsage">264px</dimen>
@@ -32,6 +34,7 @@
     <dimen name="divider_237px" tools:ignore="PxUsage">237px</dimen>
     <dimen name="divider_230px" tools:ignore="PxUsage">230px</dimen>
     <dimen name="divider_229px" tools:ignore="PxUsage">229px</dimen>
+    <dimen name="divider_203px" tools:ignore="PxUsage">203px</dimen>
     <dimen name="divider_195px" tools:ignore="PxUsage">195px</dimen>
     <dimen name="divider_190px" tools:ignore="PxUsage">190px</dimen>
     <dimen name="divider_184px" tools:ignore="PxUsage">184px</dimen>

+ 1 - 0
workbenches/src/main/res/values/strings.xml

@@ -29,4 +29,5 @@
     <string name="capacity_calculation" tools:ignore="ResourceName">计算力</string>
     <string name="exercise_therapy" tools:ignore="ResourceName">运动疗法</string>
     <string name="detail" tools:ignore="ResourceName">查看详情</string>
+    <string name="select_training_package" tools:ignore="ResourceName">请根据您的需要选择训练的套餐</string>
 </resources>