Compare commits
34 Commits
branch_new
...
6c8065711d
| Author | SHA1 | Date | |
|---|---|---|---|
| 6c8065711d | |||
| 5c607c58ae | |||
| f2363dad01 | |||
| 07dbffaa5a | |||
| b028ec883b | |||
| 552e238254 | |||
| 3fde4df00f | |||
| 471a0453fa | |||
| 420afc7a1e | |||
| 6130accb48 | |||
| e2b0c9ce8c | |||
| 894b397537 | |||
| 6207705d2a | |||
| f5fea27595 | |||
| c388d765d4 | |||
| 952621baaa | |||
| df499aaa6c | |||
| 3d8e152cd8 | |||
| 727e343d1f | |||
| ef27636564 | |||
| aa778ca1de | |||
| 90077d24f6 | |||
| 81b41ef392 | |||
| c2714ff68a | |||
| 1fbece3e62 | |||
| 7f4843b023 | |||
| ec3f3d6233 | |||
| 1b06d5725f | |||
| 0874998249 | |||
| b611147176 | |||
| ac9d9b19fd | |||
| ea2b45c1be | |||
| 19bc9dbad8 | |||
| 4b356a6ce4 |
@@ -117,6 +117,7 @@ public class AppUpdateDialog extends BaseDialog<DialogAppUpdateBinding> implemen
|
||||
mProgressDialog.dismiss();
|
||||
}
|
||||
try {
|
||||
LogUtils.e("installAppSuccess",localPath);
|
||||
AppUtils.installApp(localPath);
|
||||
} catch (Exception e) {
|
||||
Logger.e("installAppError", e);
|
||||
|
||||
@@ -186,7 +186,7 @@ public class CirleListAdapter extends BaseQuickAdapter<CircleListBean, BaseViewH
|
||||
helper.getView(R.id.dy_lookmore_tv).setVisibility(GONE);
|
||||
helper.getView(R.id.dy_content_tv).setVisibility(GONE);
|
||||
} else {
|
||||
helper.getView(R.id.dy_lookmore_tv).setVisibility(VISIBLE);
|
||||
helper.getView(R.id.dy_lookmore_tv).setVisibility(GONE);
|
||||
helper.getView(R.id.dy_content_tv).setVisibility(VISIBLE);
|
||||
}
|
||||
helper.getView(R.id.dy_lookmore_tv).getViewTreeObserver().addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
|
||||
@@ -196,7 +196,7 @@ public class CirleListAdapter extends BaseQuickAdapter<CircleListBean, BaseViewH
|
||||
TextView view = helper.getView(R.id.dy_content_tv);
|
||||
int lineCount = view.getLineCount();
|
||||
if (lineCount >= 7) {
|
||||
helper.getView(R.id.dy_lookmore_tv).setVisibility(VISIBLE);
|
||||
helper.getView(R.id.dy_lookmore_tv).setVisibility(GONE);
|
||||
helper.getView(R.id.dy_content_tv).getViewTreeObserver().removeOnPreDrawListener(this);//销毁
|
||||
} else {
|
||||
helper.getView(R.id.dy_lookmore_tv).setVisibility(GONE);
|
||||
|
||||
@@ -16,6 +16,6 @@ public class BlackUserBean {
|
||||
private int sex;
|
||||
private String user_code;
|
||||
private int is_online;
|
||||
private int is_follow;
|
||||
private int is_follow;// 是否关注 0:未关注 1:已关注 2:别人关注了你,你没有关注别人,这个2只会在粉丝中使用
|
||||
private List<String> icon;
|
||||
}
|
||||
|
||||
@@ -61,7 +61,7 @@ public class GiftBoxBean {
|
||||
|
||||
private int task_type_id;
|
||||
private String task_type_name;
|
||||
|
||||
private int is_lock;//锁:0 不开启锁 1 开启锁
|
||||
@Data
|
||||
public static class DailyTasksBean {
|
||||
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
package com.xscm.moduleutil.bean
|
||||
|
||||
/**
|
||||
* 项目名称:羽声语音
|
||||
* 时间:2025/12/16 11:35
|
||||
* 用途:任务未领取角标
|
||||
*/
|
||||
class TasksMessage {
|
||||
var num: Int=0
|
||||
var not_received_tasks_num : Int=0 //任务未领取奖励数 这是心跳中返回的参数,用于展示任务未领取角标,是在房间内展示的
|
||||
}
|
||||
@@ -11,10 +11,21 @@ public class EMMessageInfo implements MultiItemEntity {
|
||||
public static final int QXRoomMessageTypeJoin = 1001;
|
||||
/// 用户退出房间
|
||||
public static final int QXRoomMessageTypeQuit = 1002;
|
||||
|
||||
//================================================================================================麦上变化=================================================================
|
||||
/// 用户上麦
|
||||
public static final int QXRoomMessageTypeUpSeat = 1003;
|
||||
/// 用户下麦
|
||||
public static final int QXRoomMessageTypeDownSeat = 1004;
|
||||
/// 拍卖者被拉上麦
|
||||
public static final int QXRoomMessageTypeAuctionIsUp = 1022;
|
||||
/// 竞拍开始,竞拍麦位发生变化
|
||||
public static final int QXRoomMessageTypeAuctionIsStart = 1024;
|
||||
/// 互娱 麦位发生变化
|
||||
public static final int QXRoomMessageTypeSeatDidChanged = 1053;
|
||||
/// 房间内换麦
|
||||
public static final int QXRoomMessageTypehm = 1039;
|
||||
//==============================================================================================end=================================================================
|
||||
/// 房间收到礼物
|
||||
public static final int QXRoomMessageTypeGift = 1005;
|
||||
/// 设置管理员
|
||||
@@ -48,12 +59,11 @@ public class EMMessageInfo implements MultiItemEntity {
|
||||
public static final int QXRoomMessageTypeRoomUpdate = 1020;
|
||||
/// 清除魅力值
|
||||
public static final int QXRoomMessageTypeRoom = 1021;
|
||||
/// 拍卖者被拉上麦
|
||||
public static final int QXRoomMessageTypeAuctionIsUp = 1022;
|
||||
|
||||
|
||||
/// 拍卖者拍卖开始
|
||||
public static final int QXRoomMessageTypeAuctionIsSelected = 1023;
|
||||
/// 竞拍开始,竞拍麦位发生变化
|
||||
public static final int QXRoomMessageTypeAuctionIsStart = 1024;
|
||||
|
||||
/// 竞拍结束
|
||||
public static final int QXRoomMessageTypeAuctionIsEnd = 1025;
|
||||
/// 主持延时
|
||||
@@ -101,8 +111,7 @@ public class EMMessageInfo implements MultiItemEntity {
|
||||
public static final int QXRoomMessageTypeRoomFriendCreateRelation = 1051;
|
||||
/// 私密小屋结束时间发生延时
|
||||
public static final int QXRoomMessageTypeCabinTimeDelay = 1052;
|
||||
/// 麦位发生变化
|
||||
public static final int QXRoomMessageTypeSeatDidChanged = 1053;
|
||||
|
||||
/// 心动值发生变化
|
||||
public static final int QXRoomMessageTypeHeartDidChanged = 1054;
|
||||
/// 小黑屋有人退出房间
|
||||
@@ -129,8 +138,7 @@ public class EMMessageInfo implements MultiItemEntity {
|
||||
//已点歌曲数量
|
||||
public static final int QXRoomMessageTypeSongerNum = 1072;
|
||||
|
||||
/// 房间内换麦
|
||||
public static final int QXRoomMessageTypehm = 1039;
|
||||
|
||||
public static final int QXRoomMessageTypeCPText = 1080;//CP特效,进入房间的特效,
|
||||
/// 签约开始
|
||||
public static final int QXRoomMessageTypeSignStartText = 1090;
|
||||
|
||||
@@ -26,7 +26,7 @@ public class RoomInfoResp implements Serializable {
|
||||
private RoomOrderDemand demand;//嘉宾需求
|
||||
private int rejoin;
|
||||
private int is_show_self;//盲盒是否送自己
|
||||
private MusicSongBean song_user_info;
|
||||
private MusicSongBean song_user_info;//ktv
|
||||
private MusicSongBean nextInfo;
|
||||
private RoomAuction room_auction;//拍卖房信息
|
||||
private RoomCpUserBean cp_user;
|
||||
|
||||
@@ -13,6 +13,7 @@ import com.xscm.moduleutil.widget.Constants;
|
||||
import java.util.List;
|
||||
|
||||
import io.reactivex.Observable;
|
||||
import okhttp3.RequestBody;
|
||||
import okhttp3.ResponseBody;
|
||||
import retrofit2.Call;
|
||||
import retrofit2.http.Field;
|
||||
@@ -26,7 +27,7 @@ public interface ApiServer {
|
||||
|
||||
@FormUrlEncoded //请求验证码
|
||||
@POST(Constants.SEND_CODE)
|
||||
Observable<BaseModel<Object>> sendCode(@Field("mobile") String mobile, @Field("event") String event);
|
||||
Call<BaseModel<String>> sendCode(@Field("mobile") String mobile, @Field("event") String event);
|
||||
|
||||
@FormUrlEncoded
|
||||
@POST(Constants.LOGIN)
|
||||
@@ -38,7 +39,7 @@ public interface ApiServer {
|
||||
|
||||
@FormUrlEncoded //手机换绑
|
||||
@POST(Constants.MODIFY_MOBILE)
|
||||
Call<BaseModel<String>> mobileView(@Field("mobile") String mobile, @Field("new_mobile") String new_mobile, @Field("sms_code") String sms_code);
|
||||
Call<BaseModel<String>> mobileView(@Field("mobile") String mobile, @Field("new_mobile") String new_mobile, @Field("sms_code") String sms_code,@Field("new_sms_code") String new_sms_code);
|
||||
|
||||
@GET(Constants.GET_EMOTION)
|
||||
Call<BaseModel<List<Emotion>>> upEmotion();
|
||||
@@ -556,6 +557,9 @@ public interface ApiServer {
|
||||
@GET(Constants.GET_WALLET)
|
||||
Call<BaseModel<WalletBean>> wallet();
|
||||
|
||||
@GET(Constants.GET_TASKS_MESSAGE)
|
||||
Call<BaseModel<TasksMessage>> getTasksMessage();
|
||||
|
||||
@FormUrlEncoded
|
||||
@POST(Constants.REDPACKET_CREATE)
|
||||
Call<ResponseBody> redPacketCreate(@Field("type") int type, @Field("password") String password, @Field("coin_type") int coin_type, @Field("total_amount") String total_amount,
|
||||
@@ -629,7 +633,7 @@ public interface ApiServer {
|
||||
|
||||
@FormUrlEncoded
|
||||
@POST(Constants.POST_KEEP_XINTIAO)
|
||||
Call<ResponseBody> keepXintiao(@Field("room_id") String room_id);
|
||||
Call<BaseModel<TasksMessage>> keepXintiao(@Field("room_id") String room_id);
|
||||
|
||||
@FormUrlEncoded
|
||||
@POST(Constants.DOWN_PIT)
|
||||
@@ -689,7 +693,7 @@ public interface ApiServer {
|
||||
|
||||
@FormUrlEncoded
|
||||
@POST(Constants.CHANGE_SONG)
|
||||
Call<BaseModel<String>> changeSong(@Field("room_id") String roomId, @Field("now_did") String now_did);
|
||||
Call<BaseModel<String>> changeSong(@Field("room_id") String roomId, @Field("now_did") String now_did,@Field("is_auto_next") String is_auto_next);
|
||||
|
||||
@FormUrlEncoded
|
||||
@POST(Constants.POST_HOST_LIST)
|
||||
|
||||
@@ -7,6 +7,7 @@ import android.net.ConnectivityManager;
|
||||
import android.net.NetworkInfo;
|
||||
import android.util.Log;
|
||||
|
||||
import com.blankj.utilcode.util.ActivityUtils;
|
||||
import com.blankj.utilcode.util.GsonUtils;
|
||||
import com.blankj.utilcode.util.LogUtils;
|
||||
import com.blankj.utilcode.util.ToastUtils;
|
||||
@@ -79,6 +80,7 @@ public class RetrofitClient {
|
||||
public interface JoinRoomLoadListener {
|
||||
void onJoinRoomLoad(String result);
|
||||
}
|
||||
|
||||
public void setJoinRoomLoadListener(JoinRoomLoadListener joinRoomLoadListener) {
|
||||
this.joinRoomLoadListener = joinRoomLoadListener;
|
||||
}
|
||||
@@ -161,6 +163,16 @@ public class RetrofitClient {
|
||||
return cpListener;
|
||||
}
|
||||
|
||||
private TasksMessageListener tasksMessageListener;
|
||||
|
||||
public interface TasksMessageListener {
|
||||
void onTasksMessageNum(int result);
|
||||
}
|
||||
|
||||
public void setTasksMessageListener(TasksMessageListener tasksMessageListener) {
|
||||
this.tasksMessageListener = tasksMessageListener;
|
||||
}
|
||||
|
||||
|
||||
public static RetrofitClient getInstance() {
|
||||
if (INSTANCE == null) {
|
||||
@@ -207,12 +219,30 @@ public class RetrofitClient {
|
||||
sApiServer.appUpdate().compose(new DefaultTransformer<>()).subscribe(observer);
|
||||
}
|
||||
|
||||
public void sendCode(String mobile, String event, BaseObserver<Object> observer) {
|
||||
sApiServer.sendCode(mobile, event).compose(new DefaultTransformer<>()).subscribe(observer);
|
||||
public void sendCode(String mobile, String event, BaseObserver<String> observer) {
|
||||
sApiServer.sendCode(mobile, event).enqueue(new Callback<BaseModel<String>>() {
|
||||
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
if (response.code() == 200) {
|
||||
BaseModel<String> body = response.body();
|
||||
if (body.getCode() == 1) {
|
||||
observer.onNext(body.getMsg());
|
||||
} else if (body.getCode() == 0) {
|
||||
ToastUtils.showLong(body.getMsg());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<BaseModel<String>> call, Throwable t) {
|
||||
LogUtils.e("sendCode", t.getMessage());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void mobileView(String mobile, String new_mobile, String sms_code, BaseObserver<String> observer) {
|
||||
sApiServer.mobileView(mobile, new_mobile, sms_code).enqueue(new Callback<BaseModel<String>>() {
|
||||
public void mobileView(String mobile, String new_mobile, String sms_code,String new_sms_code, BaseObserver<String> observer) {
|
||||
sApiServer.mobileView(mobile, new_mobile, sms_code,new_sms_code).enqueue(new Callback<BaseModel<String>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
if (response.code() == 200) {
|
||||
@@ -545,7 +575,7 @@ public class RetrofitClient {
|
||||
} catch (ClassNotFoundException e) {
|
||||
}
|
||||
} else {
|
||||
ToastUtils.showLong(baseModel.getMsg());
|
||||
ToastUtils.showLong(baseModel.getMsg());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -921,7 +951,7 @@ public class RetrofitClient {
|
||||
BaseModel<List<MyBagDataBean>> baseModel = response.body();
|
||||
if (baseModel.getCode() == 1) {
|
||||
observer.onNext(baseModel.getData());
|
||||
}else if (baseModel.getCode() == 0) {
|
||||
} else if (baseModel.getCode() == 0) {
|
||||
observer.onNext(new ArrayList<>());
|
||||
}
|
||||
}
|
||||
@@ -942,7 +972,7 @@ public class RetrofitClient {
|
||||
BaseModel<List<MyBagDataBean>> baseModel = response.body();
|
||||
if (baseModel.getCode() == 1) {
|
||||
observer.onNext(baseModel.getData());
|
||||
}else if (baseModel.getCode() == 0) {
|
||||
} else if (baseModel.getCode() == 0) {
|
||||
observer.onNext(new ArrayList<>());
|
||||
}
|
||||
}
|
||||
@@ -1062,8 +1092,8 @@ public class RetrofitClient {
|
||||
sApiServer.dailyTasksOpenBox(gift_box_id).compose(new DefaultTransformer<>()).subscribe(observer);
|
||||
}
|
||||
|
||||
public void dailyTasksReceive(String task_id,String student_id, BaseObserver<String> observer) {
|
||||
sApiServer.dailyTasksReceive(task_id,student_id).enqueue(new Callback<ResponseBody>() {
|
||||
public void dailyTasksReceive(String task_id, String student_id, BaseObserver<String> observer) {
|
||||
sApiServer.dailyTasksReceive(task_id, student_id).enqueue(new Callback<ResponseBody>() {
|
||||
|
||||
@Override
|
||||
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
|
||||
@@ -2050,6 +2080,11 @@ public class RetrofitClient {
|
||||
BaseModel<UserInfo> listBaseModel = response.body();
|
||||
if (listBaseModel.getCode() == 1) {
|
||||
observer.onNext(listBaseModel.getData());
|
||||
}else if (listBaseModel.getCode() == 0){
|
||||
ToastUtils.showShort(listBaseModel.getMsg());
|
||||
if (ActivityUtils.getTopActivity().getComponentName().getClassName().contains("UserHomepageActivity")){
|
||||
ActivityUtils.getTopActivity().finish();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2261,10 +2296,10 @@ public class RetrofitClient {
|
||||
}
|
||||
} else if (roomInfoRespBaseModel.getCode() == 0) {
|
||||
ToastUtils.showShort(roomInfoRespBaseModel.getMsg());
|
||||
if (joinRoomLoadListener != null){
|
||||
if (joinRoomLoadListener != null) {
|
||||
joinRoomLoadListener.onJoinRoomLoad(roomInfoRespBaseModel.getMsg());
|
||||
}
|
||||
}else if (roomInfoRespBaseModel.getCode() == 202){
|
||||
} else if (roomInfoRespBaseModel.getCode() == 202) {
|
||||
observer.onNext(roomInfoRespBaseModel.getData());
|
||||
} else {
|
||||
MessageListenerSingleton.getInstance().quitGroup(roomId);
|
||||
@@ -2362,7 +2397,7 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void check_create_room(BaseObserver<String> observer){
|
||||
public void check_create_room(BaseObserver<String> observer) {
|
||||
sApiServer.checkCreateRoom().enqueue(new Callback<BaseModel<String>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
@@ -2370,9 +2405,9 @@ public class RetrofitClient {
|
||||
BaseModel<String> stringBaseModel = response.body();
|
||||
if (stringBaseModel.getCode() == 1) {
|
||||
observer.onNext("");
|
||||
}else if (stringBaseModel.getCode() == 0) {
|
||||
} else if (stringBaseModel.getCode() == 0) {
|
||||
com.hjq.toast.ToastUtils.show(stringBaseModel.getMsg());
|
||||
}else if(stringBaseModel.getCode()==301){
|
||||
} else if (stringBaseModel.getCode() == 301) {
|
||||
try {
|
||||
CommonAppContext.getInstance().clearLoginInfo();
|
||||
ToastUtils.showShort(stringBaseModel.getMsg());
|
||||
@@ -2380,7 +2415,7 @@ public class RetrofitClient {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
}else {
|
||||
} else {
|
||||
LogUtils.e("check_create_room", response.message());
|
||||
}
|
||||
|
||||
@@ -2426,7 +2461,7 @@ public class RetrofitClient {
|
||||
BaseModel<RoomOnline> roomOnlineBaseModel = response.body();
|
||||
if (roomOnlineBaseModel.getCode() == 1) {
|
||||
observer.onNext(roomOnlineBaseModel.getData());
|
||||
}else if (roomOnlineBaseModel.getCode() == 0) {
|
||||
} else if (roomOnlineBaseModel.getCode() == 0) {
|
||||
ToastUtils.showLong(roomOnlineBaseModel.getMsg());
|
||||
}
|
||||
}
|
||||
@@ -2468,7 +2503,7 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void index_recommend_room(BaseObserver<IndexRecommendRoom> observer) {
|
||||
public void index_recommend_room(BaseObserver<IndexRecommendRoom> observer) {
|
||||
sApiServer.index_recommend_room().enqueue(new Callback<BaseModel<IndexRecommendRoom>>() {
|
||||
|
||||
@Override
|
||||
@@ -2478,7 +2513,7 @@ public class RetrofitClient {
|
||||
if (indexRecommendRoomBaseModel.getCode() == 1) {
|
||||
if (indexRecommendRoomBaseModel.getData() == null) {
|
||||
observer.onNext(new IndexRecommendRoom());
|
||||
}else {
|
||||
} else {
|
||||
observer.onNext(indexRecommendRoomBaseModel.getData());
|
||||
}
|
||||
} else if (indexRecommendRoomBaseModel.getCode() == 0) {
|
||||
@@ -2496,11 +2531,11 @@ public class RetrofitClient {
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<BaseModel<IndexRecommendRoom>> call, Throwable t) {
|
||||
LogUtils.e("首页房间推荐",t.fillInStackTrace());
|
||||
LogUtils.e("首页房间推荐", t.fillInStackTrace());
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public void wallet(BaseObserver<WalletBean> observer) {
|
||||
sApiServer.wallet().enqueue(new Callback<BaseModel<WalletBean>>() {
|
||||
@@ -2521,7 +2556,36 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void redPacketCreate(int type, String password, int coin_type, String total_amount, String total_count, String conditions, String countdown, String room_id, String remark, BaseObserver<String> observer) {
|
||||
public void getTasksMessage(BaseObserver<TasksMessage> observer) {
|
||||
sApiServer.getTasksMessage().enqueue(new Callback<BaseModel<TasksMessage>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<TasksMessage>> call, Response<BaseModel<TasksMessage>> response) {
|
||||
if (response.code() == 200) {
|
||||
BaseModel<TasksMessage> tasksMessage = response.body();
|
||||
if (tasksMessage.getCode() == 1) {
|
||||
observer.onNext(tasksMessage.getData());
|
||||
} else if (tasksMessage.getCode() == 0) {
|
||||
} else if (tasksMessage.getCode() == 301) {
|
||||
try {
|
||||
CommonAppContext.getInstance().clearLoginInfo();
|
||||
ToastUtils.showShort(tasksMessage.getMsg());
|
||||
} catch (ClassNotFoundException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<BaseModel<TasksMessage>> call, Throwable t) {
|
||||
LogUtils.e("任务个数", t.fillInStackTrace());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void redPacketCreate(int type, String password, int coin_type, String
|
||||
total_amount, String total_count, String conditions, String countdown, String
|
||||
room_id, String remark, BaseObserver<String> observer) {
|
||||
sApiServer.redPacketCreate(type, password, coin_type, total_amount, total_count, conditions, countdown, room_id, remark).enqueue(new Callback<ResponseBody>() {
|
||||
@Override
|
||||
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
|
||||
@@ -2582,7 +2646,8 @@ public class RetrofitClient {
|
||||
// });
|
||||
}
|
||||
|
||||
public void appPay(String user_id, String money, String coin, String type, String type_params, String type_id, String nobility_id, BaseObserver<AppPay> observer) {
|
||||
public void appPay(String user_id, String money, String coin, String type, String
|
||||
type_params, String type_id, String nobility_id, BaseObserver<AppPay> observer) {
|
||||
sApiServer.appPay(user_id, money, coin, type, type_params, type_id, nobility_id).enqueue(new Callback<BaseModel<AppPay>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<AppPay>> call, Response<BaseModel<AppPay>> response) {
|
||||
@@ -2641,7 +2706,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void bind(String userId, String type, String alipayAccount, String bank_card_number, String bank_card, String open_bank, BaseObserver<String> observer) {
|
||||
public void bind(String userId, String type, String alipayAccount, String
|
||||
bank_card_number, String bank_card, String open_bank, BaseObserver<String> observer) {
|
||||
sApiServer.bind(userId, type, alipayAccount, bank_card_number, bank_card, open_bank).enqueue(new Callback<BaseModel<String>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
@@ -2674,7 +2740,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void getRoomUserInfo(String room_id, String user_id, BaseObserver<UserInfo> observer) {
|
||||
public void getRoomUserInfo(String room_id, String
|
||||
user_id, BaseObserver<UserInfo> observer) {
|
||||
sApiServer.getRoomUserInfo(room_id, user_id).enqueue(new Callback<BaseModel<UserInfo>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<UserInfo>> call, Response<BaseModel<UserInfo>> response) {
|
||||
@@ -2693,8 +2760,9 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void songList(String room_id,String page, BaseObserver<List<MusicSongBean>> observer) {
|
||||
sApiServer.songList(room_id,page).enqueue(new Callback<BaseModel<List<MusicSongBean>>>() {
|
||||
public void songList(String room_id, String
|
||||
page, BaseObserver<List<MusicSongBean>> observer) {
|
||||
sApiServer.songList(room_id, page).enqueue(new Callback<BaseModel<List<MusicSongBean>>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<List<MusicSongBean>>> call, Response<BaseModel<List<MusicSongBean>>> response) {
|
||||
if (response.code() == 200) {
|
||||
@@ -2734,7 +2802,8 @@ public class RetrofitClient {
|
||||
}
|
||||
|
||||
|
||||
public void getSearch(String keyWord, String type, BaseObserver<List<RoomSearchResp>> observer) {
|
||||
public void getSearch(String keyWord, String
|
||||
type, BaseObserver<List<RoomSearchResp>> observer) {
|
||||
sApiServer.getSearch(keyWord, type).enqueue(new Callback<BaseModel<List<RoomSearchResp>>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<List<RoomSearchResp>>> call, Response<BaseModel<List<RoomSearchResp>>> response) {
|
||||
@@ -2857,7 +2926,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void roomAuctionJoin(String auctionId, String userId, String giftId, String num, String type, BaseObserver<RoomAuction.AuctionListBean> observer) {
|
||||
public void roomAuctionJoin(String auctionId, String userId, String giftId, String
|
||||
num, String type, BaseObserver<RoomAuction.AuctionListBean> observer) {
|
||||
sApiServer.roomAuctionJoin(auctionId, userId, giftId, num, type).enqueue(new ApiResponseCallback<RoomAuction.AuctionListBean>(CommonAppContext.getInstance()) {
|
||||
@Override
|
||||
public void onSuccess(RoomAuction.AuctionListBean data) {
|
||||
@@ -2972,10 +3042,14 @@ public class RetrofitClient {
|
||||
if (response.code() == 200) {
|
||||
BaseModel<RedPackGrab> baseModel = response.body();
|
||||
if (baseModel.getCode() == 1) {
|
||||
observer.onNext(baseModel.getData());
|
||||
if (baseModel.getData() != null) {
|
||||
observer.onNext(baseModel.getData());
|
||||
}
|
||||
} else if (baseModel.getCode() == 0) {
|
||||
ToastUtils.showShort(baseModel.getMsg());
|
||||
observer.onNext(baseModel.getData());
|
||||
if (baseModel.getData() != null) {
|
||||
observer.onNext(baseModel.getData());
|
||||
}
|
||||
} else if (baseModel.getCode() == 301) {
|
||||
try {
|
||||
ToastUtils.showShort(baseModel.getMsg());
|
||||
@@ -3200,7 +3274,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void roomGift(String room_id, String gift_id, String gift_num, String to_uid, String type, String pit_number, String heart_id, BaseObserver<RoomGiftData> observer) {
|
||||
public void roomGift(String room_id, String gift_id, String gift_num, String to_uid, String
|
||||
type, String pit_number, String heart_id, BaseObserver<RoomGiftData> observer) {
|
||||
sApiServer.roomGift(room_id, gift_id, gift_num, to_uid, type, pit_number, heart_id).enqueue(new Callback<BaseModel<RoomGiftData>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<RoomGiftData>> call, Response<BaseModel<RoomGiftData>> response) {
|
||||
@@ -3238,7 +3313,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void cpGiveGift(String user_id, String gift_id, String room_id, BaseObserver<RoomGiftData> observer) {
|
||||
public void cpGiveGift(String user_id, String gift_id, String
|
||||
room_id, BaseObserver<RoomGiftData> observer) {
|
||||
sApiServer.cpGiveGift(user_id, gift_id, room_id).enqueue(new Callback<BaseModel<RoomGiftData>>() {
|
||||
|
||||
@Override
|
||||
@@ -3432,21 +3508,36 @@ public class RetrofitClient {
|
||||
}
|
||||
|
||||
public void keepXintiao(String roomId) {
|
||||
sApiServer.keepXintiao(roomId).enqueue(new Callback<ResponseBody>() {
|
||||
sApiServer.keepXintiao(roomId).enqueue(new Callback<BaseModel<TasksMessage>>() {
|
||||
@Override
|
||||
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
|
||||
|
||||
public void onResponse(Call<BaseModel<TasksMessage>> call, Response<BaseModel<TasksMessage>> response) {
|
||||
if (response.code() == 200) {
|
||||
BaseModel<TasksMessage> tasksMessage = response.body();
|
||||
assert tasksMessage != null;
|
||||
if (tasksMessage.getCode() == 1) {
|
||||
if (tasksMessageListener != null && tasksMessage.getData() != null) {
|
||||
tasksMessageListener.onTasksMessageNum(tasksMessage.getData().getNot_received_tasks_num());
|
||||
}
|
||||
} else if (tasksMessage.getCode() == 0) {
|
||||
} else if (tasksMessage.getCode() == 301) {
|
||||
try {
|
||||
CommonAppContext.getInstance().clearLoginInfo();
|
||||
ToastUtils.showShort(tasksMessage.getMsg());
|
||||
} catch (ClassNotFoundException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<ResponseBody> call, Throwable t) {
|
||||
|
||||
public void onFailure(Call<BaseModel<TasksMessage>> call, Throwable t) {
|
||||
LogUtils.e("心跳: " + t.fillInStackTrace());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void setMutePit(String roomId, String user_id, String
|
||||
isMute, BaseObserver<String> observer) {
|
||||
public void setMutePit(String roomId, String user_id, String isMute, BaseObserver<String> observer) {
|
||||
sApiServer.setMutePit(roomId, user_id, isMute).enqueue(new Callback<BaseModel<String>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
@@ -3586,7 +3677,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void roomRelationList(String type, BaseObserver<List<RoomRelationBean>> observer) {
|
||||
public void roomRelationList(String
|
||||
type, BaseObserver<List<RoomRelationBean>> observer) {
|
||||
sApiServer.roomRelationList(type).enqueue(new Callback<BaseModel<List<RoomRelationBean>>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<List<RoomRelationBean>>> call, Response<BaseModel<List<RoomRelationBean>>> response) {
|
||||
@@ -3625,8 +3717,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void changeSong(String room_id, String now_did, BaseObserver<String> observer) {
|
||||
sApiServer.changeSong(room_id, now_did).enqueue(new Callback<BaseModel<String>>() {
|
||||
public void changeSong(String room_id, String now_did,String isAutoNext, BaseObserver<String> observer) {
|
||||
sApiServer.changeSong(room_id, now_did,isAutoNext).enqueue(new Callback<BaseModel<String>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
onNextRetu(response, observer);
|
||||
@@ -3723,7 +3815,7 @@ public class RetrofitClient {
|
||||
|
||||
|
||||
public void quitRoom(String room_id, String user_id, BaseObserver<String> observer) {
|
||||
if (room_id == null ||room_id.isEmpty())
|
||||
if (room_id == null || room_id.isEmpty())
|
||||
return;
|
||||
sApiServer.quitRoom(room_id, user_id).enqueue(new Callback<ResponseBody>() {
|
||||
@Override
|
||||
@@ -3738,7 +3830,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void getFriendListMore(String user_id, String relation_id, BaseObserver<List<RelationshipBean>> observer) {
|
||||
public void getFriendListMore(String user_id, String
|
||||
relation_id, BaseObserver<List<RelationshipBean>> observer) {
|
||||
sApiServer.getFriendListMore(user_id, relation_id).enqueue(new Callback<BaseModel<List<RelationshipBean>>>() {
|
||||
|
||||
@Override
|
||||
@@ -3884,7 +3977,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void commentZone(String id, String content, String pid, String reply_to, BaseObserver<String> observer) {
|
||||
public void commentZone(String id, String content, String pid, String
|
||||
reply_to, BaseObserver<String> observer) {
|
||||
sApiServer.commentZone(id, content, pid, reply_to).enqueue(new Callback<BaseModel<String>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
@@ -3898,7 +3992,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void getFriendList(String userId, String page, String page_limit, BaseObserver<RelationBean> observer) {
|
||||
public void getFriendList(String userId, String page, String
|
||||
page_limit, BaseObserver<RelationBean> observer) {
|
||||
sApiServer.getFriendList(userId, page, page_limit).enqueue(new Callback<BaseModel<RelationBean>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<RelationBean>> call, Response<BaseModel<RelationBean>> response) {
|
||||
@@ -3941,8 +4036,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void cancel(String sms_code,BaseObserver<String> observer) {
|
||||
sApiServer.cancel(SpUtil.getToken(),sms_code).enqueue(new Callback<BaseModel<String>>() {
|
||||
public void cancel(String sms_code, BaseObserver<String> observer) {
|
||||
sApiServer.cancel(SpUtil.getToken(), sms_code).enqueue(new Callback<BaseModel<String>>() {
|
||||
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
@@ -3970,7 +4065,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void getPostData(String new_password, String mobile, String code, String userId, BaseObserver<String> observer) {
|
||||
public void getPostData(String new_password, String mobile, String code, String
|
||||
userId, BaseObserver<String> observer) {
|
||||
sApiServer.getPostData(new_password, mobile, code, userId).enqueue(new Callback<BaseModel<String>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
@@ -4127,7 +4223,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void userOnlineStatus(String user_id, String roomId, BaseObserver<List<UserOnlineStatusBean>> observer) {
|
||||
public void userOnlineStatus(String user_id, String
|
||||
roomId, BaseObserver<List<UserOnlineStatusBean>> observer) {
|
||||
sApiServer.userOnlineStatus(user_id, roomId).enqueue(new Callback<BaseModel<List<UserOnlineStatusBean>>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<List<UserOnlineStatusBean>>> call, Response<BaseModel<List<UserOnlineStatusBean>>> response) {
|
||||
@@ -4304,7 +4401,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void onNextRetu(Response<BaseModel<String>> response, BaseObserver<String> observer) {
|
||||
public void onNextRetu
|
||||
(Response<BaseModel<String>> response, BaseObserver<String> observer) {
|
||||
if (response.code() == 200) {
|
||||
BaseModel<String> string = response.body();
|
||||
if (string != null) {
|
||||
@@ -4427,7 +4525,8 @@ public class RetrofitClient {
|
||||
}
|
||||
|
||||
/// 盲盒转盘抽奖
|
||||
public void drawGiftList(String giftBagId, String gift_user_ids, String roomId, String num, String heart_id, String auction_id, BaseObserver<BlindReslutBean> observer) {
|
||||
public void drawGiftList(String giftBagId, String gift_user_ids, String roomId, String
|
||||
num, String heart_id, String auction_id, BaseObserver<BlindReslutBean> observer) {
|
||||
sApiServer.drawGiftList(giftBagId, gift_user_ids, roomId, num, heart_id, auction_id).enqueue(new Callback<BaseModel<BlindReslutBean>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<BlindReslutBean>> call, Response<BaseModel<BlindReslutBean>> response) {
|
||||
@@ -4647,7 +4746,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void roomUserCharmList(String room_id, String user_id, BaseObserver<List<RoomUserCharmListBean>> observer) {
|
||||
public void roomUserCharmList(String room_id, String
|
||||
user_id, BaseObserver<List<RoomUserCharmListBean>> observer) {
|
||||
sApiServer.roomUserCharmList(room_id, user_id).enqueue(new Callback<BaseModel<List<RoomUserCharmListBean>>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<List<RoomUserCharmListBean>>> call, Response<BaseModel<List<RoomUserCharmListBean>>> response) {
|
||||
@@ -4697,8 +4797,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void signCoin(String sign_id,String sign_value, BaseObserver<String> observer) {
|
||||
sApiServer.signCoin(sign_id,sign_value).enqueue(new Callback<BaseModel<String>>() {
|
||||
public void signCoin(String sign_id, String sign_value, BaseObserver<String> observer) {
|
||||
sApiServer.signCoin(sign_id, sign_value).enqueue(new Callback<BaseModel<String>>() {
|
||||
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
@@ -4713,8 +4813,8 @@ public class RetrofitClient {
|
||||
}
|
||||
|
||||
|
||||
public void getCpRoom(String userId,int page, BaseObserver<HeartCpBean> observer) {
|
||||
sApiServer.getCpRoom(userId,page+"").enqueue(new Callback<BaseModel<HeartCpBean>>() {
|
||||
public void getCpRoom(String userId, int page, BaseObserver<HeartCpBean> observer) {
|
||||
sApiServer.getCpRoom(userId, page + "").enqueue(new Callback<BaseModel<HeartCpBean>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<HeartCpBean>> call, Response<BaseModel<HeartCpBean>> response) {
|
||||
if (response.code() == 200) {
|
||||
@@ -4792,7 +4892,8 @@ public class RetrofitClient {
|
||||
}
|
||||
}
|
||||
|
||||
public void familyEarnings(String user_id, int page, String start_time, String end_time, BaseObserver<List<FamilyEarnings>> observer) {
|
||||
public void familyEarnings(String user_id, int page, String start_time, String
|
||||
end_time, BaseObserver<List<FamilyEarnings>> observer) {
|
||||
sApiServer.familyEarnings(user_id, page, start_time, end_time).enqueue(new Callback<BaseModel<List<FamilyEarnings>>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<List<FamilyEarnings>>> call, Response<BaseModel<List<FamilyEarnings>>> response) {
|
||||
@@ -4893,7 +4994,7 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void signRefuse(String roomId,BaseObserver<String> observer){
|
||||
public void signRefuse(String roomId, BaseObserver<String> observer) {
|
||||
sApiServer.signRefuse(roomId).enqueue(new Callback<BaseModel<String>>() {
|
||||
|
||||
@Override
|
||||
@@ -4908,8 +5009,8 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void freeReSign(int type, String userId,BaseObserver<String> observer) {
|
||||
if (type==1) {
|
||||
public void freeReSign(int type, String userId, BaseObserver<String> observer) {
|
||||
if (type == 1) {
|
||||
sApiServer.freeReSign(userId).enqueue(new Callback<BaseModel<String>>() {
|
||||
|
||||
@Override
|
||||
@@ -4922,7 +5023,7 @@ public class RetrofitClient {
|
||||
LogUtils.e("freeReSign", t.fillInStackTrace());
|
||||
}
|
||||
});
|
||||
}else {
|
||||
} else {
|
||||
sApiServer.reSign(userId).enqueue(new Callback<BaseModel<String>>() {
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
@@ -4938,17 +5039,17 @@ public class RetrofitClient {
|
||||
}
|
||||
|
||||
public void signIn(BaseObserver<List<SignInData>> observer) {
|
||||
sApiServer.signIn().enqueue(new Callback<BaseModel<List<SignInData>>>(){
|
||||
sApiServer.signIn().enqueue(new Callback<BaseModel<List<SignInData>>>() {
|
||||
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<List<SignInData>>> call, Response<BaseModel<List<SignInData>>> response) {
|
||||
if (response.code()==200){
|
||||
if (response.code() == 200) {
|
||||
BaseModel<List<SignInData>> baseModel = response.body();
|
||||
if (baseModel.getCode()==1 ){
|
||||
observer.onNext(baseModel.getData()!=null ? baseModel.getData() : new ArrayList<SignInData>());
|
||||
}else if (baseModel.getCode()==0){
|
||||
if (baseModel.getCode() == 1) {
|
||||
observer.onNext(baseModel.getData() != null ? baseModel.getData() : new ArrayList<SignInData>());
|
||||
} else if (baseModel.getCode() == 0) {
|
||||
com.hjq.toast.ToastUtils.show(baseModel.getMsg());
|
||||
}else if (baseModel.getCode()==301){
|
||||
} else if (baseModel.getCode() == 301) {
|
||||
try {
|
||||
CommonAppContext.getInstance().clearLoginInfo();
|
||||
ToastUtils.showShort(baseModel.getMsg());
|
||||
@@ -4956,8 +5057,8 @@ public class RetrofitClient {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
}else {
|
||||
LogUtils.e("signIn",response.errorBody());
|
||||
} else {
|
||||
LogUtils.e("signIn", response.errorBody());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4968,8 +5069,9 @@ public class RetrofitClient {
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
public void dailyTasksSign(BaseObserver<String> observer) {
|
||||
sApiServer.postDailyTasksSign().enqueue(new Callback<BaseModel<String>>(){
|
||||
sApiServer.postDailyTasksSign().enqueue(new Callback<BaseModel<String>>() {
|
||||
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
@@ -4983,18 +5085,19 @@ public class RetrofitClient {
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
public void tasksSignStatus(BaseObserver<TasksSignStatus> observer) {
|
||||
sApiServer.postDailyTasksSignStatus().enqueue(new Callback<BaseModel<TasksSignStatus>>(){
|
||||
sApiServer.postDailyTasksSignStatus().enqueue(new Callback<BaseModel<TasksSignStatus>>() {
|
||||
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<TasksSignStatus>> call, Response<BaseModel<TasksSignStatus>> response) {
|
||||
if (response.code()==200){
|
||||
if (response.code() == 200) {
|
||||
BaseModel<TasksSignStatus> baseModel = response.body();
|
||||
if (baseModel.getCode()==1){
|
||||
if (baseModel.getCode() == 1) {
|
||||
observer.onNext(baseModel.getData());
|
||||
}else if (baseModel.getCode()==0){
|
||||
} else if (baseModel.getCode() == 0) {
|
||||
com.hjq.toast.ToastUtils.show(baseModel.getMsg());
|
||||
}else if (baseModel.getCode()==301){
|
||||
} else if (baseModel.getCode() == 301) {
|
||||
try {
|
||||
CommonAppContext.getInstance().clearLoginInfo();
|
||||
ToastUtils.showShort(baseModel.getMsg());
|
||||
@@ -5002,8 +5105,8 @@ public class RetrofitClient {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
}else {
|
||||
LogUtils.e("postDailyTasksSignStatus",response.errorBody());
|
||||
} else {
|
||||
LogUtils.e("postDailyTasksSignStatus", response.errorBody());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -26,13 +26,18 @@ import android.widget.LinearLayout;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.annotation.RequiresApi;
|
||||
import androidx.vectordrawable.graphics.drawable.Animatable2Compat;
|
||||
|
||||
import com.blankj.utilcode.util.ConvertUtils;
|
||||
import com.blankj.utilcode.util.Utils;
|
||||
import com.bumptech.glide.Glide;
|
||||
import com.bumptech.glide.integration.webp.decoder.WebpDrawable;
|
||||
import com.bumptech.glide.integration.webp.decoder.WebpDrawableTransformation;
|
||||
import com.bumptech.glide.load.DataSource;
|
||||
import com.bumptech.glide.load.Transformation;
|
||||
import com.bumptech.glide.load.engine.DiskCacheStrategy;
|
||||
import com.bumptech.glide.load.engine.GlideException;
|
||||
import com.bumptech.glide.load.resource.bitmap.CenterInside;
|
||||
import com.bumptech.glide.load.resource.gif.GifDrawable;
|
||||
import com.bumptech.glide.request.FutureTarget;
|
||||
import com.bumptech.glide.request.RequestListener;
|
||||
@@ -655,6 +660,54 @@ public class ImageUtils {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static void loadWebpOneStart(int webp_anim, ImageView mAnimView){
|
||||
|
||||
if (mAnimView == null) {
|
||||
return;
|
||||
}
|
||||
// 1. 本地资源专属优化配置
|
||||
RequestOptions options = new RequestOptions()
|
||||
// 强制限制解码尺寸为ImageView显示尺寸(核心优化)
|
||||
.override(800, 800); // 本地图用原尺寸,或指定固定尺寸
|
||||
|
||||
//webp动图
|
||||
CenterInside transformation = new CenterInside();
|
||||
Glide.with(mAnimView)
|
||||
.load(webp_anim)//不是本地资源就改为url即可
|
||||
.apply(options)
|
||||
.optionalTransform(transformation)
|
||||
.optionalTransform(WebpDrawable.class, new WebpDrawableTransformation(transformation))
|
||||
.addListener(new RequestListener<Drawable>() {
|
||||
@Override
|
||||
public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
|
||||
WebpDrawable webpDrawable = (WebpDrawable) resource;
|
||||
//需要设置为循环1次才会有onAnimationEnd回调
|
||||
webpDrawable.setLoopCount(1);
|
||||
webpDrawable.registerAnimationCallback(new Animatable2Compat.AnimationCallback() {
|
||||
@Override
|
||||
public void onAnimationStart(Drawable drawable) {
|
||||
super.onAnimationStart(drawable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAnimationEnd(Drawable drawable) {
|
||||
super.onAnimationEnd(drawable);
|
||||
webpDrawable.unregisterAnimationCallback(this);
|
||||
}
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
})
|
||||
.into(mAnimView);
|
||||
}
|
||||
|
||||
public static void clearDiskCache(Context context){
|
||||
Glide.get(context).clearDiskCache();
|
||||
}
|
||||
|
||||
@@ -50,15 +50,16 @@ public class QXRedPacketManager {
|
||||
*
|
||||
* @param redPackets 红包模型列表
|
||||
*/
|
||||
public void addRedPackets(List<RedPacketInfo> redPackets) {
|
||||
public void addRedPackets(String roomId,List<RedPacketInfo> redPackets) {
|
||||
if (redPackets == null || redPackets.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
this.redPackets.entrySet().removeIf(entry ->
|
||||
!(entry.getValue().getRoom_id()+"").equals(roomId));
|
||||
|
||||
for (RedPacketInfo model : redPackets) {
|
||||
this.redPackets.put(model.getRedpacket_id(), model);
|
||||
}
|
||||
|
||||
// 在添加数据后启动定时器(如果尚未启动)
|
||||
startCheckTimer();
|
||||
if (this.delegate != null && this.delegate instanceof QXRedPacketManagerDelegate) {
|
||||
@@ -71,11 +72,12 @@ public class QXRedPacketManager {
|
||||
*
|
||||
* @param redPacket 红包模型
|
||||
*/
|
||||
public void addRedPacket(RedPacketInfo redPacket) {
|
||||
public void addRedPacket(String roomId,RedPacketInfo redPacket) {
|
||||
if (redPacket == null || redPacket.getRedpacket_id() == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
this.redPackets.entrySet().removeIf(entry ->
|
||||
!(entry.getValue().getRoom_id()+"").equals(roomId));
|
||||
this.redPackets.put(redPacket.getRedpacket_id(), redPacket);
|
||||
|
||||
// 在添加数据后启动定时器(如果尚未启动)
|
||||
|
||||
@@ -168,4 +168,28 @@ public class TextViewUtils {
|
||||
public interface OnClickableTextListener {
|
||||
void onClick();
|
||||
}
|
||||
|
||||
/**
|
||||
* 使用正则表达式格式化手机号,中间4位替换为****
|
||||
* @param phone 原始手机号
|
||||
* @return 格式化后的手机号
|
||||
*/
|
||||
public static String formatPhoneNumberWithRegex(String phone) {
|
||||
if (phone == null) {
|
||||
return "";
|
||||
}
|
||||
return phone.replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2");
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理带区号的手机号,中间4位替换为****
|
||||
* @param phone 原始手机号(可能带区号)
|
||||
* @return 格式化后的手机号
|
||||
*/
|
||||
public static String formatAnyPhone(String phone) {
|
||||
if (phone == null) {
|
||||
return "";
|
||||
}
|
||||
return phone.replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -209,7 +209,7 @@ public class TimeUtils {
|
||||
//获取当前日期
|
||||
public static String getCurrentDate2() {
|
||||
Date d = new Date();
|
||||
SimpleDateFormat sf = new SimpleDateFormat("yyyy_MM_dd_hh_mm_ss_SSS");
|
||||
SimpleDateFormat sf = new SimpleDateFormat("yyyy年MM月dd日hh时mm分ss秒SSS");
|
||||
return sf.format(d);
|
||||
}
|
||||
/**
|
||||
|
||||
@@ -15,7 +15,8 @@ public enum EnvironmentEnum {
|
||||
1600096860,
|
||||
"3e8f3add448d4692bc1d04c75ffe801b",
|
||||
//"tcp://1.13.101.98",
|
||||
"tcp://1.13.20.30",
|
||||
// "tcp://1.13.20.30",
|
||||
"tcp://yushengapi.qxyushen.top",
|
||||
// "https://vespa.qxyushen.top/h5",
|
||||
"https://yushengapi.qxyushen.top/h5",
|
||||
0),
|
||||
@@ -30,7 +31,8 @@ public enum EnvironmentEnum {
|
||||
"wxc7681513be9f926b",
|
||||
1600096890,
|
||||
"02f7339ec98947deaeab173599891932",
|
||||
"tcp://1.13.181.248",
|
||||
// "tcp://1.13.181.248",
|
||||
"tcp://test.vespa.qxyushen.top",
|
||||
"https://test.vespa.qxyushen.top/h5",
|
||||
1);
|
||||
|
||||
|
||||
@@ -272,6 +272,7 @@ public class Constants {
|
||||
public static final String GET_ROOM_TYPE = "/api/Index/room_type_list";//房间分类列表
|
||||
public static final String GET_GIVE_GIFT = "/api/Gift/chat_gift_send";//聊天送礼物
|
||||
public static final String GET_WALLET = "/api/UserWallet/wallet";//钱包
|
||||
public static final String GET_TASKS_MESSAGE = "/api/Tasks/dailyTasksUnReceiveCount";//【新】未领取奖励任务数量
|
||||
public static final String REDPACKET_CREATE = "/api/Redpacket/create";//创建红包
|
||||
public static final String ROOM_REDPACKET = "/api/Redpacket/roomRedPackets";//红包列表
|
||||
|
||||
@@ -443,7 +444,8 @@ public class Constants {
|
||||
|
||||
|
||||
|
||||
public static final String MODIFY_MOBILE = "/api/UserData/modify_mobile";//手机换绑
|
||||
// public static final String MODIFY_MOBILE = "/api/UserData/modify_mobile";//手机换绑
|
||||
public static final String MODIFY_MOBILE = "/api/UserData/modify_mobiles";//手机换绑
|
||||
public static final String BIND_MOBILE = "/api/UserData/bind_mobile";//手机绑定
|
||||
|
||||
|
||||
|
||||
@@ -23,6 +23,7 @@ import java.util.List;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.locks.ReentrantLock;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import okhttp3.Call;
|
||||
import okhttp3.Callback;
|
||||
@@ -40,6 +41,7 @@ public class GiftAnimView extends FrameLayout implements GiftSvgaView.OnAnimatio
|
||||
private ReentrantLock lock = new ReentrantLock();
|
||||
private List<String> giftArray = new ArrayList<>();
|
||||
@Setter
|
||||
@Getter
|
||||
public ExecutorService queue;
|
||||
private Context mContext;
|
||||
private boolean isOnece;
|
||||
@@ -225,17 +227,19 @@ public class GiftAnimView extends FrameLayout implements GiftSvgaView.OnAnimatio
|
||||
public void openOrCloseEffectViewWith(boolean isShow) {
|
||||
this.isShow = isShow;
|
||||
removeSvgaQueueData();
|
||||
|
||||
playerMp4View.stopPlay();
|
||||
playerMp4View.setVisibility(View.GONE);
|
||||
if(playerMp4View!=null) {
|
||||
playerMp4View.stopPlay();
|
||||
playerMp4View.setVisibility(View.GONE);
|
||||
}
|
||||
setVisibility(isShow ? View.VISIBLE : View.GONE);
|
||||
}
|
||||
|
||||
public void stopPlay() {
|
||||
removeSvgaQueueData();
|
||||
|
||||
playerMp4View.stopPlay();
|
||||
playerMp4View.setVisibility(View.GONE);
|
||||
if(playerMp4View!=null) {
|
||||
playerMp4View.stopPlay();
|
||||
playerMp4View.setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -98,6 +98,13 @@ public class QXGiftPlayerManager {
|
||||
}
|
||||
|
||||
public void displayFullEffectView1(List<String> stringList){
|
||||
if (getDefaultFullEffectView().getQueue() == null){
|
||||
// 创建专用线程池替代GCD队列
|
||||
ExecutorService queue = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS,
|
||||
new LinkedBlockingQueue<Runnable>(),
|
||||
Executors.defaultThreadFactory());
|
||||
fullEffectView.setQueue(queue);
|
||||
}
|
||||
getDefaultFullEffectView().displayEffectView1(stringList);
|
||||
}
|
||||
|
||||
|
||||
@@ -544,7 +544,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_3"
|
||||
android:gravity="center"
|
||||
android:text="抽十次"
|
||||
android:text="抽五次"
|
||||
android:textSize="@dimen/sp_12" />
|
||||
|
||||
<TextView
|
||||
@@ -573,7 +573,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_3"
|
||||
android:gravity="center"
|
||||
android:text="抽百次"
|
||||
android:text="抽八次"
|
||||
android:textSize="@dimen/sp_12" />
|
||||
|
||||
<TextView
|
||||
|
||||
@@ -122,8 +122,10 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="0dp"
|
||||
android:layout_marginTop="14dp"
|
||||
android:ellipsize="end"
|
||||
android:maxLines="7"
|
||||
tools:text="为什么会有这篇文章呢,是因为之前关于 TabLayout 的使用陆陆续续也写了好几篇了,感觉比较分散,且不成体系,写这篇文章的目的就是希望能把各种效果的实现一次性讲齐,所以也有了标题的「看这篇就够了」。
|
||||
TabLayout作为导航组件来说,使用场景非常的多,也意味着要满足各种各样的需求。
|
||||
在效果实现上,有同学会选择自定义 View 来做,定制性高,但易用性、稳定性、维护性不敢保证,使用官方组件能避免这些不确定性,一是开源,有很多大佬共建,会不停的迭代;二是经过大型 app 验证,比如 google play;有了这两点,基本可以放心大胆的使用官方组件了。
|
||||
那可能有的同学又会说,道理我都懂,可是不满足需求啊,只能自定义了。是的,早期的 api 确实不够丰富,在某些需求的实现上显得捉襟见肘,但是 google 也在不断的迭代,目前为止,常见的样式都能满足。"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="14sp"
|
||||
/>
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintVertical_bias="0.0"
|
||||
android:src="@mipmap/jiaoy"/>
|
||||
|
||||
<!-- 头像框,与头像大小相同,覆盖在头像上 -->
|
||||
|
||||
BIN
BaseModule/src/main/res/mipmap-hdpi/day_task.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 4.6 KiB |
BIN
BaseModule/src/main/res/mipmap-hdpi/hourly_djs.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
BaseModule/src/main/res/mipmap-hdpi/hourly_top_bj.png
Normal file
|
After Width: | Height: | Size: 196 KiB |
BIN
BaseModule/src/main/res/mipmap-hdpi/me_test.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 626 B |
BIN
BaseModule/src/main/res/mipmap-hdpi/rank_im_t1.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
BaseModule/src/main/res/mipmap-hdpi/rank_im_t2.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
BaseModule/src/main/res/mipmap-hdpi/rank_im_t3.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
BaseModule/src/main/res/mipmap-xhdpi/day_task.png
Normal file
|
After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 7.0 KiB |
BIN
BaseModule/src/main/res/mipmap-xhdpi/hourly_djs.png
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
BaseModule/src/main/res/mipmap-xhdpi/hourly_top_bj.png
Normal file
|
After Width: | Height: | Size: 301 KiB |
BIN
BaseModule/src/main/res/mipmap-xhdpi/me_test.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 596 B |
BIN
BaseModule/src/main/res/mipmap-xhdpi/rank_im_t1.png
Normal file
|
After Width: | Height: | Size: 64 KiB |
|
Before Width: | Height: | Size: 2.9 KiB |
BIN
BaseModule/src/main/res/mipmap-xhdpi/rank_im_t2.png
Normal file
|
After Width: | Height: | Size: 48 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
BIN
BaseModule/src/main/res/mipmap-xhdpi/rank_im_t3.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 2.3 KiB |
BIN
BaseModule/src/main/res/mipmap-xxhdpi/day_task.png
Normal file
|
After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 12 KiB |
BIN
BaseModule/src/main/res/mipmap-xxhdpi/hourly_djs.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 1.7 KiB |
BIN
BaseModule/src/main/res/mipmap-xxhdpi/hourly_top_bj.png
Normal file
|
After Width: | Height: | Size: 554 KiB |
|
Before Width: | Height: | Size: 30 KiB |
BIN
BaseModule/src/main/res/mipmap-xxhdpi/me_test.png
Normal file
|
After Width: | Height: | Size: 3.8 KiB |
|
Before Width: | Height: | Size: 1.1 KiB |
BIN
BaseModule/src/main/res/mipmap-xxhdpi/rank_im_t1.png
Normal file
|
After Width: | Height: | Size: 133 KiB |
BIN
BaseModule/src/main/res/mipmap-xxhdpi/rank_im_t2.png
Normal file
|
After Width: | Height: | Size: 100 KiB |
BIN
BaseModule/src/main/res/mipmap-xxhdpi/rank_im_t3.png
Normal file
|
After Width: | Height: | Size: 81 KiB |
|
Before Width: | Height: | Size: 107 KiB |
|
Before Width: | Height: | Size: 112 KiB |
@@ -10,7 +10,7 @@
|
||||
<string name="dressup">个性装扮</string>
|
||||
<string name="shopping">道具商城</string>
|
||||
<string name="backpack">我的背包</string>
|
||||
<string name="daily">每日任务</string>
|
||||
<string name="daily">任务</string>
|
||||
<string name="news">消息</string>
|
||||
<string name="setting_name">设置</string>
|
||||
<string name="me_family">我的家族</string>
|
||||
|
||||
@@ -8,9 +8,12 @@
|
||||
|
||||
<application android:theme="@style/AppTheme">
|
||||
<activity
|
||||
android:name=".TransparentActivity"
|
||||
android:theme="@style/TransparentActivityTheme"
|
||||
android:name=".activity.user.activity.MobilePhoneActivity"
|
||||
android:exported="false" />
|
||||
<activity
|
||||
android:name=".TransparentActivity"
|
||||
android:exported="false"
|
||||
android:theme="@style/TransparentActivityTheme" />
|
||||
<activity
|
||||
android:name=".activity.user.activity.TotalRevenueActivity"
|
||||
android:exported="false" />
|
||||
|
||||
@@ -28,12 +28,13 @@ import com.xscm.moduleutil.listener.MessageListenerSingleton
|
||||
import com.xscm.moduleutil.utils.CustomMsgCode
|
||||
import io.reactivex.disposables.Disposable
|
||||
import org.json.JSONObject
|
||||
import java.io.File
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
|
||||
open class Application : CommonAppContext() {
|
||||
|
||||
var APP_CONENT = ""
|
||||
var APP_CONTENT = ""
|
||||
|
||||
var LOGUTILS_SAVE_PATH = ""
|
||||
var CRASHUTILS_SAVE_PATH = ""
|
||||
@@ -60,9 +61,13 @@ open class Application : CommonAppContext() {
|
||||
|
||||
override fun onCreate() {
|
||||
super.onCreate()
|
||||
APP_CONENT = getExternalFilesDir("APP_CONTENT")?.absolutePath.toString()
|
||||
LOGUTILS_SAVE_PATH = getExternalFilesDir("APP_CONTENT/APP_LOG")?.absolutePath.toString()
|
||||
CRASHUTILS_SAVE_PATH = getExternalFilesDir("APP_CONTENT/APP_CRASH")?.absolutePath.toString()
|
||||
// 应用内部存储 filesDir 目录的根路径
|
||||
APP_CONTENT = File(filesDir, "APP_CONTENT").absolutePath
|
||||
// 内部存储下的日志目录
|
||||
LOGUTILS_SAVE_PATH = File(filesDir, "APP_CONTENT/APP_LOG").absolutePath
|
||||
// 内部存储下的崩溃日志目录
|
||||
CRASHUTILS_SAVE_PATH = File(filesDir, "APP_CONTENT/APP_CRASH").absolutePath
|
||||
|
||||
// 初始化单例实例
|
||||
instance = this
|
||||
|
||||
@@ -280,7 +285,7 @@ open class Application : CommonAppContext() {
|
||||
}
|
||||
|
||||
fun getAppContent(): String {
|
||||
return APP_CONENT
|
||||
return APP_CONTENT
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ public class LoginPresenter extends BasePresenter<LoginContacter.View> implement
|
||||
|
||||
@Override
|
||||
public void sendCode(String phoneNumber, int type) {
|
||||
api.sendCode(phoneNumber, "default", new BaseObserver<Object>() {
|
||||
api.sendCode(phoneNumber, "default", new BaseObserver<String>() {
|
||||
|
||||
@Override
|
||||
public void onSubscribe(Disposable d) {
|
||||
@@ -40,7 +40,7 @@ public class LoginPresenter extends BasePresenter<LoginContacter.View> implement
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(Object o) {
|
||||
public void onNext(String o) {
|
||||
MvpRef.get().sendCodeSuccess1(o + "");
|
||||
}
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.xscm.moduleutil.activity.IPresenter;
|
||||
import com.xscm.moduleutil.activity.IView;
|
||||
import com.xscm.moduleutil.bean.RedPacketInfo;
|
||||
import com.xscm.moduleutil.bean.RoomCharmRankBean;
|
||||
import com.xscm.moduleutil.bean.TasksMessage;
|
||||
import com.xscm.moduleutil.bean.UserOnlineStatusBean;
|
||||
import com.xscm.moduleutil.bean.room.RoomInfoResp;
|
||||
import com.xscm.moduleutil.bean.room.RoomOnline;
|
||||
@@ -52,6 +53,8 @@ public class RoomContacts {
|
||||
void findRoom();
|
||||
|
||||
void roomRedPackets(List<RedPacketInfo> list);
|
||||
|
||||
void getTasksMessage(TasksMessage data);
|
||||
}
|
||||
|
||||
public interface IRoomPre extends IPresenter {
|
||||
@@ -73,7 +76,7 @@ public class RoomContacts {
|
||||
|
||||
void getCharmRank(String roomId);
|
||||
|
||||
void changeSong(String roomId, String now_did);
|
||||
void changeSong(String roomId, String now_did,String isAutoNext);
|
||||
|
||||
void hostUserPit(String roomId, String pitNumber, String userId, String type);
|
||||
|
||||
@@ -93,5 +96,7 @@ public class RoomContacts {
|
||||
void auctionDelay(String auctionId);
|
||||
|
||||
void roomRedPackets(String roomId);
|
||||
|
||||
void getTasksMessage();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -94,6 +94,9 @@ public class FriendshipRoomFragment extends BaseRoomFragment<FriendshipRoomPrese
|
||||
FriendshipRoomFragment fragment = new FriendshipRoomFragment(roomInfoResp);
|
||||
return fragment;
|
||||
}
|
||||
public void upRoomInfoResp(RoomInfoResp roomInfoResp) {
|
||||
this.roomInfoResp = roomInfoResp;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void endFriend(FriendUserBean friendUserBean) {
|
||||
@@ -924,15 +927,8 @@ public class FriendshipRoomFragment extends BaseRoomFragment<FriendshipRoomPrese
|
||||
}
|
||||
if (!isHaveMe) {
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).setrlMic(false);
|
||||
((RoomActivity) getActivity()).ivWheatFeeding(com.xscm.moduleutil.R.mipmap.room_wheat_feeding);
|
||||
AgoraManager.getInstance().setLocalAudioEnabled(false, SpUtil.getUserId() + "");
|
||||
}
|
||||
} else {
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).setrlMic(true);
|
||||
((RoomActivity) getActivity()).ivWheatFeeding(com.xscm.moduleutil.R.mipmap.room_wheat_feeding_up);
|
||||
}
|
||||
}
|
||||
configPowerBtn();
|
||||
}
|
||||
|
||||
@@ -68,7 +68,9 @@ public class MusicSongListFragment extends BaseMvpFragment<RequestPresenter, Fra
|
||||
if (page == 1) {
|
||||
adapter.setNewData(musicSongBeans);
|
||||
} else {
|
||||
adapter.addData(musicSongBeans);
|
||||
if (musicSongBeans != null) {
|
||||
musicSongBeans.size();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -115,7 +115,7 @@ public class RequestFragment extends BaseMvpFragment<RequestPresenter, FragmentR
|
||||
|
||||
@Override
|
||||
protected void initData() {
|
||||
mBinding.editQuery.setText(SpUtil.getMusicName());
|
||||
// mBinding.editQuery.setText(SpUtil.getMusicName());
|
||||
|
||||
mBinding.editQuery.addTextChangedListener(new TextWatcher() {
|
||||
@Override
|
||||
@@ -130,8 +130,10 @@ public class RequestFragment extends BaseMvpFragment<RequestPresenter, FragmentR
|
||||
@Override
|
||||
public void afterTextChanged(Editable s) {
|
||||
input = s.toString();
|
||||
SpUtil.setMusicName( input);
|
||||
AgoraManager.getInstance().searchMusic(input, 1);
|
||||
// SpUtil.setMusicName( input);
|
||||
if (!input.isEmpty()) {
|
||||
AgoraManager.getInstance().searchMusic(input, 1);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -105,6 +105,9 @@ public class RoomAuctionFragment extends BaseMvpFragment<RoomAuctionPresenterTow
|
||||
// 确保 overlay buttons 已初始化
|
||||
initOverlayButtons();
|
||||
}
|
||||
public void upRoomInfoResp(RoomInfoResp roomInfoResp) {
|
||||
this.roomInfoResp = roomInfoResp;
|
||||
}
|
||||
|
||||
/// 更新数据
|
||||
public void roomInfoUpdate(RoomInfoResp resp) {
|
||||
|
||||
@@ -29,6 +29,7 @@ import com.xscm.moduleutil.base.CommonAppContext;
|
||||
import com.xscm.moduleutil.bean.RedPacketInfo;
|
||||
import com.xscm.moduleutil.bean.RoomCharmRankBean;
|
||||
import com.xscm.moduleutil.bean.RoomMessageEvent;
|
||||
import com.xscm.moduleutil.bean.TasksMessage;
|
||||
import com.xscm.moduleutil.bean.UserOnlineStatusBean;
|
||||
import com.xscm.moduleutil.bean.room.EMMessageInfo;
|
||||
import com.xscm.moduleutil.bean.room.FriendInfo;
|
||||
@@ -133,7 +134,6 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
|
||||
@Override
|
||||
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
|
||||
setRoomSeatViewType();
|
||||
upRoomInfo(mRoomInfoResp);
|
||||
}
|
||||
@@ -447,75 +447,6 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
|
||||
}
|
||||
|
||||
private Fragment currentFragment = null;
|
||||
private boolean isReplacing = false;
|
||||
|
||||
private int MAX_COUNT = 3;
|
||||
private int retryCount = 0;
|
||||
|
||||
@SuppressLint("CheckResult")
|
||||
private void switchFragment(Fragment newFragment, int containerId, boolean isAddFail) {
|
||||
if (!isAdded() || newFragment == null) return;
|
||||
LogUtils.e("switchFragment attachA");
|
||||
FragmentTransaction ft = getChildFragmentManager().beginTransaction();
|
||||
|
||||
// 1. 添加新 Fragment
|
||||
if (!newFragment.isAdded()) {
|
||||
ft.add(containerId, newFragment);
|
||||
} else if (newFragment.getView() == null) {
|
||||
ft.attach(newFragment); // 确保 view 被创建
|
||||
LogUtils.e("switchFragment attach");
|
||||
}
|
||||
|
||||
// 2. 显示新 Fragment
|
||||
ft.show(newFragment);
|
||||
|
||||
// 3. 隐藏旧 Fragment
|
||||
if (currentFragment != null && currentFragment != newFragment) {
|
||||
ft.hide(currentFragment);
|
||||
}
|
||||
|
||||
ft.commitNowAllowingStateLoss(); // 立即提交
|
||||
|
||||
currentFragment = newFragment;
|
||||
|
||||
// 校验2:事务执行后,验证Fragment的核心状态
|
||||
// ① 是否真的附加到FragmentManager
|
||||
boolean isLoadSuccess = true;
|
||||
String errorMsg = null;
|
||||
// 更全面的检查
|
||||
if (!newFragment.isAdded()) {
|
||||
isLoadSuccess = false;
|
||||
errorMsg = "Fragment未附加到FragmentManager";
|
||||
} else if (newFragment.getView() == null) {
|
||||
isLoadSuccess = false;
|
||||
errorMsg = "Fragment View创建失败";
|
||||
} else if (!newFragment.isResumed()) {
|
||||
// 可选:检查是否至少执行到onResume
|
||||
// 注意:某些场景可能不需要这么严格的检查
|
||||
isLoadSuccess = false;
|
||||
errorMsg = "Fragment未进入Resumed状态";
|
||||
}
|
||||
LogUtils.e("switchFragment :" + errorMsg + ",isLoadSuccess:" + isLoadSuccess);
|
||||
// 处理失败情况
|
||||
if (!isLoadSuccess) {
|
||||
Log.e("FragmentCheck", errorMsg);
|
||||
|
||||
if (retryCount == MAX_COUNT) {
|
||||
LogUtils.e("switchFragment retryCount == MAX_COUNT");
|
||||
return;
|
||||
}
|
||||
// 可以考虑自动恢复或通知用户
|
||||
Observable.timer(1000, TimeUnit.MILLISECONDS).observeOn(AndroidSchedulers.mainThread()).subscribe(
|
||||
aLong -> {
|
||||
retryCount++;
|
||||
LogUtils.e("switchFragment retry");
|
||||
switchFragment(newFragment, containerId, true);
|
||||
}
|
||||
);
|
||||
return;
|
||||
}
|
||||
startActivity(new Intent(ActivityUtils.getTopActivity(), TransparentActivity.class));
|
||||
}
|
||||
|
||||
@SuppressLint("CheckResult")
|
||||
private void performFragmentReplacement(Fragment newFragment) {
|
||||
@@ -577,28 +508,6 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
|
||||
}
|
||||
|
||||
|
||||
public void updateWheatStatus(RoomPitBean roomPitBean, int pit, boolean isOccupied, boolean isMine) {
|
||||
mRoomInfoResp.getRoom_info().getPit_list().set(pit - 1, roomPitBean);
|
||||
if (isOccupied && isMine) {//上麦,并且是自己
|
||||
mRoomInfoResp.getUser_info().setPit_number(pit);
|
||||
((RoomActivity) getActivity()).switchMic(2);
|
||||
} else if (!isOccupied && isMine) { //下麦,并且是自己
|
||||
mRoomInfoResp.getUser_info().setPit_number(0);
|
||||
}
|
||||
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).upRoomInfo(mRoomInfoResp);
|
||||
}
|
||||
}
|
||||
|
||||
//误导
|
||||
public void updateSeatViewExchangedWithPitArray(RoomInfoResp roomInfoResp) {
|
||||
mRoomInfoResp = roomInfoResp;
|
||||
setRoomSeatViewType();
|
||||
loadSubFragment(qxRoomSeatViewType);
|
||||
updateChildFragmentViews();
|
||||
}
|
||||
|
||||
//1003 1004
|
||||
public void upRoomInfoData(RoomInfoResp roomInfoResp) {
|
||||
this.mRoomInfoResp = roomInfoResp;
|
||||
@@ -763,6 +672,11 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getTasksMessage(TasksMessage data) {
|
||||
|
||||
}
|
||||
|
||||
|
||||
public void getVoiceStatus(RoomAuction.AuctionUserBean auctionUserBean, List<RoomAuction.AuctionListBean> auctionListBeans, String user_id) {
|
||||
boolean haveMe = false;
|
||||
@@ -787,19 +701,12 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
|
||||
RoomActivity roomActivity = (RoomActivity) getActivity();
|
||||
if (!haveMe) {
|
||||
AgoraManager.getInstance().ClientRole(false);
|
||||
roomActivity.setrlMic(false);
|
||||
AgoraManager.getInstance().setLocalAudioEnabled(false, SpUtil.getUserId() + "");
|
||||
} else {
|
||||
roomActivity.setrlMic(true);
|
||||
if (AgoraManager.getInstance().isLocalAudioEnabled()) {
|
||||
roomActivity.ivMic(com.xscm.moduleutil.R.mipmap.room_microphone);
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (!user_id.equals(SpUtil.getUserId() + "") && getActivity() instanceof RoomActivity) {
|
||||
AgoraManager.getInstance().ClientRole(false);
|
||||
((RoomActivity) getActivity()).setrlMic(false);
|
||||
AgoraManager.getInstance().setLocalAudioEnabled(false, SpUtil.getUserId() + "");
|
||||
}
|
||||
}
|
||||
@@ -825,34 +732,40 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
|
||||
switch (qxRoomSeatViewType) {
|
||||
case KTV:
|
||||
if (ktvFragment == currentFragment) {
|
||||
ktvFragment.upRoomInfoResp(mRoomInfoResp);
|
||||
handleKtvEvent(messageEvent);
|
||||
}
|
||||
break;
|
||||
|
||||
case NORMAL:
|
||||
if (singSongFragment == currentFragment) {
|
||||
singSongFragment.upRoomInfoResp(mRoomInfoResp);
|
||||
handleSingSongEvent(messageEvent);
|
||||
}
|
||||
break;
|
||||
|
||||
case AUCTION:
|
||||
if (roomAuctionFragment == currentFragment) {
|
||||
roomAuctionFragment.upRoomInfoResp(mRoomInfoResp);
|
||||
handleAuctionEvent(messageEvent);
|
||||
}
|
||||
break;
|
||||
|
||||
case FRIEND:
|
||||
if (friendshipRoomFragment == currentFragment) {
|
||||
friendshipRoomFragment.upRoomInfoResp(mRoomInfoResp);
|
||||
handleFriendshipEvent(messageEvent);
|
||||
}
|
||||
break;
|
||||
case JUKEBOX:
|
||||
if (roomJukeboxFragment == currentFragment) {
|
||||
roomJukeboxFragment.upRoomInfoResp(mRoomInfoResp);
|
||||
handleJukeboxEvent(messageEvent);
|
||||
}
|
||||
break;
|
||||
case SIGNCONTRACT:
|
||||
if (mentorShipFragment == currentFragment) {
|
||||
mentorShipFragment.roomInfoUpdate(mRoomInfoResp);
|
||||
handleMentorshipEvent(messageEvent);
|
||||
}
|
||||
break;
|
||||
@@ -865,7 +778,6 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
|
||||
}
|
||||
|
||||
private void handleMentorshipEvent(RoomMessageEvent messageEvent) {
|
||||
mentorShipFragment.roomInfoUpdate(mRoomInfoResp);
|
||||
switch (messageEvent.getMsgType()) {
|
||||
case 1003:
|
||||
mentorShipFragment.event1003(messageEvent);
|
||||
|
||||
@@ -105,10 +105,6 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
protected void initView() {
|
||||
initPopupWindow();
|
||||
mBinding.guestContainer.setVisibility(GONE);
|
||||
// adapter = new RoomJukeboxAdapter(R.layout.item_jukebox);
|
||||
// GridLayoutManager layoutManager = new GridLayoutManager(getContext(), 4);
|
||||
// mBinding.rvJukebox.setLayoutManager(layoutManager);
|
||||
// mBinding.rvJukebox.setAdapter(adapter);
|
||||
|
||||
viewList.clear();
|
||||
viewList.add(mBinding.wheatView1);
|
||||
@@ -145,7 +141,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
if (((RoomActivity) ActivityUtils.getTopActivity()).getHostUser() < 4) {
|
||||
if (!isFastDoubleClick("online_dialog", finalI + 1 + "")) {
|
||||
if (getActivity() != null && getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity)getActivity()).showUserListDialog(roomId, finalI + 1 + "", roomInfoResp.getUser_info(), roomInfoResp, getChildFragmentManager());
|
||||
((RoomActivity) getActivity()).showUserListDialog(roomId, finalI + 1 + "", roomInfoResp.getUser_info(), roomInfoResp, getChildFragmentManager());
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -161,7 +157,6 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
}
|
||||
|
||||
|
||||
|
||||
mBinding.wvZc.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
@@ -404,6 +399,28 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
return R.layout.fragment_jukebox;
|
||||
}
|
||||
|
||||
public void upRoomInfoResp(RoomInfoResp roomInfoResp) {
|
||||
this.roomInfoResp = roomInfoResp;
|
||||
|
||||
roomPitBeans.clear();
|
||||
for (int i = 0; i < roomInfoResp.getRoom_info().getPit_list().size(); i++) {
|
||||
RoomPitBean roomPitBean = roomInfoResp.getRoom_info().getPit_list().get(i);
|
||||
|
||||
if (!roomPitBean.getPit_number().equals("9") && !roomPitBean.getPit_number().equals("10")) {
|
||||
roomPitBeans.add(roomPitBean);
|
||||
if (roomPitBean.getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
roomPitBean.setIs_online(1);
|
||||
}
|
||||
viewList.get(i).setData(roomPitBean);
|
||||
} else if (roomPitBean.getPit_number().equals("9")) {
|
||||
// 确保视图的pitNumber与数据的pit_number匹配
|
||||
mBinding.wvZc.setRoomWheatNumber("9");
|
||||
mBinding.wvZc.isMentorShip(true);
|
||||
mBinding.wvZc.setData(roomPitBean);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void roomInfoUpdate(RoomInfoResp roomInfoResp) {
|
||||
this.roomInfoResp = roomInfoResp;
|
||||
@@ -428,9 +445,6 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
mBinding.wvZc.setRoomWheatNumber("9");
|
||||
mBinding.wvZc.isMentorShip(true);
|
||||
mBinding.wvZc.setData(roomPitBean);
|
||||
if (roomPitBean.getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
upMike(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -455,9 +469,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
}
|
||||
|
||||
String userId = String.valueOf(roomInfoResp.getSinger_info().getSong_info().getSinger_user_id());
|
||||
if (userId.equals(SpUtil.getUserId() + "")) {
|
||||
upMike(true);
|
||||
}
|
||||
|
||||
if (mBinding.wvZc.getUserId().equals(userId)) {
|
||||
mBinding.wvZc.pitBean.setImageType(true);
|
||||
mBinding.wvZc.setData(mBinding.wvZc.pitBean);
|
||||
@@ -515,33 +527,16 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
return;
|
||||
}
|
||||
|
||||
if (pitNumber.equals("9") || pitNumber.equals("10")) {
|
||||
RoomPitBean pitBean = new RoomPitBean();
|
||||
pitBean.setPit_number(pitNumber);
|
||||
pitBean.setUser_id(userId + "");
|
||||
pitBean.setAvatar(fromUserInfo.getAvatar());
|
||||
pitBean.setNickname(fromUserInfo.getNickname());
|
||||
pitBean.setSex(fromUserInfo.getSex() + "");
|
||||
pitBean.setCharm(fromUserInfo.getCharm());
|
||||
pitBean.setDress(fromUserInfo.getDress());
|
||||
pitBean.setIs_online(fromUserInfo.getIs_online());
|
||||
if (pitNumber.equals("9")) {
|
||||
int pitNumberA = Integer.parseInt(pitNumber);
|
||||
RoomPitBean pitBean = roomInfoResp.getRoom_info().getPit_list().get(pitNumberA - 1);
|
||||
// 确保视图的pitNumber与数据的pit_number匹配
|
||||
if (pitNumber.equals("9")) {
|
||||
mBinding.wvZc.setRoomWheatNumber("9");
|
||||
mBinding.wvZc.setData(pitBean);
|
||||
}
|
||||
mBinding.wvZc.setRoomWheatNumber("9");
|
||||
mBinding.wvZc.setData(pitBean);
|
||||
|
||||
} else {
|
||||
// 获取对应位置的bean并更新
|
||||
RoomPitBean pitBean = roomPitBeans.get(position);
|
||||
pitBean.setUser_id(userId + "");
|
||||
pitBean.setPit_number(pitNumber);
|
||||
pitBean.setAvatar(fromUserInfo.getAvatar());
|
||||
pitBean.setNickname(fromUserInfo.getNickname());
|
||||
pitBean.setSex(fromUserInfo.getSex() + "");
|
||||
pitBean.setCharm(fromUserInfo.getCharm());
|
||||
pitBean.setDress(fromUserInfo.getDress());
|
||||
pitBean.setIs_online(fromUserInfo.getIs_online());
|
||||
try {
|
||||
if (roomInfoResp.getSinger_info().getSong_info().getSinger_user_id() == userId) {
|
||||
pitBean.setImageType(true);
|
||||
@@ -552,16 +547,6 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
LogUtils.e("juke", e.getMessage());
|
||||
pitBean.setImageType(false);
|
||||
}
|
||||
if (pitBean.getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
if (getActivity() != null) {
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).setrlMic(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 使用set方法更新数据,然后通知适配器
|
||||
roomPitBeans.set(position, pitBean);
|
||||
viewList.get(position).setData(pitBean);
|
||||
}
|
||||
|
||||
@@ -578,79 +563,36 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
private void configGameOptionBtn() {
|
||||
if (myPitNumber == 9) {
|
||||
mBinding.imQg.setVisibility(VISIBLE);
|
||||
if (getActivity() != null) {
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).setrlMic(true);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
mBinding.imQg.setVisibility(GONE);
|
||||
if (getActivity() != null) {
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).setrlMic(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void event1004(RoomMessageEvent messageEvent) {
|
||||
boolean b = false;
|
||||
String pitNumber = messageEvent.getText().getPit_number();
|
||||
int userId = messageEvent.getText().getFromUserInfo().getUser_id();
|
||||
if (pitNumber.equals("9") || pitNumber.equals("10")) {
|
||||
RoomPitBean pitBean = new RoomPitBean();
|
||||
pitBean.setPit_number(pitNumber);
|
||||
pitBean.setUser_id("");
|
||||
pitBean.setAvatar("");
|
||||
pitBean.setNickname("");
|
||||
pitBean.setSex("");
|
||||
pitBean.setCharm("");
|
||||
if (pitNumber.equals("9")) {
|
||||
RoomJukeboxWheatView roomDefaultWheatView = mBinding.wvZc;
|
||||
roomDefaultWheatView.setRoomWheatNumber("9");
|
||||
roomDefaultWheatView.setData(pitBean);
|
||||
}
|
||||
if (pitNumber.equals("9")) {
|
||||
int pitNumberA = Integer.parseInt(pitNumber);
|
||||
RoomPitBean pitBean = roomInfoResp.getRoom_info().getPit_list().get(pitNumberA - 1);
|
||||
|
||||
RoomJukeboxWheatView roomDefaultWheatView = mBinding.wvZc;
|
||||
roomDefaultWheatView.setRoomWheatNumber("9");
|
||||
roomDefaultWheatView.setData(pitBean);
|
||||
|
||||
if (SpUtil.getUserId() == messageEvent.getText().getFromUserInfo().getUser_id()) {
|
||||
b = true;
|
||||
AgoraManager.getInstance().ClientRole(false);
|
||||
AgoraManager.getInstance().muteLocalAudioStream(true);
|
||||
} else {
|
||||
b = false;
|
||||
}
|
||||
|
||||
if (parentFragment != null) {
|
||||
parentFragment.updateWheatStatus(pitBean, Integer.parseInt(pitNumber), false, b);
|
||||
}
|
||||
} else {
|
||||
// 获取适配器数据
|
||||
int position = Integer.parseInt(pitNumber) - 1;
|
||||
|
||||
// 确保位置有效
|
||||
if (position < 0 || position >= roomPitBeans.size()) {
|
||||
return;
|
||||
}
|
||||
|
||||
// 获取对应位置的bean并更新
|
||||
RoomPitBean pitBean = roomPitBeans.get(position);
|
||||
pitBean.setUser_id("");
|
||||
pitBean.setPit_number(pitNumber);
|
||||
pitBean.setAvatar("");
|
||||
pitBean.setNickname("");
|
||||
pitBean.setSex("");
|
||||
pitBean.setCharm("");
|
||||
pitBean.setDress("");
|
||||
pitBean.setImageType(false);
|
||||
// 使用set方法更新数据,然后通知适配器
|
||||
roomPitBeans.set(position, pitBean);
|
||||
viewList.get(position).setData(pitBean);
|
||||
if (SpUtil.getUserId() == userId) {
|
||||
if (getActivity() != null) {
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).setrlMic(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (userId == SpUtil.getUserId()) {
|
||||
myPitNumber = 0;
|
||||
@@ -669,44 +611,15 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
int toIndex = Integer.parseInt(toPit) - 1;
|
||||
|
||||
if (toPit.equals("9")) {
|
||||
RoomPitBean fromBean = viewList.get(fromIndex).pitBean;
|
||||
fromBean.setPit_number(toPit);
|
||||
fromBean.clone();
|
||||
//这里需要是重新的指向地址,不然会出现,虽然页面展示的是,但是在点击的时候,找不到对应的数据
|
||||
RoomPitBean pitBean = fromBean.clone();
|
||||
|
||||
mBinding.wvZc.setData(pitBean);
|
||||
roomInfoResp.getRoom_info().getPit_list().set(8, pitBean);
|
||||
|
||||
|
||||
if (fromBean.getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
mBinding.wvZc.setData(roomInfoResp.getRoom_info().getPit_list().get(toIndex));
|
||||
if (roomInfoResp.getRoom_info().getPit_list().get(toIndex).getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
myPitNumber = 9;
|
||||
configGameOptionBtn();
|
||||
}
|
||||
|
||||
RoomPitBean temp = viewList.get(fromIndex).pitBean;
|
||||
temp.setUser_id("");
|
||||
temp.setAvatar("");
|
||||
temp.setNickname("");
|
||||
temp.setSex("");
|
||||
temp.setCharm("");
|
||||
temp.setDress("");
|
||||
temp.setImageType(false);
|
||||
temp.setPit_number(fromPit);
|
||||
roomInfoResp.getRoom_info().getPit_list().set(fromIndex, temp);
|
||||
roomPitBeans.set(fromIndex, temp);
|
||||
viewList.get(fromIndex).setData(temp);
|
||||
viewList.get(fromIndex).setData(roomPitBeans.get(fromIndex));
|
||||
} else {
|
||||
RoomPitBean fromBean = viewList.get(fromIndex).pitBean;
|
||||
fromBean.setPit_number(toPit);
|
||||
RoomPitBean toBean = viewList.get(toIndex).pitBean;
|
||||
toBean.setPit_number(fromPit);
|
||||
roomInfoResp.getRoom_info().getPit_list().set(fromIndex, toBean);
|
||||
roomInfoResp.getRoom_info().getPit_list().set(toIndex, fromBean);
|
||||
roomPitBeans.set(fromIndex, toBean);
|
||||
roomPitBeans.set(toIndex, fromBean);
|
||||
viewList.get(fromIndex).setData(toBean);
|
||||
viewList.get(toIndex).setData(fromBean);
|
||||
viewList.get(fromIndex).setData(roomPitBeans.get(fromIndex));
|
||||
viewList.get(toIndex).setData(roomPitBeans.get(toIndex));
|
||||
}
|
||||
LogUtils.e("huanmai2", mBinding.wvZc.pitBean);
|
||||
}
|
||||
@@ -753,9 +666,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
mBinding.tvNetName.setText("老板");
|
||||
songId = messageEvent.getText().getSong_info().getId();
|
||||
String userId = String.valueOf(messageEvent.getText().getSong_info().getSinger_user_id());
|
||||
if (userId.equals(SpUtil.getUserId() + "")) {
|
||||
upMike(true);
|
||||
}
|
||||
|
||||
|
||||
if (mBinding.wvZc.getUserId().equals(userId)) {
|
||||
mBinding.wvZc.pitBean.setImageType(false);
|
||||
@@ -781,14 +692,6 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
}
|
||||
|
||||
|
||||
// TODO: 2025/11/22 当在演唱位的时候,显示麦克风,当上麦的时候,也展示麦克风,
|
||||
private void upMike(boolean isBool) {
|
||||
if (getActivity() != null) {
|
||||
// 假设Activity有获取麦位数据的方法
|
||||
((RoomActivity) getActivity()).setrlMic(isBool);
|
||||
}
|
||||
}
|
||||
|
||||
public void event1035(RoomMessageEvent message) {
|
||||
|
||||
if (mBinding.wvZc.getUserId().equals(message.getText().getFromUserInfo().getUser_id() + "")) {
|
||||
|
||||
@@ -29,6 +29,7 @@ import com.xscm.moduleutil.bean.MusicSongBean;
|
||||
import com.xscm.moduleutil.bean.RedPacketInfo;
|
||||
import com.xscm.moduleutil.bean.RoomCharmRankBean;
|
||||
import com.xscm.moduleutil.bean.RoomMessageEvent;
|
||||
import com.xscm.moduleutil.bean.TasksMessage;
|
||||
import com.xscm.moduleutil.bean.UserInfo;
|
||||
import com.xscm.moduleutil.bean.UserOnlineStatusBean;
|
||||
import com.xscm.moduleutil.bean.room.RoomInfoResp;
|
||||
@@ -47,6 +48,7 @@ import com.xscm.moduleutil.widget.RoomKtvWheatView;
|
||||
import org.greenrobot.eventbus.Subscribe;
|
||||
import org.greenrobot.eventbus.ThreadMode;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
@@ -68,7 +70,7 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
private MusicSongBean musicSongBean;
|
||||
RoomFragment parentFragment;
|
||||
BaseQuickAdapter<RoomPitBean, BaseViewHolder> adapter;
|
||||
|
||||
private List<RoomPitBean> mSongPitList = new ArrayList<>();
|
||||
VolumeManager volumeManager;
|
||||
|
||||
public RoomKtvFragment() {
|
||||
@@ -85,6 +87,10 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
return fragment;
|
||||
}
|
||||
|
||||
public void upRoomInfoResp(RoomInfoResp roomInfoResp) {
|
||||
this.roomInfoResp = roomInfoResp;
|
||||
}
|
||||
|
||||
public void roomInfoUpdate(RoomInfoResp resp) {
|
||||
roomInfoResp = resp;
|
||||
initView();
|
||||
@@ -105,12 +111,12 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
|
||||
@Override
|
||||
public void onRefPitchUpdate(float refPitch, int numberOfRefPitches) {
|
||||
|
||||
mKaraokeView.setPitch(refPitch);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLineFinished(KaraokeView view, LyricsLineModel line, int score, int cumulativeScore, int index, int numberOfLines) {
|
||||
|
||||
LogUtils.e("onLineFinished :" + score + " " + cumulativeScore + " " + index + " " + numberOfLines);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -118,14 +124,9 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
if (roomInfoResp.getSong_user_info() != null) {
|
||||
if (roomInfoResp.getSong_user_info().getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).setRoleType(3, -1);
|
||||
((RoomActivity) getActivity()).switchMic(1);
|
||||
}
|
||||
|
||||
} else {
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).setRoleType(0, 0);
|
||||
}
|
||||
}
|
||||
did = roomInfoResp.getSong_user_info().getDid();
|
||||
if (roomInfoResp.getSong_user_info().getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
@@ -164,39 +165,29 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
if (roomPitBean.getPit_number().equals("9")) {
|
||||
RoomKtvWheatView roomDefaultWheatView = mBinding.muZc;
|
||||
roomDefaultWheatView.setData(roomPitBean);
|
||||
if (roomPitBean.getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).setRoleType(2, 9);
|
||||
// ((RoomActivity) getActivity()).switchMic(2);
|
||||
}
|
||||
}
|
||||
} else if (roomPitBean.getPit_number().equals("10")) {
|
||||
RoomKtvWheatView roomDefaultWheatView = mBinding.muJb;
|
||||
roomDefaultWheatView.setData(roomPitBean);
|
||||
if (roomPitBean.getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).setRoleType(2, 10);
|
||||
// ((RoomActivity) getActivity()).switchMic(2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (roomInfoResp.getSong_pit_list() != null && !roomInfoResp.getSong_pit_list().isEmpty()) {
|
||||
adapter.setNewData(roomInfoResp.getSong_pit_list());
|
||||
for (RoomPitBean roomPitBean : roomInfoResp.getSong_pit_list()) {
|
||||
if (roomPitBean.getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).setRoleType(3, Integer.parseInt(roomPitBean.getPit_number() != null ? roomPitBean.getPit_number() : "99"));
|
||||
((RoomActivity) getActivity()).switchMic(2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
mSongPitList.clear();
|
||||
if (roomInfoResp.getSong_pit_list() != null){
|
||||
mSongPitList.addAll(roomInfoResp.getSong_pit_list());
|
||||
}
|
||||
adapter.notifyDataSetChanged();
|
||||
sv();
|
||||
tzblChanged();
|
||||
|
||||
@@ -323,6 +314,7 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
mBinding.llTiaoyt.setOnClickListener(this::onClick);
|
||||
mBinding.llQg.setOnClickListener(this::onClick);
|
||||
mBinding.llSz.setOnClickListener(this::onClick);
|
||||
mSongPitList.clear();
|
||||
adapter = new BaseQuickAdapter<RoomPitBean, BaseViewHolder>(R.layout.item_room_charm_rank) {
|
||||
@Override
|
||||
protected void convert(BaseViewHolder helper, RoomPitBean item) {
|
||||
@@ -353,6 +345,7 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
});
|
||||
}
|
||||
};
|
||||
adapter.setNewData(mSongPitList);
|
||||
if (getActivity() != null && getActivity() instanceof RoomActivity) {
|
||||
Objects.requireNonNull(((RoomActivity) getActivity()).getBinding()).recyclerView.setAdapter(adapter);
|
||||
}
|
||||
@@ -549,7 +542,7 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
return;
|
||||
}
|
||||
AgoraManager.getInstance().stopMuisc();
|
||||
MvpPre.changeSong(roomInfoResp.getRoom_info().getRoom_id(), did);
|
||||
MvpPre.changeSong(roomInfoResp.getRoom_info().getRoom_id(), did,"0");
|
||||
} else if (id == R.id.ll_ds) {
|
||||
if (mBinding.muYc.pitBean.getUser_id() != null && !mBinding.muYc.pitBean.getUser_id().equals("") && !mBinding.muYc.pitBean.getUser_id().equals("0")) {
|
||||
UserInfo userInfo = new UserInfo();
|
||||
@@ -633,7 +626,13 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void roomInfoEvent(MusicPlayBean messageEvent) {
|
||||
mKaraokeView.setProgress(messageEvent.getPosition());
|
||||
|
||||
getActivity().runOnUiThread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mKaraokeView.setProgress(messageEvent.getPosition());
|
||||
}
|
||||
});
|
||||
qiegSta(messageEvent.getPosition());
|
||||
}
|
||||
|
||||
@@ -650,7 +649,7 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
double duration = Math.ceil(position / 1000);
|
||||
if (duration >= Double.parseDouble(musicSongBean.getDuration())) {
|
||||
AgoraManager.getInstance().stopMuisc();
|
||||
MvpPre.changeSong(roomInfoResp.getRoom_info().getRoom_id(), did);
|
||||
MvpPre.changeSong(roomInfoResp.getRoom_info().getRoom_id(), did,"1");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -689,32 +688,29 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
pitBean.setDress(messageEvent.getText().getSongInfo().getDress());
|
||||
roomDefaultWheatView.setData(pitBean);
|
||||
roomInfoResp.setSong_user_info(musicSongBean);
|
||||
|
||||
AgoraManager.getInstance();
|
||||
AgoraManager.stopMuisc();
|
||||
if (messageEvent.getText().getSongInfo().getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
AgoraManager.getInstance();
|
||||
AgoraManager.stopMuisc();
|
||||
LogUtils.e("推送过来的code", messageEvent.getText().getSongInfo().getSong_code());
|
||||
AgoraManager.getInstance().isPreload(Long.parseLong(messageEvent.getText().getSongInfo().getSong_code()), 1);
|
||||
setAgorVolumes();
|
||||
|
||||
} else {
|
||||
volumeManager.saveBz(SpUtil.getUserId() + "", true);
|
||||
volumeManager.clearCurrentVolumes();
|
||||
|
||||
if (AgoraManager.getInstance().isOnJoin()) {
|
||||
AgoraManager.getInstance().loadLrc(Long.parseLong(roomInfoResp.getSong_user_info().getSong_code()));
|
||||
}
|
||||
}
|
||||
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
if (messageEvent.getText().getSongInfo().getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
|
||||
((RoomActivity) getActivity()).setRoleType(3, -1);
|
||||
((RoomActivity) getActivity()).switchMic(1);
|
||||
|
||||
} else {
|
||||
if (roomInfoResp.getUser_info().getPit_number() > 0) {
|
||||
|
||||
} else {
|
||||
((RoomActivity) getActivity()).setRoleType(0, 0);
|
||||
((RoomActivity) getActivity()).switchMic(2);
|
||||
}
|
||||
}
|
||||
@@ -730,7 +726,6 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
pitBean.setUser_code("");
|
||||
mBinding.muYc.setData(pitBean);
|
||||
roomInfoResp.setSong_user_info(null);
|
||||
((RoomActivity) getActivity()).setRoleType(0, 0);
|
||||
did = "";
|
||||
mBinding.muName.setText("无");
|
||||
volumeManager.clearCurrentVolumes();
|
||||
@@ -742,68 +737,41 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
mBinding.muXName.setText("无");
|
||||
}
|
||||
}
|
||||
setAgorVolumes();
|
||||
sv();
|
||||
}
|
||||
|
||||
public void event1003(RoomMessageEvent messageEvent) {
|
||||
boolean b = false;
|
||||
if (messageEvent.getText().getPit_number().equals("9") || messageEvent.getText().getPit_number().equals("10")) {
|
||||
int pitNumber = Integer.parseInt(messageEvent.getText().getPit_number()) - 1;
|
||||
RoomPitBean pitBean = roomInfoResp.getRoom_info().getPit_list().get(pitNumber);
|
||||
|
||||
RoomPitBean pitBean = new RoomPitBean();
|
||||
pitBean.setPit_number(messageEvent.getText().getPit_number());
|
||||
pitBean.setUser_id(messageEvent.getText().getFromUserInfo().getUser_id() + "");
|
||||
pitBean.setAvatar(messageEvent.getText().getFromUserInfo().getAvatar());
|
||||
pitBean.setNickname(messageEvent.getText().getFromUserInfo().getNickname());
|
||||
pitBean.setSex(messageEvent.getText().getFromUserInfo().getSex() + "");
|
||||
pitBean.setCharm(messageEvent.getText().getFromUserInfo().getCharm());
|
||||
pitBean.setDress(messageEvent.getText().getFromUserInfo().getDress());
|
||||
pitBean.setIs_online(messageEvent.getText().getFromUserInfo().getIs_online());
|
||||
if (pitBean.getPit_number().equals("9")) {
|
||||
RoomKtvWheatView roomDefaultWheatView = mBinding.muZc;
|
||||
roomDefaultWheatView.setData(pitBean);
|
||||
// if (getActivity() instanceof RoomActivity) {
|
||||
// ((RoomActivity) getActivity()).ivSoundEffects(true);
|
||||
// }
|
||||
|
||||
} else if (pitBean.getPit_number().equals("10")) {
|
||||
RoomKtvWheatView roomDefaultWheatView = mBinding.muJb;
|
||||
roomDefaultWheatView.setData(pitBean);
|
||||
}
|
||||
if (SpUtil.getUserId() == messageEvent.getText().getFromUserInfo().getUser_id()) {
|
||||
b = true;
|
||||
AgoraManager.getInstance().ClientRole(true);
|
||||
AgoraManager.getInstance().muteLocalAudioStream(false);
|
||||
} else {
|
||||
b = false;
|
||||
}
|
||||
if (parentFragment != null) {
|
||||
parentFragment.updateWheatStatus(pitBean, Integer.parseInt(pitBean.getPit_number()), true, b);
|
||||
}
|
||||
} else {
|
||||
RoomPitBean pitBean = new RoomPitBean();
|
||||
pitBean.setPit_number(messageEvent.getText().getPit_number() != null ? messageEvent.getText().getPit_number() : "9999");
|
||||
pitBean.setUser_id(messageEvent.getText().getFromUserInfo().getUser_id() + "");
|
||||
pitBean.setAvatar(messageEvent.getText().getFromUserInfo().getAvatar());
|
||||
pitBean.setNickname(messageEvent.getText().getFromUserInfo().getNickname());
|
||||
pitBean.setSex(messageEvent.getText().getFromUserInfo().getSex() + "");
|
||||
pitBean.setCharm(messageEvent.getText().getFromUserInfo().getCharm());
|
||||
pitBean.setDress(messageEvent.getText().getFromUserInfo().getDress());
|
||||
pitBean.setIs_online(messageEvent.getText().getFromUserInfo().getIs_online());
|
||||
roomInfoResp.getSong_pit_list().add(pitBean);
|
||||
}
|
||||
adapter.setNewData(roomInfoResp.getSong_pit_list());
|
||||
mSongPitList.clear();
|
||||
if (roomInfoResp.getSong_pit_list() != null){
|
||||
mSongPitList.addAll(roomInfoResp.getSong_pit_list());
|
||||
}
|
||||
adapter.notifyDataSetChanged();
|
||||
|
||||
sv();
|
||||
}
|
||||
|
||||
public void event1004(RoomMessageEvent messageEvent) {
|
||||
boolean b = false;
|
||||
if (messageEvent.getText().getPit_number().equals("9") || messageEvent.getText().getPit_number().equals("10")) {
|
||||
RoomPitBean pitBean = new RoomPitBean();
|
||||
pitBean.setPit_number(messageEvent.getText().getPit_number());
|
||||
pitBean.setUser_id("");
|
||||
pitBean.setAvatar("");
|
||||
pitBean.setNickname("");
|
||||
pitBean.setSex("");
|
||||
pitBean.setCharm("");
|
||||
int pitNumber = Integer.parseInt(messageEvent.getText().getPit_number()) - 1;
|
||||
RoomPitBean pitBean = roomInfoResp.getRoom_info().getPit_list().get(pitNumber);
|
||||
if (pitBean.getPit_number().equals("9")) {
|
||||
RoomKtvWheatView roomDefaultWheatView = mBinding.muZc;
|
||||
roomDefaultWheatView.setData(pitBean);
|
||||
@@ -812,23 +780,15 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
roomDefaultWheatView.setData(pitBean);
|
||||
}
|
||||
if (SpUtil.getUserId() == messageEvent.getText().getFromUserInfo().getUser_id()) {
|
||||
b = true;
|
||||
AgoraManager.getInstance().ClientRole(false);
|
||||
AgoraManager.getInstance().muteLocalAudioStream(true);
|
||||
} else {
|
||||
b = false;
|
||||
}
|
||||
if (parentFragment != null) {
|
||||
parentFragment.updateWheatStatus(pitBean, Integer.parseInt(messageEvent.getText().getPit_number()), false, b);
|
||||
}
|
||||
} else {
|
||||
for (int i = 0; i < roomInfoResp.getSong_pit_list().size(); i++) {
|
||||
if (roomInfoResp.getSong_pit_list().get(i).getUser_id().equals(messageEvent.getText().getFromUserInfo().getUser_id() + "")) {
|
||||
roomInfoResp.getSong_pit_list().remove(i);
|
||||
break;
|
||||
}
|
||||
mSongPitList.clear();
|
||||
if (roomInfoResp.getSong_pit_list() != null){
|
||||
mSongPitList.addAll(roomInfoResp.getSong_pit_list());
|
||||
}
|
||||
adapter.setNewData(roomInfoResp.getSong_pit_list());
|
||||
adapter.notifyDataSetChanged();
|
||||
}
|
||||
sv();
|
||||
}
|
||||
@@ -844,10 +804,15 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
pitBean.setCharm("0");
|
||||
mBinding.muJb.setData(pitBean);
|
||||
|
||||
for (int i = 0; i < roomInfoResp.getSong_pit_list().size(); i++) {
|
||||
roomInfoResp.getSong_pit_list().get(i).setCharm("0");
|
||||
|
||||
mSongPitList.clear();
|
||||
if (roomInfoResp.getSong_pit_list() != null){
|
||||
for (int i = 0; i < roomInfoResp.getSong_pit_list().size(); i++) {
|
||||
roomInfoResp.getSong_pit_list().get(i).setCharm("0");
|
||||
}
|
||||
mSongPitList.addAll(roomInfoResp.getSong_pit_list());
|
||||
}
|
||||
adapter.setNewData(roomInfoResp.getSong_pit_list());
|
||||
adapter.notifyDataSetChanged();
|
||||
}
|
||||
|
||||
public void event1005(RoomMessageEvent messageEvent) {
|
||||
@@ -869,7 +834,11 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
}
|
||||
|
||||
// 更新麦位列表数据
|
||||
adapter.setNewData(roomInfoResp.getSong_pit_list());
|
||||
mSongPitList.clear();
|
||||
if (roomInfoResp.getSong_pit_list() != null){
|
||||
mSongPitList.addAll(roomInfoResp.getSong_pit_list());
|
||||
}
|
||||
adapter.notifyDataSetChanged();
|
||||
|
||||
}
|
||||
|
||||
@@ -939,7 +908,11 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
break;
|
||||
}
|
||||
}
|
||||
adapter.setNewData(roomInfoResp.getSong_pit_list());
|
||||
mSongPitList.clear();
|
||||
if (roomInfoResp.getSong_pit_list() != null){
|
||||
mSongPitList.addAll(roomInfoResp.getSong_pit_list());
|
||||
}
|
||||
adapter.notifyDataSetChanged();
|
||||
}
|
||||
|
||||
// TODO: 2025/9/12 在离线
|
||||
@@ -969,7 +942,11 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
break;
|
||||
}
|
||||
}
|
||||
adapter.setNewData(roomInfoResp.getSong_pit_list());
|
||||
mSongPitList.clear();
|
||||
if (roomInfoResp.getSong_pit_list() != null){
|
||||
mSongPitList.addAll(roomInfoResp.getSong_pit_list());
|
||||
}
|
||||
adapter.notifyDataSetChanged();
|
||||
}
|
||||
|
||||
public void event1035(RoomMessageEvent messageEvent) {
|
||||
@@ -1009,7 +986,11 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
roomInfoResp.getSong_pit_list().get(i).setDress(messageEvent.getText().getFromUserInfo().getDress());
|
||||
}
|
||||
}
|
||||
adapter.setNewData(roomInfoResp.getSong_pit_list());
|
||||
mSongPitList.clear();
|
||||
if (roomInfoResp.getSong_pit_list() != null){
|
||||
mSongPitList.addAll(roomInfoResp.getSong_pit_list());
|
||||
}
|
||||
adapter.notifyDataSetChanged();
|
||||
}
|
||||
|
||||
|
||||
@@ -1132,4 +1113,9 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getTasksMessage(TasksMessage data) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -40,6 +40,7 @@ import kotlinx.coroutines.SupervisorJob
|
||||
import kotlinx.coroutines.cancel
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.launch
|
||||
import retrofit2.http.POST
|
||||
|
||||
/**
|
||||
* 签约房
|
||||
@@ -73,8 +74,6 @@ class RoomMentorShipFragment(var mRoomInfoResp: RoomInfoResp?) :
|
||||
private val timer = CountdownTimer()
|
||||
private val scope = CoroutineScope(Dispatchers.Main + SupervisorJob())
|
||||
|
||||
private val startOrDelay = arrayOf("开始", "延时")
|
||||
|
||||
private var mUserInfo: RoomUserBean? = mRoomInfoResp?.user_info
|
||||
|
||||
private var dialogMentorShip: DialogMentorShip? = null
|
||||
@@ -188,6 +187,7 @@ class RoomMentorShipFragment(var mRoomInfoResp: RoomInfoResp?) :
|
||||
mBinding.tvTimeLeft.setOnClickListener(this)
|
||||
mBinding.tvTimeRight.setOnClickListener(this)
|
||||
mBinding.ivHelp.setOnClickListener(this)
|
||||
mBinding.tvTimeStart.setOnClickListener(this)
|
||||
|
||||
if (mRoomInfoResp?.sign_info?.sign_id != "-1") {
|
||||
mSignId = mRoomInfoResp?.sign_info?.sign_id
|
||||
@@ -233,11 +233,11 @@ class RoomMentorShipFragment(var mRoomInfoResp: RoomInfoResp?) :
|
||||
}
|
||||
|
||||
R.id.tv_time_left -> {
|
||||
if (mBinding.tvTimeLeft.text.toString() == startOrDelay[0]) {
|
||||
MvpPre.signStart(mRoomId, mSignPitBean?.user_id!!)
|
||||
} else {
|
||||
MvpPre.signDelay(mSignId!!, mRoomId)
|
||||
}
|
||||
MvpPre.signDelay(mSignId!!, mRoomId)
|
||||
}
|
||||
|
||||
R.id.tv_time_start ->{
|
||||
MvpPre.signStart(mRoomId, mSignPitBean?.user_id!!)
|
||||
}
|
||||
|
||||
R.id.tv_time_right -> {
|
||||
@@ -273,7 +273,6 @@ class RoomMentorShipFragment(var mRoomInfoResp: RoomInfoResp?) :
|
||||
private fun showBtn(isSignUser: Boolean = false) {
|
||||
activity?.runOnUiThread {
|
||||
if (isStart) {
|
||||
mBinding.tvTimeLeft.text = startOrDelay[1]
|
||||
mBinding.tvTime.visibility = View.VISIBLE
|
||||
mBinding.groupLeftPrice.visibility = View.VISIBLE
|
||||
if (getHostUser() < 4) {
|
||||
@@ -282,8 +281,6 @@ class RoomMentorShipFragment(var mRoomInfoResp: RoomInfoResp?) :
|
||||
mBinding.tvTimeRight.visibility = View.GONE
|
||||
}
|
||||
} else {
|
||||
mBinding.tvTimeLeft.text = startOrDelay[0]
|
||||
|
||||
mBinding.tvTimeRight.visibility = View.GONE
|
||||
mBinding.tvTime.visibility = View.GONE
|
||||
mBinding.tvJsq.visibility = View.GONE
|
||||
@@ -305,9 +302,19 @@ class RoomMentorShipFragment(var mRoomInfoResp: RoomInfoResp?) :
|
||||
"0"
|
||||
)
|
||||
) {
|
||||
mBinding.tvTimeLeft.visibility = View.VISIBLE
|
||||
if (isStart){
|
||||
mBinding.tvTimeLeft.visibility = View.VISIBLE
|
||||
mBinding.tvTimeStart.visibility = View.GONE
|
||||
}else{
|
||||
mBinding.tvTimeLeft.visibility = View.GONE
|
||||
mBinding.tvTimeStart.visibility = View.VISIBLE
|
||||
}
|
||||
} else {
|
||||
mBinding.tvTimeLeft.visibility = View.GONE
|
||||
if (isStart){
|
||||
mBinding.tvTimeLeft.visibility = View.GONE
|
||||
}else{
|
||||
mBinding.tvTimeStart.visibility = View.GONE
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -336,11 +343,16 @@ class RoomMentorShipFragment(var mRoomInfoResp: RoomInfoResp?) :
|
||||
this.mRoomInfoResp = roomInfoResp
|
||||
mUserInfo = this.mRoomInfoResp?.user_info
|
||||
mRoomId = this.mRoomInfoResp?.room_info?.room_id!!
|
||||
showBtn()
|
||||
// showBtn()
|
||||
}
|
||||
|
||||
fun roomTypeSwitch(roomInfoResp: RoomInfoResp) {
|
||||
this.mRoomInfoResp = roomInfoResp
|
||||
//重新初始化
|
||||
if (isStart){
|
||||
stopTimer()
|
||||
isStart = false
|
||||
}
|
||||
mUserInfo = this.mRoomInfoResp?.user_info
|
||||
mRoomId = this.mRoomInfoResp?.room_info?.room_id!!
|
||||
initView()
|
||||
@@ -388,7 +400,6 @@ class RoomMentorShipFragment(var mRoomInfoResp: RoomInfoResp?) :
|
||||
|
||||
signTypeDialog?.show(0)
|
||||
|
||||
mBinding.tvTimeLeft.text = startOrDelay[1]
|
||||
mBinding.tvLeftPrice.text = currBodyValue
|
||||
mBinding.tvSignDay.visibility = View.VISIBLE
|
||||
mBinding.tvSignDay.text = "签约${signDay}天"
|
||||
@@ -483,6 +494,7 @@ class RoomMentorShipFragment(var mRoomInfoResp: RoomInfoResp?) :
|
||||
|
||||
// 在需要开始计时的地方调用
|
||||
private fun startTimer(milliseconds: Long) {
|
||||
LogUtils.e("startTimer: $milliseconds")
|
||||
isStart = true
|
||||
showBtn()
|
||||
// 启动计时器
|
||||
@@ -518,7 +530,7 @@ class RoomMentorShipFragment(var mRoomInfoResp: RoomInfoResp?) :
|
||||
private fun updateTimerDisplay(time: String) {
|
||||
// 在这里更新你的UI,比如:
|
||||
mBinding.tvTime.text = "倒计时 ${time}"
|
||||
LogUtils.e("updateTimerDisplay:" + mBinding.tvTime.text.toString() + "\n" + (mBinding.tvTime.visibility == View.VISIBLE))
|
||||
LogUtils.e("updateTimerDisplay: 倒计时 ${time} =====" + mBinding.tvTime.text.toString() + "\n" + (mBinding.tvTime.visibility == View.VISIBLE))
|
||||
}
|
||||
|
||||
// 延迟后重新开始计时
|
||||
|
||||
@@ -128,6 +128,10 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
|
||||
this.roomInfoResp = roomInfoResp;
|
||||
}
|
||||
|
||||
public void upRoomInfoResp(RoomInfoResp roomInfoResp) {
|
||||
this.roomInfoResp = roomInfoResp;
|
||||
}
|
||||
|
||||
public void upRoomInfo(RoomInfoResp roomInfoResp){
|
||||
this.roomInfoResp = roomInfoResp;
|
||||
upDataView();
|
||||
@@ -237,7 +241,6 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
|
||||
}
|
||||
|
||||
parentFragment = (RoomFragment) getParentFragment();
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1082,7 +1085,6 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
|
||||
wheatLayoutManager1.setUpData(message, 1);
|
||||
} else {
|
||||
wheatLayoutManager2.setUpData(message, 2);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1090,68 +1092,39 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
|
||||
|
||||
/// 推送的下麦1003
|
||||
public void event1003(RoomMessageEvent message) {
|
||||
boolean b = false;
|
||||
RoomPitBean pitBean = roomInfoResp.getRoom_info().getPit_list().get(Integer.parseInt(message.getText().getPit_number()) - 1);
|
||||
pitBean.setUser_id(message.getText().getFromUserInfo().getUser_id() + "");
|
||||
pitBean.setAvatar(message.getText().getFromUserInfo().getAvatar());
|
||||
pitBean.setNickname(message.getText().getFromUserInfo().getNickname());
|
||||
pitBean.setSex(message.getText().getFromUserInfo().getSex() + "");
|
||||
pitBean.setCharm(message.getText().getFromUserInfo().getCharm());
|
||||
pitBean.setDress(message.getText().getFromUserInfo().getDress());
|
||||
pitBean.setMic_cycle(message.getText().getFromUserInfo().getMic_cycle()!=null?message.getText().getFromUserInfo().getMic_cycle():"");
|
||||
roomInfoResp.getRoom_info().getPit_list().set(Integer.parseInt(message.getText().getPit_number()) - 1, pitBean);
|
||||
int pitNumber = Integer.parseInt(message.getText().getPit_number()) ;
|
||||
RoomPitBean pitBean = roomInfoResp.getRoom_info().getPit_list().get(pitNumber- 1);
|
||||
if (roomInfoRespPk == null || roomInfoRespPk.getPk_info() == null) {
|
||||
wheatLayoutSingManager.updateSingleWheat(pitBean, Integer.parseInt(message.getText().getPit_number()));
|
||||
wheatLayoutSingManager.updateSingleWheat(pitBean, pitNumber);
|
||||
} else {
|
||||
if (message.getText().getIs_pk() == null) {
|
||||
wheatLayoutManager1.updateSingleWheat(pitBean, Integer.parseInt(message.getText().getPit_number()), 1);
|
||||
wheatLayoutManager1.updateSingleWheat(pitBean,pitNumber, 1);
|
||||
} else {
|
||||
wheatLayoutManager2.updateSingleWheat(pitBean, Integer.parseInt(message.getText().getPit_number()), 2);
|
||||
wheatLayoutManager2.updateSingleWheat(pitBean, pitNumber, 2);
|
||||
}
|
||||
}
|
||||
// 通知父 Fragment
|
||||
if (SpUtil.getUserId() == message.getText().getFromUserInfo().getUser_id()) {
|
||||
b = true;
|
||||
AgoraManager.getInstance().ClientRole(true);
|
||||
AgoraManager.getInstance().muteLocalAudioStream(false);
|
||||
} else {
|
||||
b = false;
|
||||
}
|
||||
if (parentFragment != null) {
|
||||
parentFragment.updateWheatStatus(pitBean, Integer.parseInt(message.getText().getPit_number()), true, b);
|
||||
}
|
||||
}
|
||||
|
||||
/// 1004
|
||||
public void event1004(RoomMessageEvent message) {
|
||||
boolean b = false;
|
||||
RoomPitBean pitBean = roomInfoResp.getRoom_info().getPit_list().get(Integer.parseInt(message.getText().getPit_number()) - 1);
|
||||
pitBean.setUser_id("");
|
||||
pitBean.setAvatar("");
|
||||
pitBean.setNickname("");
|
||||
pitBean.setSex("");
|
||||
pitBean.setCharm("");
|
||||
pitBean.setDress("");
|
||||
pitBean.setMic_cycle("");
|
||||
roomInfoResp.getRoom_info().getPit_list().set(Integer.parseInt(message.getText().getPit_number()) - 1, pitBean);
|
||||
int pitNumber = Integer.parseInt(message.getText().getPit_number()) ;
|
||||
RoomPitBean pitBean = roomInfoResp.getRoom_info().getPit_list().get(pitNumber- 1);
|
||||
if (roomInfoRespPk == null || roomInfoRespPk.getPk_info() == null) {
|
||||
wheatLayoutSingManager.updateSingleWheat(pitBean, Integer.parseInt(message.getText().getPit_number()));
|
||||
wheatLayoutSingManager.updateSingleWheat(pitBean, pitNumber);
|
||||
} else {
|
||||
if (message.getText().getIs_pk() == null) {
|
||||
wheatLayoutManager1.updateSingleWheat(pitBean, Integer.parseInt(message.getText().getPit_number()), 1);
|
||||
wheatLayoutManager1.updateSingleWheat(pitBean, pitNumber, 1);
|
||||
} else {
|
||||
wheatLayoutManager2.updateSingleWheat(pitBean, Integer.parseInt(message.getText().getPit_number()), 2);
|
||||
wheatLayoutManager2.updateSingleWheat(pitBean, pitNumber, 2);
|
||||
}
|
||||
}
|
||||
if (SpUtil.getUserId() == message.getText().getFromUserInfo().getUser_id()) {
|
||||
b = true;
|
||||
AgoraManager.getInstance().ClientRole(false);
|
||||
AgoraManager.getInstance().muteLocalAudioStream(true);
|
||||
} else {
|
||||
b = false;
|
||||
}
|
||||
if (parentFragment != null) {
|
||||
parentFragment.updateWheatStatus(pitBean, Integer.parseInt(message.getText().getPit_number()), false, b);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1217,9 +1190,6 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
|
||||
MvpPre.postRoomInfo(message.getRoomId(), roomInfoResp.getUser_info().getPit_number() + "", 3);
|
||||
if (message.getText().getType() == 1) {
|
||||
MvpPre.postRoomInfo(message.getText().getRoom_id(), roomInfoResp.getUser_info().getPit_number() + "", 1);
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).setRoleType(5, -11);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@ import com.xscm.modulemain.activity.room.contacts.RoomContacts;
|
||||
import com.xscm.moduleutil.base.CommonAppContext;
|
||||
import com.xscm.moduleutil.bean.RedPacketInfo;
|
||||
import com.xscm.moduleutil.bean.RoomCharmRankBean;
|
||||
import com.xscm.moduleutil.bean.TasksMessage;
|
||||
import com.xscm.moduleutil.bean.UserOnlineStatusBean;
|
||||
import com.xscm.moduleutil.bean.room.RoomInfoResp;
|
||||
import com.xscm.moduleutil.bean.room.RoomOnline;
|
||||
@@ -17,6 +18,7 @@ import com.xscm.moduleutil.dialog.ConfirmDialog;
|
||||
import com.xscm.moduleutil.http.APIException;
|
||||
import com.xscm.moduleutil.http.BaseObserver;
|
||||
import com.xscm.moduleutil.http.RetrofitClient;
|
||||
import com.xscm.moduleutil.listener.MessageListenerSingleton;
|
||||
import com.xscm.moduleutil.presenter.BasePresenter;
|
||||
import com.xscm.moduleutil.rtc.AgoraManager;
|
||||
import com.xscm.moduleutil.utils.SpUtil;
|
||||
@@ -101,6 +103,7 @@ public class RoomPresenter extends BasePresenter<RoomContacts.View> implements R
|
||||
CommonAppContext.getInstance().playId.equals(roomId) ?"取消":"在想想",
|
||||
v -> {
|
||||
// 点击“确认”按钮时执行删除操作
|
||||
MessageListenerSingleton.getInstance().joinGroup(roomId);
|
||||
getRoomIn(roomId,"");
|
||||
},
|
||||
v -> {
|
||||
@@ -268,8 +271,8 @@ public class RoomPresenter extends BasePresenter<RoomContacts.View> implements R
|
||||
}
|
||||
|
||||
@Override
|
||||
public void changeSong(String roomId, String now_did) {
|
||||
api.changeSong(roomId, now_did, new BaseObserver<String>() {
|
||||
public void changeSong(String roomId, String now_did,String isAutoNext) {
|
||||
api.changeSong(roomId, now_did,isAutoNext, new BaseObserver<String>() {
|
||||
@Override
|
||||
public void onSubscribe(Disposable d) {
|
||||
addDisposable(d);
|
||||
@@ -462,4 +465,22 @@ public class RoomPresenter extends BasePresenter<RoomContacts.View> implements R
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getTasksMessage() {
|
||||
api.getTasksMessage(new BaseObserver<TasksMessage>(){
|
||||
|
||||
@Override
|
||||
public void onSubscribe(Disposable d) {
|
||||
addDisposable(d);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(TasksMessage s) {
|
||||
if (MvpRef==null)
|
||||
MvpRef=new WeakReference<>(mView);
|
||||
MvpRef.get().getTasksMessage(s);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.xscm.modulemain.activity.room.presenter;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import com.hjq.toast.ToastUtils;
|
||||
import com.xscm.modulemain.activity.room.contacts.RoomUserContacts;
|
||||
import com.xscm.moduleutil.bean.RelationCardBean;
|
||||
import com.xscm.moduleutil.bean.UserInfo;
|
||||
@@ -207,6 +208,7 @@ public class RoomUserPresenter extends BasePresenter<RoomUserContacts.View> impl
|
||||
if (MvpRef == null) {
|
||||
MvpRef = new WeakReference<>(mView);
|
||||
}
|
||||
ToastUtils.show(string);
|
||||
MvpRef.get().kickOutRoom();
|
||||
}
|
||||
});
|
||||
|
||||
@@ -37,7 +37,7 @@ public class ChangPassActivity extends BaseMvpActivity<ChangePasswordPresenter,
|
||||
|
||||
private void onClick(View view) {
|
||||
if (view.getId() == R.id.tv_send_code) {
|
||||
sendCodeSuccess2(userBean.getMobile());
|
||||
|
||||
if (MvpPre != null) {
|
||||
MvpPre.sendCode(userBean.getMobile(), "4");
|
||||
}
|
||||
@@ -108,7 +108,7 @@ public class ChangPassActivity extends BaseMvpActivity<ChangePasswordPresenter,
|
||||
|
||||
@Override
|
||||
public void sendCodeSuccess1(String phoneNumber) {
|
||||
|
||||
sendCodeSuccess2(userBean.getMobile());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -85,7 +85,7 @@ public class CreatedRoomActivity extends BaseMvpActivity<CreatedRoomPresenter, A
|
||||
public boolean onKeyDown(int keyCode, KeyEvent event) {
|
||||
if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) {
|
||||
// 拦截返回键,显示退出对话框而不是直接退出
|
||||
singleTaskToActivity(MyRoomActivity.class);
|
||||
// singleTaskToActivity(MyRoomActivity.class);
|
||||
finish();
|
||||
return true;
|
||||
}
|
||||
@@ -102,7 +102,7 @@ public class CreatedRoomActivity extends BaseMvpActivity<CreatedRoomPresenter, A
|
||||
@Override
|
||||
public void handleOnBackPressed() {
|
||||
// 拦截返回键,导航到个人中心页面而不是直接退出
|
||||
singleTaskToActivity(MyRoomActivity.class);
|
||||
// singleTaskToActivity(MyRoomActivity.class);
|
||||
finish();
|
||||
}
|
||||
});
|
||||
@@ -151,7 +151,7 @@ public class CreatedRoomActivity extends BaseMvpActivity<CreatedRoomPresenter, A
|
||||
mBinding.topBar.getIvBack().setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
singleTaskToActivity(MyRoomActivity.class);
|
||||
// singleTaskToActivity(MyRoomActivity.class);
|
||||
finish();
|
||||
}
|
||||
});
|
||||
@@ -296,7 +296,7 @@ public class CreatedRoomActivity extends BaseMvpActivity<CreatedRoomPresenter, A
|
||||
@Override
|
||||
public void checkTxtSuccess(String result) {
|
||||
// 拦截返回键,显示退出对话框而不是直接退出
|
||||
singleTaskToActivity(MyRoomActivity.class);
|
||||
// singleTaskToActivity(MyRoomActivity.class);
|
||||
finish();
|
||||
}
|
||||
|
||||
@@ -304,7 +304,7 @@ public class CreatedRoomActivity extends BaseMvpActivity<CreatedRoomPresenter, A
|
||||
public void addUserRoomSuccess(String roomId) {
|
||||
// ARouter.getInstance().build(ARouteConstants.LIVE_ROOM).withString("form", "创建房间").withString("roomId", roomId).navigation();
|
||||
// 拦截返回键,显示退出对话框而不是直接退出
|
||||
singleTaskToActivity(MyRoomActivity.class);
|
||||
// singleTaskToActivity(MyRoomActivity.class);
|
||||
finish();
|
||||
}
|
||||
|
||||
@@ -325,7 +325,7 @@ public class CreatedRoomActivity extends BaseMvpActivity<CreatedRoomPresenter, A
|
||||
@Override
|
||||
public void editRoom() {
|
||||
// 拦截返回键,显示退出对话框而不是直接退出
|
||||
singleTaskToActivity(MyRoomActivity.class);
|
||||
// singleTaskToActivity(MyRoomActivity.class);
|
||||
finish();
|
||||
}
|
||||
|
||||
|
||||
@@ -5,13 +5,24 @@ import android.annotation.SuppressLint;
|
||||
import android.app.Activity;
|
||||
import android.content.Intent;
|
||||
import android.text.TextUtils;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.recyclerview.widget.GridLayoutManager;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import androidx.viewpager2.widget.ViewPager2;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.alibaba.android.arouter.launcher.ARouter;
|
||||
import com.blankj.utilcode.util.ActivityUtils;
|
||||
import com.blankj.utilcode.util.LogUtils;
|
||||
import com.google.android.material.tabs.TabLayout;
|
||||
import com.google.android.material.tabs.TabLayoutMediator;
|
||||
import com.xscm.modulemain.Application;
|
||||
import com.xscm.modulemain.R;
|
||||
import com.xscm.modulemain.activity.room.activity.RoomActivity;
|
||||
@@ -40,7 +51,9 @@ import com.xscm.moduleutil.utils.SpUtil;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import io.reactivex.Observable;
|
||||
@@ -57,14 +70,15 @@ import kotlin.jvm.functions.Function0;
|
||||
public class DailyTasksActivity extends BaseMvpActivity<DailyTasksPresenter, ActivityDailyTasksBinding> implements DailyTasksConacts.View {
|
||||
|
||||
private TaskBoxAdapter mTaskBoxAdapter;
|
||||
private TaskSectionAdapter mTaskDataAdapter;
|
||||
|
||||
private TaskDataAdapter taskDataAdapter;
|
||||
|
||||
private List<GiftBoxBean.TaskDataBean> taskList = new ArrayList<>();
|
||||
|
||||
private boolean isJoinRoom = false;
|
||||
|
||||
private ViewPager2Adapter viewPager2Adapter;
|
||||
|
||||
private int currentTab = 0;
|
||||
|
||||
@Override
|
||||
protected DailyTasksPresenter bindPresenter() {
|
||||
return new DailyTasksPresenter(this, this);
|
||||
@@ -97,13 +111,22 @@ public class DailyTasksActivity extends BaseMvpActivity<DailyTasksPresenter, Act
|
||||
mBinding.rvTask.setLayoutManager(new GridLayoutManager(this, 2, GridLayoutManager.VERTICAL, false));
|
||||
mBinding.rvTask.setAdapter(mTaskBoxAdapter);
|
||||
|
||||
mBinding.rvTaskToday.setLayoutManager(new GridLayoutManager(this, 1));
|
||||
mTaskDataAdapter = new TaskSectionAdapter(taskList);
|
||||
mBinding.rvTaskToday.setAdapter(mTaskDataAdapter);
|
||||
|
||||
mTaskDataAdapter.setOnItemClickListener(new TaskSectionAdapter.OnItemClickListener() {
|
||||
mBinding.imGz.setOnClickListener(v -> {
|
||||
Intent intent = new Intent(this, WebViewActivity.class);
|
||||
intent.putExtra("url", WebUrlConstants.INSTANCE.getWEB_RULES_URL());
|
||||
intent.putExtra("title", "规则 ");
|
||||
startActivity(intent);
|
||||
});
|
||||
|
||||
mTaskBoxAdapter.setOnItemClickListener(position -> {
|
||||
GiftBoxBean.GiftBean item = mTaskBoxAdapter.getItem(position);
|
||||
MvpPre.dailyTasksOpenBox(item.getId());
|
||||
});
|
||||
|
||||
viewPager2Adapter = new ViewPager2Adapter(taskList, new ViewPager2Adapter.OnItemClickListener() {
|
||||
@Override
|
||||
public void onItemClick(GiftBoxBean.TaskDataBean taskItem, GiftBoxBean.TaskDataBean.DailyTasksBean item) {
|
||||
public void onItemClick(int position, GiftBoxBean.TaskDataBean taskItem, GiftBoxBean.TaskDataBean.DailyTasksBean item) {
|
||||
LogUtils.e("taskStatus:" + item.toString() + "\n taskItem:" + taskItem.toString());
|
||||
switch (item.getTask_status()) {
|
||||
case 1://未开始
|
||||
@@ -121,22 +144,56 @@ public class DailyTasksActivity extends BaseMvpActivity<DailyTasksPresenter, Act
|
||||
}
|
||||
}
|
||||
});
|
||||
mBinding.viewPager2.setAdapter(viewPager2Adapter);
|
||||
|
||||
|
||||
mBinding.imGz.setOnClickListener(v -> {
|
||||
Intent intent = new Intent(this, WebViewActivity.class);
|
||||
intent.putExtra("url", WebUrlConstants.INSTANCE.getWEB_RULES_URL());
|
||||
intent.putExtra("title", "规则 ");
|
||||
startActivity(intent);
|
||||
// 2. 设置 ViewPager2 的页面变化监听(联动 TabLayout)
|
||||
mBinding.viewPager2.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() {
|
||||
@Override
|
||||
public void onPageSelected(int position) {
|
||||
super.onPageSelected(position);
|
||||
currentTab = position;
|
||||
// 更新 TabLayout 的选中状态
|
||||
TabLayout.Tab selectedTab = mBinding.tabTitle.getTabAt(position);
|
||||
if (selectedTab != null) {
|
||||
selectedTab.select();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
mTaskBoxAdapter.setOnItemClickListener(position -> {
|
||||
GiftBoxBean.GiftBean item = mTaskBoxAdapter.getItem(position);
|
||||
MvpPre.dailyTasksOpenBox(item.getId());
|
||||
mBinding.tabTitle.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
|
||||
@Override
|
||||
public void onTabSelected(TabLayout.Tab tab) {
|
||||
View customView = tab.getCustomView();
|
||||
if (customView != null) {
|
||||
TextView textView = customView.findViewById(R.id.tabText);
|
||||
ImageView iconView = customView.findViewById(R.id.tabIcon);
|
||||
iconView.setImageResource(R.mipmap.icon_task_select_lock);
|
||||
textView.setTextColor(getResources().getColor(com.xscm.moduleutil.R.color.black));
|
||||
}
|
||||
mBinding.viewPager2.setCurrentItem(tab.getPosition());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTabUnselected(TabLayout.Tab tab) {
|
||||
View customView = tab.getCustomView();
|
||||
if (customView != null) {
|
||||
TextView textView = customView.findViewById(R.id.tabText);
|
||||
ImageView iconView = customView.findViewById(R.id.tabIcon);
|
||||
iconView.setImageResource(R.mipmap.icon_task_select_unlock);
|
||||
textView.setTextColor(getResources().getColor(com.xscm.moduleutil.R.color.colorBlack45));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTabReselected(TabLayout.Tab tab) {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
public void isShowLoading(boolean b) {
|
||||
if (b) {
|
||||
mBinding.coolWaitView.setVisibility(View.VISIBLE);
|
||||
@@ -154,16 +211,43 @@ public class DailyTasksActivity extends BaseMvpActivity<DailyTasksPresenter, Act
|
||||
|
||||
@Override
|
||||
public void setGiftBox(GiftBoxBean giftBoxBean) {
|
||||
int lastTabIdx = currentTab;
|
||||
mBinding.tvTitle.setText("今日累计充值获得金币:" + (giftBoxBean.getUser_gold() != null ? giftBoxBean.getUser_gold() : "0"));
|
||||
mTaskBoxAdapter.setNewData(giftBoxBean.getGift_box_list());
|
||||
|
||||
taskList.clear();
|
||||
taskList.addAll(giftBoxBean.getTasks());
|
||||
|
||||
giftBoxBean.getTasks().stream()
|
||||
.filter(task -> !task.getTask_list().isEmpty())
|
||||
.forEach(taskList::add);
|
||||
mBinding.tabTitle.removeAllTabs();
|
||||
|
||||
mTaskDataAdapter.notifyDataSetChanged();
|
||||
for (int i = 0; i < taskList.size(); i++) {
|
||||
GiftBoxBean.TaskDataBean taskItem = taskList.get(i);
|
||||
TabLayout.Tab tab = mBinding.tabTitle.newTab();
|
||||
View customView = getLayoutInflater().inflate(R.layout.custom_task_tab, null);
|
||||
|
||||
TextView textView = customView.findViewById(R.id.tabText);
|
||||
ImageView iconView = customView.findViewById(R.id.tabIcon);
|
||||
|
||||
textView.setText(taskItem.getTask_type_name());
|
||||
if (taskItem.getIs_lock() == 1) {
|
||||
if (i == 0) {
|
||||
iconView.setImageResource(R.mipmap.icon_task_select_lock);
|
||||
} else {
|
||||
iconView.setImageResource(R.mipmap.icon_task_select_unlock);
|
||||
}
|
||||
} else {
|
||||
iconView.setVisibility(View.GONE);
|
||||
}
|
||||
tab.setCustomView(customView);
|
||||
mBinding.tabTitle.addTab(tab);
|
||||
}
|
||||
// 4. 默认选中第一个 Tab(可选)
|
||||
mBinding.tabTitle.post(() -> {
|
||||
if (mBinding.tabTitle.getTabCount() > lastTabIdx) {
|
||||
mBinding.tabTitle.selectTab(mBinding.tabTitle.getTabAt(lastTabIdx));
|
||||
}
|
||||
});
|
||||
|
||||
viewPager2Adapter.notifyDataSetChanged();
|
||||
}
|
||||
|
||||
private void taskStatus1(GiftBoxBean.TaskDataBean.DailyTasksBean item) {
|
||||
@@ -204,6 +288,14 @@ public class DailyTasksActivity extends BaseMvpActivity<DailyTasksPresenter, Act
|
||||
case 6:
|
||||
toActivity(RechargeActivity.class);
|
||||
break;
|
||||
case 7:
|
||||
if (!SpUtil.getRealName()) {
|
||||
ToastUtils.show("实名认证后才能创建直播间");
|
||||
toActivity(RealNameActivity.class);
|
||||
return;
|
||||
}
|
||||
toActivity(CreatedRoomActivity.class);
|
||||
break;
|
||||
case 0:
|
||||
break;
|
||||
}
|
||||
@@ -283,5 +375,65 @@ public class DailyTasksActivity extends BaseMvpActivity<DailyTasksPresenter, Act
|
||||
}
|
||||
}
|
||||
|
||||
class ViewPager2Adapter extends RecyclerView.Adapter<ViewPager2Adapter.ViewHolder> {
|
||||
private List<GiftBoxBean.TaskDataBean> taskList;
|
||||
private OnItemClickListener onItemClickListener;
|
||||
|
||||
public ViewPager2Adapter(List<GiftBoxBean.TaskDataBean> taskList, OnItemClickListener onItemClickListener) {
|
||||
this.taskList = taskList;
|
||||
this.onItemClickListener = onItemClickListener;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public ViewPager2Adapter.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_recycleview_task, parent, false);
|
||||
return new ViewHolder(view);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull ViewPager2Adapter.ViewHolder holder, int position) {
|
||||
holder.recyclerView.setLayoutManager(new GridLayoutManager(DailyTasksActivity.this, 1));
|
||||
|
||||
TaskDataAdapter adapter = new TaskDataAdapter();
|
||||
holder.recyclerView.setLayoutManager(new LinearLayoutManager(holder.itemView.getContext()));
|
||||
holder.recyclerView.setAdapter(adapter);
|
||||
adapter.setNewData(taskList.get(position).getTask_list());
|
||||
if (taskList.get(position).getIs_lock() == 1) {
|
||||
View emptyView = LayoutInflater.from(DailyTasksActivity.this).inflate(R.layout.empty_img_layout, null, false);
|
||||
ImageView ivEmpty = emptyView.findViewById(R.id.image_empty);
|
||||
if (taskList.get(position).getTask_type_name().contains("师徒")) {
|
||||
ivEmpty.setImageResource(R.mipmap.icon_ts_lock_show_bg);
|
||||
} else if (taskList.get(position).getTask_type_name().contains("情侣")) {
|
||||
ivEmpty.setImageResource(R.mipmap.icon_cp_lock_show_bg);
|
||||
}
|
||||
adapter.setEmptyView(emptyView);
|
||||
}
|
||||
|
||||
adapter.setItemClickLitener((view, position1, item) -> {
|
||||
if (onItemClickListener != null) {
|
||||
onItemClickListener.onItemClick(position, taskList.get(position), item);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return taskList.size();
|
||||
}
|
||||
|
||||
static class ViewHolder extends RecyclerView.ViewHolder {
|
||||
public RecyclerView recyclerView;
|
||||
|
||||
public ViewHolder(@NonNull View itemView) {
|
||||
super(itemView);
|
||||
recyclerView = itemView.findViewById(R.id.recycle_view);
|
||||
}
|
||||
}
|
||||
|
||||
interface OnItemClickListener {
|
||||
void onItemClick(int position, GiftBoxBean.TaskDataBean taskItem, GiftBoxBean.TaskDataBean.DailyTasksBean item);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
package com.xscm.modulemain.activity.user.activity
|
||||
|
||||
import com.blankj.utilcode.util.ActivityUtils.startActivity
|
||||
import com.xscm.modulemain.R
|
||||
import com.xscm.modulemain.databinding.ActivityMobilePhoneBinding
|
||||
import com.xscm.moduleutil.activity.BaseAppCompatActivity
|
||||
import com.xscm.moduleutil.color.ThemeableDrawableUtils
|
||||
import com.xscm.moduleutil.utils.ColorManager
|
||||
import com.xscm.moduleutil.utils.SpUtil
|
||||
import com.xscm.moduleutil.utils.TextViewUtils
|
||||
|
||||
/**
|
||||
* @Author qx
|
||||
* @Time 2025/12/19 11:06
|
||||
* @Description 手机绑定
|
||||
*/
|
||||
class MobilePhoneActivity : BaseAppCompatActivity<ActivityMobilePhoneBinding>() {
|
||||
|
||||
|
||||
override fun initData() {
|
||||
mBinding.tvPhone.text = TextViewUtils.formatPhoneNumberWithRegex(SpUtil.getUserBean().mobile)
|
||||
}
|
||||
|
||||
override fun initView() {
|
||||
mBinding.topBar.setTitle("更换手机号")
|
||||
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground(
|
||||
mBinding.tvChangePhone,
|
||||
ColorManager.getInstance().getPrimaryColorInt(),
|
||||
53
|
||||
)
|
||||
mBinding.tvChangePhone.setTextColor(ColorManager.getInstance().getButtonColorInt())
|
||||
mBinding.tvChangePhone.setOnClickListener {
|
||||
startActivity(PhoneReplacementActivity::class.java)
|
||||
}
|
||||
}
|
||||
|
||||
override fun getLayoutId(): Int {
|
||||
return R.layout.activity_mobile_phone
|
||||
}
|
||||
}
|
||||
@@ -271,7 +271,6 @@ public class MyRoomActivity extends BaseMvpActivity<MyRoomPresenter, RoomActivit
|
||||
return;
|
||||
}
|
||||
|
||||
// MvpPre.check_create_room();
|
||||
startActivity(new Intent(MyRoomActivity.this, CreatedRoomActivity.class));
|
||||
finish();
|
||||
}
|
||||
|
||||
@@ -1,7 +1,11 @@
|
||||
package com.xscm.modulemain.activity.user.activity;
|
||||
|
||||
import static android.view.View.GONE;
|
||||
import static android.view.View.VISIBLE;
|
||||
|
||||
import android.os.CountDownTimer;
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.xscm.modulemain.R;
|
||||
import com.xscm.modulemain.databinding.ActivityPhoneReplacementBinding;
|
||||
@@ -9,14 +13,15 @@ import com.hjq.toast.ToastUtils;
|
||||
import com.xscm.modulemain.activity.user.conacts.PhoneReplacementConacts;
|
||||
import com.xscm.modulemain.activity.user.presenter.PhoneReplacementPresenter;
|
||||
import com.xscm.modulemain.BaseMvpActivity;
|
||||
import com.xscm.moduleutil.base.CommonAppContext;
|
||||
import com.xscm.moduleutil.color.ThemeableDrawableUtils;
|
||||
import com.xscm.moduleutil.utils.ColorManager;
|
||||
import com.xscm.moduleutil.utils.SpUtil;
|
||||
|
||||
/**
|
||||
*@author
|
||||
*@data
|
||||
*@description: 手机换绑
|
||||
* @author
|
||||
* @data
|
||||
* @description: 手机换绑
|
||||
*/
|
||||
public class PhoneReplacementActivity extends BaseMvpActivity<PhoneReplacementPresenter, ActivityPhoneReplacementBinding> implements PhoneReplacementConacts.View {
|
||||
private CountDownTimer mTimer;
|
||||
@@ -28,9 +33,14 @@ public class PhoneReplacementActivity extends BaseMvpActivity<PhoneReplacementPr
|
||||
if (SpUtil.getUserBean().getMobile() == null || SpUtil.getUserBean().getMobile().equals("")) {
|
||||
type = "2";
|
||||
mBinding.topBar.setTitle("手机绑定");
|
||||
mBinding.relTheOldPhone.setVisibility(GONE);
|
||||
mBinding.rlTheOldCode.setVisibility(GONE);
|
||||
} else {
|
||||
type = "1";
|
||||
mBinding.topBar.setTitle("手机换绑");
|
||||
mBinding.relTheOldPhone.setVisibility(VISIBLE);
|
||||
mBinding.tvPhone.setText(SpUtil.getUserBean().getMobile());
|
||||
mBinding.rlTheOldCode.setVisibility(VISIBLE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -45,6 +55,8 @@ public class PhoneReplacementActivity extends BaseMvpActivity<PhoneReplacementPr
|
||||
mBinding.tvSendCode.setOnClickListener(this::onClick);
|
||||
mBinding.btnSubmit.setOnClickListener(this::onClick);
|
||||
|
||||
mBinding.tvSendTheOldCode.setOnClickListener(this::onClick);
|
||||
|
||||
mBinding.tvSendCode.setTextColor(ColorManager.getInstance().getPrimaryColorInt());
|
||||
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground(mBinding.btnSubmit, ColorManager.getInstance().getPrimaryColorInt(), 53);
|
||||
@@ -57,7 +69,12 @@ public class PhoneReplacementActivity extends BaseMvpActivity<PhoneReplacementPr
|
||||
}
|
||||
|
||||
private void onClick(View view) {
|
||||
if (view.getId() == R.id.tv_send_code) {
|
||||
if (view.getId() == R.id.tv_send_the_old_code) {
|
||||
if (MvpPre == null) {
|
||||
MvpPre = bindPresenter();
|
||||
}
|
||||
MvpPre.sendCode(SpUtil.getUserBean().getMobile(), type, mBinding.tvSendTheOldCode);
|
||||
} else if (view.getId() == R.id.tv_send_code) {
|
||||
if (mBinding.edPhone.getText().toString().isEmpty()) {
|
||||
ToastUtils.show("请输入手机号");
|
||||
return;
|
||||
@@ -66,32 +83,57 @@ public class PhoneReplacementActivity extends BaseMvpActivity<PhoneReplacementPr
|
||||
if (MvpPre == null) {
|
||||
MvpPre = bindPresenter();
|
||||
}
|
||||
MvpPre.sendCode(mBinding.edPhone.getText().toString(), type);
|
||||
sendCodeSuccess2(mBinding.edPhone.getText().toString());
|
||||
} else if (view.getId() == R.id.btnSubmit) {
|
||||
MvpPre.sendCode(mBinding.edPhone.getText().toString(), type, mBinding.tvSendCode);
|
||||
|
||||
if (mBinding.edPhone.getText().toString().isEmpty()) {
|
||||
com.blankj.utilcode.util.ToastUtils.showShort("请输入手机号");
|
||||
return;
|
||||
}
|
||||
if (mBinding.edPassword.getText().toString().isEmpty()) {
|
||||
com.blankj.utilcode.util.ToastUtils.showShort("请输入验证码");
|
||||
return;
|
||||
}
|
||||
if (MvpPre != null) {
|
||||
if (SpUtil.getUserBean().getMobile() == null || SpUtil.getUserBean().getMobile().equals("")) {
|
||||
MvpPre.mobileView(mBinding.edPhone.getText().toString(), mBinding.edPhone.getText().toString(), mBinding.edPassword.getText().toString(), type);
|
||||
} else {
|
||||
MvpPre.mobileView(SpUtil.getUserBean().getMobile(), mBinding.edPhone.getText().toString(), mBinding.edPassword.getText().toString(), type);
|
||||
} else if (view.getId() == R.id.btnSubmit) {
|
||||
if (type.equals("1")){
|
||||
|
||||
if(mBinding.edTheOldPassword.getText().toString().isEmpty()){
|
||||
com.blankj.utilcode.util.ToastUtils.showShort("请输入旧手机验证码");
|
||||
return;
|
||||
}
|
||||
|
||||
if (mBinding.edPhone.getText().toString().isEmpty()) {
|
||||
com.blankj.utilcode.util.ToastUtils.showShort("请输入新手机号");
|
||||
return;
|
||||
}
|
||||
if (mBinding.edPassword.getText().toString().isEmpty()) {
|
||||
com.blankj.utilcode.util.ToastUtils.showShort("请输入验证码");
|
||||
return;
|
||||
}
|
||||
if (MvpPre!=null){
|
||||
MvpPre.mobileView(SpUtil.getUserBean().getMobile(), mBinding.edPhone.getText().toString(),mBinding.edTheOldPassword.getText().toString(), mBinding.edPassword.getText().toString(), type);
|
||||
}
|
||||
|
||||
}else if (type.equals("2")){
|
||||
if (mBinding.edPhone.getText().toString().isEmpty()) {
|
||||
com.blankj.utilcode.util.ToastUtils.showShort("请输入手机号");
|
||||
return;
|
||||
}
|
||||
if (mBinding.edPassword.getText().toString().isEmpty()) {
|
||||
com.blankj.utilcode.util.ToastUtils.showShort("请输入验证码");
|
||||
return;
|
||||
}
|
||||
if (MvpPre!=null){
|
||||
MvpPre.mobileView("", mBinding.edPhone.getText().toString(), mBinding.edPassword.getText().toString(),"", type);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// if (MvpPre != null) {
|
||||
// if (SpUtil.getUserBean().getMobile() == null || SpUtil.getUserBean().getMobile().equals("")) {
|
||||
// MvpPre.mobileView(mBinding.edPhone.getText().toString(), mBinding.edPhone.getText().toString(), mBinding.edPassword.getText().toString(), type);
|
||||
// } else {
|
||||
// MvpPre.mobileView(SpUtil.getUserBean().getMobile(), mBinding.edPhone.getText().toString(), mBinding.edPassword.getText().toString(), type);
|
||||
// }
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
||||
public void sendCodeSuccess2(String phoneNumber) {
|
||||
public void sendCodeSuccess2(String phoneNumber,TextView textView) {
|
||||
com.blankj.utilcode.util.ToastUtils.showShort("短信验证码发送成功请注意查收");
|
||||
mBinding.tvSendCode.setEnabled(false);
|
||||
mBinding.tvSendCode.setAlpha(0.5f);
|
||||
textView.setEnabled(false);
|
||||
textView.setAlpha(0.5f);
|
||||
releaseTimer();
|
||||
if (mTimer != null) {
|
||||
mTimer.cancel();
|
||||
@@ -99,16 +141,16 @@ public class PhoneReplacementActivity extends BaseMvpActivity<PhoneReplacementPr
|
||||
mTimer = new CountDownTimer(60000L, 1000L) {
|
||||
@Override
|
||||
public void onTick(long millisUntilFinished) {
|
||||
if (mBinding.tvSendCode != null) {
|
||||
mBinding.tvSendCode.setText(String.format("重新发送(%s)", millisUntilFinished / 1000));
|
||||
if (textView != null) {
|
||||
textView.setText(String.format("重新发送(%s)", millisUntilFinished / 1000));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFinish() {
|
||||
mBinding.tvSendCode.setAlpha(1f);
|
||||
mBinding.tvSendCode.setEnabled(true);
|
||||
mBinding.tvSendCode.setText("重新发送");
|
||||
textView.setAlpha(1f);
|
||||
textView.setEnabled(true);
|
||||
textView.setText("重新发送");
|
||||
}
|
||||
};
|
||||
mTimer.start();
|
||||
@@ -122,18 +164,22 @@ public class PhoneReplacementActivity extends BaseMvpActivity<PhoneReplacementPr
|
||||
}
|
||||
|
||||
@Override
|
||||
public void sendCodeSuccess1(String phoneNumber) {
|
||||
|
||||
public void sendCodeSuccess1(String phoneNumber, TextView textView) {
|
||||
sendCodeSuccess2(mBinding.edPhone.getText().toString(),textView);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void sendCodeSuccess(String s) {
|
||||
if (s.contains("失败")) {
|
||||
if (s.contains("成功")) {
|
||||
ToastUtils.show(s);
|
||||
try {
|
||||
CommonAppContext.getInstance().clearLoginInfo();
|
||||
} catch (ClassNotFoundException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
finish();
|
||||
} else {
|
||||
ToastUtils.show(s);
|
||||
|
||||
finish();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@ import android.view.View;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.blankj.utilcode.util.RegexUtils;
|
||||
import com.blankj.utilcode.util.ToastUtils;
|
||||
import com.xscm.modulemain.R;
|
||||
import com.xscm.modulemain.databinding.ActivityRealNameBinding;
|
||||
import com.tencent.cloud.huiyansdkface.facelight.api.WbCloudFaceContant;
|
||||
@@ -114,6 +115,7 @@ public class RealNameActivity extends BaseMvpActivity<RealNamePresenter, Activit
|
||||
|
||||
} else {
|
||||
Log.d("@@@", "刷脸失败!");
|
||||
ToastUtils.showLong("人脸认证失败!");
|
||||
// queren1();
|
||||
}
|
||||
}
|
||||
@@ -128,6 +130,7 @@ public class RealNameActivity extends BaseMvpActivity<RealNamePresenter, Activit
|
||||
Log.d("@@@", "刷脸失败!");
|
||||
//刷脸结束后,及时释放资源
|
||||
WbCloudFaceVerifySdk.getInstance().release();
|
||||
ToastUtils.showLong("人脸认证失败!");
|
||||
// queren1();
|
||||
|
||||
}
|
||||
|
||||
@@ -36,6 +36,7 @@ import com.xscm.moduleutil.dialog.RealNameDialog;
|
||||
import com.xscm.moduleutil.utils.ARouteConstants;
|
||||
import com.xscm.moduleutil.utils.ColorManager;
|
||||
import com.xscm.moduleutil.utils.SpUtil;
|
||||
import com.xscm.moduleutil.utils.TextViewUtils;
|
||||
import com.xscm.moduleutil.widget.CommonAppConfig;
|
||||
|
||||
import java.io.File;
|
||||
@@ -81,6 +82,13 @@ public class SettingActivity extends BaseMvpActivity<SettingPresenter, ActivityS
|
||||
} else {
|
||||
mBinding.llQhdz.setVisibility(View.GONE);
|
||||
}
|
||||
if (userInfo.getMobile()!=null && !userInfo.getMobile().equals("")) {
|
||||
mBinding.tvPhoneTitle.setText("手机换绑");
|
||||
mBinding.tvPhone.setText(TextViewUtils.formatAnyPhone(userInfo.getMobile()));
|
||||
}else {
|
||||
mBinding.tvPhoneTitle.setText("手机绑定");
|
||||
mBinding.tvPhone.setText("");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -130,7 +138,12 @@ public class SettingActivity extends BaseMvpActivity<SettingPresenter, ActivityS
|
||||
} else if (id == R.id.ll_szmm) {//设置密码
|
||||
startActivity(new Intent(this, ChangPassActivity.class));
|
||||
} else if (id == R.id.ll_shb) {
|
||||
startActivity(new Intent(this, PhoneReplacementActivity.class));
|
||||
LogUtils.e("点击了", SpUtil.getUserBean().getMobile());
|
||||
if (TextUtils.isEmpty(SpUtil.getUserBean().getMobile())){
|
||||
startActivity(new Intent(this, PhoneReplacementActivity.class));
|
||||
}else {
|
||||
startActivity(new Intent(this, MobilePhoneActivity.class));
|
||||
}
|
||||
} else if (id == R.id.ll_smrz) {//实名认证
|
||||
if (SpUtil.getRealName()) {
|
||||
startActivity(new Intent(this, RealDetailActivity.class));
|
||||
@@ -208,12 +221,12 @@ public class SettingActivity extends BaseMvpActivity<SettingPresenter, ActivityS
|
||||
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int which) {
|
||||
if( SpUtil.getUserBean().getMobile()==null){
|
||||
if (SpUtil.getUserBean().getMobile() == null) {
|
||||
if (MvpPre == null) {
|
||||
MvpPre = bindPresenter();
|
||||
}
|
||||
MvpPre.cancel("");
|
||||
}else {
|
||||
} else {
|
||||
showSecondaryVerificationDialog();
|
||||
}
|
||||
|
||||
@@ -335,7 +348,7 @@ public class SettingActivity extends BaseMvpActivity<SettingPresenter, ActivityS
|
||||
MvpPre.cancel(code);
|
||||
|
||||
dialog.dismiss();
|
||||
}else {
|
||||
} else {
|
||||
com.hjq.toast.ToastUtils.show("请输入正确的验证码");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -53,7 +53,7 @@ public class UserPlaylistActivity extends BaseMvpActivity<SingerVerificationPres
|
||||
if (dataChanged)
|
||||
// 数据已更改,重新加载数据
|
||||
page = 1;
|
||||
MvpPre.getSong(SpUtil.getUserId() + "", "", page + "", "10");
|
||||
MvpPre.getSong(SpUtil.getUserId() + "", "", page + "", "20");
|
||||
}
|
||||
});
|
||||
customInputDialog.show();
|
||||
@@ -80,7 +80,7 @@ public class UserPlaylistActivity extends BaseMvpActivity<SingerVerificationPres
|
||||
if (dataChanged)
|
||||
// 数据已更改,重新加载数据
|
||||
page = 1;
|
||||
MvpPre.getSong(SpUtil.getUserId() + "", "", page + "", "10");
|
||||
MvpPre.getSong(SpUtil.getUserId() + "", "", page + "", "20");
|
||||
}
|
||||
});
|
||||
customInputDialog.show();
|
||||
@@ -102,14 +102,14 @@ public class UserPlaylistActivity extends BaseMvpActivity<SingerVerificationPres
|
||||
@Override
|
||||
public void onLoadMore(@NonNull RefreshLayout refreshLayout) {
|
||||
page++;
|
||||
MvpPre.getSong(SpUtil.getUserId() + "", "", page + "", "10");
|
||||
MvpPre.getSong(SpUtil.getUserId() + "", "", page + "", "20");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
|
||||
// EventBus.getDefault().post(new BannerRefreshEvent());
|
||||
page = 1;
|
||||
MvpPre.getSong(SpUtil.getUserId() + "", "", page + "", "10");
|
||||
MvpPre.getSong(SpUtil.getUserId() + "", "", page + "", "20");
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -123,7 +123,7 @@ public class UserPlaylistActivity extends BaseMvpActivity<SingerVerificationPres
|
||||
protected void onResume() {
|
||||
super.onResume();
|
||||
page = 1;
|
||||
MvpPre.getSong(SpUtil.getUserId() + "", "", page + "", "10");
|
||||
MvpPre.getSong(SpUtil.getUserId() + "", "", page + "", "20");
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -178,6 +178,6 @@ public class UserPlaylistActivity extends BaseMvpActivity<SingerVerificationPres
|
||||
@Override
|
||||
public void deleteSong() {
|
||||
page = 1;
|
||||
MvpPre.getSong(SpUtil.getUserId() + "", "", page + "", "10");
|
||||
MvpPre.getSong(SpUtil.getUserId() + "", "", page + "", "20");
|
||||
}
|
||||
}
|
||||
@@ -5,6 +5,7 @@ import android.app.Activity;
|
||||
import com.xscm.moduleutil.activity.IPresenter;
|
||||
import com.xscm.moduleutil.activity.IView;
|
||||
import com.xscm.moduleutil.bean.BannerModel;
|
||||
import com.xscm.moduleutil.bean.TasksMessage;
|
||||
import com.xscm.moduleutil.bean.UserInfo;
|
||||
import com.xscm.moduleutil.bean.WalletBean;
|
||||
|
||||
@@ -23,6 +24,8 @@ public final class MeConacts {
|
||||
void wallet(WalletBean walletBean);
|
||||
|
||||
void setBanners(List<BannerModel> bannerModels);
|
||||
|
||||
void getTasksMessage(TasksMessage data);
|
||||
}
|
||||
|
||||
public interface IMePre extends IPresenter {
|
||||
@@ -40,6 +43,8 @@ public final class MeConacts {
|
||||
|
||||
|
||||
void wallet();
|
||||
|
||||
void getTasksMessage();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.xscm.modulemain.activity.user.conacts;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.xscm.moduleutil.activity.IPresenter;
|
||||
import com.xscm.moduleutil.activity.IView;
|
||||
@@ -8,15 +9,15 @@ import com.xscm.moduleutil.activity.IView;
|
||||
|
||||
public class PhoneReplacementConacts {
|
||||
public interface View extends IView<Activity> {
|
||||
void sendCodeSuccess1(String phoneNumber);
|
||||
void sendCodeSuccess1(String phoneNumber,TextView textView);
|
||||
|
||||
void sendCodeSuccess(String s);
|
||||
}
|
||||
|
||||
public interface IMePre extends IPresenter {
|
||||
void sendCode(String phoneNumber, String type);
|
||||
void sendCode(String phoneNumber, String type, TextView tvSendCode);
|
||||
|
||||
void mobileView(String mobile, String new_mobile, String sms_code,String type);
|
||||
void mobileView(String mobile, String new_mobile, String sms_code,String new_sms_code,String type);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,6 +47,7 @@ import com.xscm.modulemain.activity.user.presenter.MePresenter;
|
||||
import com.xscm.modulemain.activity.WebViewActivity;
|
||||
import com.xscm.modulemain.dialog.UserNetWorthDialog;
|
||||
import com.xscm.moduleutil.base.WebUrlConstants;
|
||||
import com.xscm.moduleutil.bean.TasksMessage;
|
||||
import com.xscm.moduleutil.utils.ARouteConstants;
|
||||
import com.xscm.moduleutil.widget.ShineTextView;
|
||||
import com.xscm.moduleutil.base.BaseMvpFragment;
|
||||
@@ -170,6 +171,7 @@ public class VocalRangeFragment extends BaseMvpFragment<MePresenter, FragmentVoc
|
||||
MvpPre.getMyInfo();
|
||||
MvpPre.wallet();
|
||||
MvpPre.getBanners("6");
|
||||
MvpPre.getTasksMessage();
|
||||
// MvpPre.getMemberList(SpUtils.getUserId(), 1);
|
||||
}
|
||||
|
||||
@@ -180,9 +182,6 @@ public class VocalRangeFragment extends BaseMvpFragment<MePresenter, FragmentVoc
|
||||
|
||||
public void onClick(View view) {
|
||||
int id = view.getId();
|
||||
|
||||
|
||||
|
||||
if (id == R.id.ll_visit) {
|
||||
// ARouter.getInstance().build(ARouteConstants.ME_VISIT).navigation();
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.C0104);
|
||||
@@ -410,6 +409,19 @@ public class VocalRangeFragment extends BaseMvpFragment<MePresenter, FragmentVoc
|
||||
mBinding.banner.setBannerData(R.layout.index_image_banner, bannerModels);
|
||||
}
|
||||
|
||||
// TODO: 2025/12/16 任务未领取个数
|
||||
@Override
|
||||
public void getTasksMessage(TasksMessage data) {
|
||||
if (data!=null){
|
||||
mBinding.tvDailyMessage.setText("+"+data.getNum());
|
||||
if (data.getNum()==0){
|
||||
mBinding.tvDailyMessage.setVisibility(View.GONE);
|
||||
}else {
|
||||
mBinding.tvDailyMessage.setVisibility(View.VISIBLE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void copyUserId(CharSequence content) {
|
||||
ClipboardManager clipboard = (ClipboardManager) getActivity().getSystemService(CLIPBOARD_SERVICE);
|
||||
|
||||
@@ -15,7 +15,7 @@ public class ChangePasswordPresenter extends BasePresenter<ChangePasswordConacto
|
||||
|
||||
@Override
|
||||
public void sendCode(String phoneNumber, String type) {
|
||||
api.sendCode(phoneNumber,type, new BaseObserver<Object>() {
|
||||
api.sendCode(phoneNumber,type, new BaseObserver<String>() {
|
||||
|
||||
@Override
|
||||
public void onSubscribe(Disposable d) {
|
||||
@@ -23,7 +23,7 @@ public class ChangePasswordPresenter extends BasePresenter<ChangePasswordConacto
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(Object o) {
|
||||
public void onNext(String o) {
|
||||
MvpRef.get().sendCodeSuccess1(phoneNumber);
|
||||
}
|
||||
|
||||
|
||||
@@ -4,6 +4,7 @@ import android.content.Context;
|
||||
|
||||
import com.xscm.modulemain.activity.user.conacts.MeConacts;
|
||||
import com.xscm.moduleutil.bean.BannerModel;
|
||||
import com.xscm.moduleutil.bean.TasksMessage;
|
||||
import com.xscm.moduleutil.bean.UserInfo;
|
||||
import com.xscm.moduleutil.bean.WalletBean;
|
||||
import com.xscm.moduleutil.http.BaseObserver;
|
||||
@@ -186,6 +187,25 @@ public class MePresenter extends BasePresenter<MeConacts.View> implements MeCona
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getTasksMessage() {
|
||||
api.getTasksMessage(new BaseObserver<TasksMessage> () {
|
||||
|
||||
@Override
|
||||
public void onSubscribe(Disposable d) {
|
||||
addDisposable(d);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(TasksMessage s) {
|
||||
if (MvpRef==null){
|
||||
MvpRef=new WeakReference<>(mView);
|
||||
}
|
||||
MvpRef.get().getTasksMessage(s);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void getBanners(String s) {
|
||||
// Type listType = new TypeToken<List<BannerModel>>() {}.getType();
|
||||
// List<BannerModel> restoredRoomModels = GsonUtils.getGSON().fromJson(SpUtils.getHomeBanner(), listType);
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.xscm.modulemain.activity.user.presenter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.xscm.modulemain.activity.user.conacts.PhoneReplacementConacts;
|
||||
import com.xscm.moduleutil.bean.UserBean;
|
||||
@@ -21,8 +22,8 @@ public class PhoneReplacementPresenter extends BasePresenter<PhoneReplacementCon
|
||||
}
|
||||
|
||||
@Override
|
||||
public void sendCode(String phoneNumber, String type) {
|
||||
api.sendCode(phoneNumber, type, new BaseObserver<Object>() {
|
||||
public void sendCode(String phoneNumber, String type, TextView textView) {
|
||||
api.sendCode(phoneNumber, type, new BaseObserver<String>() {
|
||||
|
||||
@Override
|
||||
public void onSubscribe(Disposable d) {
|
||||
@@ -30,20 +31,20 @@ public class PhoneReplacementPresenter extends BasePresenter<PhoneReplacementCon
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(Object o) {
|
||||
public void onNext(String o) {
|
||||
if (MvpRef == null) {
|
||||
MvpRef = new WeakReference<>(mView);
|
||||
}
|
||||
MvpRef.get().sendCodeSuccess1(phoneNumber);
|
||||
MvpRef.get().sendCodeSuccess1(phoneNumber,textView);
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void mobileView(String mobile, String new_mobile, String sms_code, String type) {
|
||||
public void mobileView(String mobile, String new_mobile, String sms_code,String new_sms_code, String type) {
|
||||
if (type.equals("1")) {
|
||||
api.mobileView(mobile, new_mobile, sms_code, new BaseObserver<String>() {
|
||||
api.mobileView(mobile, new_mobile, sms_code,new_sms_code, new BaseObserver<String>() {
|
||||
@Override
|
||||
public void onSubscribe(Disposable d) {
|
||||
addDisposable(d);
|
||||
@@ -54,9 +55,11 @@ public class PhoneReplacementPresenter extends BasePresenter<PhoneReplacementCon
|
||||
if (MvpRef == null) {
|
||||
MvpRef = new WeakReference<>(mView);
|
||||
}
|
||||
UserBean userInfo = SpUtil.getUserBean();
|
||||
userInfo.setMobile(new_mobile);
|
||||
SpUtil.saveUserBean(userInfo);
|
||||
if (s.contains("成功")) {
|
||||
UserBean userInfo = SpUtil.getUserBean();
|
||||
userInfo.setMobile(new_mobile);
|
||||
SpUtil.saveUserBean(userInfo);
|
||||
}
|
||||
MvpRef.get().sendCodeSuccess(s);
|
||||
}
|
||||
});
|
||||
@@ -72,9 +75,11 @@ public class PhoneReplacementPresenter extends BasePresenter<PhoneReplacementCon
|
||||
if (MvpRef == null) {
|
||||
MvpRef = new WeakReference<>(mView);
|
||||
}
|
||||
UserBean userInfo = SpUtil.getUserBean();
|
||||
userInfo.setMobile(new_mobile);
|
||||
SpUtil.saveUserBean(userInfo);
|
||||
if (s.contains("成功")) {
|
||||
UserBean userInfo = SpUtil.getUserBean();
|
||||
userInfo.setMobile(new_mobile);
|
||||
SpUtil.saveUserBean(userInfo);
|
||||
}
|
||||
MvpRef.get().sendCodeSuccess(s);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -179,7 +179,7 @@ public class SettingPresenter extends BasePresenter<SettingConacts.View> impleme
|
||||
|
||||
@Override
|
||||
public void sendCode(String phoneNumber, int type) {
|
||||
api.sendCode(phoneNumber, type + "", new BaseObserver<Object>() {
|
||||
api.sendCode(phoneNumber, type + "", new BaseObserver<String>() {
|
||||
|
||||
@Override
|
||||
public void onSubscribe(Disposable d) {
|
||||
@@ -187,7 +187,7 @@ public class SettingPresenter extends BasePresenter<SettingConacts.View> impleme
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(Object o) {
|
||||
public void onNext(String o) {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
@@ -99,7 +99,7 @@ public class WithdrawalPresenter extends BasePresenter<WithdrawalConacts.View> i
|
||||
|
||||
@Override
|
||||
public void sendCode(String phoneNumber, int type) {
|
||||
api.sendCode(phoneNumber, type + "", new BaseObserver<Object>() {
|
||||
api.sendCode(phoneNumber, type + "", new BaseObserver<String>() {
|
||||
|
||||
@Override
|
||||
public void onSubscribe(Disposable d) {
|
||||
@@ -107,7 +107,7 @@ public class WithdrawalPresenter extends BasePresenter<WithdrawalConacts.View> i
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(Object o) {
|
||||
public void onNext(String o) {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
@@ -20,10 +20,11 @@ import com.xscm.moduleutil.utils.ImageUtils;
|
||||
import com.xscm.moduleutil.utils.MeHeadView;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
*@author qx
|
||||
*@data 2025/5/19
|
||||
*@description: 黑名单、关注、粉丝列表适配器
|
||||
* @author qx
|
||||
* @data 2025/5/19
|
||||
* @description: 黑名单、关注、粉丝列表适配器
|
||||
*/
|
||||
public class BlackAdapter extends BaseQuickAdapter<BlackUserBean, BaseViewHolder> {
|
||||
|
||||
@@ -45,9 +46,9 @@ public class BlackAdapter extends BaseQuickAdapter<BlackUserBean, BaseViewHolder
|
||||
@Override
|
||||
protected void convert(BaseViewHolder helper, BlackUserBean item) {
|
||||
MeHeadView headView = helper.getView(R.id.im_user);
|
||||
headView.setData(item.getAvatar(), "", "");
|
||||
headView.setData(item.getAvatar(), "", "");
|
||||
helper.setText(R.id.tv_nick_name, item.getNickname());
|
||||
TextView imageView= helper.getView(R.id.im_g);
|
||||
TextView imageView = helper.getView(R.id.im_g);
|
||||
helper.setText(R.id.tv_oline, item.getIs_online() == 1 ? "[在线]" : "[离线]");
|
||||
// 根据 type 设置图片资源
|
||||
// 根据 type 和 status 设置图片资源
|
||||
@@ -55,33 +56,33 @@ public class BlackAdapter extends BaseQuickAdapter<BlackUserBean, BaseViewHolder
|
||||
if (item.getType() == 0) { // 关注
|
||||
if (item.getIs_follow() == 0) {
|
||||
// imageView.setImageResource(com.xscm.moduleutil.R.mipmap.gz);
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground( imageView, ColorManager.getInstance().getPrimaryColorInt(), 34);
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground(imageView, ColorManager.getInstance().getPrimaryColorInt(), 34);
|
||||
imageView.setTextColor(ColorManager.getInstance().getButtonColorInt());
|
||||
imageView.setText("关注");
|
||||
} else {
|
||||
// imageView.setImageResource(com.xscm.moduleutil.R.mipmap.yigz);
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground( imageView, Color.parseColor("#EFF2F8"), 34);
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground(imageView, Color.parseColor("#EFF2F8"), 34);
|
||||
imageView.setTextColor(Color.BLACK);
|
||||
imageView.setText("已关注");
|
||||
}
|
||||
} else if (item.getType() == 1) { // 黑名单
|
||||
// imageView.setImageResource(com.xscm.moduleutil.R.mipmap.yic);
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground( imageView, Color.parseColor("#333333"), 34);
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground(imageView, Color.parseColor("#333333"), 34);
|
||||
imageView.setTextColor(Color.WHITE);
|
||||
imageView.setText("移除");
|
||||
} else if (item.getType() == 2) { // 粉丝
|
||||
if (item.getIs_follow() == 0) {
|
||||
if (item.getIs_follow() != 1) { //只有等于1的时候,是已经关注了,等于0或者2的时候,都是需要回关别人,显示回关按钮
|
||||
// imageView.setImageResource(com.xscm.moduleutil.R.mipmap.hg);
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground( imageView, ColorManager.getInstance().getPrimaryColorInt(), 34);
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground(imageView, ColorManager.getInstance().getPrimaryColorInt(), 34);
|
||||
imageView.setTextColor(ColorManager.getInstance().getButtonColorInt());
|
||||
imageView.setText("回关");
|
||||
} else {
|
||||
// imageView.setImageResource(com.xscm.moduleutil.R.mipmap.yigz);
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground( imageView, Color.parseColor("#EFF2F8"), 34);
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground(imageView, Color.parseColor("#EFF2F8"), 34);
|
||||
imageView.setTextColor(Color.BLACK);
|
||||
imageView.setText("已关注");
|
||||
}
|
||||
}else if (item.getType() == 3){
|
||||
} else if (item.getType() == 3) {
|
||||
imageView.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
@@ -91,13 +92,13 @@ public class BlackAdapter extends BaseQuickAdapter<BlackUserBean, BaseViewHolder
|
||||
onItemClickListener.onItemClick(item);
|
||||
}
|
||||
});
|
||||
LinearLayout llContainer =helper.getView(R.id.ll_in);
|
||||
LinearLayout llContainer = helper.getView(R.id.ll_in);
|
||||
llContainer.removeAllViews(); // 清空旧的 ImageView
|
||||
|
||||
List<String> images = item.getIcon(); // 获取图片列表
|
||||
|
||||
for (String url : images) {
|
||||
if (url.contains("http")) {
|
||||
if (url != null && url.contains("http")) {
|
||||
ImageView imageView1 = new ImageView(getContext());
|
||||
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
|
||||
getContext().getResources().getDimensionPixelSize(com.xscm.moduleutil.R.dimen.dp_57),
|
||||
@@ -117,8 +118,8 @@ public class BlackAdapter extends BaseQuickAdapter<BlackUserBean, BaseViewHolder
|
||||
headView.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if (item.getType() !=1){
|
||||
ARouter.getInstance().build(ARouteConstants.USER_HOME_PAGE).withString("userId", item.getUser_id()+"").navigation();
|
||||
if (item.getType() != 1) {
|
||||
ARouter.getInstance().build(ARouteConstants.USER_HOME_PAGE).withString("userId", item.getUser_id() + "").navigation();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -26,7 +26,7 @@ public class MyAlbumListAdapter extends BaseQuickAdapter<AlbumBean, BaseViewHold
|
||||
helper.setVisible(R.id.iv_album_suo,true);
|
||||
}
|
||||
helper.setText(R.id.tv_album_name, item.getName());
|
||||
helper.setText(R.id.tv_album_count, item.getRead_num());
|
||||
helper.setText(R.id.tv_album_count, "浏览 "+item.getRead_num());
|
||||
} else {
|
||||
helper.setImageResource(R.id.riv_album, com.xscm.moduleutil.R.mipmap.create_album);
|
||||
helper.setVisible(R.id.tv_album_name, false);
|
||||
|
||||
@@ -103,6 +103,7 @@ class MyFamilyAdapter(
|
||||
|
||||
if (item.icon.isNotEmpty()) {
|
||||
flex_entry.isVisible=true
|
||||
flex_entry.removeAllViews()
|
||||
for (url in item.icon) {
|
||||
if (url.contains("http")) {
|
||||
val imageView1 = ImageView(Application.getInstance())
|
||||
|
||||
@@ -34,6 +34,7 @@ public class TaskDataAdapter extends BaseQuickAdapter<GiftBoxBean.TaskDataBean.D
|
||||
|
||||
if (item.getTask_status()==1){
|
||||
textView.setText(item.getTask_type_str());
|
||||
textView.setBackgroundResource(com.xscm.moduleutil.R.drawable.bg_r99_e24171);
|
||||
}else if (item.getTask_status()==2){
|
||||
textView.setText("");
|
||||
textView.setBackgroundResource(com.xscm.moduleutil.R.mipmap.task_lq);
|
||||
@@ -42,18 +43,6 @@ public class TaskDataAdapter extends BaseQuickAdapter<GiftBoxBean.TaskDataBean.D
|
||||
textView.setBackgroundResource(com.xscm.moduleutil.R.mipmap.task_ylq);
|
||||
}
|
||||
|
||||
// if (item.getTask_type_str().equals("去完成")){
|
||||
// textView.setText("未完成");
|
||||
// }else if (item.getTask_type_str().equals("领取金币") || item.getTask_type_str().equals("领取钻石")){
|
||||
// textView.setText("");
|
||||
// textView.setBackgroundResource(com.xscm.moduleutil.R.mipmap.task_lq);
|
||||
// }else {
|
||||
// textView.setText("");
|
||||
// textView.setBackgroundResource(com.xscm.moduleutil.R.mipmap.task_ylq);
|
||||
// }
|
||||
|
||||
|
||||
|
||||
ImageUtils.loadCenterCrop(item.getIcon(), helper.getView(R.id.task_pic));
|
||||
helper.setText(R.id.task_name, item.getTask_name());
|
||||
helper.setText(R.id.task_jb_number, item.getReward_str());
|
||||
|
||||
@@ -1,11 +1,23 @@
|
||||
package com.xscm.modulemain.dialog
|
||||
|
||||
import android.content.Context
|
||||
import android.graphics.drawable.Drawable
|
||||
import android.view.Gravity
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.ImageView
|
||||
import androidx.vectordrawable.graphics.drawable.Animatable2Compat
|
||||
import com.bumptech.glide.Glide
|
||||
import com.bumptech.glide.integration.webp.decoder.WebpDrawable
|
||||
import com.bumptech.glide.integration.webp.decoder.WebpDrawableTransformation
|
||||
import com.bumptech.glide.load.DataSource
|
||||
import com.bumptech.glide.load.engine.GlideException
|
||||
import com.bumptech.glide.load.resource.bitmap.CenterInside
|
||||
import com.bumptech.glide.request.RequestListener
|
||||
import com.bumptech.glide.request.RequestOptions
|
||||
import com.bumptech.glide.request.target.Target
|
||||
import com.xscm.modulemain.R
|
||||
import com.xscm.modulemain.databinding.DialogSignTypeBinding
|
||||
import com.xscm.moduleutil.utils.ImageUtils
|
||||
import com.xscm.moduleutil.widget.dialog.BaseDialog
|
||||
|
||||
class DialogSignType(context:Context) : BaseDialog<DialogSignTypeBinding>(context){
|
||||
@@ -52,25 +64,84 @@ class DialogSignType(context:Context) : BaseDialog<DialogSignTypeBinding>(contex
|
||||
0 ->{
|
||||
mBinding.groupFail.visibility = View.GONE
|
||||
mBinding.ivStart.visibility = View.VISIBLE
|
||||
loadWebpOneStart(R.drawable.iv_start, mBinding.ivStart)
|
||||
mBinding.ivSuccess.visibility = View.GONE
|
||||
}
|
||||
1 ->{
|
||||
mBinding.groupFail.visibility = View.GONE
|
||||
mBinding.ivStart.visibility = View.GONE
|
||||
mBinding.ivSuccess.visibility = View.VISIBLE
|
||||
window?.decorView?.postDelayed({
|
||||
dismiss()
|
||||
}, 1500)
|
||||
}
|
||||
2 ->{
|
||||
mBinding.groupFail.visibility = View.VISIBLE
|
||||
mBinding.ivStart.visibility = View.GONE
|
||||
mBinding.ivSuccess.visibility = View.GONE
|
||||
|
||||
window?.decorView?.postDelayed({
|
||||
dismiss()
|
||||
}, 1500)
|
||||
}
|
||||
}
|
||||
|
||||
window?.decorView?.postDelayed({
|
||||
dismiss()
|
||||
}, 1500)
|
||||
|
||||
|
||||
}
|
||||
var webpDrawable:WebpDrawable? = null
|
||||
fun loadWebpOneStart(webp_anim: Int, mAnimView: ImageView?) {
|
||||
if (mAnimView == null) {
|
||||
return
|
||||
}
|
||||
// 1. 本地资源专属优化配置
|
||||
val options = RequestOptions() // 强制限制解码尺寸为ImageView显示尺寸(核心优化)
|
||||
.override(800, 800) // 本地图用原尺寸,或指定固定尺寸
|
||||
|
||||
//webp动图
|
||||
val transformation = CenterInside()
|
||||
Glide.with(mAnimView)
|
||||
.load(webp_anim) //不是本地资源就改为url即可
|
||||
.apply(options)
|
||||
.optionalTransform(transformation)
|
||||
.optionalTransform(WebpDrawable::class.java, WebpDrawableTransformation(transformation))
|
||||
.addListener(object : RequestListener<Drawable> {
|
||||
override fun onLoadFailed(
|
||||
e: GlideException?,
|
||||
model: Any,
|
||||
target: Target<Drawable>,
|
||||
isFirstResource: Boolean
|
||||
): Boolean {
|
||||
return false
|
||||
}
|
||||
|
||||
override fun onResourceReady(
|
||||
resource: Drawable,
|
||||
model: Any,
|
||||
target: Target<Drawable>,
|
||||
dataSource: DataSource,
|
||||
isFirstResource: Boolean
|
||||
): Boolean {
|
||||
webpDrawable = resource as WebpDrawable
|
||||
//需要设置为循环1次才会有onAnimationEnd回调
|
||||
webpDrawable?.loopCount = 1
|
||||
webpDrawable?.registerAnimationCallback(object :
|
||||
Animatable2Compat.AnimationCallback() {
|
||||
override fun onAnimationStart(drawable: Drawable) {
|
||||
super.onAnimationStart(drawable)
|
||||
}
|
||||
|
||||
override fun onAnimationEnd(drawable: Drawable) {
|
||||
super.onAnimationEnd(drawable)
|
||||
webpDrawable?.unregisterAnimationCallback(this)
|
||||
dismiss()
|
||||
}
|
||||
})
|
||||
|
||||
return false
|
||||
}
|
||||
})
|
||||
.into(mAnimView)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -453,7 +453,7 @@ public class GiftLotteryDialog extends BaseMvpDialogFragment<GiftLotteryPresente
|
||||
} catch (Exception e) {
|
||||
viewName = "未知View ID: " + id;
|
||||
}
|
||||
LogUtils.e("GiftLotteryDFragment","点击了" + viewName );
|
||||
LogUtils.e("GiftLotteryDFragment","点击了" + viewName +",isDrawing="+isDrawing);
|
||||
}
|
||||
|
||||
private void setBackground() {
|
||||
|
||||
@@ -134,7 +134,7 @@ public class RedBagSendDialog extends BaseDialog<DialogRedBagSendBinding> {
|
||||
int num = Integer.parseInt(numStr);
|
||||
int text = Integer.parseInt(textStr);
|
||||
|
||||
if (text <= num) {
|
||||
if (text < num) {
|
||||
diaj=false;
|
||||
ToastUtils.show("金额必须大于数量");
|
||||
return;
|
||||
@@ -281,7 +281,7 @@ public class RedBagSendDialog extends BaseDialog<DialogRedBagSendBinding> {
|
||||
int num = Integer.parseInt(numStr);
|
||||
int text = Integer.parseInt(textStr);
|
||||
|
||||
if (text <= num) {
|
||||
if (text < num) {
|
||||
diaj=false;
|
||||
ToastUtils.show("金额必须大于数量");
|
||||
return;
|
||||
|
||||
@@ -21,6 +21,7 @@ import com.xscm.modulemain.databinding.FragmentRoomOnlineDialogBinding;
|
||||
import com.xscm.moduleutil.base.BaseMvpDialogFragment;
|
||||
import com.xscm.moduleutil.bean.RedPacketInfo;
|
||||
import com.xscm.moduleutil.bean.RoomCharmRankBean;
|
||||
import com.xscm.moduleutil.bean.TasksMessage;
|
||||
import com.xscm.moduleutil.bean.UserOnlineStatusBean;
|
||||
import com.xscm.moduleutil.bean.room.RoomInfoResp;
|
||||
import com.xscm.moduleutil.bean.room.RoomOnline;
|
||||
@@ -72,7 +73,7 @@ public class RoomOnlineDialogFragment extends BaseMvpDialogFragment<RoomPresente
|
||||
|
||||
@Override
|
||||
protected void initData() {
|
||||
// MvpPre.getRoomOnline(getArguments().getString("roomId"), "1", "10");
|
||||
MvpPre.getRoomOnline(getArguments().getString("roomId"), "1", "10");
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -386,4 +387,9 @@ public class RoomOnlineDialogFragment extends BaseMvpDialogFragment<RoomPresente
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getTasksMessage(TasksMessage data) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@ import androidx.annotation.Nullable;
|
||||
import androidx.constraintlayout.widget.ConstraintLayout;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
|
||||
import android.text.TextUtils;
|
||||
import android.view.Gravity;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
@@ -119,7 +120,7 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
@Override
|
||||
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
LogUtils.e("roomId:" + room_id+",userId:"+user_id);
|
||||
LogUtils.e("roomId:" + room_id + ",userId:" + user_id);
|
||||
MvpPre.getRoomUserInfo(room_id, user_id);
|
||||
}
|
||||
|
||||
@@ -269,8 +270,8 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
MvpPre.clearUserCharm(room_id, user_id);
|
||||
} else if (id == R.id.im_gs) {
|
||||
RoomManager.getInstance().fetchRoomDataAndEnter(getActivity(), room_id, "", null);
|
||||
}else if (id == R.id.iv_right_avatar){
|
||||
if(userInfo.getMaster()!=null && userInfo.getMaster().getUser_id()!=null) {
|
||||
} else if (id == R.id.iv_right_avatar) {
|
||||
if (userInfo.getMaster() != null && userInfo.getMaster().getUser_id() != null) {
|
||||
ARouter.getInstance().build(ARouteConstants.USER_HOME_PAGE).withString("userId", userInfo.getMaster().getUser_id() + "").navigation();
|
||||
dismiss();
|
||||
}
|
||||
@@ -283,7 +284,7 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
} catch (Exception e) {
|
||||
viewName = "未知View ID: " + id;
|
||||
}
|
||||
LogUtils.e("roomUserInfoFragment","点击了" + viewName );
|
||||
LogUtils.e("roomUserInfoFragment", "点击了" + viewName);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -472,10 +473,10 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
mBinding.tvName.setShineType(0);
|
||||
}
|
||||
|
||||
if(userInfo.getMaster()!=null){
|
||||
if (userInfo.getMaster() != null) {
|
||||
mBinding.ivRightAvatar.setVisibility(VISIBLE);
|
||||
mBinding.ivRightAvatar.setMaster(userInfo.getMaster().getAvatar());
|
||||
}else {
|
||||
} else {
|
||||
mBinding.ivRightAvatar.setVisibility(GONE);
|
||||
}
|
||||
|
||||
@@ -495,7 +496,7 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
// mBinding.imRoomGz.setImageDrawable(getResources().getDrawable(com.xscm.moduleutil.R.mipmap.room_gz));
|
||||
mBinding.imRoomGz.setText("+ 关注");
|
||||
mBinding.imRoomGz.setBackgroundTintList(ColorStateList.valueOf(Color.parseColor("#ff52FF96")));
|
||||
}
|
||||
}
|
||||
|
||||
if (userInfo.getIs_room_owner().equals("1")) {
|
||||
close_type = 1;
|
||||
@@ -513,9 +514,9 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
if (userInfo.getGuild_name() == null || userInfo.getGuild_name().isEmpty()) {
|
||||
mBinding.tvGh.setText("所属公会:无");
|
||||
} else {
|
||||
if (userInfo.getUser_id() == SpUtil.getUserId()){
|
||||
if (userInfo.getUser_id() == SpUtil.getUserId()) {
|
||||
mBinding.tvJoinGuild.setVisibility(GONE);
|
||||
}else if (userInfo.getMe_guild_name() == null || userInfo.getMe_guild_name().isEmpty()){
|
||||
} else if (userInfo.getMe_guild_name() == null || userInfo.getMe_guild_name().isEmpty()) {
|
||||
mBinding.tvJoinGuild.setVisibility(VISIBLE);
|
||||
}
|
||||
mBinding.tvGh.setText("所属公会:" + userInfo.getGuild_name());
|
||||
@@ -541,9 +542,9 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
|
||||
private void showCp() {
|
||||
|
||||
if (userInfo.getUser_id() == SpUtil.getUserId()){
|
||||
if (userInfo.getUser_id() == SpUtil.getUserId()) {
|
||||
mBinding.imRoomGz.setVisibility(GONE);
|
||||
}else {
|
||||
} else {
|
||||
mBinding.imRoomGz.setVisibility(VISIBLE);
|
||||
}
|
||||
|
||||
@@ -584,7 +585,7 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
Intent intent = new Intent(ActivityUtils.getTopActivity(), HeartCpActivity.class);
|
||||
intent.putExtra("userId",userInfo.getUser_id());
|
||||
intent.putExtra("userId", userInfo.getUser_id());
|
||||
startActivity(intent);
|
||||
}
|
||||
});
|
||||
@@ -659,8 +660,8 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
params.topToTop = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
break;
|
||||
}
|
||||
}catch (NullPointerException e){
|
||||
LogUtils.e("挂件位置异常"+e.toString());
|
||||
} catch (NullPointerException e) {
|
||||
LogUtils.e("挂件位置异常" + e.toString());
|
||||
}
|
||||
mBinding.llCpAnimAvatar.setLayoutParams(params);
|
||||
}
|
||||
@@ -727,7 +728,7 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
} else {
|
||||
mBinding.roomMCz.setVisibility(GONE);
|
||||
}
|
||||
if (paim == 1 && pit_number != null && (pit_number.equals("888") || pit_number.equals("111") || pit_number.equals("222") || pit_number.equals("333"))) {
|
||||
if (paim == 1 && !TextUtils.isEmpty(pit_number) && (pit_number.equals("888") || pit_number.equals("111") || pit_number.equals("222") || pit_number.equals("333"))) {
|
||||
mBinding.roomMCz.setVisibility(GONE);
|
||||
}
|
||||
|
||||
@@ -923,7 +924,7 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
|
||||
@Override
|
||||
public void userGuanzSuccess(String s) {
|
||||
LogUtils.e("userGuanzSuccess :"+userInfo.getIs_follow());
|
||||
LogUtils.e("userGuanzSuccess :" + userInfo.getIs_follow());
|
||||
if (userInfo.getIs_follow() == 1) {
|
||||
userInfo.setIs_follow(0);
|
||||
mBinding.imRoomGz.setText("+ 关注");
|
||||
|
||||
@@ -275,7 +275,7 @@ public class TourClubDialogFragment extends BaseMvpDialogFragment<GiftLotteryPre
|
||||
if (!isDrawing) {
|
||||
isDrawing = true;
|
||||
prepareForNewLottery();
|
||||
num = "10";
|
||||
num = "5";
|
||||
MvpPre.xlhChou(roomId, num);
|
||||
} else {
|
||||
// com.hjq.toast.ToastUtils.show("正在抽奖中...");
|
||||
@@ -285,7 +285,7 @@ public class TourClubDialogFragment extends BaseMvpDialogFragment<GiftLotteryPre
|
||||
if (!isDrawing) {
|
||||
isDrawing = true;
|
||||
prepareForNewLottery();
|
||||
num = "100";
|
||||
num = "8";
|
||||
MvpPre.xlhChou(roomId, num);
|
||||
} else {
|
||||
// com.hjq.toast.ToastUtils.show("正在抽奖中...");
|
||||
@@ -411,8 +411,8 @@ public class TourClubDialogFragment extends BaseMvpDialogFragment<GiftLotteryPre
|
||||
private void upTitle(int boxPrice) {
|
||||
this.mboxPrice = boxPrice;
|
||||
mBinding.tvOne.setText(boxPrice + "币一次");
|
||||
mBinding.tvTen.setText((boxPrice * 10) + "币十次");
|
||||
mBinding.tvHundred.setText((boxPrice * 100) + "币百次");
|
||||
mBinding.tvTen.setText((boxPrice * 5) + "币五次");
|
||||
mBinding.tvHundred.setText((boxPrice * 8) + "币八次");
|
||||
}
|
||||
|
||||
// TODO: 2025/8/29 接收im推送过来的消息
|
||||
@@ -619,12 +619,12 @@ public class TourClubDialogFragment extends BaseMvpDialogFragment<GiftLotteryPre
|
||||
mBinding.llOne.setClickable( false);
|
||||
}
|
||||
|
||||
if (icon>=mboxPrice*10){
|
||||
if (icon>=mboxPrice*5){
|
||||
mBinding.llTen.setClickable( true);
|
||||
}else {
|
||||
mBinding.llTen.setClickable( false);
|
||||
}
|
||||
if (icon>=mboxPrice*100){
|
||||
if (icon>=mboxPrice*8){
|
||||
mBinding.llHundred.setClickable( true);
|
||||
}else {
|
||||
mBinding.llHundred.setClickable( false);
|
||||
|
||||
@@ -399,6 +399,7 @@ public class RoomManager {
|
||||
CommonAppContext.getInstance().playId.equals(roomId) ?"":"去上一个房间",
|
||||
CommonAppContext.getInstance().playId.equals(roomId) ?"取消":"在想想",
|
||||
v -> {
|
||||
MessageListenerSingleton.getInstance().joinGroup(roomId);
|
||||
// 点击“确认”按钮时执行删除操作
|
||||
fetchAndJoinRoom(ActivityUtils.getTopActivity(),roomId,"",taskId);
|
||||
},
|
||||
|
||||
BIN
MainModule/src/main/res/drawable/iv_start.webp
Normal file
|
After Width: | Height: | Size: 2.2 MiB |