修复回答/文章草稿无法删除问题

This commit is contained in:
kehaoyuan
2020-05-25 17:31:11 +08:00
parent 892933888c
commit 56573deea1
4 changed files with 26 additions and 7 deletions

View File

@ -30,11 +30,13 @@ import com.gh.gamecenter.qa.myqa.AnswerDraftViewHolder;
import com.gh.gamecenter.qa.questions.detail.QuestionsDetailActivity;
import com.gh.gamecenter.retrofit.Response;
import com.gh.gamecenter.retrofit.RetrofitManager;
import com.gh.gamecenter.retrofit.service.ApiService;
import com.lightgame.utils.Utils;
import java.util.ArrayList;
import java.util.List;
import io.reactivex.Observable;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
import okhttp3.ResponseBody;
@ -50,13 +52,18 @@ class AnswerDraftAdapter extends ListAdapter<AnswerEntity> {
private ListViewModel mListViewModel;
private String mAnswerId;
private String mEntrance;
AnswerDraftAdapter(Context context, String entrance, OnListClickListener listClickListener, ListViewModel longClickListener) {
AnswerDraftAdapter(Context context, String entrance,
OnListClickListener listClickListener,
ListViewModel longClickListener,
String answerId) {
super(context);
mListClickListener = listClickListener;
mListViewModel = longClickListener;
mEntrance = entrance;
mAnswerId = answerId;
}
@Override
@ -163,9 +170,11 @@ class AnswerDraftAdapter extends ListAdapter<AnswerEntity> {
private void deleteAnswerDraft(AnswerEntity entity) {
RetrofitManager.getInstance(mContext)
.getApi()
.deleteAnswerDrafts(UserManager.getInstance().getUserId(), entity.getId())
ApiService api = RetrofitManager.getInstance(mContext).getApi();
Observable<ResponseBody> deleteAnswerDraftObservable = !TextUtils.isEmpty(mAnswerId) ?
api.deleteAnswerDrafts(UserManager.getInstance().getUserId(), mAnswerId, entity.getId()) :
api.deleteAnswerDrafts(UserManager.getInstance().getUserId(), entity.getId());
deleteAnswerDraftObservable
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Response<ResponseBody>() {

View File

@ -57,7 +57,11 @@ public class AnswerDraftFragment extends ListFragment<AnswerEntity, NormalListVi
@Override
protected ListAdapter provideListAdapter() {
return mAdapter == null ? mAdapter = new AnswerDraftAdapter(getContext(), mEntrance, this, mListViewModel) : mAdapter;
return mAdapter == null ? mAdapter = new AnswerDraftAdapter(getContext(),
mEntrance,
this,
mListViewModel,
mAnswerId) : mAdapter;
}
@Override

View File

@ -81,7 +81,7 @@ class ArticleDraftFragment : ListFragment<ArticleDraftEntity, NormalListViewMode
if (mArticleId.isNullOrEmpty()) {
mApi.deleteArticleDrafts(entity.community.id, entity.id)
} else {
mApi.deleteArticleDrafts(entity.community.id, entity.id, mArticleId)
mApi.deleteArticleDrafts(entity.community.id, mArticleId, entity.id)
}
deleteArticleDraftsObservable
.subscribeOn(Schedulers.io())

View File

@ -955,11 +955,17 @@ public interface ApiService {
Observable<ResponseBody> postAnswerDrafts(@Body RequestBody body, @Path("user_id") String user_id);
/**
* 删除用户草稿
* 删除用户草稿(撰写)
*/
@DELETE("users/{user_id}/answer_drafts/{draft_id}")
Observable<ResponseBody> deleteAnswerDrafts(@Path("user_id") String userId, @Path("draft_id") String draftId);
/**
* 删除用户草稿(编辑)
*/
@DELETE("users/{user_id}/answers/{answer_id}/answer_drafts/{draft_id}")
Observable<ResponseBody> deleteAnswerDrafts(@Path("user_id") String userId, @Path("answer_id") String id, @Path("draft_id") String draftId);
/**
* 获取用户收藏的回答列表
*/