审核账号屏蔽私信和关闭推送

This commit is contained in:
huangjian
2020-12-15 11:47:53 +08:00
parent a6f45e34d6
commit 6cef42f2da
5 changed files with 53 additions and 22 deletions

View File

@@ -1,9 +1,11 @@
package com.yizhuan.erban.ui.im.recent;
import android.os.Bundle;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
@@ -48,8 +50,12 @@ import com.qiyukf.unicorn.api.msg.UnicornMessage;
import com.yizhuan.erban.R;
import com.yizhuan.erban.home.event.ContactTrashEvent;
import com.yizhuan.erban.ui.im.recent.adapter.RecentContactAdapter;
import com.yizhuan.xchat_android_constants.XChatConstants;
import com.yizhuan.xchat_android_core.auth.AuthModel;
import com.yizhuan.xchat_android_core.customer_server.CustomerServerModel;
import com.yizhuan.xchat_android_core.customer_server.event.CustomerServerMsgEvent;
import com.yizhuan.xchat_android_core.initial.InitialModel;
import com.yizhuan.xchat_android_core.utils.CheckUtils;
import com.yizhuan.xchat_android_library.utils.SingleToastUtil;
import org.greenrobot.eventbus.EventBus;
@@ -61,6 +67,7 @@ import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -390,6 +397,17 @@ public class RecentContactsFragment extends TFragment {
}
private void refreshMessages(boolean unreadChanged) {
if (CheckUtils.isCheckUser()) {
Iterator<RecentContact> iterator = items.iterator();
while (iterator.hasNext()) {
RecentContact recentContact = iterator.next();
if (!recentContact.getContactId().equals(String.valueOf(XChatConstants.SECRETARY_UID)) ||
!recentContact.getContactId().equals(String.valueOf(XChatConstants.SYSTEM_MESSAGER_UID))) {
iterator.remove();
}
}
}
sortRecentContacts(items);
notifyDataSetChanged();

View File

@@ -47,6 +47,7 @@ import com.yizhuan.xchat_android_core.user.UserModel;
import com.yizhuan.xchat_android_core.user.bean.UserInfo;
import com.yizhuan.xchat_android_core.user.event.LoadLoginUserInfoEvent;
import com.yizhuan.xchat_android_core.utils.APIEncryptUtil;
import com.yizhuan.xchat_android_core.utils.CheckUtils;
import com.yizhuan.xchat_android_core.utils.OldHttpErrorHandleUtil;
import com.yizhuan.xchat_android_core.utils.net.RxHelper;
import com.yizhuan.xchat_android_library.net.rxnet.RxNet;
@@ -284,7 +285,7 @@ public class AuthModel extends BaseModel implements IAuthModel {
//是否是超管
if (loginResult.getSuperCodeVerify() == 1) {
emitter.onError(new IsSuperAdminException(loginResult.getMessage()));
}else {
} else {
emitter.onError(new Throwable(loginResult.getMessage()));
}
} else {
@@ -742,7 +743,7 @@ public class AuthModel extends BaseModel implements IAuthModel {
public void subscribe(SingleEmitter<String> emitter) throws Exception {
//获取登录信息
try {
LoginResult loginResult = api.quickPassLogin( token, accessToken, yiDunToken, shuMeiDeviceId ).blockingGet();
LoginResult loginResult = api.quickPassLogin(token, accessToken, yiDunToken, shuMeiDeviceId).blockingGet();
if (!loginResult.isSuccess()) {
if (loginResult.getCode() == CODE_BAN_ACCOUNT || loginResult.getCode() == CODE_BAN_DEVICE) {
emitter.onError(new BanAccountException(loginResult.getReason(), loginResult.getDate()));
@@ -752,7 +753,7 @@ public class AuthModel extends BaseModel implements IAuthModel {
//是否是超管
if (loginResult.getSuperCodeVerify() == 1) {
emitter.onError(new IsSuperAdminException(loginResult.getMessage()));
}else {
} else {
emitter.onError(new Throwable(loginResult.getMessage()));
}
} else if (loginResult.getCode() == CODE_BIG_HEAD_NUM) {
@@ -1051,8 +1052,8 @@ public class AuthModel extends BaseModel implements IAuthModel {
switch (registerResult.getCode()) {
case CODE_HIT_YI_DUN:
case VERIFY_CODE_ERROR:
return Single.error(new FailReasonException(
registerResult.getMessage(), registerResult.getCode()));
return Single.error(new FailReasonException(
registerResult.getMessage(), registerResult.getCode()));
}
return Single.error(new Throwable(registerResult.getMessage()));
}
@@ -1312,8 +1313,8 @@ public class AuthModel extends BaseModel implements IAuthModel {
private void initNotificationConfig() {
// 初始化消息提醒
NIMClient.toggleNotification(true);
// 初始化消息提醒,如果是审核账号,不开启推送
NIMClient.toggleNotification(!CheckUtils.isCheckUser());
// // 加载状态栏配置
// StatusBarNotificationConfig statusBarNotificationConfig = new StatusBarNotificationConfig();
//// 更新配置
@@ -1390,7 +1391,7 @@ public class AuthModel extends BaseModel implements IAuthModel {
@Query("code") String code,
@Query("yiDunToken") String yiDunToken,
@Query("shuMeiDeviceId") String shuMeiDeviceId
);
);
/**
@@ -1601,22 +1602,17 @@ public class AuthModel extends BaseModel implements IAuthModel {
Single<ServiceResult<Object>> check(@Query("phone") String phone, @Query("code") String code);
/**
*
* @param token
* 易盾一键登录token
* @param accessToken
* 易盾一键登录accessToken
* @param shuMeiDeviceId
* 数美设备id
* @param yiDunToken
* 易盾登录保护token
* @param token 易盾一键登录token
* @param accessToken 易盾一键登录accessToken
* @param shuMeiDeviceId 数美设备id
* @param yiDunToken 易盾登录保护token
* @return
*/
@POST("acc/oneclick/login")
Single<LoginResult> quickPassLogin(@Query("token") String token,
@Query("accessToken") String accessToken,
@Query("shuMeiDeviceId") String shuMeiDeviceId,
@Query("yiDunToken") String yiDunToken
@Query("accessToken") String accessToken,
@Query("shuMeiDeviceId") String shuMeiDeviceId,
@Query("yiDunToken") String yiDunToken
);

View File

@@ -143,4 +143,6 @@ public class InitInfo implements Serializable {
private String androidUrl;
private String iOSUrl;
}
private List<Long> checkUids;
}

View File

@@ -0,0 +1,15 @@
package com.yizhuan.xchat_android_core.utils;
import com.yizhuan.xchat_android_core.auth.AuthModel;
import com.yizhuan.xchat_android_core.initial.InitialModel;
import com.yizhuan.xchat_android_core.initial.bean.InitInfo;
import com.yizhuan.xchat_android_library.utils.ListUtils;
public class CheckUtils {
public static boolean isCheckUser() {
InitInfo initInfo = InitialModel.get().getCacheInitInfo();
if (initInfo == null || ListUtils.isListEmpty(initInfo.getCheckUids())) return false;
return initInfo.getCheckUids().contains(AuthModel.get().getCurrentUid());
}
}

View File

@@ -21,5 +21,5 @@ with_jenkins=false
#\u6253\u652F\u6301x86\u7684\u6A21\u62DF\u5668\u5305\u4F7F\u7528
ndk_abi_filters=arm
version_name=2.0.0
version_code=200
version_name=2.0.2
version_code=202