From c78aed25514caedf4a0f56f7f51abe7c7daa5f52 Mon Sep 17 00:00:00 2001 From: klaus Date: Wed, 20 Aug 2025 03:19:05 +0900 Subject: [PATCH] =?UTF-8?q?fix(comment):=20=EC=BA=90=EB=A6=AD=ED=84=B0=20?= =?UTF-8?q?=EB=8C=93=EA=B8=80=20=EB=8D=94=EB=B3=B4=EA=B8=B0=EC=97=90?= =?UTF-8?q?=EC=84=9C=20=EC=82=AD=EC=A0=9C=20API=20=EC=97=B0=EB=8F=99=20?= =?UTF-8?q?=EB=B0=8F=20UI=20=EB=B0=98=EC=98=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Bottom Sheet 삭제 선택 시 deleteComment API 호출 추가 - 성공 시 목록에서 항목 제거 - 오류 시 사용자에게 에러 토스트 노출 --- .../comment/CharacterCommentListFragment.kt | 40 +++++++++++++++---- 1 file changed, 33 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/kr/co/vividnext/sodalive/chat/character/comment/CharacterCommentListFragment.kt b/app/src/main/java/kr/co/vividnext/sodalive/chat/character/comment/CharacterCommentListFragment.kt index 3dddbc05..ab63c227 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/chat/character/comment/CharacterCommentListFragment.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/chat/character/comment/CharacterCommentListFragment.kt @@ -145,13 +145,38 @@ class CharacterCommentListFragment : BaseFragment - // 삭제 API 스텁 호출 지점 - val index = - adapter.items.indexOfFirst { it.commentId == item.commentId } - if (index >= 0) { - adapter.items.removeAt(index) - adapter.notifyItemRemoved(index) - } + val token = "Bearer ${SharedPreferenceManager.token}" + loadingDialog.show(screenWidth) + val d = repository.deleteComment( + characterId = characterId, + commentId = item.commentId, + token = token + ) + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .doFinally { loadingDialog.dismiss() } + .subscribe({ resp -> + if (resp.success) { + val index = adapter.items.indexOfFirst { it.commentId == item.commentId } + if (index >= 0) { + adapter.items.removeAt(index) + adapter.notifyItemRemoved(index) + } + } else { + Toast.makeText( + requireContext(), + resp.message ?: "요청 중 오류가 발생했습니다", + Toast.LENGTH_SHORT + ).show() + } + }, { e -> + Toast.makeText( + requireContext(), + e.message ?: "요청 중 오류가 발생했습니다", + Toast.LENGTH_SHORT + ).show() + }) + compositeDisposable.add(d) } .setNegativeButton(getString(R.string.cancel), null) .show() @@ -231,6 +256,7 @@ class CharacterCommentListFragment : BaseFragment