diff --git a/data/src/main/java/com/going/data/datasource/SettingDataSource.kt b/data/src/main/java/com/going/data/datasource/SettingDataSource.kt index 43cee88e..da5ec881 100644 --- a/data/src/main/java/com/going/data/datasource/SettingDataSource.kt +++ b/data/src/main/java/com/going/data/datasource/SettingDataSource.kt @@ -3,7 +3,7 @@ package com.going.data.datasource import com.going.data.dto.NonDataBaseResponse interface SettingDataSource { - suspend fun patchSignOut(): NonDataBaseResponse + suspend fun patchSignOut(): NonDataBaseResponse - suspend fun deleteWithDraw(): NonDataBaseResponse + suspend fun deleteWithDraw(): NonDataBaseResponse } diff --git a/data/src/main/java/com/going/data/datasource/TendencyDataSource.kt b/data/src/main/java/com/going/data/datasource/TendencyDataSource.kt index 2b9fb929..320da64e 100644 --- a/data/src/main/java/com/going/data/datasource/TendencyDataSource.kt +++ b/data/src/main/java/com/going/data/datasource/TendencyDataSource.kt @@ -4,5 +4,5 @@ import com.going.data.dto.NonDataBaseResponse import com.going.data.dto.request.TendencyTestRequestDto interface TendencyDataSource { - suspend fun patchTendencyTest(result: TendencyTestRequestDto): NonDataBaseResponse + suspend fun patchTendencyTest(result: TendencyTestRequestDto): NonDataBaseResponse } diff --git a/data/src/main/java/com/going/data/datasourceImpl/SettingDataSourceImpl.kt b/data/src/main/java/com/going/data/datasourceImpl/SettingDataSourceImpl.kt index 7bde298b..af959b78 100644 --- a/data/src/main/java/com/going/data/datasourceImpl/SettingDataSourceImpl.kt +++ b/data/src/main/java/com/going/data/datasourceImpl/SettingDataSourceImpl.kt @@ -8,6 +8,6 @@ import javax.inject.Inject class SettingDataSourceImpl @Inject constructor( private val settingService: SettingService, ) : SettingDataSource { - override suspend fun patchSignOut(): NonDataBaseResponse = settingService.patchSignOut() - override suspend fun deleteWithDraw(): NonDataBaseResponse = settingService.deleteWithDraw() + override suspend fun patchSignOut(): NonDataBaseResponse = settingService.patchSignOut() + override suspend fun deleteWithDraw(): NonDataBaseResponse = settingService.deleteWithDraw() } diff --git a/data/src/main/java/com/going/data/datasourceImpl/TendencyDataSourceImpl.kt b/data/src/main/java/com/going/data/datasourceImpl/TendencyDataSourceImpl.kt index 4b789df5..125e883f 100644 --- a/data/src/main/java/com/going/data/datasourceImpl/TendencyDataSourceImpl.kt +++ b/data/src/main/java/com/going/data/datasourceImpl/TendencyDataSourceImpl.kt @@ -9,6 +9,6 @@ import javax.inject.Inject class TendencyDataSourceImpl @Inject constructor( private val tendencyService: TendencyService, ) : TendencyDataSource { - override suspend fun patchTendencyTest(result: TendencyTestRequestDto): NonDataBaseResponse = + override suspend fun patchTendencyTest(result: TendencyTestRequestDto): NonDataBaseResponse = tendencyService.patchTendencyTest(result) } diff --git a/data/src/main/java/com/going/data/service/SettingService.kt b/data/src/main/java/com/going/data/service/SettingService.kt index e7c7fafb..43ef8bd2 100644 --- a/data/src/main/java/com/going/data/service/SettingService.kt +++ b/data/src/main/java/com/going/data/service/SettingService.kt @@ -6,8 +6,8 @@ import retrofit2.http.PATCH interface SettingService { @PATCH("api/users/signout") - suspend fun patchSignOut(): NonDataBaseResponse + suspend fun patchSignOut(): NonDataBaseResponse @DELETE("api/users/withdraw") - suspend fun deleteWithDraw(): NonDataBaseResponse + suspend fun deleteWithDraw(): NonDataBaseResponse } diff --git a/data/src/main/java/com/going/data/service/TendencyService.kt b/data/src/main/java/com/going/data/service/TendencyService.kt index 4c0f6141..5ed0eb84 100644 --- a/data/src/main/java/com/going/data/service/TendencyService.kt +++ b/data/src/main/java/com/going/data/service/TendencyService.kt @@ -9,5 +9,5 @@ interface TendencyService { @PATCH("api/users/test") suspend fun patchTendencyTest( @Body result: TendencyTestRequestDto, - ): NonDataBaseResponse + ): NonDataBaseResponse } diff --git a/presentation/src/main/java/com/going/presentation/todo/ourtodo/OurTodoFragment.kt b/presentation/src/main/java/com/going/presentation/todo/ourtodo/OurTodoFragment.kt index 1e154d6b..7b9a4256 100644 --- a/presentation/src/main/java/com/going/presentation/todo/ourtodo/OurTodoFragment.kt +++ b/presentation/src/main/java/com/going/presentation/todo/ourtodo/OurTodoFragment.kt @@ -66,24 +66,10 @@ class OurTodoFragment() : BaseFragment(R.layout.fragment private fun setMyTripInfo() { // TODO: tripId - val tripId : Long = 1 + val tripId: Long = 1 viewModel.getOurTripInfoFromServer(tripId) } - private fun setDateTextColor() { - binding.tvOurTodoTitleDown.apply { - text = SpannableStringBuilder(text).apply { - setSpan( - ForegroundColorSpan( - ContextCompat.getColor( - requireContext(), R.color.red_500 - ) - ), 6, length - 6, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE - ) - } - } - } - private fun setTabLayout() { binding.tabOurTodo.apply { for (tabName in tabTextList) { @@ -109,11 +95,12 @@ class OurTodoFragment() : BaseFragment(R.layout.fragment is UiState.Success -> { binding.run { + setTitleTextWithDay(state.data.day) tvOurTodoTitleUp.text = state.data.title - // TODO: 날짜 분기처리 - tvOurTodoTitleDown.text = getString(R.string.our_todo_title_down).format(state.data.day) - setDateTextColor() - tvOurTodoTitleDate.text = getString(R.string.our_todo_date_form).format(convertDate(state.data.startDate), convertDate(state.data.endDate)) + tvOurTodoTitleDate.text = getString(R.string.our_todo_date_form).format( + convertDate(state.data.startDate), + convertDate(state.data.endDate) + ) progressBarOurTodo.progress = state.data.progress tvOurTripInfoPercent.text = state.data.progress.toString() + "%" adapter.submitList(state.data.participants) @@ -132,6 +119,39 @@ class OurTodoFragment() : BaseFragment(R.layout.fragment return getString(R.string.our_todo_day_form).format(splitDate[1], splitDate[2]) } + private fun setTitleTextWithDay(day: Int) { + when { + day > 0 -> { + binding.tvOurTodoTitleDown.text = getString(R.string.our_todo_title_down_before).format(day) + setDateTextColor(6, 6) + } + + day == 0 -> { + binding.tvOurTodoTitleDown.text = getString(R.string.our_todo_title_down_during) + setDateTextColor(0, 4) + } + + else -> { + binding.tvOurTodoTitleDown.text = getString(R.string.our_todo_title_down_end) + setDateTextColor(4, 5) + } + } + } + + private fun setDateTextColor(start: Int, end: Int) { + binding.tvOurTodoTitleDown.apply { + text = SpannableStringBuilder(text).apply { + setSpan( + ForegroundColorSpan( + ContextCompat.getColor( + requireContext(), R.color.red_500 + ) + ), start, length - end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE + ) + } + } + } + override fun onDestroyView() { super.onDestroyView() _adapter = null diff --git a/presentation/src/main/res/values/strings.xml b/presentation/src/main/res/values/strings.xml index c168acb6..1a2e520b 100644 --- a/presentation/src/main/res/values/strings.xml +++ b/presentation/src/main/res/values/strings.xml @@ -65,7 +65,9 @@ 여행 친구들 초대 같이 할일 - 여행일까지 %s일 남았어요! + 여행일까지 %s일 남았어요! + 여행 중이에요! + 여행이 완료되었어요! %s - %s %s월 %s일