举报通知开发

This commit is contained in:
老皮 2024-09-28 18:29:44 +08:00
parent f60915194a
commit 98343a2177
10 changed files with 172 additions and 41 deletions

View File

@ -0,0 +1,37 @@
package com.yunbao.common.bean;
public class ReportInfoBean {
/* {
"touid": 99455,
"user_nicename": "小盒主播2",
"avatar": "https://downs.yaoulive.com/20240516102555_cf329486d39121125b182a779bbc3278?imageView2/2/w/600/h/600"
}*/
private String touid;
private String user_nicename;
private String avatar;
public String getTouid() {
return touid;
}
public void setTouid(String touid) {
this.touid = touid;
}
public String getUser_nicename() {
return user_nicename;
}
public void setUser_nicename(String user_nicename) {
this.user_nicename = user_nicename;
}
public String getAvatar() {
return avatar;
}
public void setAvatar(String avatar) {
this.avatar = avatar;
}
}

View File

@ -68,5 +68,7 @@ public class LiveHttpConsts {
public static final String ISHOTCARD = "isHotCard"; public static final String ISHOTCARD = "isHotCard";
public static final String USEHOTCARDUSERLIST = "useHotCardUserList"; public static final String USEHOTCARDUSERLIST = "useHotCardUserList";
public static final String SETINSTRUCTORREMARK = "getInstructorRemark"; public static final String SETINSTRUCTORREMARK = "getInstructorRemark";
public static final String SETREPORTREPLENISHMENT = "setReportReplenishment";
public static final String GETREPORTINFO = "getReportInfo";
} }

View File

@ -264,6 +264,36 @@ public class LiveHttpUtil {
request.execute(callback); request.execute(callback);
} }
/**
* 举报用户 + 图片 二次补充证据
*/
public static void setReportToSecondReport(int report_id, String content, File file1, File file2, File file3, HttpCallback callback) {
PostRequest<JsonBean> request = HttpClient.getInstance().post("Live.setReportReplenishment", LiveHttpConsts.SETREPORTREPLENISHMENT)
.isMultipart(true)
.params("report_id", report_id)
.params("content", content);
if (file1 != null) {
request.params("file1", file1);
}
if (file2 != null) {
request.params("file2", file2);
}
if (file3 != null) {
request.params("file3", file3);
}
request.execute(callback);
}
/**
* 获取被举报人的名字
*/
public static void getReportName(int report_id, HttpCallback callback) {
HttpClient.getInstance().get("Live.getReportInfo", LiveHttpConsts.GETREPORTINFO)
.params("report_id", report_id)
.execute(callback);
}
/** /**
* 直播间点击聊天列表和头像出现的弹窗 * 直播间点击聊天列表和头像出现的弹窗
*/ */

View File

@ -57,6 +57,7 @@ public class RouteUtil {
public static final String PATH_FEEDBACK_ACTIVITY = "/main/FeedbackActivity"; public static final String PATH_FEEDBACK_ACTIVITY = "/main/FeedbackActivity";
public static final String PATH_FEEDBACK_EDIT_ACTIVITY = "/main/FeedbackEditActivity"; public static final String PATH_FEEDBACK_EDIT_ACTIVITY = "/main/FeedbackEditActivity";
public static final String PATH_LIVE_PUNISHACTIVITY = "/live/PunishActivity"; public static final String PATH_LIVE_PUNISHACTIVITY = "/live/PunishActivity";
public static final String PATH_LIVE_REPORT_SECOND = "/live/ReportSecondActivity";
public static void forwardCommunityActivity() { public static void forwardCommunityActivity() {
@ -178,6 +179,12 @@ public class RouteUtil {
.navigation(); .navigation();
} }
public static void forwardLiveSecondReportActivity(int users_report_id) {
ARouter.getInstance().build(PATH_LIVE_REPORT_SECOND)
.withInt("users_report_id", users_report_id)
.navigation();
}
/** /**
* 跳转到装扮 * 跳转到装扮

View File

@ -12,17 +12,26 @@ import android.widget.EditText;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.TextView; import android.widget.TextView;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.fastjson.JSON;
import com.yunbao.common.BuildConfig; import com.yunbao.common.BuildConfig;
import com.yunbao.common.activity.AbsActivity; import com.yunbao.common.activity.AbsActivity;
import com.yunbao.common.bean.ReportInfoBean;
import com.yunbao.common.glide.ImgLoader; import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.http.HttpCallback;
import com.yunbao.common.http.LiveHttpUtil;
import com.yunbao.common.interfaces.ImageResultCallback; import com.yunbao.common.interfaces.ImageResultCallback;
import com.yunbao.common.utils.ProcessImageUtil; import com.yunbao.common.utils.ProcessImageUtil;
import com.yunbao.common.utils.RouteUtil;
import com.yunbao.common.utils.ToastUtil; import com.yunbao.common.utils.ToastUtil;
import com.yunbao.live.R; import com.yunbao.live.R;
import com.yunbao.live.bean.LiveReportBean;
import java.io.File; import java.io.File;
import java.util.Arrays;
import java.util.List;
import java.util.Locale; import java.util.Locale;
@Route(path = RouteUtil.PATH_LIVE_REPORT_SECOND)
public class ReportSecondActivity extends AbsActivity implements View.OnClickListener { public class ReportSecondActivity extends AbsActivity implements View.OnClickListener {
private TextView info_textView; private TextView info_textView;
private EditText edit; private EditText edit;
@ -33,6 +42,7 @@ public class ReportSecondActivity extends AbsActivity implements View.OnClickLis
private File mFile1, mFile2, mFile3; private File mFile1, mFile2, mFile3;
private int uploadImageCount; private int uploadImageCount;
private String inputText; private String inputText;
private int users_report_id;
@Override @Override
@ -63,6 +73,7 @@ public class ReportSecondActivity extends AbsActivity implements View.OnClickLis
image_3 .setOnClickListener(this); image_3 .setOnClickListener(this);
cancel_1.setOnClickListener(this); cancel_1.setOnClickListener(this);
cancel_2.setOnClickListener(this); cancel_2.setOnClickListener(this);
cancel_3.setOnClickListener(this);
edit.addTextChangedListener(new TextWatcher() { edit.addTextChangedListener(new TextWatcher() {
@ -82,6 +93,20 @@ public class ReportSecondActivity extends AbsActivity implements View.OnClickLis
setButtonStatus(); setButtonStatus();
} }
}); });
users_report_id = getIntent().getIntExtra("users_report_id",0);
LiveHttpUtil.getReportName(users_report_id, new HttpCallback() {
@Override
public void onSuccess(int code, String msg, String[] info) {
if (code == 0) {
List<ReportInfoBean> list = JSON.parseArray(Arrays.toString(info), ReportInfoBean.class);
if (list != null && !list.isEmpty()) {
setInfoText(list.get(0).getUser_nicename());
}
}
}
});
} }
private void setButtonStatus(){ private void setButtonStatus(){
@ -122,7 +147,7 @@ If you have any supplementary information or proof, you can click to enter the d
SpannableString spannableString = new SpannableString(stringBuilder.toString()); SpannableString spannableString = new SpannableString(stringBuilder.toString());
spannableString.setSpan(new ForegroundColorSpan(Color.parseColor("#FF870F")), startIndex, endIndex, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); spannableString.setSpan(new ForegroundColorSpan(Color.parseColor("#FF870F")), startIndex-1, endIndex+1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
info_textView.setText(spannableString); info_textView.setText(spannableString);
} }
@ -172,41 +197,23 @@ If you have any supplementary information or proof, you can click to enter the d
} }
private void reportSecond() { private void reportSecond() {
/* LiveHttpUtil.setReportToSecondReport(users_report_id, inputText, mFile1, mFile2, mFile3, new HttpCallback() {
* @Override
* if (mIntoIndex == 0) { public void onSuccess(int code, String msg, String[] info) {
LiveHttpUtil.setReport(mToUid, bean.getName(),text, file1, file2, file3, mVideoId, new HttpCallback() { if (code == 0) {
@Override ToastUtil.show(mContext.getString(R.string.report_second_7));
public void onSuccess(int code, String msg, String[] info) { finish();
if (code == 0) { } else {
ToastUtil.show(mContext.getString(R.string.video_report_tip_4)); ToastUtil.show(msg);
onBackPressed();
} else {
ToastUtil.show(msg);
}
} }
}); }
} else { });
CommonHttpUtil.setCommunityReport(community_type, comment_id, mToUid, text, file1, file2, file3, bean.getId(), new HttpCallback() {
@Override
public void onSuccess(int code, String msg, String[] info) {
if (code == 0) {
ToastUtil.show(mContext.getString(R.string.video_report_tip_4));
onBackPressed();
} else {
ToastUtil.show(msg);
}
}
});
}
* */
finish();
} }
private void imageUtilInit() { private void imageUtilInit() {
mImageUtil = new ProcessImageUtil((LiveReportActivity)mContext); mImageUtil = new ProcessImageUtil((ReportSecondActivity)mContext);
mImageUtil.setImageResultCallback(new ImageResultCallback() { mImageUtil.setImageResultCallback(new ImageResultCallback() {
@Override @Override
public void beforeCamera() { public void beforeCamera() {

View File

@ -20,6 +20,7 @@ import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.http.HttpCallback; import com.yunbao.common.http.HttpCallback;
import com.yunbao.common.manager.IMLoginManager; import com.yunbao.common.manager.IMLoginManager;
import com.yunbao.common.utils.RouteUtil; import com.yunbao.common.utils.RouteUtil;
import com.yunbao.common.utils.ToastUtil;
import com.yunbao.common.utils.WordUtil; import com.yunbao.common.utils.WordUtil;
import com.yunbao.live.R; import com.yunbao.live.R;
import com.yunbao.live.activity.ZhuangBanActivity; import com.yunbao.live.activity.ZhuangBanActivity;
@ -119,17 +120,29 @@ public class SystemMessageNewAdapter extends RefreshAdapter<SystemMessageBean> {
itemLayout.setOnClickListener(new View.OnClickListener() { itemLayout.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
//普通消息 if (bean.getIs_report() == 1) {
if (bean.getSystem_message_type() == 1) { // 举报消息
if (bean.getLink() != null && !bean.getLink().equals("")) { if (bean.getIs_replenishment() == 1) {
IMLoginModel userInfo = IMLoginManager.get(mContext).getUserInfo(); // 已经提交过
StringBuffer urlBuffer = new StringBuffer(); ToastUtil.show(R.string.report_second_6);
urlBuffer.append(bean.getLink()).append("&uid=").append(userInfo.getId()).append("&token=").append(userInfo.getToken()).append("&isZh=").append(WordUtil.isNewZh() ? "1" : 0); }else {
mContext.startActivity(new Intent(mContext, ZhuangBanActivity.class).putExtra("url", urlBuffer.toString())); // 跳转到补充举报信息界面
RouteUtil.forwardLiveSecondReportActivity(bean.getUsers_report_id());
}
} else{
//普通消息
if (bean.getSystem_message_type() == 1) {
if (bean.getLink() != null && !bean.getLink().equals("")) {
IMLoginModel userInfo = IMLoginManager.get(mContext).getUserInfo();
StringBuffer urlBuffer = new StringBuffer();
urlBuffer.append(bean.getLink()).append("&uid=").append(userInfo.getId()).append("&token=").append(userInfo.getToken()).append("&isZh=").append(WordUtil.isNewZh() ? "1" : 0);
mContext.startActivity(new Intent(mContext, ZhuangBanActivity.class).putExtra("url", urlBuffer.toString()));
}
} else {
RouteUtil.forwardLiveCompensateActivity(mContext, String.valueOf(bean.getId()), bean.getImgBanner(), bean.getTitle(), bean.getContent(), bean.getAddtime(), bean.getLink(), bean.getGet_status() == 2);
} }
} else {
RouteUtil.forwardLiveCompensateActivity(mContext, String.valueOf(bean.getId()), bean.getImgBanner(), bean.getTitle(), bean.getContent(), bean.getAddtime(), bean.getLink(), bean.getGet_status() == 2);
} }
//未读才调用 //未读才调用
if (bean.getRead_status() == 2) { if (bean.getRead_status() == 2) {
ImHttpUtil.readMsg(bean.getId(), new HttpCallback() { ImHttpUtil.readMsg(bean.getId(), new HttpCallback() {

View File

@ -18,6 +18,9 @@ public class SystemMessageBean {
private String avatar; private String avatar;
private String showImg; private String showImg;
private String imgBanner; private String imgBanner;
private int is_replenishment;// 是否提交过举报补充信息 0.未提交 1.已提交
private int users_report_id;// 举报表id非举报反馈消息值等于0
private int is_report;//是否是举报信息 0.不是 1.
private int system_message_type; //1 普通消息 2 礼包消息 private int system_message_type; //1 普通消息 2 礼包消息
@ -25,6 +28,30 @@ public class SystemMessageBean {
private int read_status; // 1 已读 2 未读 private int read_status; // 1 已读 2 未读
public int getIs_report() {
return is_report;
}
public void setIs_report(int is_report) {
this.is_report = is_report;
}
public int getIs_replenishment() {
return is_replenishment;
}
public void setIs_replenishment(int is_replenishment) {
this.is_replenishment = is_replenishment;
}
public int getUsers_report_id() {
return users_report_id;
}
public void setUsers_report_id(int users_report_id) {
this.users_report_id = users_report_id;
}
public int getRead_status() { public int getRead_status() {
return read_status; return read_status;
} }

View File

@ -57,7 +57,7 @@
<androidx.cardview.widget.CardView <androidx.cardview.widget.CardView
android:id="@+id/cardView" android:id="@+id/cardView"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="60dp" android:layout_height="wrap_content"
android:layout_marginTop="11dp" android:layout_marginTop="11dp"
android:layout_marginEnd="15dp" android:layout_marginEnd="15dp"
app:cardBackgroundColor="#F7F7F7" app:cardBackgroundColor="#F7F7F7"
@ -75,6 +75,8 @@
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
android:layout_marginStart="10dp" android:layout_marginStart="10dp"
android:layout_marginEnd="10dp" android:layout_marginEnd="10dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:text="您舉報的用戶【用戶暱稱】,我們已對其進行重點觀察,並進一步判定,若發現違規將立刻處理,感謝您的監督~" android:text="您舉報的用戶【用戶暱稱】,我們已對其進行重點觀察,並進一步判定,若發現違規將立刻處理,感謝您的監督~"
android:textColor="#ff777777" android:textColor="#ff777777"
android:textSize="11sp" /> android:textSize="11sp" />

View File

@ -151,4 +151,7 @@
<string name="report_second_3">上傳圖片</string> <string name="report_second_3">上傳圖片</string>
<string name="report_second_4">舉報內容補充</string> <string name="report_second_4">舉報內容補充</string>
<string name="report_second_5">若您有其它補充信息,請在說明框中描述~</string> <string name="report_second_5">若您有其它補充信息,請在說明框中描述~</string>
<string name="report_second_6">已收到您的補充信息,我們正在加急處理中</string>
<string name="report_second_7">提交成功</string>
</resources> </resources>

View File

@ -154,4 +154,7 @@
<string name="report_second_3">Upload pictures</string> <string name="report_second_3">Upload pictures</string>
<string name="report_second_4">Report content supplement</string> <string name="report_second_4">Report content supplement</string>
<string name="report_second_5">If you have additional information, please describe it in the description box</string> <string name="report_second_5">If you have additional information, please describe it in the description box</string>
<string name="report_second_6">Your supplementary information has been received. We are handling it urgently</string>
<string name="report_second_7">Submitted successfully</string>
</resources> </resources>