diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index b67c44bc..6b02523a 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -44,6 +44,10 @@
android:exported="false"
android:screenOrientation="portrait" />
+
+
- @font/font_pretendard_semibold
- - 18sp
+ - 20sp
- 2sp
diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml
index ca230875..c0b537fb 100644
--- a/core/src/main/res/values/strings.xml
+++ b/core/src/main/res/values/strings.xml
@@ -34,8 +34,8 @@
판매하기
퓨어 오일 퍼퓸 10 ml 긴제목테스트트트트트
- 54,000
- 48,900
+ 54,000원
+ 48,900원
999+
알림
@@ -48,7 +48,7 @@
%
남은 재고
개
- 이 상품에 대한 자세한 정보를 보고 싶다면?
+ 이 상품에 대한 자세한 정보를 보고 싶다면?
구매하기
원하는 옵션을 선택해주세요
@@ -240,15 +240,15 @@
개인정보 처리방침 (필수)
서비스 이용 약관 (필수)
마케팅 수신 동의 (선택)
- 동의하고 본인 인증하러 가기
+ 동의하고 본인인증하러 가기
%1$s님
완료
환영해요!
- 본인 인증을 진행해주세요
- 안전한 딴지 사용을 위해\n본인 인증이 필요해요
- 본인 인증하러 가기
+ 본인인증을 진행해주세요
+ 안전한 딴지 사용을 위해\n본인인증이 필요해요
+ 본인인증하러 가기
구매 목록
판매 목록
diff --git a/data/src/main/java/co/orange/data/dto/request/SellRegisterRequestDto.kt b/data/src/main/java/co/orange/data/dto/request/SellRegisterRequestDto.kt
index ad028f61..88bb6e59 100644
--- a/data/src/main/java/co/orange/data/dto/request/SellRegisterRequestDto.kt
+++ b/data/src/main/java/co/orange/data/dto/request/SellRegisterRequestDto.kt
@@ -10,12 +10,12 @@ data class SellRegisterRequestDto(
val productId: String,
@SerialName("productName")
val productName: String,
- @SerialName("dueDate")
- val dueDate: String,
+ @SerialName("receivedDate")
+ val receivedDate: String,
@SerialName("registeredImage")
val registeredImage: String,
) {
companion object {
- fun SellRegisterRequestModel.toDto() = SellRegisterRequestDto(productId, productName, dueDate, registeredImage)
+ fun SellRegisterRequestModel.toDto() = SellRegisterRequestDto(productId, productName, receivedDate, registeredImage)
}
}
diff --git a/data/src/main/java/co/orange/data/service/SellService.kt b/data/src/main/java/co/orange/data/service/SellService.kt
index 88c3a4a9..926853b5 100644
--- a/data/src/main/java/co/orange/data/service/SellService.kt
+++ b/data/src/main/java/co/orange/data/service/SellService.kt
@@ -48,7 +48,7 @@ interface SellService {
@Path("id") orderId: String,
): BaseResponse
- @PATCH("/api/v1/order/{id}/sell")
+ @PATCH("/api/v1/order/{id}/sale")
suspend fun patchOrderConfirm(
@Path("id") orderId: String,
): BaseResponse
diff --git a/domain/src/main/kotlin/co/orange/domain/entity/request/SellRegisterRequestModel.kt b/domain/src/main/kotlin/co/orange/domain/entity/request/SellRegisterRequestModel.kt
index 233e863a..8d995585 100644
--- a/domain/src/main/kotlin/co/orange/domain/entity/request/SellRegisterRequestModel.kt
+++ b/domain/src/main/kotlin/co/orange/domain/entity/request/SellRegisterRequestModel.kt
@@ -3,6 +3,6 @@ package co.orange.domain.entity.request
data class SellRegisterRequestModel(
val productId: String,
val productName: String,
- val dueDate: String,
+ val receivedDate: String,
val registeredImage: String,
)
diff --git a/domain/src/main/kotlin/co/orange/domain/enums/ItemStatus.kt b/domain/src/main/kotlin/co/orange/domain/enums/ItemStatus.kt
index aac2fc22..a1d3eac0 100644
--- a/domain/src/main/kotlin/co/orange/domain/enums/ItemStatus.kt
+++ b/domain/src/main/kotlin/co/orange/domain/enums/ItemStatus.kt
@@ -4,6 +4,8 @@ enum class ItemStatus {
ON_SALE,
ORDERED,
SHIPPING,
+ DELAYED_SHIPPING,
+ WARNING,
COMPLETED,
CANCELLED,
}
diff --git a/feature/auth/build.gradle.kts b/feature/auth/build.gradle.kts
index 1f883a0f..24305cc2 100644
--- a/feature/auth/build.gradle.kts
+++ b/feature/auth/build.gradle.kts
@@ -22,12 +22,23 @@ android {
"IAMPORT_CODE",
gradleLocalProperties(rootDir).getProperty("iamport.code"),
)
+ }
- buildConfigField(
- "String",
- "MERCHANT_UID",
- gradleLocalProperties(rootDir).getProperty("merchant.uid"),
- )
+ buildTypes {
+ debug {
+ buildConfigField(
+ "String",
+ "MERCHANT_UID",
+ gradleLocalProperties(rootDir).getProperty("merchant.test.uid"),
+ )
+ }
+ release {
+ buildConfigField(
+ "String",
+ "MERCHANT_UID",
+ gradleLocalProperties(rootDir).getProperty("merchant.uid"),
+ )
+ }
}
compileOptions {
diff --git a/feature/buy/build.gradle.kts b/feature/buy/build.gradle.kts
index cacafdd5..3f1c88a3 100644
--- a/feature/buy/build.gradle.kts
+++ b/feature/buy/build.gradle.kts
@@ -22,12 +22,22 @@ android {
"IAMPORT_CODE",
gradleLocalProperties(rootDir).getProperty("iamport.code"),
)
-
- buildConfigField(
- "String",
- "PAYMENT_UID",
- gradleLocalProperties(rootDir).getProperty("payment.uid"),
- )
+ }
+ buildTypes {
+ debug {
+ buildConfigField(
+ "String",
+ "PAYMENT_UID",
+ gradleLocalProperties(rootDir).getProperty("payment.test.uid"),
+ )
+ }
+ release {
+ buildConfigField(
+ "String",
+ "PAYMENT_UID",
+ gradleLocalProperties(rootDir).getProperty("payment.uid"),
+ )
+ }
}
compileOptions {
diff --git a/feature/buy/src/main/java/co/orange/buy/finished/BuyFinishedActivity.kt b/feature/buy/src/main/java/co/orange/buy/finished/BuyFinishedActivity.kt
index 55cd0de4..ef6c7156 100644
--- a/feature/buy/src/main/java/co/orange/buy/finished/BuyFinishedActivity.kt
+++ b/feature/buy/src/main/java/co/orange/buy/finished/BuyFinishedActivity.kt
@@ -54,17 +54,13 @@ class BuyFinishedActivity :
}
private fun initReturnBtnListener() {
- binding.btnHome.setOnSingleClickListener { navigateToHome() }
+ binding.btnHome.setOnSingleClickListener { navigationManager.toMainViewWIthClearing(this) }
binding.btnKeepShopping.setOnSingleClickListener {
AmplitudeManager.trackEvent("click_purchase_adjustment_add")
- navigateToHome()
+ navigationManager.toMainViewWIthClearing(this)
}
}
- private fun navigateToHome() {
- navigationManager.toMainViewWIthClearing(this)
- }
-
private fun initDetailBtnListener() {
binding.btnShowDetail.setOnSingleClickListener {
AmplitudeManager.trackEvent("click_purchase_adjustment_check")
diff --git a/feature/buy/src/main/res/layout/activity_buy_finished.xml b/feature/buy/src/main/res/layout/activity_buy_finished.xml
index 8308c802..3b95d1d5 100644
--- a/feature/buy/src/main/res/layout/activity_buy_finished.xml
+++ b/feature/buy/src/main/res/layout/activity_buy_finished.xml
@@ -24,8 +24,7 @@
style="@style/TextAppearance.DDanzi.Body2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginTop="12dp"
- android:layout_marginBottom="19dp"
+ android:padding="20dp"
android:text="@string/buy_finished_tv_title"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
diff --git a/feature/buy/src/main/res/layout/activity_buy_info.xml b/feature/buy/src/main/res/layout/activity_buy_info.xml
index 5e6eff45..71ec4cc0 100644
--- a/feature/buy/src/main/res/layout/activity_buy_info.xml
+++ b/feature/buy/src/main/res/layout/activity_buy_info.xml
@@ -24,8 +24,7 @@
style="@style/TextAppearance.DDanzi.Body2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginTop="12dp"
- android:layout_marginBottom="19dp"
+ android:padding="20dp"
android:text="@string/buy_info_tv_title"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
@@ -112,10 +111,10 @@
android:layout_height="0dp"
android:layout_marginTop="18dp"
android:scaleType="centerCrop"
- android:src="@drawable/mock_img_product"
app:layout_constraintDimensionRatio="1"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toBottomOf="@id/tv_info_product_title" />
+ app:layout_constraintTop_toBottomOf="@id/tv_info_product_title"
+ tools:src="@drawable/mock_img_product" />
(R.layout.activity_alarm
binding.layoutEmpty.isVisible = state.data.alarmList.isEmpty()
}
- is UiState.Failure -> toast(stringOf(co.orange.core.R.string.error_msg))
+ is UiState.Failure -> {
+ toast(stringOf(co.orange.core.R.string.error_msg))
+ binding.layoutEmpty.isVisible = true
+ }
+
else -> return@onEach
}
}.launchIn(lifecycleScope)
@@ -96,10 +100,10 @@ class AlarmActivity : BaseActivity(R.layout.activity_alarm
}
in listOf(AlarmType.B2.name, AlarmType.B3.name, AlarmType.B4.name) -> {
- item.orderId?.let { navigationManager.toSellInfoView(this, it) }
+ item.orderId?.let { navigationManager.toBuyInfoView(this, it) }
}
- else -> return
+ else -> finish()
}
}
diff --git a/feature/main/src/main/java/co/orange/main/detail/DetailActivity.kt b/feature/main/src/main/java/co/orange/main/detail/DetailActivity.kt
index ce818687..de288b0d 100644
--- a/feature/main/src/main/java/co/orange/main/detail/DetailActivity.kt
+++ b/feature/main/src/main/java/co/orange/main/detail/DetailActivity.kt
@@ -122,6 +122,7 @@ class DetailActivity : BaseActivity(featureR.layout.activ
private fun setProduct(item: ProductDetailModel) {
with(binding) {
+ layoutDetailBefore.isVisible = false
tvDetailTitle.text = item.name.breakLines()
chipsDetailCategory.text = item.category
chipsDetailOption.isVisible = item.isOptionExist
diff --git a/feature/main/src/main/java/co/orange/main/detail/OptionBottomSheet.kt b/feature/main/src/main/java/co/orange/main/detail/OptionBottomSheet.kt
index daccb33b..258815c0 100644
--- a/feature/main/src/main/java/co/orange/main/detail/OptionBottomSheet.kt
+++ b/feature/main/src/main/java/co/orange/main/detail/OptionBottomSheet.kt
@@ -70,6 +70,7 @@ class OptionBottomSheet :
viewModel.productId,
viewModel.selectedOptionList,
)
+ dismiss()
}
}
diff --git a/feature/main/src/main/java/co/orange/main/main/home/HomeFragment.kt b/feature/main/src/main/java/co/orange/main/main/home/HomeFragment.kt
index 668a9fae..3f7d2017 100644
--- a/feature/main/src/main/java/co/orange/main/main/home/HomeFragment.kt
+++ b/feature/main/src/main/java/co/orange/main/main/home/HomeFragment.kt
@@ -18,6 +18,7 @@ import co.orange.core.extension.stringOf
import co.orange.core.extension.toast
import co.orange.core.navigation.NavigationManager
import co.orange.core.state.UiState
+import co.orange.main.alarm.AlarmActivity
import co.orange.main.databinding.FragmentHomeBinding
import co.orange.main.detail.DetailActivity
import co.orange.main.main.home.HomeAdapter.Companion.VIEW_TYPE_BANNER
@@ -48,6 +49,7 @@ class HomeFragment() : BaseFragment(featureR.layout.fragmen
initAdapter()
initSearchBtnListener()
+ initAlarmBtnListener()
initSellBtnListener()
setDeviceToken()
setGridRecyclerView()
@@ -102,6 +104,12 @@ class HomeFragment() : BaseFragment(featureR.layout.fragmen
}
}
+ private fun initAlarmBtnListener() {
+ binding.btnAlarm.setOnSingleClickListener {
+ startActivity(Intent(requireContext(), AlarmActivity::class.java))
+ }
+ }
+
private fun initSellBtnListener() {
binding.btnSell.setOnSingleClickListener {
AmplitudeManager.trackEvent("click_home_sell")
diff --git a/feature/main/src/main/res/layout/activity_alarm.xml b/feature/main/src/main/res/layout/activity_alarm.xml
index 89328ee4..a9023cbc 100644
--- a/feature/main/src/main/res/layout/activity_alarm.xml
+++ b/feature/main/src/main/res/layout/activity_alarm.xml
@@ -26,8 +26,8 @@
android:id="@+id/tv_alarm_title"
style="@style/TextAppearance.DDanzi.Body2"
android:layout_width="wrap_content"
+ android:padding="20dp"
android:layout_height="wrap_content"
- android:layout_marginTop="12dp"
android:text="@string/alarm_tv_title"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
@@ -37,11 +37,10 @@
android:id="@+id/border_alarm"
android:layout_width="0dp"
android:layout_height="7dp"
- android:layout_marginTop="2dp"
android:background="@color/background_gray"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toBottomOf="@id/btn_back" />
+ app:layout_constraintTop_toBottomOf="@id/tv_alarm_title" />
+
+
+
+
@@ -34,8 +46,9 @@
android:id="@+id/iv_home_logo"
android:layout_width="76dp"
android:layout_height="wrap_content"
- android:layout_marginStart="26dp"
+ android:layout_marginStart="20dp"
android:adjustViewBounds="true"
+ android:paddingVertical="20dp"
android:src="@drawable/img_logo_text"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
diff --git a/feature/sell/src/main/java/co/orange/sell/confirm/SellConfirmActivity.kt b/feature/sell/src/main/java/co/orange/sell/confirm/SellConfirmActivity.kt
index b748a2f3..ff7a7469 100644
--- a/feature/sell/src/main/java/co/orange/sell/confirm/SellConfirmActivity.kt
+++ b/feature/sell/src/main/java/co/orange/sell/confirm/SellConfirmActivity.kt
@@ -42,7 +42,7 @@ class SellConfirmActivity :
initConfirmBtnListener()
getIntentInfo()
observeGetBuyerInfoState()
- observePatchOrderConfirmResult()
+ observePatchOrderConfirmState()
}
private fun initBackBtnListener() {
@@ -115,14 +115,17 @@ class SellConfirmActivity :
clipboardManager.setPrimaryClip(ClipData.newPlainText(CLIP_LABEL, text))
}
- private fun observePatchOrderConfirmResult() {
- viewModel.patchOrderConfirmResult.flowWithLifecycle(lifecycle).distinctUntilChanged()
- .onEach { isSuccess ->
- if (isSuccess) {
- toast(stringOf(R.string.sell_order_fix_msg))
- navigationManager.toMainViewWIthClearing(this)
- } else {
- toast(stringOf(R.string.error_msg))
+ private fun observePatchOrderConfirmState() {
+ viewModel.patchOrderConfirmState.flowWithLifecycle(lifecycle).distinctUntilChanged()
+ .onEach { state ->
+ when (state) {
+ is UiState.Success -> {
+ toast(stringOf(R.string.sell_order_fix_msg))
+ navigationManager.toMainViewWIthClearing(this)
+ }
+
+ is UiState.Failure -> toast(stringOf(R.string.error_msg))
+ else -> return@onEach
}
}.launchIn(lifecycleScope)
}
diff --git a/feature/sell/src/main/java/co/orange/sell/confirm/SellConfirmViewModel.kt b/feature/sell/src/main/java/co/orange/sell/confirm/SellConfirmViewModel.kt
index ec702c79..d20afb38 100644
--- a/feature/sell/src/main/java/co/orange/sell/confirm/SellConfirmViewModel.kt
+++ b/feature/sell/src/main/java/co/orange/sell/confirm/SellConfirmViewModel.kt
@@ -7,9 +7,7 @@ import co.orange.domain.entity.response.SellBuyerInfoModel
import co.orange.domain.enums.OrderStatus
import co.orange.domain.repository.SellRepository
import dagger.hilt.android.lifecycle.HiltViewModel
-import kotlinx.coroutines.flow.MutableSharedFlow
import kotlinx.coroutines.flow.MutableStateFlow
-import kotlinx.coroutines.flow.SharedFlow
import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.launch
import javax.inject.Inject
@@ -25,8 +23,8 @@ class SellConfirmViewModel
private val _getBuyerInfoState = MutableStateFlow>(UiState.Empty)
val getBuyerInfoState: StateFlow> = _getBuyerInfoState
- private val _patchOrderConfirmResult = MutableSharedFlow()
- val patchOrderConfirmResult: SharedFlow = _patchOrderConfirmResult
+ private val _patchOrderConfirmState = MutableStateFlow>(UiState.Empty)
+ val patchOrderConfirmState: StateFlow> = _patchOrderConfirmState
fun getBuyerInfoFromServer() {
_getBuyerInfoState.value = UiState.Loading
@@ -44,14 +42,14 @@ class SellConfirmViewModel
viewModelScope.launch {
sellRepository.patchOrderConfirm(orderId)
.onSuccess {
- if (it.orderStatus == OrderStatus.COMPLETED.name) {
- _patchOrderConfirmResult.emit(true)
+ if (it.orderStatus == OrderStatus.SHIPPING.name) {
+ _patchOrderConfirmState.value = UiState.Success(true)
} else {
- _patchOrderConfirmResult.emit(false)
+ _patchOrderConfirmState.value = UiState.Failure(it.orderStatus)
}
}
.onFailure {
- _patchOrderConfirmResult.emit(false)
+ _patchOrderConfirmState.value = UiState.Failure(it.message.orEmpty())
}
}
}
diff --git a/feature/sell/src/main/java/co/orange/sell/finished/SellFinishedActivity.kt b/feature/sell/src/main/java/co/orange/sell/finished/SellFinishedActivity.kt
index dc35cbf3..733b1d3f 100644
--- a/feature/sell/src/main/java/co/orange/sell/finished/SellFinishedActivity.kt
+++ b/feature/sell/src/main/java/co/orange/sell/finished/SellFinishedActivity.kt
@@ -34,10 +34,12 @@ class SellFinishedActivity :
private fun initReturnBtnListener() {
with(binding) {
- btnExit.setOnSingleClickListener { navigationManager.toMainViewWIthClearing(this@SellFinishedActivity) }
+ btnExit.setOnSingleClickListener {
+ navigationManager.toMainViewWIthClearing(this@SellFinishedActivity)
+ }
btnSellMore.setOnSingleClickListener {
AmplitudeManager.trackEvent("click_sell_adjustment_add")
- navigationManager.toMainViewWIthClearing(this@SellFinishedActivity)
+ finish()
}
}
}
diff --git a/feature/sell/src/main/java/co/orange/sell/info/SellInfoActivity.kt b/feature/sell/src/main/java/co/orange/sell/info/SellInfoActivity.kt
index a0fe936b..42f62606 100644
--- a/feature/sell/src/main/java/co/orange/sell/info/SellInfoActivity.kt
+++ b/feature/sell/src/main/java/co/orange/sell/info/SellInfoActivity.kt
@@ -100,14 +100,20 @@ class SellInfoActivity :
val (infoMsgResId, btnTextResId, isButtonEnabled) =
when (status) {
ItemStatus.ON_SALE.name -> {
- Triple(R.string.sell_info_msg_on_sale, R.string.sell_info_btn_fix, false)
+ Triple(R.string.sell_info_msg_on_sale, R.string.sell_info_msg_on_sale, false)
}
ItemStatus.ORDERED.name -> {
Triple(R.string.sell_info_msg_ordered, R.string.sell_info_btn_fix, true)
}
- ItemStatus.SHIPPING.name -> {
+ in
+ listOf(
+ ItemStatus.SHIPPING.name,
+ ItemStatus.DELAYED_SHIPPING.name,
+ ItemStatus.WARNING.name,
+ ),
+ -> {
Triple(R.string.buy_info_msg_shipping, R.string.sell_info_btn_shipping, false)
}
diff --git a/feature/sell/src/main/res/layout/activity_sell_confirm.xml b/feature/sell/src/main/res/layout/activity_sell_confirm.xml
index 18fbbad2..8f222cbd 100644
--- a/feature/sell/src/main/res/layout/activity_sell_confirm.xml
+++ b/feature/sell/src/main/res/layout/activity_sell_confirm.xml
@@ -35,8 +35,7 @@
style="@style/TextAppearance.DDanzi.Body2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginTop="12dp"
- android:layout_marginBottom="19dp"
+ android:padding="20dp"
android:text="@string/sell_confirm_tv_title"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
diff --git a/feature/sell/src/main/res/layout/activity_sell_finished.xml b/feature/sell/src/main/res/layout/activity_sell_finished.xml
index c40957ac..4077dea2 100644
--- a/feature/sell/src/main/res/layout/activity_sell_finished.xml
+++ b/feature/sell/src/main/res/layout/activity_sell_finished.xml
@@ -24,8 +24,7 @@
style="@style/TextAppearance.DDanzi.Body2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginTop="12dp"
- android:layout_marginBottom="24dp"
+ android:padding="20dp"
android:text="@string/sell_finished_tv_title"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
diff --git a/feature/sell/src/main/res/layout/activity_sell_info.xml b/feature/sell/src/main/res/layout/activity_sell_info.xml
index df6608d9..f9ae852a 100644
--- a/feature/sell/src/main/res/layout/activity_sell_info.xml
+++ b/feature/sell/src/main/res/layout/activity_sell_info.xml
@@ -24,8 +24,7 @@
style="@style/TextAppearance.DDanzi.Body2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginTop="12dp"
- android:layout_marginBottom="19dp"
+ android:padding="20dp"
android:text="@string/sell_info_tv_title"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
@@ -87,7 +86,7 @@
style="@style/TextAppearance.DDanzi.Body4"
android:layout_width="0dp"
android:layout_height="wrap_content"
- android:layout_marginHorizontal="20dp"
+ android:layout_marginHorizontal="10dp"
android:gravity="center"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
diff --git a/feature/sell/src/main/res/layout/activity_sell_onboarding.xml b/feature/sell/src/main/res/layout/activity_sell_onboarding.xml
index edc582e5..9674bc32 100644
--- a/feature/sell/src/main/res/layout/activity_sell_onboarding.xml
+++ b/feature/sell/src/main/res/layout/activity_sell_onboarding.xml
@@ -24,8 +24,7 @@
style="@style/TextAppearance.DDanzi.Body2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginTop="12dp"
- android:layout_marginBottom="24dp"
+ android:padding="20dp"
android:text="@string/confirm_tv_sell_title"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
diff --git a/feature/sell/src/main/res/layout/activity_sell_progress.xml b/feature/sell/src/main/res/layout/activity_sell_progress.xml
index 7fbe0241..24e528a0 100644
--- a/feature/sell/src/main/res/layout/activity_sell_progress.xml
+++ b/feature/sell/src/main/res/layout/activity_sell_progress.xml
@@ -31,8 +31,7 @@
style="@style/TextAppearance.DDanzi.Body2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginTop="12dp"
- android:layout_marginBottom="24dp"
+ android:padding="20dp"
android:text="@string/confirm_tv_sell_title"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
diff --git a/feature/sell/src/main/res/layout/dialog_sell_product.xml b/feature/sell/src/main/res/layout/dialog_sell_product.xml
index f777eba5..3ac3b263 100644
--- a/feature/sell/src/main/res/layout/dialog_sell_product.xml
+++ b/feature/sell/src/main/res/layout/dialog_sell_product.xml
@@ -60,6 +60,7 @@
style="@style/TextAppearance.DDanzi.Body2"
android:layout_width="0dp"
android:layout_height="wrap_content"
+ android:gravity="center"
android:layout_marginHorizontal="20dp"
android:layout_marginTop="45dp"
android:ellipsize="end"
diff --git a/feature/setting/src/main/java/co/orange/setting/bank/BankActivity.kt b/feature/setting/src/main/java/co/orange/setting/bank/BankActivity.kt
index 4dbdc7b0..8034f2f7 100644
--- a/feature/setting/src/main/java/co/orange/setting/bank/BankActivity.kt
+++ b/feature/setting/src/main/java/co/orange/setting/bank/BankActivity.kt
@@ -54,7 +54,7 @@ class BankActivity : BaseActivity(featureR.layout.activity_
}
private fun navigateToAddBankView(accountId: Long) {
- startActivity(BankAddActivity.createIntent(this, accountId))
+ startActivity(BankAddActivity.createIntent(this, accountId, viewModel.ownerName))
}
private fun observeUserBankState() {
diff --git a/feature/setting/src/main/java/co/orange/setting/bank/BankViewModel.kt b/feature/setting/src/main/java/co/orange/setting/bank/BankViewModel.kt
index 0419460f..ddd02c2b 100644
--- a/feature/setting/src/main/java/co/orange/setting/bank/BankViewModel.kt
+++ b/feature/setting/src/main/java/co/orange/setting/bank/BankViewModel.kt
@@ -18,6 +18,7 @@ class BankViewModel
private val settingRepository: SettingRepository,
) : ViewModel() {
var accountId: Long = -1
+ var ownerName: String = ""
private val _getUserBankState = MutableStateFlow>(UiState.Empty)
val getUserBankState: StateFlow> = _getUserBankState
@@ -25,9 +26,10 @@ class BankViewModel
fun getUserBankFromServer() {
viewModelScope.launch {
settingRepository.getUserBank()
- .onSuccess {
- it.accountId?.let { accountId = it }
- _getUserBankState.value = UiState.Success(it)
+ .onSuccess { response ->
+ response.accountId?.let { accountId = it }
+ response.name?.let { ownerName = it }
+ _getUserBankState.value = UiState.Success(response)
}
.onFailure {
_getUserBankState.value = UiState.Failure(it.message.orEmpty())
diff --git a/feature/setting/src/main/java/co/orange/setting/bank/add/BankAddActivity.kt b/feature/setting/src/main/java/co/orange/setting/bank/add/BankAddActivity.kt
index 1144ccb6..8304896a 100644
--- a/feature/setting/src/main/java/co/orange/setting/bank/add/BankAddActivity.kt
+++ b/feature/setting/src/main/java/co/orange/setting/bank/add/BankAddActivity.kt
@@ -9,6 +9,7 @@ import androidx.lifecycle.lifecycleScope
import co.orange.core.R
import co.orange.core.amplitude.AmplitudeManager
import co.orange.core.base.BaseActivity
+import co.orange.core.extension.maskName
import co.orange.core.extension.setOnSingleClickListener
import co.orange.core.extension.stringOf
import co.orange.core.extension.toast
@@ -33,6 +34,7 @@ class BankAddActivity : BaseActivity(featureR.layout.act
initBackBtnListener()
initBankTypeListener()
initConfirmBtnListener()
+ getIntentFromPreviousView()
observeAddressResult()
}
@@ -48,17 +50,26 @@ class BankAddActivity : BaseActivity(featureR.layout.act
}
private fun initConfirmBtnListener() {
- AmplitudeManager.trackEvent("click_account_next")
- val accountId = intent.getLongExtra(EXTRA_ACCOUNT_ID, -1)
binding.btnConfirm.setOnSingleClickListener {
- if (accountId == DEFAULT_ID) {
- viewModel.postToAddBankToServer()
- } else {
- viewModel.putToModBankToServer(accountId)
+ AmplitudeManager.trackEvent("click_account_next")
+ with(viewModel) {
+ if (accountId == DEFAULT_ID) {
+ postToAddBankToServer()
+ } else {
+ putToModBankToServer(accountId)
+ }
}
}
}
+ private fun getIntentFromPreviousView() {
+ with(viewModel) {
+ accountId = intent.getLongExtra(EXTRA_ACCOUNT_ID, -1)
+ ownerName = intent.getStringExtra(EXTRA_OWNER_NAME).orEmpty()
+ maskedName.value = ownerName.takeIf { it.isNotEmpty() }?.maskName()
+ }
+ }
+
private fun observeAddressResult() {
viewModel.setBankResult.flowWithLifecycle(lifecycle).distinctUntilChanged()
.onEach { isSuccess ->
@@ -73,6 +84,7 @@ class BankAddActivity : BaseActivity(featureR.layout.act
override fun onDestroy() {
super.onDestroy()
+
bankTypeBottomSheet = null
}
@@ -81,14 +93,17 @@ class BankAddActivity : BaseActivity(featureR.layout.act
private const val BOTTOM_SHEET_BANK_TYPE = "BOTTOM_SHEET_BANK_TYPE"
private const val EXTRA_ACCOUNT_ID = "EXTRA_ACCOUNT_ID"
+ private const val EXTRA_OWNER_NAME = "EXTRA_OWNER_NAME"
@JvmStatic
fun createIntent(
context: Context,
accountId: Long,
+ ownerName: String,
): Intent =
Intent(context, BankAddActivity::class.java).apply {
putExtra(EXTRA_ACCOUNT_ID, accountId)
+ putExtra(EXTRA_OWNER_NAME, ownerName)
}
}
}
diff --git a/feature/setting/src/main/java/co/orange/setting/bank/add/BankAddViewModel.kt b/feature/setting/src/main/java/co/orange/setting/bank/add/BankAddViewModel.kt
index bfee17ac..da7fc08a 100644
--- a/feature/setting/src/main/java/co/orange/setting/bank/add/BankAddViewModel.kt
+++ b/feature/setting/src/main/java/co/orange/setting/bank/add/BankAddViewModel.kt
@@ -3,10 +3,8 @@ package co.orange.setting.bank.add
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
-import co.orange.core.extension.maskName
import co.orange.domain.entity.request.BankRequestModel
import co.orange.domain.repository.SettingRepository
-import co.orange.domain.repository.UserRepository
import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.flow.MutableSharedFlow
import kotlinx.coroutines.flow.SharedFlow
@@ -18,8 +16,9 @@ class BankAddViewModel
@Inject
constructor(
private val settingRepository: SettingRepository,
- private val userRepository: UserRepository,
) : ViewModel() {
+ var accountId: Long = -1
+
var ownerName = ""
var maskedName = MutableLiveData()
@@ -33,15 +32,6 @@ class BankAddViewModel
private val _setBankResult = MutableSharedFlow()
val setBankResult: SharedFlow = _setBankResult
- init {
- getUserName()
- }
-
- private fun getUserName() {
- ownerName = userRepository.getUserName()
- maskedName.value = ownerName.takeIf { it.isNotEmpty() }?.maskName() ?: return
- }
-
fun checkIsCompleted() {
isCompleted.value =
(!maskedName.value.isNullOrEmpty() && bankCode.isNotEmpty() && !accountNumber.value.isNullOrEmpty())
diff --git a/feature/setting/src/main/java/co/orange/setting/history/HistoryActivity.kt b/feature/setting/src/main/java/co/orange/setting/history/HistoryActivity.kt
index 0d4a58c0..a7a7a6e0 100644
--- a/feature/setting/src/main/java/co/orange/setting/history/HistoryActivity.kt
+++ b/feature/setting/src/main/java/co/orange/setting/history/HistoryActivity.kt
@@ -67,7 +67,7 @@ class HistoryActivity : BaseActivity(featureR.layout.act
private fun initAdapter() {
_buyAdapter =
HistoryBuyAdapter { orderId ->
- navigationManager.toBuyFinishedView(this, orderId)
+ navigationManager.toBuyInfoView(this, orderId)
}
_sellAdapter =
HistorySellAdapter { itemId ->
diff --git a/feature/setting/src/main/java/co/orange/setting/history/order/HistoryBuyViewHolder.kt b/feature/setting/src/main/java/co/orange/setting/history/order/HistoryBuyViewHolder.kt
index 3e766bfc..16919690 100644
--- a/feature/setting/src/main/java/co/orange/setting/history/order/HistoryBuyViewHolder.kt
+++ b/feature/setting/src/main/java/co/orange/setting/history/order/HistoryBuyViewHolder.kt
@@ -3,6 +3,7 @@ package co.orange.setting.history.order
import android.graphics.Paint
import androidx.recyclerview.widget.RecyclerView
import co.orange.core.extension.breakLines
+import co.orange.core.extension.convertDateTime
import co.orange.core.extension.setOnSingleClickListener
import co.orange.core.extension.setPriceForm
import co.orange.domain.entity.response.HistoryBuyModel.OrderProductModel
@@ -23,10 +24,20 @@ class HistoryBuyViewHolder(
paintFlags = Paint.STRIKE_THRU_TEXT_FLAG
}
tvBuyItemNowPrice.text = item.salePrice.setPriceForm()
+ tvBuyItemDate.text =
+ item.paidAt.convertDateTime(
+ OLD_DATE_PATTERN,
+ NEW_DATE_PATTERN,
+ )
root.setOnSingleClickListener {
itemClick(item.orderId)
}
}
}
+
+ companion object {
+ const val OLD_DATE_PATTERN = "yyyy-MM-dd'T'HH:mm:ss"
+ const val NEW_DATE_PATTERN = "yyyy년 MM월 dd일 구매"
+ }
}
diff --git a/feature/setting/src/main/res/layout/activity_account.xml b/feature/setting/src/main/res/layout/activity_account.xml
index b59d42f2..139540af 100644
--- a/feature/setting/src/main/res/layout/activity_account.xml
+++ b/feature/setting/src/main/res/layout/activity_account.xml
@@ -15,8 +15,8 @@
android:id="@+id/btn_back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
+ android:layout_marginTop="4dp"
android:layout_marginStart="8dp"
- android:layout_marginTop="1dp"
android:padding="12dp"
android:src="@drawable/ic_back"
app:layout_constraintStart_toStartOf="parent"
diff --git a/feature/setting/src/main/res/layout/activity_history.xml b/feature/setting/src/main/res/layout/activity_history.xml
index 6a43049c..82339dcb 100644
--- a/feature/setting/src/main/res/layout/activity_history.xml
+++ b/feature/setting/src/main/res/layout/activity_history.xml
@@ -35,8 +35,7 @@
style="@style/TextAppearance.DDanzi.Body2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginTop="12dp"
- android:layout_marginBottom="19dp"
+ android:padding="20dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
diff --git a/feature/setting/src/main/res/layout/activity_setting.xml b/feature/setting/src/main/res/layout/activity_setting.xml
index 4b6e8942..1315df68 100644
--- a/feature/setting/src/main/res/layout/activity_setting.xml
+++ b/feature/setting/src/main/res/layout/activity_setting.xml
@@ -35,8 +35,7 @@
style="@style/TextAppearance.DDanzi.Body2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginTop="12dp"
- android:layout_marginBottom="19dp"
+ android:padding="20dp"
android:text="@string/setting_tv_title"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
diff --git a/feature/setting/src/main/res/layout/item_history_buy.xml b/feature/setting/src/main/res/layout/item_history_buy.xml
index 81a76ef8..c45392b0 100644
--- a/feature/setting/src/main/res/layout/item_history_buy.xml
+++ b/feature/setting/src/main/res/layout/item_history_buy.xml
@@ -18,6 +18,7 @@
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginTop="14dp"
+ app:cardCornerRadius="10dp"
app:cardElevation="0dp"
app:layout_constraintDimensionRatio="1"
app:layout_constraintEnd_toEndOf="parent"