[Modify]修复个播沒有頭飾和修改尋愛接口邏輯

This commit is contained in:
wushaocheng
2023-03-27 20:50:47 +08:00
parent 14a1e2d5c8
commit 1d882041a7
9 changed files with 157 additions and 42 deletions

View File

@@ -0,0 +1,18 @@
package com.yizhuan.treasure_box.bean;
import java.io.Serializable;
import java.util.List;
public class OpenBoxDrawResult implements Serializable {
private List<PrizeNewInfo> prizeItemList;
public List<PrizeNewInfo> getPrizeItemList() {
return prizeItemList;
}
public void setPrizeItemList(List<PrizeNewInfo> prizeItemList) {
this.prizeItemList = prizeItemList;
}
}

View File

@@ -0,0 +1,60 @@
package com.yizhuan.treasure_box.bean;
import java.io.Serializable;
public class PrizeNewInfo implements Serializable {
/**
* prizeName :
* prizeImgUrl :
* prizeLevel : 1
* drawTime : 11111
*/
private int rewardId;
private String rewardName;
private String picUrl;
private int diamonds;
private int num;
public int getRewardId() {
return rewardId;
}
public void setRewardId(int rewardId) {
this.rewardId = rewardId;
}
public String getRewardName() {
return rewardName;
}
public void setRewardName(String rewardName) {
this.rewardName = rewardName;
}
public String getPicUrl() {
return picUrl;
}
public void setPicUrl(String picUrl) {
this.picUrl = picUrl;
}
public int getDiamonds() {
return diamonds;
}
public void setDiamonds(int diamonds) {
this.diamonds = diamonds;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
}

View File

@@ -1,14 +1,15 @@
package com.yizhuan.treasure_box.model;
import com.yizhuan.xchat_android_core.R;
import com.yizhuan.treasure_box.bean.BoxOpenStatusInfo;
import com.yizhuan.treasure_box.bean.ConfigImgUrl;
import com.yizhuan.treasure_box.bean.HonourBuyKeyResultInfo;
import com.yizhuan.treasure_box.bean.HonourKeyInfo;
import com.yizhuan.treasure_box.bean.KeyInfo;
import com.yizhuan.treasure_box.bean.OpenBoxDrawResult;
import com.yizhuan.treasure_box.bean.OpenBoxHonourResult;
import com.yizhuan.treasure_box.bean.OpenBoxResult;
import com.yizhuan.treasure_box.bean.PrizeInfo;
import com.yizhuan.xchat_android_core.R;
import com.yizhuan.xchat_android_core.auth.AuthModel;
import com.yizhuan.xchat_android_core.base.BaseModel;
import com.yizhuan.xchat_android_core.bean.response.ServiceResult;
@@ -59,12 +60,35 @@ public class BoxModel extends BaseModel implements IBoxModel {
}
@Override
public Single<OpenBoxResult> openBox(int boxType,int keyNum, boolean sendMessage) {
public Single<OpenBoxDrawResult> openBoxDraw(int keyNum, boolean sendMessage) {
if (AvRoomDataManager.get().mCurrentRoomInfo == null) {
return Single.error(new Throwable(ResUtil.getString(R.string.treasure_box_model_boxmodel_01)));
}
return api.openBox(boxType,keyNum, sendMessage, AuthModel.get().getCurrentUid(),
AvRoomDataManager.get().mCurrentRoomInfo.getUid())
return api.openBoxDraw(keyNum, sendMessage, AvRoomDataManager.get().mCurrentRoomInfo.getUid())
.compose(RxHelper.handleSchedulers())
.flatMap(openBoxResultServiceResult -> {
if (openBoxResultServiceResult == null) {
return Single.error(new Throwable("no response"));
}
if (openBoxResultServiceResult.isSuccess()) {
if (openBoxResultServiceResult.getData() != null) {
return Single.just(openBoxResultServiceResult.getData());
} else {
return Single.error(new Throwable("data is null"));
}
}
return Single.error(new FailReasonException(openBoxResultServiceResult.getMessage(),
openBoxResultServiceResult.getCode()));
});
}
@Override
public Single<OpenBoxResult> openBox(int boxType, int keyNum, boolean sendMessage) {
if (AvRoomDataManager.get().mCurrentRoomInfo == null) {
return Single.error(new Throwable(ResUtil.getString(R.string.treasure_box_model_boxmodel_01)));
}
return api.openBox(boxType, keyNum, sendMessage, AuthModel.get().getCurrentUid(),
AvRoomDataManager.get().mCurrentRoomInfo.getUid())
.compose(RxHelper.handleSchedulers())
.flatMap(openBoxResultServiceResult -> {
if (openBoxResultServiceResult == null) {
@@ -113,7 +137,7 @@ public class BoxModel extends BaseModel implements IBoxModel {
@Override
public Single<KeyInfo> getKeyInfo(int boxType) {
return api.getKeyInfo(boxType,AuthModel.get().getCurrentUid())
return api.getKeyInfo(boxType, AuthModel.get().getCurrentUid())
.compose(RxHelper.handleSchedulers())
.compose(RxHelper.handleBeanData());
}
@@ -175,6 +199,20 @@ public class BoxModel extends BaseModel implements IBoxModel {
@Query("sortType") String sortType,
@Query("uid") long uid);
/**
* 寻爱抽奖
*
* @param num
* @param sendMessage
* @param roomUid
* @return
*/
@FormUrlEncoded
@POST("/findLove/draw")
Single<ServiceResult<OpenBoxDrawResult>> openBoxDraw(@Field("num") int num,
@Field("sendMessage") boolean sendMessage,
@Field("roomUid") long roomUid);
/**
* 开宝箱
*

View File

@@ -5,6 +5,7 @@ import com.yizhuan.treasure_box.bean.ConfigImgUrl;
import com.yizhuan.treasure_box.bean.HonourBuyKeyResultInfo;
import com.yizhuan.treasure_box.bean.HonourKeyInfo;
import com.yizhuan.treasure_box.bean.KeyInfo;
import com.yizhuan.treasure_box.bean.OpenBoxDrawResult;
import com.yizhuan.treasure_box.bean.OpenBoxHonourResult;
import com.yizhuan.treasure_box.bean.OpenBoxResult;
import com.yizhuan.treasure_box.bean.PrizeInfo;
@@ -24,6 +25,15 @@ public interface IBoxModel extends IModel {
*/
Single<ConfigImgUrl> getRule();
/**
* 寻爱抽奖
*
* @param keyNum
* @param sendMessage
* @return
*/
Single<OpenBoxDrawResult> openBoxDraw(int keyNum, boolean sendMessage);
/**
* 开箱子
*