This commit is contained in:
jinyuer
2021-04-08 17:16:27 +08:00
parent 6afdcd420c
commit 9822d6e793
4 changed files with 173 additions and 63 deletions

View File

@@ -47,9 +47,11 @@ import com.sl.house_property.databinding.ItemCommentBinding;
import com.sl.house_property.databinding.ItemDiscoveryBinding;
import com.sl.house_property.db.CommentBeanData;
import com.sl.house_property.db.dao.CommentDao;
import com.sl.house_property.discovery.DeleteCommentDialog;
import com.sl.house_property.discovery.GoodsInfoDialog;
import com.sl.house_property.discovery.HistoryRecordActivity;
import com.sl.house_property.discovery.HistoryRecordActivitytwo;
import com.sl.house_property.discovery.SelectDialog;
import com.sl.house_property.okgonet.HttpConstants;
import com.sl.house_property.okgonet.Observer;
import com.sl.house_property.order.SettleActivity;
@@ -886,6 +888,7 @@ public class MainFragment extends BaseFragment<FragmentMainBinding> implements V
itemCommentBinding.tvName.setText(dis_content.get(itemPosition).getNickname() + ": ");
itemCommentBinding.tvInfo.setText(dis_content.get(itemPosition).getContents());
} else {
itemCommentBinding.ll.setVisibility(View.GONE);
itemCommentBinding.llHf.setVisibility(View.VISIBLE);
itemCommentBinding.tvName2.setText(dis_content.get(itemPosition).getNickname());
@@ -897,29 +900,48 @@ public class MainFragment extends BaseFragment<FragmentMainBinding> implements V
itemCommentBinding.llItem.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final int mBottomY = getCoordinateY(homeGridAdapterItemBinding.ivComment) + homeGridAdapterItemBinding.ivComment.getHeight();
itemIndex =itemPosition;
mDataBinding.llComment.setVisibility(View.VISIBLE);
mDataBinding.etComment.requestFocus();
mDataBinding.etComment.setHint("回复 " + dis_content.get(itemPosition).getNickname());
if (getActivity() instanceof MainTabActivity) {
MainTabActivity activity = (MainTabActivity) getActivity();
activity.visibilyBottom(View.GONE);
final RegisterUser registerUser = Config.getInstance(getContext()).getUser();
if (registerUser == null) {
return;
}
KeyboardUtil.showSoftInput(getContext());
commentPosition = position;
// commentDialog.dismiss();
mDataBinding.etComment.setText("");
homeGridAdapterItemBinding.ivComment.postDelayed(new Runnable() {
@Override
public void run() {
int y = getCoordinateY(mDataBinding.llComment) - 20;
//评论时滑动到对应item底部和输入框顶部对齐
mDataBinding.scrollViewExtend.smoothScrollBy(0, mBottomY - y);
final int mBottomY = getCoordinateY(homeGridAdapterItemBinding.ivComment) + homeGridAdapterItemBinding.ivComment.getHeight();
if (dis_content.get(itemPosition).getFrom_id()==null
||registerUser.getUserid().equals(dis_content.get(itemPosition).getFrom_id())){
mDataBinding.llComment.setVisibility(View.GONE);
DeleteCommentDialog deleteCommentDialog = new DeleteCommentDialog(getContext());
deleteCommentDialog.setOnSelectListener(new SelectDialog.OnSelectListener() {
@Override
public void select(int type) {
deleteComment(dis_content.get(itemPosition).getDis_id(),registerUser.getUserid(),position,itemPosition);
}
});
new XPopup.Builder(getContext()).asCustom(deleteCommentDialog).show();
}else {
itemIndex =itemPosition;
mDataBinding.llComment.setVisibility(View.VISIBLE);
mDataBinding.etComment.requestFocus();
mDataBinding.etComment.setHint("回复 " + dis_content.get(itemPosition).getNickname());
if (getActivity() instanceof MainTabActivity) {
MainTabActivity activity = (MainTabActivity) getActivity();
activity.visibilyBottom(View.GONE);
}
}, 300);
KeyboardUtil.showSoftInput(getContext());
commentPosition = position;
// commentDialog.dismiss();
mDataBinding.etComment.setText("");
homeGridAdapterItemBinding.ivComment.postDelayed(new Runnable() {
@Override
public void run() {
int y = getCoordinateY(mDataBinding.llComment) - 20;
//评论时滑动到对应item底部和输入框顶部对齐
mDataBinding.scrollViewExtend.smoothScrollBy(0, mBottomY - y);
}
}, 300);
}
}
@@ -1574,4 +1596,36 @@ public class MainFragment extends BaseFragment<FragmentMainBinding> implements V
});
}
private void deleteComment(String dis_id, String userid, final int superPosition, final int itemPosition) {
Map<String, String> map = new HashMap<>();
progressDialog.show();
map.put("app", "Goods");
map.put("class", "DelDis");
map.put("sign", Md5.md5("Goods" + "DelDis" + Md5.secret));
map.put("dis_id", dis_id);
map.put("userid", userid);
mGankLoader.getMovie(ApiConfig.BASE_URL, map).subscribe(new Action1<Resultcode>() {
@Override
public void call(Resultcode resultcode) {
progressDialog.dismiss();
if (!(resultcode.status == 0)) {
Toast.makeText(getContext(), resultcode.msg, Toast.LENGTH_SHORT).show();
} else {
BaseRecycleViewAdapter adapter = (BaseRecycleViewAdapter) mDataBinding.recyView.getAdapter();
DiscoveryListEntity discoveryListEntity = discoveryListEntities.get(superPosition);
ArrayList<DiscoveryListEntity.Dis_content> dis_content1 = discoveryListEntity.getDis_content();
dis_content1.remove(itemPosition);
discoveryListEntity.setDis_content(dis_content1);
adapter.upDateOne(superPosition, discoveryListEntity);
}
}
}, new Action1<Throwable>() {
@Override
public void call(Throwable throwable) {
Toast.makeText(getContext(), getString(R.string.getdatafailure), Toast.LENGTH_SHORT).show();
}
});
}
}