diff --git a/.github/workflows/release_tag_generator.yml b/.github/workflows/release_tag_generator.yml deleted file mode 100644 index 3e3b9734..00000000 --- a/.github/workflows/release_tag_generator.yml +++ /dev/null @@ -1,29 +0,0 @@ -name: Winey Release Tag Generator - -on: - push: - branches: [ main ] - -defaults: - run: - shell: bash - working-directory: . - -jobs: - build: - name: Release Tag Generator - runs-on: ubuntu-latest - - steps: - - name: Extract Version Code - - uses: actions/checkout@v2 - run: echo "##[set-output name=version;]$(echo '${{ github.event.head_commit.message }}' | egrep -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')" - id: extract_version_name - - - name: Create Release Tag - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ steps.extract_version_name.outputs.version }} - release_name: ${{ steps.extract_version_name.outputs.version }} diff --git a/app/src/main/java/com/go/sopt/winey/presentation/main/mypage/MyPageFragment.kt b/app/src/main/java/com/go/sopt/winey/presentation/main/mypage/MyPageFragment.kt index 08a95425..ce838525 100644 --- a/app/src/main/java/com/go/sopt/winey/presentation/main/mypage/MyPageFragment.kt +++ b/app/src/main/java/com/go/sopt/winey/presentation/main/mypage/MyPageFragment.kt @@ -187,75 +187,44 @@ class MyPageFragment : BindingFragment(R.layout.fragment_ private fun setupGetUserState() { mainViewModel.getUserState.flowWithLifecycle(lifecycle).onEach { state -> when (state) { - is UiState.Loading -> { - } - is UiState.Success -> { - val data = dataStoreRepository.getUserInfo().first() + val data = dataStoreRepository.getUserInfo().first() ?: return@onEach updateUserInfo(data) - initBottomSheetClickListener(data) + initTargetModifyButtonClickListener(data) } is UiState.Failure -> { snackBar(binding.root) { state.msg } } - is UiState.Empty -> { - } + else -> {} } }.launchIn(lifecycleScope) } - private fun initBottomSheetClickListener(data: User?) { - binding.clMypageTargetmoney.setOnSingleClickListener { - amplitudeUtils.logEvent("click_goalsetting") - - when (data?.isOver) { - true -> { - val bottomSheet = TargetAmountBottomSheetFragment() - bottomSheet.show(this.childFragmentManager, bottomSheet.tag) - amplitudeUtils.logEvent("view_goalsetting") - } - - false -> { - val dialog = MyPageDialogFragment() - dialog.show(this.childFragmentManager, dialog.tag) - } - - null -> { - } - } - } - } - - private fun updateUserInfo(data: User?) { + private fun updateUserInfo(data: User) { binding.data = data - - // todo: 기간 내 목표 달성하면 누적위니, 위니횟수도 0으로 초기화 되도록 - - handleIsOver(data) - handleUserLevel(data) + updateTargetInfo(data) + updateUserLevel(data) } - private fun handleIsOver(data: User?) { - if (data == null) return - + private fun updateTargetInfo(data: User) { + // 목표를 설정한 적이 없는 경우 (초기 상태) if (data.isOver) { binding.tvMypageTargetAmount.text = getString(R.string.mypage_not_yet_set) binding.tvMypagePeriodValue.text = getString(R.string.mypage_not_yet_set) } else { + binding.targetMoney = data if (data.dday == 0) { binding.tvMypagePeriodValue.text = getString(R.string.mypage_d_day) - binding.targetMoney = data } else { - binding.targetMoney = data binding.dday = data } } } - private fun handleUserLevel(data: User?) { - when (data?.userLevel) { + private fun updateUserLevel(data: User) { + when (data.userLevel) { LEVEL_COMMON -> { binding.ivMypageProgressbar.setImageResource(R.drawable.ic_mypage_lv1_progressbar) binding.ivMypageProfile.setImageResource(R.drawable.ic_mypage_lv1_profile) @@ -278,6 +247,22 @@ class MyPageFragment : BindingFragment(R.layout.fragment_ } } + private fun initTargetModifyButtonClickListener(user: User) { + binding.clMypageTargetmoney.setOnSingleClickListener { + amplitudeUtils.logEvent("click_goalsetting") + + // 목표를 설정한 적 없거나, 기간이 종료되었거나, 기간 내 목표를 달성한 경우 + if (user.isOver || user.isAttained) { + val bottomSheet = TargetAmountBottomSheetFragment() + bottomSheet.show(parentFragmentManager, bottomSheet.tag) + amplitudeUtils.logEvent("view_goalsetting") + } else { + val dialog = MyPageNotOverDialogFragment() + dialog.show(parentFragmentManager, dialog.tag) + } + } + } + private inline fun navigateAndBackStack() { parentFragmentManager.commit { replace(R.id.fcv_main, T::class.simpleName) diff --git a/app/src/main/java/com/go/sopt/winey/presentation/main/mypage/MyPageDialogFragment.kt b/app/src/main/java/com/go/sopt/winey/presentation/main/mypage/MyPageNotOverDialogFragment.kt similarity index 95% rename from app/src/main/java/com/go/sopt/winey/presentation/main/mypage/MyPageDialogFragment.kt rename to app/src/main/java/com/go/sopt/winey/presentation/main/mypage/MyPageNotOverDialogFragment.kt index a68c0419..f6a0cbbb 100644 --- a/app/src/main/java/com/go/sopt/winey/presentation/main/mypage/MyPageDialogFragment.kt +++ b/app/src/main/java/com/go/sopt/winey/presentation/main/mypage/MyPageNotOverDialogFragment.kt @@ -6,7 +6,7 @@ import com.go.sopt.winey.R import com.go.sopt.winey.databinding.FragmentMypageNotOverDialogBinding import com.go.sopt.winey.util.binding.BindingDialogFragment -class MyPageDialogFragment : +class MyPageNotOverDialogFragment : BindingDialogFragment(R.layout.fragment_mypage_not_over_dialog) { override fun onCreate(savedInstanceState: Bundle?) {