From b97adbd30d24de783e2cbd3938fb2c5633e24919 Mon Sep 17 00:00:00 2001 From: JSPark <48265129+pknujsp@users.noreply.github.com> Date: Wed, 2 Aug 2023 01:02:57 +0900 Subject: [PATCH] =?UTF-8?q?#187=20=EC=9D=98=EC=95=BD=ED=92=88=20=EC=83=81?= =?UTF-8?q?=EC=84=B8=20=EC=A0=95=EB=B3=B4=20=EC=9D=91=EB=8B=B5=20=EC=8B=9C?= =?UTF-8?q?=20=EC=9E=AC=EC=8B=AC=EC=82=AC=20=EB=82=A0=EC=A7=9C=EB=A1=9C=20?= =?UTF-8?q?=EC=9D=B8=ED=95=B4=20=EB=B0=9C=EC=83=9D=ED=95=98=EB=8A=94=20?= =?UTF-8?q?=EB=8D=B0=EC=9D=B4=ED=84=B0=20=EC=98=A4=EB=A5=98=20=EC=88=98?= =?UTF-8?q?=EC=A0=95,=20UI=EC=97=90=20=ED=91=9C=EC=8B=9C=ED=95=A0=20?= =?UTF-8?q?=EB=8D=B0=EC=9D=B4=ED=84=B0=20=EA=B5=AC=EC=A1=B0=20=EC=88=98?= =?UTF-8?q?=EC=A0=95=ED=95=98=EC=98=80=EA=B3=A0=20Mapper=ED=81=B4=EB=9E=98?= =?UTF-8?q?=EC=8A=A4=EB=A5=BC=20=EB=A7=8C=EB=93=A4=EC=96=B4=EC=84=9C=20?= =?UTF-8?q?=EC=A0=81=EC=A0=88=ED=95=9C=20=EA=B0=92=EC=9C=BC=EB=A1=9C=20?= =?UTF-8?q?=EB=B3=80=EA=B2=BD=ED=95=98=EC=97=AC=20=EC=A3=BC=EB=8A=94=20?= =?UTF-8?q?=EA=B8=B0=EB=8A=A5=20=EC=B6=94=EA=B0=80=20=EB=B0=8F=20=EC=A7=80?= =?UTF-8?q?=EC=86=8D=20=EC=9E=91=EC=97=85=20=EC=A4=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/common/bindingadapter/BindingAdapter.kt | 4 ++-- .../common/producttype/FilterMedicationProductType.kt | 3 ++- .../medicine/common/producttype/MedicationProductType.kt | 2 +- .../model/medicine/medicinedetailinfo/MedicineDetail.kt | 6 +++--- .../feature/news/recallsuspension/RecallSuspensionScreen.kt | 4 ++-- .../feature/search/result/ai/AiSearchResultViewModel.kt | 4 ++-- feature/search/src/main/res/layout/ai_medicine_item.xml | 2 +- 7 files changed, 13 insertions(+), 12 deletions(-) diff --git a/core/common/src/main/java/com/android/mediproject/core/common/bindingadapter/BindingAdapter.kt b/core/common/src/main/java/com/android/mediproject/core/common/bindingadapter/BindingAdapter.kt index dac34297f..75744e320 100644 --- a/core/common/src/main/java/com/android/mediproject/core/common/bindingadapter/BindingAdapter.kt +++ b/core/common/src/main/java/com/android/mediproject/core/common/bindingadapter/BindingAdapter.kt @@ -11,7 +11,7 @@ import androidx.core.view.isVisible import androidx.core.widget.TextViewCompat import androidx.databinding.BindingAdapter import com.android.mediproject.core.common.R -import com.android.mediproject.core.model.medicine.common.producttype.MedicationProductType +import com.android.mediproject.core.model.medicine.common.producttype.FilterMedicationProductType import com.bumptech.glide.annotation.GlideModule import com.bumptech.glide.module.AppGlideModule @@ -21,7 +21,7 @@ class GlideAppModule : AppGlideModule() object BindingAdapter { @JvmStatic @BindingAdapter("medicationTypeText") - fun setMedicationTypeText(textView: TextView, type: MedicationProductType) { + fun setMedicationTypeText(textView: TextView, type: FilterMedicationProductType) { val arr = textView.context.resources.getStringArray(R.array.medicationTypes) textView.text = arr[type.ordinal] } diff --git a/core/model/src/main/java/com/android/mediproject/core/model/medicine/common/producttype/FilterMedicationProductType.kt b/core/model/src/main/java/com/android/mediproject/core/model/medicine/common/producttype/FilterMedicationProductType.kt index e6353e5ec..31ece454d 100644 --- a/core/model/src/main/java/com/android/mediproject/core/model/medicine/common/producttype/FilterMedicationProductType.kt +++ b/core/model/src/main/java/com/android/mediproject/core/model/medicine/common/producttype/FilterMedicationProductType.kt @@ -20,8 +20,9 @@ enum class FilterMedicationProductType(val text: String, @StringRes val stringRe ); companion object { - fun FilterMedicationProductType.text() = text fun FilterMedicationProductType.stringResId() = stringResId + + fun enumOf(text: String) = values().find { text.contains(it.text) }!! } } diff --git a/core/model/src/main/java/com/android/mediproject/core/model/medicine/common/producttype/MedicationProductType.kt b/core/model/src/main/java/com/android/mediproject/core/model/medicine/common/producttype/MedicationProductType.kt index 8aa0dac4e..9ddb2849f 100644 --- a/core/model/src/main/java/com/android/mediproject/core/model/medicine/common/producttype/MedicationProductType.kt +++ b/core/model/src/main/java/com/android/mediproject/core/model/medicine/common/producttype/MedicationProductType.kt @@ -16,6 +16,6 @@ enum class MedicationProductType(val description: String, @StringRes val stringR GENERAL("일반", R.string.medicineProductType_general); companion object { - fun valueOf(description: String) = values().find { description.contains(it.name) } ?: throw IllegalArgumentException() + fun enumOf(description: String) = values().find { description.contains(it.name) } ?: throw IllegalArgumentException() } } diff --git a/core/model/src/main/java/com/android/mediproject/core/model/medicine/medicinedetailinfo/MedicineDetail.kt b/core/model/src/main/java/com/android/mediproject/core/model/medicine/medicinedetailinfo/MedicineDetail.kt index 4de7d16d4..77fb04fc5 100644 --- a/core/model/src/main/java/com/android/mediproject/core/model/medicine/medicinedetailinfo/MedicineDetail.kt +++ b/core/model/src/main/java/com/android/mediproject/core/model/medicine/medicinedetailinfo/MedicineDetail.kt @@ -3,7 +3,7 @@ package com.android.mediproject.core.model.medicine.medicinedetailinfo import com.android.mediproject.core.model.DateTimeValue import com.android.mediproject.core.model.medicine.common.cancel.MedicineCancelStatus import com.android.mediproject.core.model.medicine.common.cancel.MedicineCancelStatusMapper -import com.android.mediproject.core.model.medicine.common.producttype.MedicationProductType +import com.android.mediproject.core.model.medicine.common.producttype.FilterMedicationProductType import com.android.mediproject.core.model.toLocalDate import com.android.mediproject.core.model.util.XMLParsedResult import com.android.mediproject.core.model.util.parseXmlString @@ -66,7 +66,7 @@ data class MedicineDetail( val entpEnglishName: String, val entpName: String, val entpNumber: String, - val medicationProductType: MedicationProductType, + val medicationProductType: FilterMedicationProductType, val gbnName: String, val industryType: String, val ingredientName: String, @@ -107,7 +107,7 @@ fun MedicineDetailInfoResponse.Item.toMedicineDetail(medicineIdInServer: Long = entpEnglishName = entpEnglishName, entpName = entpName, entpNumber = entpNumber, - medicationProductType = MedicationProductType.valueOf(etcOtcCode), + medicationProductType = FilterMedicationProductType.enumOf(etcOtcCode), gbnName = gbnName, industryType = industryType, ingredientName = ingredientName, diff --git a/feature/news/src/main/java/com/android/mediproject/feature/news/recallsuspension/RecallSuspensionScreen.kt b/feature/news/src/main/java/com/android/mediproject/feature/news/recallsuspension/RecallSuspensionScreen.kt index 9efe41aaa..bba899fc6 100644 --- a/feature/news/src/main/java/com/android/mediproject/feature/news/recallsuspension/RecallSuspensionScreen.kt +++ b/feature/news/src/main/java/com/android/mediproject/feature/news/recallsuspension/RecallSuspensionScreen.kt @@ -113,9 +113,9 @@ fun ListItem(recallSuspension: RecallSuspension) { ) Text( text = recallSuspension.run { - if (recallCommandDate != null) recallCommandDate + if (recallCommandDate.isEmpty) recallCommandDate else destructionOrderDate - }!!.format(dateFormat), + }.value.format(dateFormat), fontSize = 12.sp, modifier = Modifier.align(CenterVertically), color = Color.Gray, diff --git a/feature/search/src/main/java/com/android/mediproject/feature/search/result/ai/AiSearchResultViewModel.kt b/feature/search/src/main/java/com/android/mediproject/feature/search/result/ai/AiSearchResultViewModel.kt index 87e8423e1..ab27af2e8 100644 --- a/feature/search/src/main/java/com/android/mediproject/feature/search/result/ai/AiSearchResultViewModel.kt +++ b/feature/search/src/main/java/com/android/mediproject/feature/search/result/ai/AiSearchResultViewModel.kt @@ -9,8 +9,8 @@ import com.android.mediproject.core.common.viewmodel.UiState import com.android.mediproject.core.common.viewmodel.asEventFlow import com.android.mediproject.core.domain.GetMedicineDetailsUseCase import com.android.mediproject.core.model.ai.ClassificationResult -import com.android.mediproject.core.model.navargs.MedicineInfoArgs import com.android.mediproject.core.model.medicine.medicinedetailinfo.MedicineDetail +import com.android.mediproject.core.model.navargs.MedicineInfoArgs import com.android.mediproject.core.ui.base.BaseViewModel import com.android.mediproject.feature.search.result.EventState import dagger.hilt.android.lifecycle.HiltViewModel @@ -80,7 +80,7 @@ class AiSearchResultViewModel @Inject constructor( itemEngName = e.itemEnglishName, itemSeq = e.itemSequence.toLong(), productType = e.industryType, - medicineType = e.medicationProductType, + medicineType = e.medicationProductType.text, imgUrl = e.insertFileUrl, ), ), diff --git a/feature/search/src/main/res/layout/ai_medicine_item.xml b/feature/search/src/main/res/layout/ai_medicine_item.xml index 365ecc666..3434c725f 100644 --- a/feature/search/src/main/res/layout/ai_medicine_item.xml +++ b/feature/search/src/main/res/layout/ai_medicine_item.xml @@ -113,7 +113,7 @@ android:layout_height="wrap_content" android:background="@drawable/medicine_type_background" android:maxLines="1" - android:text="@{item.medicineDetail.medicationProductType}" + android:text="@{item.medicineDetail.medicationProductType.stringResId}" android:textColor="@color/medicineType" android:textSize="11sp" app:layout_constraintLeft_toRightOf="@id/medicineNameTextView"