应急接口对接

This commit is contained in:
zhanglei
2025-09-26 10:26:18 +08:00
parent e30121c1ce
commit 89017139cb
10 changed files with 45 additions and 43 deletions
@@ -26,7 +26,6 @@ import com.xjjk.healthyclients.base.BaseVMBActivity
import com.xjjk.healthyclients.bottomtab.HomeBottomTabLayout import com.xjjk.healthyclients.bottomtab.HomeBottomTabLayout
import com.xjjk.healthyclients.databinding.ActivityMainBinding import com.xjjk.healthyclients.databinding.ActivityMainBinding
import com.xjjk.healthyclients.event.RefreshEvent import com.xjjk.healthyclients.event.RefreshEvent
import com.xjjk.healthyclients.event.UserNoticeBean
import com.xjjk.healthyclients.fragment.EmergencyFragment import com.xjjk.healthyclients.fragment.EmergencyFragment
import com.xjjk.healthyclients.fragment.GuidanceFragment import com.xjjk.healthyclients.fragment.GuidanceFragment
import com.xjjk.healthyclients.fragment.MonitorFragment import com.xjjk.healthyclients.fragment.MonitorFragment
@@ -1,7 +1,5 @@
package com.xjjk.healthyclients.bean.emergency package com.xjjk.healthyclients.bean.emergency
data class EmergencyBean( data class EmergencyBean(
val dicts: MutableList<EmergencyDictBean>?,
val resources: MutableList<LocationResourceBean>?, val resources: MutableList<LocationResourceBean>?,
val sessionId: String?
) )
@@ -21,6 +21,7 @@ data class LocationResourceBean(
val longitude: Double = 0.0, val longitude: Double = 0.0,
val memo: Any = "", val memo: Any = "",
val mobile: String = "", val mobile: String = "",
val managePhone: String = "",
val name: String = "", val name: String = "",
val province: String = "", val province: String = "",
val resourceDesc: String = "", val resourceDesc: String = "",
@@ -2,10 +2,10 @@ package com.xjjk.healthyclients.data.api
import com.xjjk.healthyclients.bean.emergency.BigDiseaseBean import com.xjjk.healthyclients.bean.emergency.BigDiseaseBean
import com.xjjk.healthyclients.bean.emergency.BigDiseaseDetailsBean import com.xjjk.healthyclients.bean.emergency.BigDiseaseDetailsBean
import com.xjjk.healthyclients.bean.emergency.EmergencyBean
import com.xjjk.healthyclients.bean.emergency.EmergencyGroupInfo import com.xjjk.healthyclients.bean.emergency.EmergencyGroupInfo
import com.xjjk.healthyclients.bean.emergency.GetOrderBySessionIdBean import com.xjjk.healthyclients.bean.emergency.GetOrderBySessionIdBean
import com.xjjk.healthyclients.bean.emergency.HospitalBean import com.xjjk.healthyclients.bean.emergency.HospitalBean
import com.xjjk.healthyclients.bean.emergency.LocationResourceBean
import com.xjjk.healthyclients.bean.emergency.OrderThroughBean import com.xjjk.healthyclients.bean.emergency.OrderThroughBean
import com.xjjk.healthyclients.bean.emergency.initUserOrderPageBean import com.xjjk.healthyclients.bean.emergency.initUserOrderPageBean
import com.xjjk.healthyclients.data.bean.ApiResponse import com.xjjk.healthyclients.data.bean.ApiResponse
@@ -20,7 +20,7 @@ interface EmergencyApi {
* 应急首页数据获取 * 应急首页数据获取
*/ */
@GET("/health-emergency/api/emergency/resource/home") @GET("/health-emergency/api/emergency/resource/home")
suspend fun getEmergencyData(@QueryMap params: MutableMap<String, Any?>): ApiResponse<EmergencyBean> suspend fun getEmergencyData(@QueryMap params: MutableMap<String, Any?>): ApiResponse<MutableList<LocationResourceBean>>
/** /**
* 大病就医列表 * 大病就医列表
@@ -5,10 +5,10 @@ import com.xjjk.healthyclients.bean.CommonSettingMenuBean
import com.xjjk.healthyclients.bean.emergency.AddBigDiseaseSubmitBean import com.xjjk.healthyclients.bean.emergency.AddBigDiseaseSubmitBean
import com.xjjk.healthyclients.bean.emergency.BigDiseaseBean import com.xjjk.healthyclients.bean.emergency.BigDiseaseBean
import com.xjjk.healthyclients.bean.emergency.BigDiseaseDetailsBean import com.xjjk.healthyclients.bean.emergency.BigDiseaseDetailsBean
import com.xjjk.healthyclients.bean.emergency.EmergencyBean
import com.xjjk.healthyclients.bean.emergency.EmergencyGroupInfo import com.xjjk.healthyclients.bean.emergency.EmergencyGroupInfo
import com.xjjk.healthyclients.bean.emergency.GetOrderBySessionIdBean import com.xjjk.healthyclients.bean.emergency.GetOrderBySessionIdBean
import com.xjjk.healthyclients.bean.emergency.HospitalBean import com.xjjk.healthyclients.bean.emergency.HospitalBean
import com.xjjk.healthyclients.bean.emergency.LocationResourceBean
import com.xjjk.healthyclients.bean.emergency.OrderThroughBean import com.xjjk.healthyclients.bean.emergency.OrderThroughBean
import com.xjjk.healthyclients.bean.emergency.initUserOrderPageBean import com.xjjk.healthyclients.bean.emergency.initUserOrderPageBean
import com.xjjk.healthyclients.data.api.EmergencyApi import com.xjjk.healthyclients.data.api.EmergencyApi
@@ -19,11 +19,15 @@ import com.xjjk.healthyclients.superfuntion.toJson
object EmergencyRepository : BaseRepository() { object EmergencyRepository : BaseRepository() {
private val service by lazy { RetrofitManager.getService(EmergencyApi::class.java) } private val service by lazy { RetrofitManager.getService(EmergencyApi::class.java) }
/**
* 1:油田医院 3:健康小屋 4:aed 5:救护车 不传则全部
*/
suspend fun getEmergencyData( suspend fun getEmergencyData(
type: String, type: String,
latitude: Double, latitude: Double,
longitude: Double longitude: Double
): ApiResponse<EmergencyBean> { ): ApiResponse<MutableList<LocationResourceBean>> {
val map = mutableMapOf<String, Any?>() val map = mutableMapOf<String, Any?>()
map["type"] = type map["type"] = type
map["longitude"] = longitude map["longitude"] = longitude
@@ -100,7 +100,7 @@ class EmergencyFragment :
var mHeadType= mutableListOf<EmergencyDictBean>() var mHeadType= mutableListOf<EmergencyDictBean>()
// mHeadType.add(EmergencyDictBean("全部","全部","全部","0",true)) // mHeadType.add(EmergencyDictBean("全部","全部","全部","0",true))
mHeadType.add(EmergencyDictBean("油田医院","油田医院","油田医院","1",true)) mHeadType.add(EmergencyDictBean("油田医院","油田医院","油田医院","1",true))
mHeadType.add(EmergencyDictBean("合作医院","合作医院","合作医院","2",false)) // mHeadType.add(EmergencyDictBean("合作医院","合作医院","合作医院","2",false))
mHeadType.add(EmergencyDictBean("健康小屋","健康小屋","健康小屋","3",false)) mHeadType.add(EmergencyDictBean("健康小屋","健康小屋","健康小屋","3",false))
mHeadType.add(EmergencyDictBean("AED","AED","AED","4",false)) mHeadType.add(EmergencyDictBean("AED","AED","AED","4",false))
mHeadType.add(EmergencyDictBean("救护车","救护车","救护车","5",false)) mHeadType.add(EmergencyDictBean("救护车","救护车","救护车","5",false))
@@ -372,14 +372,14 @@ class EmergencyFragment :
it.fragmentEmergencyHospitalTag.text = bean?.level_dictText it.fragmentEmergencyHospitalTag.text = bean?.level_dictText
} }
it.fragmentEmergencyHospitalName.text = bean?.name it.fragmentEmergencyHospitalName.text = bean?.name
if (bean?.mobile == null) { if (bean?.managePhone == null) {
it.fragmentEmergencyPhone.visibility = View.GONE it.fragmentEmergencyPhone.visibility = View.GONE
it.fragmentEmergencyHospitalLandline.visibility = View.GONE it.fragmentEmergencyHospitalLandline.visibility = View.GONE
} else { } else {
it.fragmentEmergencyPhone.visibility = View.VISIBLE it.fragmentEmergencyPhone.visibility = View.VISIBLE
it.fragmentEmergencyHospitalLandline.visibility = View.VISIBLE it.fragmentEmergencyHospitalLandline.visibility = View.VISIBLE
} }
it.fragmentEmergencyHospitalLandline.text = bean?.mobile it.fragmentEmergencyHospitalLandline.text = bean?.managePhone
it.fragmentEmergencyHospitalAddress.text = bean?.address it.fragmentEmergencyHospitalAddress.text = bean?.address
it.fragmentEmergencyCardNavigation.visibility = View.VISIBLE it.fragmentEmergencyCardNavigation.visibility = View.VISIBLE
} }
@@ -80,7 +80,7 @@ class ArchivesDetailActivity :
ViewCompat.setNestedScrollingEnabled(layInspectionReport.rvList, false) ViewCompat.setNestedScrollingEnabled(layInspectionReport.rvList, false)
mBinding.viewQuestionDiseaseDuration.setTitle(getString(R.string.archives_detail_question_disease_duration)) mBinding.viewQuestionDiseaseDuration.setTitle(getString(R.string.archives_detail_question_disease_duration))
mBinding.viewQuestionHaveDoctor.setTitle(getString(R.string.archives_detail_question_have_doctor)) mBinding.viewQuestionHaveDoctor.setTitle(getString(R.string.archives_detail_question_have_doctor))
mBinding.viewQuestionPhysicalExaminationReport.setTitle(getString(R.string.archives_detail_question_physical_examination_report)) // mBinding.viewQuestionPhysicalExaminationReport.setTitle(getString(R.string.archives_detail_question_physical_examination_report))
} }
} }
@@ -98,7 +98,7 @@ class ArchivesDetailActivity :
mBinding.etLookMedicalName.setText(it.lookMedicalName) mBinding.etLookMedicalName.setText(it.lookMedicalName)
mBinding.viewQuestionDiseaseDuration.setDefaultValue(it.haveTime) mBinding.viewQuestionDiseaseDuration.setDefaultValue(it.haveTime)
mBinding.viewQuestionHaveDoctor.setDefaultValue(it.tfLook) mBinding.viewQuestionHaveDoctor.setDefaultValue(it.tfLook)
mBinding.viewQuestionPhysicalExaminationReport.setDefaultValue(it.tfPermission) // mBinding.viewQuestionPhysicalExaminationReport.setDefaultValue(it.tfPermission)
it.tfLook?.let { tfLook -> isShowSeeDoctorExplainLay(tfLook) } it.tfLook?.let { tfLook -> isShowSeeDoctorExplainLay(tfLook) }
} }
} }
@@ -131,8 +131,8 @@ class ArchivesDetailActivity :
if (it.isNullOrEmpty()) { if (it.isNullOrEmpty()) {
return@collectLatest return@collectLatest
} }
mBinding.viewQuestionPhysicalExaminationReport.setData(it) // mBinding.viewQuestionPhysicalExaminationReport.setData(it)
mBinding.viewQuestionPhysicalExaminationReport.disableRadioGroup(mViewModel.noEdit.value) // mBinding.viewQuestionPhysicalExaminationReport.disableRadioGroup(mViewModel.noEdit.value)
} }
} }
} }
@@ -156,7 +156,7 @@ class ArchivesDetailActivity :
etLookOffice.isFocusable = !noEdit etLookOffice.isFocusable = !noEdit
etLookOffice.isFocusableInTouchMode = !noEdit etLookOffice.isFocusableInTouchMode = !noEdit
viewQuestionHaveDoctor.disableRadioGroup(noEdit) viewQuestionHaveDoctor.disableRadioGroup(noEdit)
viewQuestionPhysicalExaminationReport.disableRadioGroup(noEdit) // viewQuestionPhysicalExaminationReport.disableRadioGroup(noEdit)
viewQuestionDiseaseDuration.disableRadioGroup(noEdit) viewQuestionDiseaseDuration.disableRadioGroup(noEdit)
imageAdapter.isEditModel(!noEdit) imageAdapter.isEditModel(!noEdit)
} }
@@ -6,7 +6,6 @@ import com.xjjk.healthyclients.bean.emergency.LocationResourceBean
import com.xjjk.healthyclients.data.repository.EmergencyRepository import com.xjjk.healthyclients.data.repository.EmergencyRepository
import com.xjjk.healthyclients.superfuntion.handleRequest import com.xjjk.healthyclients.superfuntion.handleRequest
import com.xjjk.healthyclients.superfuntion.launch import com.xjjk.healthyclients.superfuntion.launch
import com.xjjk.healthyclients.superfuntion.orEmptyDefault
import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.MutableStateFlow
/** /**
@@ -22,7 +21,7 @@ class EmergencyViewModel : BaseViewModel() {
// var titleList = MutableStateFlow(mutableListOf<EmergencyDictBean>()) // var titleList = MutableStateFlow(mutableListOf<EmergencyDictBean>())
var markList = MutableStateFlow(mutableListOf<LocationResourceBean>()) var markList = MutableStateFlow(mutableListOf<LocationResourceBean>())
var sessionId = MutableStateFlow("") // var sessionId = MutableStateFlow("")
override fun init() { override fun init() {
@@ -33,10 +32,11 @@ class EmergencyViewModel : BaseViewModel() {
{ {
handleRequest( handleRequest(
EmergencyRepository.getEmergencyData(type, latitude, longitude), EmergencyRepository.getEmergencyData(type, latitude, longitude),
successBlock = { successBlock = { response ->
// it.result?.dicts?.let { list -> titleList.emit(list) } // it.result?.dicts?.let { list -> titleList.emit(list) }
it.result?.resources?.let { list -> markList.emit(list) } // it.result?.resources?.let { list -> markList.emit(list) }
it.result?.sessionId?.let { it1 -> sessionId.emit(it1) } // it.result?.sessionId?.let { it1 -> sessionId.emit(it1) }
response.result?.let { markList.emit(it) }
}) })
} }
) )
@@ -1,8 +1,8 @@
package com.xjjk.healthyclients.utils package com.xjjk.healthyclients.utils
import com.xjjk.healthyclients.retrofit.UrlConfig
import com.tencent.qcloud.tuikit.tuichat.classicui.setting.InputActionSetting import com.tencent.qcloud.tuikit.tuichat.classicui.setting.InputActionSetting
import com.xjjk.healthyclients.BuildConfig import com.xjjk.healthyclients.BuildConfig
import com.xjjk.healthyclients.retrofit.UrlConfig
object IMInputActionSettingUtils { object IMInputActionSettingUtils {
/** /**
@@ -33,7 +33,7 @@ object IMInputActionSettingUtils {
inputActionSetting.isDisableArchives = false inputActionSetting.isDisableArchives = false
inputActionSetting.disableFinishName = false inputActionSetting.disableFinishName = false
inputActionSetting.disableEvaluate = disableEvaluate inputActionSetting.disableEvaluate = disableEvaluate
inputActionSetting.isDisableMedicalExaminationReport = !isSelf inputActionSetting.isDisableMedicalExaminationReport = true
inputActionSetting.isDisableSendMessage = disableSendMessage inputActionSetting.isDisableSendMessage = disableSendMessage
inputActionSetting.isDisableFinishSession = false inputActionSetting.isDisableFinishSession = false
} }
@@ -53,20 +53,20 @@ object IMInputActionSettingUtils {
inputActionSetting.isDisableSendMessage = false inputActionSetting.isDisableSendMessage = false
inputActionSetting.isDisableFinishSession = false inputActionSetting.isDisableFinishSession = false
} }
/** // /**
* 急救联动IM功能配置 // * 急救联动IM功能配置
*/ // */
fun createEmergencyLinkageSetting(){ // fun createEmergencyLinkageSetting(){
var inputActionSetting = InputActionSetting.createInstance() // var inputActionSetting = InputActionSetting.createInstance()
inputActionSetting.packageName = BuildConfig.APPLICATION_ID // inputActionSetting.packageName = BuildConfig.APPLICATION_ID
inputActionSetting.CurrentResourceHost = UrlConfig.IMAGE_BASE_URL // inputActionSetting.CurrentResourceHost = UrlConfig.IMAGE_BASE_URL
inputActionSetting.isDisableAudioCall = false // inputActionSetting.isDisableAudioCall = false
inputActionSetting.isDisableVideoCall = false // inputActionSetting.isDisableVideoCall = false
inputActionSetting.isDisableArchives = true // inputActionSetting.isDisableArchives = true
inputActionSetting.disableFinishName = false // inputActionSetting.disableFinishName = false
inputActionSetting.disableEvaluate = false // inputActionSetting.disableEvaluate = false
inputActionSetting.isDisableMedicalExaminationReport = true // inputActionSetting.isDisableMedicalExaminationReport = true
inputActionSetting.isDisableSendMessage = false // inputActionSetting.isDisableSendMessage = false
inputActionSetting.isDisableFinishSession = false // inputActionSetting.isDisableFinishSession = false
} // }
} }
@@ -218,11 +218,11 @@
app:minLines="@{5}" app:minLines="@{5}"
app:context="@={viewModel.archivesBean.desire}" app:context="@={viewModel.archivesBean.desire}"
app:noEdit="@{viewModel.noEdit}"/> app:noEdit="@{viewModel.noEdit}"/>
<com.xjjk.healthyclients.view.SingleChoiceQuestionView <!-- <com.xjjk.healthyclients.view.SingleChoiceQuestionView-->
android:id="@+id/view_question_physical_examination_report" <!-- android:id="@+id/view_question_physical_examination_report"-->
android:layout_width="match_parent" <!-- android:layout_width="match_parent"-->
android:layout_height="wrap_content" <!-- android:layout_height="wrap_content"-->
android:clickable="@{!viewModel.noEdit}"/> <!-- android:clickable="@{!viewModel.noEdit}"/>-->
</LinearLayout> </LinearLayout>
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent" android:layout_width="match_parent"