Procházet zdrojové kódy

1.添加问诊申请UI

王鹏鹏 před 2 roky
rodič
revize
10795a3cfc
20 změnil soubory, kde provedl 491 přidání a 8 odebrání
  1. 10 0
      .idea/misc.xml
  2. 5 0
      baselib/src/main/java/com/yingyangfly/baselib/router/RouterUrlCommon.kt
  3. 6 0
      healthconsultation/src/main/AndroidManifest.xml
  4. 42 0
      healthconsultation/src/main/java/com/yingyang/healthconsultation/adapter/SickTimeAdapter.kt
  5. 9 8
      healthconsultation/src/main/java/com/yingyang/healthconsultation/consultationsheet/ConsultationRequestActivity.kt
  6. 91 0
      healthconsultation/src/main/java/com/yingyang/healthconsultation/consultationsheet/ConsultationSheetActivity.kt
  7. 21 0
      healthconsultation/src/main/java/com/yingyang/healthconsultation/consultationsheet/ConsultationSheetViewModel.kt
  8. 6 0
      healthconsultation/src/main/manifest/AndroidManifest.xml
  9. 5 0
      healthconsultation/src/main/res/color/txt_radio_color.xml
  10. 10 0
      healthconsultation/src/main/res/drawable/bg_condition_describe.xml
  11. 10 0
      healthconsultation/src/main/res/drawable/bg_selected_item.xml
  12. 10 0
      healthconsultation/src/main/res/drawable/bg_sick_selected.xml
  13. 10 0
      healthconsultation/src/main/res/drawable/bg_sick_unselected.xml
  14. 10 0
      healthconsultation/src/main/res/drawable/bg_unselected_item.xml
  15. 8 0
      healthconsultation/src/main/res/drawable/selector_bean_hospital.xml
  16. 191 0
      healthconsultation/src/main/res/layout/activity_consultation_sheet.xml
  17. 37 0
      healthconsultation/src/main/res/layout/item_sick_time.xml
  18. 3 0
      healthconsultation/src/main/res/values/colors.xml
  19. 1 0
      healthconsultation/src/main/res/values/dimens.xml
  20. 6 0
      healthconsultation/src/main/res/values/strings.xml

+ 10 - 0
.idea/misc.xml

@@ -34,6 +34,7 @@
         <entry key="..\:/workspace/hcp-pad/common/src/main/res/layout/common_activity_qr_code_scan.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pad/common/src/main/res/layout/common_content_loading_dialog.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pad/common/src/main/res/layout/ugckit_fragment_dialog_permission_introduction.xml" value="0.1" />
+        <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/bg_condition_describe.xml" value="0.155" />
         <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/bg_consult.xml" value="0.155" />
         <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/bg_continue_consultation.xml" value="0.155" />
         <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/bg_doctor_status.xml" value="0.155" />
@@ -42,13 +43,21 @@
         <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/bg_home_page_search.xml" value="0.155" />
         <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/bg_home_page_title.xml" value="0.155" />
         <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/bg_recommended_doctor.xml" value="0.155" />
+        <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/bg_selected_item.xml" value="0.155" />
+        <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/bg_sick_item.xml" value="0.155" />
+        <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/bg_sick_selected.xml" value="0.155" />
+        <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/bg_sick_unselected.xml" value="0.155" />
         <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/bg_submit.xml" value="0.155" />
+        <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/bg_unselected_item.xml" value="0.155" />
+        <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/drawable/selector_bean_hospital.xml" value="0.155" />
         <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/layout/activity_consultation_request.xml" value="0.4421768707482993" />
+        <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/layout/activity_consultation_sheet.xml" value="0.4744525547445255" />
         <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/layout/activity_doctor_details.xml" value="0.42051756007393715" />
         <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/layout/activity_health_consultation.xml" value="0.4" />
         <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/layout/activity_main.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/layout/item_consultation.xml" value="0.3953084274543875" />
         <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/layout/item_recommend_doctor.xml" value="0.6" />
+        <entry key="..\:/workspace/hcp-pad/healthconsultation/src/main/res/layout/item_sick_time.xml" value="0.8800000000000001" />
         <entry key="..\:/workspace/hcp-pad/home/src/main/res/drawable/anim_loading.xml" value="0.2185" />
         <entry key="..\:/workspace/hcp-pad/home/src/main/res/drawable/bg_buttom_game.xml" value="0.219" />
         <entry key="..\:/workspace/hcp-pad/home/src/main/res/drawable/bg_check_button.xml" value="0.2185" />
@@ -146,6 +155,7 @@
         <entry key="..\:/workspace/hcp-pad/moca/src/main/res/drawable/bg_time_format.xml" value="0.1715" />
         <entry key="..\:/workspace/hcp-pad/moca/src/main/res/drawable/bg_unselected_text.xml" value="0.1715" />
         <entry key="..\:/workspace/hcp-pad/moca/src/main/res/drawable/selector_questions_choice.xml" value="0.1715" />
+        <entry key="..\:/workspace/hcp-pad/moca/src/main/res/drawable/selector_questions_radio.xml" value="0.155" />
         <entry key="..\:/workspace/hcp-pad/moca/src/main/res/drawable/selector_text_choice.xml" value="0.1715" />
         <entry key="..\:/workspace/hcp-pad/moca/src/main/res/layout/activity_main.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pad/moca/src/main/res/layout/activity_moca.xml" value="0.23697916666666666" />

+ 5 - 0
baselib/src/main/java/com/yingyangfly/baselib/router/RouterUrlCommon.kt

@@ -140,4 +140,9 @@ object RouterUrlCommon {
      */
     const val consultationRequest = "/consultation/request"
 
+    /**
+     * 问诊单
+     */
+    const val consultationSheet = "/consultation/sheet"
+
 }

+ 6 - 0
healthconsultation/src/main/AndroidManifest.xml

@@ -20,5 +20,11 @@
             android:configChanges="keyboardHidden|orientation|screenSize"
             android:screenOrientation="landscape"
             android:windowSoftInputMode="adjustResize|adjustPan" />
+
+        <activity
+            android:name="com.yingyang.healthconsultation.consultationsheet.ConsultationSheetActivity"
+            android:configChanges="keyboardHidden|orientation|screenSize"
+            android:screenOrientation="landscape"
+            android:windowSoftInputMode="adjustResize|adjustPan" />
     </application>
 </manifest>

+ 42 - 0
healthconsultation/src/main/java/com/yingyang/healthconsultation/adapter/SickTimeAdapter.kt

@@ -0,0 +1,42 @@
+package com.yingyang.healthconsultation.adapter
+
+import android.annotation.SuppressLint
+import android.text.TextUtils
+import com.yingyang.healthconsultation.R
+import com.yingyang.healthconsultation.databinding.ItemSickTimeBinding
+import com.yingyangfly.baselib.adapter.BaseDataBindingAdapter
+import com.yingyangfly.baselib.ext.setOnSingleClickListener
+import com.yingyangfly.baselib.ext.setTextColorResource
+
+/**
+ * 患病日期adapter
+ */
+class SickTimeAdapter(override val layoutId: Int = R.layout.item_sick_time) :
+    BaseDataBindingAdapter<String, ItemSickTimeBinding>() {
+
+    var selectedData = ""
+    var onClickListener: ((bean: String) -> Unit)? = null
+
+    @SuppressLint("NotifyDataSetChanged")
+    override fun onBindViewHolder(
+        binding: ItemSickTimeBinding,
+        item: String,
+        position: Int
+    ) {
+        binding.data = item
+        if (TextUtils.equals(selectedData, item)) {
+            binding.tvSickTime.setBackgroundResource(R.drawable.bg_sick_selected)
+            binding.tvSickTime.setTextColorResource(R.color.color_FFFFFFFF)
+        } else {
+            binding.tvSickTime.setBackgroundResource(R.drawable.bg_sick_unselected)
+            binding.tvSickTime.setTextColorResource(R.color.color_FF000000)
+        }
+        binding.sickLayout.setOnSingleClickListener {
+            selectedData = item
+            notifyDataSetChanged()
+            onClickListener?.invoke(item)
+        }
+
+    }
+
+}

+ 9 - 8
healthconsultation/src/main/java/com/yingyang/healthconsultation/consultationsheet/ConsultationRequestActivity.kt

@@ -17,6 +17,7 @@ import com.yingyangfly.baselib.ext.getScaleAnimation
 import com.yingyangfly.baselib.ext.toast
 import com.yingyangfly.baselib.mvvm.BaseMVVMActivity
 import com.yingyangfly.baselib.router.RouterUrlCommon
+import com.yingyangfly.baselib.utils.JumpUtil
 
 /**
  * 问诊申请
@@ -55,6 +56,13 @@ class ConsultationRequestActivity :
     }
 
     override fun initData() {
+        getUserInfo()
+    }
+
+    /**
+     * 获取患者信息
+     */
+    private fun getUserInfo() {
         viewModel.getUserInfo(fail = {
             it.toast()
         }, success = {
@@ -79,7 +87,7 @@ class ConsultationRequestActivity :
                         finish()
                     }
                     R.id.btnSubmit -> {
-                        submit()
+                        JumpUtil.jumpActivity(RouterUrlCommon.consultationSheet, mContext)
                     }
                 }
             }
@@ -91,11 +99,4 @@ class ConsultationRequestActivity :
         }
         return true
     }
-
-    /**
-     * 提交问诊申请
-     */
-    private fun submit() {
-
-    }
 }

+ 91 - 0
healthconsultation/src/main/java/com/yingyang/healthconsultation/consultationsheet/ConsultationSheetActivity.kt

@@ -0,0 +1,91 @@
+package com.yingyang.healthconsultation.consultationsheet
+
+import android.annotation.SuppressLint
+import android.view.MotionEvent
+import android.view.View
+import androidx.recyclerview.widget.LinearLayoutManager
+import androidx.recyclerview.widget.RecyclerView
+import com.alibaba.android.arouter.facade.annotation.Route
+import com.yingyang.healthconsultation.R
+import com.yingyang.healthconsultation.adapter.SickTimeAdapter
+import com.yingyang.healthconsultation.databinding.ActivityConsultationSheetBinding
+import com.yingyangfly.baselib.ext.getEndAnimation
+import com.yingyangfly.baselib.ext.getScaleAnimation
+import com.yingyangfly.baselib.ext.toast
+import com.yingyangfly.baselib.mvvm.BaseMVVMActivity
+import com.yingyangfly.baselib.router.RouterUrlCommon
+
+/**
+ * 问诊单
+ */
+@Route(path = RouterUrlCommon.consultationSheet)
+class ConsultationSheetActivity :
+    BaseMVVMActivity<ActivityConsultationSheetBinding, ConsultationSheetViewModel>(),
+    View.OnTouchListener {
+
+    private val sickTimes = mutableListOf<String>()
+    private val sickTimeAdapter by lazy { SickTimeAdapter() }
+
+    override fun initViews() {
+        binding {
+            sickTimes.clear()
+            sickTimes.add("一周内")
+            sickTimes.add("一月内")
+            sickTimes.add("半年内")
+            sickTimes.add("大于半年")
+            val layoutManager = LinearLayoutManager(mContext, RecyclerView.HORIZONTAL, false)
+            rvSickTime.layoutManager = layoutManager
+            rvSickTime.adapter = sickTimeAdapter
+            sickTimeAdapter.setData(sickTimes)
+        }
+    }
+
+    @SuppressLint("ClickableViewAccessibility")
+    override fun initListener() {
+        binding {
+            backLayout.setOnTouchListener(this@ConsultationSheetActivity)
+        }
+    }
+
+    override fun initData() {
+        getUserInfo()
+    }
+
+    @SuppressLint("ClickableViewAccessibility")
+    override fun onTouch(v: View, event: MotionEvent): Boolean {
+        when (event.action) {
+            MotionEvent.ACTION_DOWN -> {
+                if (v.id == R.id.backLayout) {
+                    v.startAnimation(getScaleAnimation())
+                }
+            }
+            MotionEvent.ACTION_UP -> {
+                v.startAnimation(getEndAnimation())
+                when (v.id) {
+                    R.id.backLayout -> {
+                        finish()
+                    }
+                }
+            }
+            MotionEvent.ACTION_CANCEL -> {
+                if (v.id == R.id.backLayout) {
+                    v.startAnimation(getEndAnimation())
+                }
+            }
+        }
+        return true
+    }
+
+    /**
+     * 获取患者信息
+     */
+    private fun getUserInfo() {
+        viewModel.getUserInfo(fail = {
+            it.toast()
+        }, success = {
+            if (it != null) {
+
+            }
+        })
+    }
+}

+ 21 - 0
healthconsultation/src/main/java/com/yingyang/healthconsultation/consultationsheet/ConsultationSheetViewModel.kt

@@ -0,0 +1,21 @@
+package com.yingyang.healthconsultation.consultationsheet
+
+import com.yingyang.healthconsultation.entity.UserInfoBean
+import com.yingyang.healthconsultation.net.HEALTHCONSULTATION_API
+import com.yingyangfly.baselib.mvvm.BaseViewModel
+
+/**
+ * @author 王鹏鹏
+ */
+class ConsultationSheetViewModel : BaseViewModel() {
+
+    fun getUserInfo(
+        fail: ((msg: String) -> Unit)? = null,
+        success: ((success: UserInfoBean?) -> Unit)? = null,
+    ) = launchFlow(false) {
+        HEALTHCONSULTATION_API.getUserInfo()
+    }.runUI(
+        success,
+        fail
+    )
+}

+ 6 - 0
healthconsultation/src/main/manifest/AndroidManifest.xml

@@ -19,5 +19,11 @@
             android:configChanges="keyboardHidden|orientation|screenSize"
             android:screenOrientation="landscape"
             android:windowSoftInputMode="adjustResize|adjustPan" />
+
+        <activity
+            android:name="com.yingyang.healthconsultation.consultationsheet.ConsultationSheetActivity"
+            android:configChanges="keyboardHidden|orientation|screenSize"
+            android:screenOrientation="landscape"
+            android:windowSoftInputMode="adjustResize|adjustPan" />
     </application>
 </manifest>

+ 5 - 0
healthconsultation/src/main/res/color/txt_radio_color.xml

@@ -0,0 +1,5 @@
+<selector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName">
+    <item android:color="@android:color/white" android:state_checked="true" />
+    <!-- not selected -->
+    <item android:color="@color/color_FF000000" android:state_checked="false" />
+</selector>

+ 10 - 0
healthconsultation/src/main/res/drawable/bg_condition_describe.xml

@@ -0,0 +1,10 @@
+<?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" />
+    <stroke
+        android:width="@dimen/divider_1px"
+        android:color="@color/color_FF979797" />
+    <solid android:color="@android:color/white" />
+</shape>

+ 10 - 0
healthconsultation/src/main/res/drawable/bg_selected_item.xml

@@ -0,0 +1,10 @@
+<?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">
+    <stroke
+        android:width="@dimen/divider_1px"
+        android:color="@color/color_FF4A76FF" />
+    <corners android:radius="@dimen/divider_8px" />
+    <solid android:color="@color/color_FF4A76FF" />
+</shape>

+ 10 - 0
healthconsultation/src/main/res/drawable/bg_sick_selected.xml

@@ -0,0 +1,10 @@
+<?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_8px" />
+    <stroke
+        android:width="@dimen/divider_1px"
+        android:color="@color/color_FF4A76FF" />
+    <solid android:color="@color/color_FF4A76FF" />
+</shape>

+ 10 - 0
healthconsultation/src/main/res/drawable/bg_sick_unselected.xml

@@ -0,0 +1,10 @@
+<?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_8px" />
+    <stroke
+        android:width="@dimen/divider_1px"
+        android:color="@color/color_FF979797" />
+    <solid android:color="@android:color/white" />
+</shape>

+ 10 - 0
healthconsultation/src/main/res/drawable/bg_unselected_item.xml

@@ -0,0 +1,10 @@
+<?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">
+    <stroke
+        android:width="@dimen/divider_1px"
+        android:color="@color/color_FF979797" />
+    <corners android:radius="@dimen/divider_8px" />
+    <solid android:color="@android:color/white" />
+</shape>

+ 8 - 0
healthconsultation/src/main/res/drawable/selector_bean_hospital.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName">
+    <item android:drawable="@drawable/bg_selected_item" android:state_checked="true" />
+    <item android:drawable="@drawable/bg_selected_item" android:state_selected="true" />
+    <item android:drawable="@drawable/bg_unselected_item" />
+</selector>
+
+

+ 191 - 0
healthconsultation/src/main/res/layout/activity_consultation_sheet.xml

@@ -0,0 +1,191 @@
+<?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">
+
+    <androidx.constraintlayout.widget.ConstraintLayout
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:background="@mipmap/icon_uniform_background">
+
+        <LinearLayout
+            android:id="@+id/backLayout"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginStart="@dimen/divider_65px"
+            android:layout_marginTop="@dimen/divider_35px"
+            android:gravity="center"
+            android:orientation="horizontal"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent">
+
+            <androidx.appcompat.widget.AppCompatImageView
+                android:layout_width="@dimen/divider_48px"
+                android:layout_height="@dimen/divider_48px"
+                android:background="@mipmap/icon_back" />
+
+            <androidx.appcompat.widget.AppCompatTextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginStart="@dimen/divider_14px"
+                android:text="@string/back_pager"
+                android:textColor="@android:color/white"
+                android:textSize="@dimen/divider_28px"
+                android:textStyle="bold" />
+
+        </LinearLayout>
+
+        <androidx.appcompat.widget.AppCompatTextView
+            android:id="@+id/tvTitle"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="@dimen/divider_32px"
+            android:text="@string/consultation_request"
+            android:textColor="@android:color/white"
+            android:textSize="@dimen/divider_38px"
+            android:textStyle="bold"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent" />
+
+        <com.google.android.material.card.MaterialCardView
+            android:layout_width="match_parent"
+            android:layout_height="0dp"
+            android:layout_marginStart="@dimen/divider_21px"
+            android:layout_marginTop="@dimen/divider_24px"
+            android:layout_marginEnd="@dimen/divider_22px"
+            android:layout_marginBottom="@dimen/divider_21px"
+            android:theme="@style/Theme.MaterialComponents.NoActionBar"
+            app:cardBackgroundColor="@android:color/white"
+            app:cardCornerRadius="@dimen/divider_28px"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toBottomOf="@+id/tvTitle">
+
+            <androidx.constraintlayout.widget.ConstraintLayout
+                android:layout_width="match_parent"
+                android:layout_height="match_parent">
+
+                <androidx.appcompat.widget.AppCompatTextView
+                    android:id="@+id/tvConditionInfo"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/divider_36px"
+                    android:layout_marginTop="@dimen/divider_33px"
+                    android:text="@string/please_describe_your_condition"
+                    android:textColor="@android:color/black"
+                    android:textSize="@dimen/divider_28px"
+                    android:textStyle="bold"
+                    app:layout_constraintStart_toStartOf="parent"
+                    app:layout_constraintTop_toTopOf="parent" />
+
+                <androidx.appcompat.widget.AppCompatEditText
+                    android:id="@+id/editCondition"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/divider_38px"
+                    android:layout_marginTop="@dimen/divider_16px"
+                    android:layout_marginEnd="@dimen/divider_38px"
+                    android:background="@drawable/bg_condition_describe"
+                    android:gravity="top|start"
+                    android:inputType="text"
+                    android:minHeight="@dimen/divider_138px"
+                    android:padding="@dimen/divider_8px"
+                    android:textColor="@android:color/black"
+                    android:textSize="@dimen/divider_24px"
+                    app:layout_constraintEnd_toEndOf="parent"
+                    app:layout_constraintStart_toStartOf="parent"
+                    app:layout_constraintTop_toBottomOf="@+id/tvConditionInfo" />
+
+                <androidx.appcompat.widget.AppCompatTextView
+                    android:id="@+id/tvSickTime"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/divider_36px"
+                    android:layout_marginTop="@dimen/divider_32px"
+                    android:text="@string/how_long_have_you_been_sick"
+                    android:textColor="@android:color/black"
+                    android:textSize="@dimen/divider_28px"
+                    android:textStyle="bold"
+                    app:layout_constraintStart_toStartOf="parent"
+                    app:layout_constraintTop_toBottomOf="@+id/editCondition" />
+
+                <androidx.recyclerview.widget.RecyclerView
+                    android:id="@+id/rvSickTime"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/divider_12px"
+                    android:layout_marginTop="@dimen/divider_16px"
+                    android:layout_marginEnd="@dimen/divider_12px"
+                    app:layout_constraintEnd_toEndOf="parent"
+                    app:layout_constraintStart_toStartOf="parent"
+                    app:layout_constraintTop_toBottomOf="@+id/tvSickTime" />
+
+                <androidx.appcompat.widget.AppCompatTextView
+                    android:id="@+id/tvBeenHospital"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/divider_36px"
+                    android:layout_marginTop="@dimen/divider_32px"
+                    android:text="@string/have_you_ever_been_to_a_hospital"
+                    android:textColor="@android:color/black"
+                    android:textSize="@dimen/divider_28px"
+                    android:textStyle="bold"
+                    app:layout_constraintStart_toStartOf="parent"
+                    app:layout_constraintTop_toBottomOf="@+id/rvSickTime" />
+
+                <RadioGroup
+                    android:id="@+id/radioBeenHospital"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/divider_37px"
+                    android:layout_marginTop="@dimen/divider_16px"
+                    android:orientation="horizontal"
+                    app:layout_constraintEnd_toEndOf="parent"
+                    app:layout_constraintStart_toStartOf="parent"
+                    app:layout_constraintTop_toBottomOf="@+id/tvBeenHospital">
+
+                    <RadioButton
+                        android:layout_width="@dimen/divider_196px"
+                        android:layout_height="@dimen/divider_58px"
+                        android:background="@drawable/selector_bean_hospital"
+                        android:button="@null"
+                        android:gravity="center"
+                        android:text="@string/correct"
+                        android:textColor="@color/txt_radio_color"
+                        android:textSize="@dimen/divider_24px" />
+
+                    <RadioButton
+                        android:layout_width="@dimen/divider_196px"
+                        android:layout_height="@dimen/divider_58px"
+                        android:layout_marginStart="@dimen/divider_25px"
+                        android:background="@drawable/selector_bean_hospital"
+                        android:button="@null"
+                        android:gravity="center"
+                        android:text="@string/deny"
+                        android:textColor="@color/txt_radio_color"
+                        android:textSize="@dimen/divider_24px" />
+                </RadioGroup>
+
+                <androidx.appcompat.widget.AppCompatTextView
+                    android:id="@+id/tvUploadRecordInfo"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="@dimen/divider_36px"
+                    android:layout_marginTop="@dimen/divider_32px"
+                    android:text="@string/upload_medical_record_information"
+                    android:textColor="@android:color/black"
+                    android:textSize="@dimen/divider_28px"
+                    android:textStyle="bold"
+                    app:layout_constraintStart_toStartOf="parent"
+                    app:layout_constraintTop_toBottomOf="@+id/radioBeenHospital" />
+
+
+            </androidx.constraintlayout.widget.ConstraintLayout>
+
+        </com.google.android.material.card.MaterialCardView>
+
+    </androidx.constraintlayout.widget.ConstraintLayout>
+</layout>

+ 37 - 0
healthconsultation/src/main/res/layout/item_sick_time.xml

@@ -0,0 +1,37 @@
+<?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="java.lang.String" />
+    </data>
+
+    <androidx.constraintlayout.widget.ConstraintLayout
+        android:id="@+id/sickLayout"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content">
+
+        <TextView
+            android:id="@+id/tvSickTime"
+            android:layout_width="@dimen/divider_196px"
+            android:layout_height="@dimen/divider_58px"
+            android:layout_marginStart="@dimen/divider_25px"
+            android:background="@drawable/bg_sick_selected"
+            android:gravity="center"
+            android:text="@{data}"
+            android:textColor="@android:color/black"
+            android:textSize="@dimen/divider_24px"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent"
+            tools:text="@string/submit" />
+
+    </androidx.constraintlayout.widget.ConstraintLayout>
+
+</layout>

+ 3 - 0
healthconsultation/src/main/res/values/colors.xml

@@ -13,4 +13,7 @@
     <color name="color_FFB2C3FF" tools:ignore="ResourceName">#FFB2C3FF</color>
     <color name="color_FF82A8FF" tools:ignore="ResourceName">#FF82A8FF</color>
     <color name="color_4A76FF" tools:ignore="ResourceName">#4A76FF</color>
+    <color name="color_FF979797" tools:ignore="ResourceName">#FF979797</color>
+    <color name="color_FFFFFFFF" tools:ignore="ResourceName">#FFFFFFFF</color>
+    <color name="color_FF000000" tools:ignore="ResourceName">#FF000000</color>
 </resources>

+ 1 - 0
healthconsultation/src/main/res/values/dimens.xml

@@ -77,6 +77,7 @@
     <dimen name="divider_142px" tools:ignore="ResourceName">142px</dimen>
     <dimen name="divider_141px" tools:ignore="ResourceName">141px</dimen>
     <dimen name="divider_140px" tools:ignore="ResourceName">140px</dimen>
+    <dimen name="divider_138px" tools:ignore="ResourceName">138px</dimen>
     <dimen name="divider_135px" tools:ignore="ResourceName">135px</dimen>
     <dimen name="divider_133px" tools:ignore="ResourceName">133px</dimen>
     <dimen name="divider_130px" tools:ignore="ResourceName">130px</dimen>

+ 6 - 0
healthconsultation/src/main/res/values/strings.xml

@@ -14,4 +14,10 @@
     <string name="consultation_request" tools:ignore="ResourceName">问诊申请</string>
     <string name="visitor_information" tools:ignore="ResourceName">就诊人信息</string>
     <string name="submit" tools:ignore="ResourceName">提交</string>
+    <string name="please_describe_your_condition" tools:ignore="ResourceName">请描述您的病情</string>
+    <string name="how_long_have_you_been_sick" tools:ignore="ResourceName">患病多久了</string>
+    <string name="have_you_ever_been_to_a_hospital" tools:ignore="ResourceName">此次病情是否去医院就诊过</string>
+    <string name="correct" tools:ignore="ResourceName">是</string>
+    <string name="deny" tools:ignore="ResourceName">否</string>
+    <string name="upload_medical_record_information" tools:ignore="ResourceName">上传病历资料</string>
 </resources>