Skip to content

Commit

Permalink
[FEAT/#123] 판매 모듈 navigation manager 설정
Browse files Browse the repository at this point in the history
  • Loading branch information
Marchbreeze committed Sep 8, 2024
1 parent c969633 commit cf42320
Show file tree
Hide file tree
Showing 6 changed files with 37 additions and 30 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import co.orange.main.push.PushActivity
import co.orange.sell.finished.SellFinishedActivity
import co.orange.sell.info.SellInfoActivity
import co.orange.sell.onboarding.SellOnboardingActivity
import co.orange.setting.bank.BankActivity
import co.orange.setting.delivery.DeliveryActivity
import co.orange.setting.history.HistoryActivity
import co.orange.setting.setting.SettingActivity
Expand Down Expand Up @@ -76,6 +77,10 @@ class NavigationManagerImpl
context.startActivity(Intent(context, DeliveryActivity::class.java))
}

override fun toBankView() {
context.startActivity(Intent(context, BankActivity::class.java))
}

/** To Buy Module**/

override fun toBuyProgressView(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,8 @@ interface NavigationManager {

fun toDeliveryView()

fun toBankView()

/** To Buy Module**/

fun toBuyProgressView(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,18 +15,23 @@ import co.orange.core.base.BaseActivity
import co.orange.core.extension.setOnSingleClickListener
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.domain.entity.response.SellBuyerInfoModel
import co.orange.sell.databinding.ActivitySellConfirmBinding
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.distinctUntilChanged
import kotlinx.coroutines.flow.launchIn
import kotlinx.coroutines.flow.onEach
import javax.inject.Inject
import co.orange.sell.R as featureR

@AndroidEntryPoint
class SellConfirmActivity :
BaseActivity<ActivitySellConfirmBinding>(featureR.layout.activity_sell_confirm) {
@Inject
lateinit var navigationManager: NavigationManager

private val viewModel by viewModels<SellConfirmViewModel>()

override fun onCreate(savedInstanceState: Bundle?) {
Expand Down Expand Up @@ -115,11 +120,7 @@ class SellConfirmActivity :
.onEach { isSuccess ->
if (isSuccess) {
toast(stringOf(R.string.sell_order_fix_msg))
Intent(this, MainActivity::class.java).apply {
addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
startActivity(this)
}
navigationManager.toMainViewWIthClearing()
} else {
toast(stringOf(R.string.error_msg))
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,20 @@ import androidx.activity.viewModels
import co.orange.core.base.BaseActivity
import co.orange.core.extension.setOnSingleClickListener
import co.orange.core.extension.setPriceForm
import co.orange.core.navigation.NavigationManager
import co.orange.sell.databinding.ActivitySellFinishedBinding
import co.orange.sell.info.SellInfoActivity
import coil.load
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
import co.orange.sell.R as featureR

@AndroidEntryPoint
class SellFinishedActivity :
BaseActivity<ActivitySellFinishedBinding>(featureR.layout.activity_sell_finished) {
@Inject
lateinit var navigationManager: NavigationManager

private val viewModel by viewModels<SellFinishedViewModel>()

override fun onCreate(savedInstanceState: Bundle?) {
Expand All @@ -28,16 +33,8 @@ class SellFinishedActivity :

private fun initReturnBtnListener() {
with(binding) {
btnExit.setOnSingleClickListener { returnToMainActivity() }
btnSellMore.setOnSingleClickListener { returnToMainActivity() }
}
}

private fun returnToMainActivity() {
Intent(this, MainActivity::class.java).apply {
addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
startActivity(this)
btnExit.setOnSingleClickListener { navigationManager.toMainViewWIthClearing() }
btnSellMore.setOnSingleClickListener { navigationManager.toMainViewWIthClearing() }
}
}

Expand All @@ -51,10 +48,10 @@ class SellFinishedActivity :

private fun setUiWithIntent() {
with(binding) {
intent.getStringExtra(co.orange.sell.finished.SellFinishedActivity.EXTRA_ITEM_ID)?.let { viewModel.itemId = it }
intent.getStringExtra(co.orange.sell.finished.SellFinishedActivity.EXTRA_PRODUCT_NAME)?.let { tvFinishedItemName.text = it }
intent.getStringExtra(co.orange.sell.finished.SellFinishedActivity.EXTRA_PRODUCT_IMAGE)?.let { ivFinishedItem.load(it) }
tvFinishedItemPrice.text = intent.getIntExtra(co.orange.sell.finished.SellFinishedActivity.EXTRA_SALE_PRICE, 0).setPriceForm()
intent.getStringExtra(EXTRA_ITEM_ID)?.let { viewModel.itemId = it }
intent.getStringExtra(EXTRA_PRODUCT_NAME)?.let { tvFinishedItemName.text = it }
intent.getStringExtra(EXTRA_PRODUCT_IMAGE)?.let { ivFinishedItem.load(it) }
tvFinishedItemPrice.text = intent.getIntExtra(EXTRA_SALE_PRICE, 0).setPriceForm()
}
}

Expand Down
11 changes: 6 additions & 5 deletions feature/sell/src/main/java/co/orange/sell/progress/BankDialog.kt
Original file line number Diff line number Diff line change
@@ -1,19 +1,22 @@
package co.orange.sell.progress

import android.content.Intent
import android.os.Bundle
import android.view.View
import android.view.WindowManager
import androidx.fragment.app.activityViewModels
import co.orange.core.R
import co.orange.core.base.BaseDialog
import co.orange.core.extension.setOnSingleClickListener
import co.orange.presentation.bank.BankActivity
import co.orange.core.navigation.NavigationManager
import co.orange.sell.databinding.DialogBankBinding
import javax.inject.Inject
import co.orange.sell.R as featureR

class BankDialog :
BaseDialog<DialogBankBinding>(featureR.layout.dialog_bank) {
@Inject
lateinit var navigationManager: NavigationManager

private val viewModel by activityViewModels<SellProgressViewModel>()

override fun onStart() {
Expand Down Expand Up @@ -42,9 +45,7 @@ class BankDialog :
private fun initSubmitBtnListener() {
binding.btnSubmit.setOnSingleClickListener {
viewModel.isSentToBank = true
Intent(requireContext(), BankActivity::class.java).apply {
startActivity(this)
}
navigationManager.toBankView()
dismiss()
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,24 +19,26 @@ import co.orange.core.extension.setPriceForm
import co.orange.core.extension.setStatusBarColorFromResource
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.domain.entity.response.SellProductModel
import co.orange.domain.entity.response.SellRegisteredModel
import co.orange.presentation.push.PushActivity
import co.orange.presentation.setting.SettingActivity.Companion.WEB_TERM_SELL
import co.orange.presentation.setting.SettingActivity.Companion.WEB_TERM_SERVICE
import co.orange.sell.databinding.ActivitySellProgressBinding
import co.orange.sell.finished.SellFinishedActivity
import coil.load
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.distinctUntilChanged
import kotlinx.coroutines.flow.launchIn
import kotlinx.coroutines.flow.onEach
import javax.inject.Inject
import co.orange.sell.R as featureR

@AndroidEntryPoint
class SellProgressActivity :
BaseActivity<ActivitySellProgressBinding>(featureR.layout.activity_sell_progress) {
@Inject
lateinit var navigationManager: NavigationManager

private val viewModel by viewModels<SellProgressViewModel>()

private var sellDateBottomSheet: SellDateBottomSheet? = null
Expand Down Expand Up @@ -194,15 +196,14 @@ class SellProgressActivity :
}

private fun navigateToPushActivity(item: SellRegisteredModel) {
PushActivity.createIntent(
this,
navigationManager.toPushViewWithIntent(
false,
null,
item.itemId,
item.productName,
item.imgUrl,
item.salePrice,
).apply { startActivity(this) }
)
finish()
}

Expand Down

0 comments on commit cf42320

Please sign in to comment.