管理添加

显示管理尾巴
多选转发
This commit is contained in:
guozhen
2025-02-06 17:36:44 +08:00
committed by xuhuixiang
parent 9d1e398c58
commit 425bc1475e
39 changed files with 594 additions and 186 deletions

View File

@@ -1009,7 +1009,7 @@ public class UserInfoActivity extends BaseActivity {
.skipMemoryCache(false)
.diskCacheStrategy(DiskCacheStrategy.RESOURCE);
try {
// LogUtils.i("头像地址:"+u.getUserAvatarFileName());
Glide.with(UserInfoActivity.this)
.load(u.getUserAvatarFileName())

View File

@@ -105,11 +105,24 @@ public class FunContactSelectorActivity extends BaseContactSelectorActivity {
public void updateView() {
super.updateView();
if (type == 1) { //转发 这ui 修改的....
shoeSignOne(true);
}
}
private void shoeSignOne(boolean b) {
if (b) {
rvSelected.setVisibility(View.GONE);
updateListView(contactListView);
updateListView(lastContactView);
updateListView(loveContactView);
updateListView(searchContactView);
} else {
rvSelected.setVisibility(View.VISIBLE);
updateListView1(contactListView);
updateListView1(lastContactView);
updateListView1(loveContactView);
updateListView1(searchContactView);
}
}
@@ -120,6 +133,12 @@ public class FunContactSelectorActivity extends BaseContactSelectorActivity {
contactListView.setLayoutParams(params1);
}
public void updateListView1(ContactListView contactListView) {
contactListView.showSelector(true);
LinearLayout.LayoutParams params1 = (LinearLayout.LayoutParams) contactListView.getLayoutParams();
params1.setMarginStart(SizeUtils.dp2px(15));
contactListView.setLayoutParams(params1);
}
public void setViewHolderFactory(ContactListView contactView) {
contactView
.getDecoration()
@@ -212,23 +231,43 @@ public class FunContactSelectorActivity extends BaseContactSelectorActivity {
}
protected void configTitle(BackTitleBar titleBar) {
if (type == 1) {
titleBar
.setOnBackIconClickListener(v -> onBackPressed())
.setTitle(R.string.select);
} else {
// if (type == 1) {
// titleBar
// .setOnBackIconClickListener(v -> onBackPressed())
// .setTitle(R.string.select);
// } else {
titleBar
.setOnBackIconClickListener(v -> onBackPressed())
.setTitle(R.string.select)
.setActionText(R.string.selector_sure_without_num)
.setActionText(type==1?getString(com.dskj.rbchat.R.string.chat_message_action_multi_select):getString(R.string.selector_sure_without_num))
.setActionTextColor(getResources().getColor(R.color.color_6877fe))
.setActionListener(
v -> {
if(type==1&&isSignOne){
isSignOne = false;
shoeSignOne(false);
int verticalPadding = SizeUtils.dp2px(5);
int horizontalPadding = SizeUtils.dp2px(10);
int endPadding = SizeUtils.dp2px(5);
TextView rightTextView = titleBar.getRightTextView();
rightTextView.setText(getString(R.string.selector_sure_without_num));
FrameLayout.LayoutParams layoutParams =
(FrameLayout.LayoutParams) rightTextView.getLayoutParams();
layoutParams.rightMargin = SizeUtils.dp2px(endPadding);
rightTextView.setPadding(
horizontalPadding, verticalPadding, horizontalPadding, verticalPadding);
return;
}
if (checkNetworkEnable && !NetworkUtils.isConnected()) {
Toast.makeText(this, R.string.contact_network_error_tip, Toast.LENGTH_SHORT).show();
return;
}
List<String> select = getSelectedAccount();
List<String> selectName = getSelectedName();
if (select.size() < 1) {
Toast.makeText(this, getString(R.string.select_empty_tips), Toast.LENGTH_LONG)
.show();
@@ -240,7 +279,23 @@ public class FunContactSelectorActivity extends BaseContactSelectorActivity {
.show();
return;
}
createGroup();
if(type ==1){
// FriendInfo friendInfo = ((ContactFriendBean) data).data;
//转发选取一个结束
Intent result = new Intent();
listAccount.clear();
listname.clear();
listAccount.addAll(select);
listname.addAll(selectName);
result.putExtra(REQUEST_CONTACT_SELECTOR_KEY, listAccount);
result.putExtra(KEY_REQUEST_SELECTOR_NAME, listname);
setResult(RESULT_OK, result);
finish();
}else {
createGroup();
}
// if (!selectedListAdapter.getSelectedFriends().isEmpty()) {
@@ -256,7 +311,7 @@ public class FunContactSelectorActivity extends BaseContactSelectorActivity {
// titleBar.getTitleTextView().setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));
// titleBar.getRightTextView().setTextColor(getResources().getColor(R.color.color_6b3689));
}
// }
int verticalPadding = SizeUtils.dp2px(5);
int horizontalPadding = SizeUtils.dp2px(10);
int endPadding = SizeUtils.dp2px(5);

View File

@@ -33,7 +33,12 @@ import com.dskj.rbchat.network.BaseObserver;
import com.dskj.rbchat.network.Result;
import com.dskj.rbchat.utils.GsonUtils;
import com.dskj.rbchat.utils.LogUtils;
import com.netease.nimlib.sdk.NIMClient;
import com.netease.nimlib.sdk.RequestCallback;
import com.netease.nimlib.sdk.team.TeamService;
import com.netease.nimlib.sdk.team.constant.TeamMemberType;
import com.netease.nimlib.sdk.team.model.Team;
import com.netease.nimlib.sdk.team.model.TeamMember;
import com.netease.yunxin.kit.chatkit.model.UserInfoWithTeam;
import com.netease.yunxin.kit.chatkit.repo.ContactRepo;
import com.netease.yunxin.kit.chatkit.ui.model.TeamExtensionBean;
@@ -338,6 +343,36 @@ public class TeamMembersListActivity extends BaseTeamQrSettingActivity {
public void startUserInfoActivity(String userid, String teamId) {
//如果群不允许群内添加好友 当前登录用户不是群主以及userid 也不是群主 直接跳过
if (isAllowAdd == 0 && isManager != 1 && !userid.equals(teamOwnerId)) {
NIMClient.getService(TeamService.class).queryTeamMember(teamId, userid).setCallback(new RequestCallback<TeamMember>() {
@Override
public void onSuccess(TeamMember members) {
if(members!=null){
if(members.getType() == TeamMemberType.Manager){
XKitRouter.withKey(RouterConstant.PATH_USER_INFO_PAGE)
.withContext(TeamMembersListActivity.this)
.withParam(RouterConstant.KEY_ACCOUNT_ID_KEY, IMKitClient.account())
.withParam("userId", userid)
.withParam("teamId", teamId)
.withParam("isGroup", true)
.navigate();
}
}
}
@Override
public void onFailed(int code) {
// 撤销群管理员失败
}
@Override
public void onException(Throwable exception) {
// 错误
}
});
return;
}

View File

@@ -125,14 +125,28 @@ public class TeamMembersAdapter extends RecyclerView.Adapter<TeamMembersAdapter.
@Override
public void onBindViewHolder(@NonNull TeamMembersViewHolder holder, int position) {
UserInfo userInfo = members.get(position);
holder.binding.unreadTv.setVisibility(View.GONE);
if (position == 0 && isShowInvited) {
holder.binding.avatarView.setData(com.netease.yunxin.kit.contactkit.ui.R.drawable.ic_creategroup_add, "");
holder.binding.icDelete.setVisibility(View.GONE);
holder.binding.tvName.setText(mContext.getResources().getString(R.string.invcode_friend_txt));
holder.binding.tvNameActivetime.setVisibility(View.GONE);
} else {
TeamMember teamMember = NIMClient.getService(TeamService.class).queryTeamMemberBlock(teamId, userInfo.getAccount());
if(teamMember!=null){
if(teamMember.getType() == TeamMemberType.Manager){
holder.binding.unreadTv.setVisibility(View.VISIBLE);
holder.binding.unreadTv.setText(R.string.teamsetting_other_teammanager);
holder.binding.unreadTv.setBackgroundResource(com.netease.yunxin.kit.conversationkit.ui.R.drawable.bg_conversation_red_dot1);
}else if(teamMember.getType() == TeamMemberType.Owner){
holder.binding.unreadTv.setVisibility(View.VISIBLE);
holder.binding.unreadTv.setText(com.netease.yunxin.kit.teamkit.ui.R.string.team_owner);
holder.binding.unreadTv.setBackgroundResource(com.netease.yunxin.kit.conversationkit.ui.R.drawable.bg_conversation_red_dot);
}
}
if (isEdit) {
TeamMember teamMember = NIMClient.getService(TeamService.class).queryTeamMemberBlock(teamId, userInfo.getAccount());
if (teamMember != null && (teamMember.getType() == TeamMemberType.Manager || teamMember.getType() == TeamMemberType.Owner)) {
holder.binding.icDelete.setVisibility(View.GONE);
} else {

View File

@@ -95,9 +95,9 @@ public class WelcomeActivity extends BaseActivity {
ALog.d(Constant.PROJECT_TAG, TAG, "onCreateView");
//getWindow().setNavigationBarColor(getResources().getColor(R.color.color_white));
// 设置全屏
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
// requestWindowFeature(Window.FEATURE_NO_TITLE);
// getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
// WindowManager.LayoutParams.FLAG_FULLSCREEN);
IMApplication.setColdStart(true);
activityWelcomeBinding = ActivityWelcomeBinding.inflate(getLayoutInflater());
setContentView(activityWelcomeBinding.getRoot());