1:添加签到功能,在首页展示,跟在青少年模式下,
2:在任务页面展示签到功能
This commit is contained in:
@@ -919,4 +919,14 @@ public interface ApiServer {
|
||||
@FormUrlEncoded
|
||||
@POST(Constants.POST_SIGN_REFUSE)
|
||||
Call<BaseModel<String>> signRefuse(@Field("room_id") String room_id);
|
||||
|
||||
|
||||
@GET(Constants.GET_SIGN_IN_LIST)
|
||||
Call<BaseModel<List<SignInData>>> signIn();
|
||||
|
||||
@GET(Constants.POST_DAILY_TASKS_SIGN)
|
||||
Call<BaseModel<String>> postDailyTasksSign();
|
||||
|
||||
@GET(Constants.POST_DAILY_TASKS_SIGN_STATUS)
|
||||
Call<BaseModel<TasksSignStatus>> postDailyTasksSignStatus();
|
||||
}
|
||||
|
||||
@@ -4933,6 +4933,83 @@ public class RetrofitClient {
|
||||
}
|
||||
}
|
||||
|
||||
public void signIn(BaseObserver<List<SignInData>> observer) {
|
||||
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){
|
||||
BaseModel<List<SignInData>> baseModel = response.body();
|
||||
if (baseModel.getCode()==1){
|
||||
observer.onNext(baseModel.getData());
|
||||
}else if (baseModel.getCode()==0){
|
||||
com.hjq.toast.ToastUtils.show(baseModel.getMsg());
|
||||
}else if (baseModel.getCode()==301){
|
||||
try {
|
||||
CommonAppContext.getInstance().clearLoginInfo();
|
||||
ToastUtils.showShort(baseModel.getMsg());
|
||||
} catch (ClassNotFoundException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
}else {
|
||||
LogUtils.e("signIn",response.errorBody());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<BaseModel<List<SignInData>>> call, Throwable t) {
|
||||
LogUtils.e("signIn", t.fillInStackTrace());
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
public void dailyTasksSign(BaseObserver<String> observer) {
|
||||
sApiServer.postDailyTasksSign().enqueue(new Callback<BaseModel<String>>(){
|
||||
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
onNextRetu(response, observer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<BaseModel<String>> call, Throwable t) {
|
||||
LogUtils.e("signIn", t.fillInStackTrace());
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
public void tasksSignStatus(BaseObserver<TasksSignStatus> observer) {
|
||||
sApiServer.postDailyTasksSignStatus().enqueue(new Callback<BaseModel<TasksSignStatus>>(){
|
||||
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<TasksSignStatus>> call, Response<BaseModel<TasksSignStatus>> response) {
|
||||
if (response.code()==200){
|
||||
BaseModel<TasksSignStatus> baseModel = response.body();
|
||||
if (baseModel.getCode()==1){
|
||||
observer.onNext(baseModel.getData());
|
||||
}else if (baseModel.getCode()==0){
|
||||
com.hjq.toast.ToastUtils.show(baseModel.getMsg());
|
||||
}else if (baseModel.getCode()==301){
|
||||
try {
|
||||
CommonAppContext.getInstance().clearLoginInfo();
|
||||
ToastUtils.showShort(baseModel.getMsg());
|
||||
} catch (ClassNotFoundException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
}else {
|
||||
LogUtils.e("postDailyTasksSignStatus",response.errorBody());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<BaseModel<TasksSignStatus>> call, Throwable t) {
|
||||
LogUtils.e("postDailyTasksSignStatus", t.fillInStackTrace());
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -437,6 +437,9 @@ public class Constants {
|
||||
public static final String POST_FREE_RE_SIGN = "/api/Sign/free_re_sign";//免费续约
|
||||
public static final String POST_RE_SIGN = "/api/Sign/re_sign";//续签(花金币)
|
||||
public static final String POST_SIGN_REFUSE = "/api/RoomPit/refuse_sign_room_host_invite";//签约房间主持邀请上签约麦用户拒绝
|
||||
public static final String GET_SIGN_IN_LIST = "/api/Tasks/dailyTasksSignList";//签到列表页面
|
||||
public static final String POST_DAILY_TASKS_SIGN = "/api/Tasks/dailyTasksSign";//每日签到
|
||||
public static final String POST_DAILY_TASKS_SIGN_STATUS = "/api/Tasks/dailyTasksSignStatus";//每日签到状态
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -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.ActivitiesPermission;
|
||||
import com.xscm.moduleutil.bean.TasksSignStatus;
|
||||
|
||||
|
||||
public final class VoiceContacts {
|
||||
@@ -15,6 +16,8 @@ public final class VoiceContacts {
|
||||
void hideRecommend(boolean hideRecommend,boolean hideGame);
|
||||
void activitiesPermissionSuccess(ActivitiesPermission activitiesPermission);
|
||||
|
||||
void tasksSignStatus(TasksSignStatus tasksSignStatus);
|
||||
|
||||
}
|
||||
|
||||
public interface IIndexPre extends IPresenter {
|
||||
@@ -25,6 +28,8 @@ public final class VoiceContacts {
|
||||
|
||||
void activitiesPermission();//活动弹框权限
|
||||
|
||||
void tasksSignStatus();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -17,10 +17,12 @@ import com.xscm.modulemain.activity.room.activity.SearchActivity;
|
||||
import com.xscm.modulemain.activity.room.contacts.VoiceContacts;
|
||||
import com.xscm.modulemain.databinding.FragmentVoiceBinding;
|
||||
import com.xscm.modulemain.activity.room.presenter.VoicePresenter;
|
||||
import com.xscm.modulemain.dialog.SignInDialog;
|
||||
import com.xscm.moduleutil.adapter.MyFragmentPagerAdapter;
|
||||
import com.xscm.moduleutil.base.BaseMvpFragment;
|
||||
import com.xscm.moduleutil.bean.ActivitiesPermission;
|
||||
import com.xscm.moduleutil.bean.FirstChargeGiftBean;
|
||||
import com.xscm.moduleutil.bean.TasksSignStatus;
|
||||
import com.xscm.moduleutil.dialog.FirstChargeDialog;
|
||||
import com.xscm.moduleutil.dialog.RechargeDialogFragment;
|
||||
import com.xscm.modulemain.dialog.YouthModelDialog;
|
||||
@@ -33,6 +35,8 @@ import java.util.concurrent.TimeUnit;
|
||||
|
||||
import io.reactivex.Observable;
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||
import kotlin.Unit;
|
||||
import kotlin.jvm.functions.Function0;
|
||||
|
||||
|
||||
public class VoiceFragment extends BaseMvpFragment<VoicePresenter, FragmentVoiceBinding> implements VoiceContacts.View {
|
||||
@@ -98,7 +102,7 @@ public class VoiceFragment extends BaseMvpFragment<VoicePresenter, FragmentVoice
|
||||
// 记录已经显示过青少年模式弹窗
|
||||
SpUtil.setBooleanValue("youth_model_shown", true);
|
||||
dialog.dismiss();
|
||||
MvpPre.activitiesPermission();
|
||||
MvpPre.tasksSignStatus();
|
||||
|
||||
// 在这里可以继续显示其他弹窗,如首充弹窗
|
||||
}
|
||||
@@ -177,6 +181,23 @@ public class VoiceFragment extends BaseMvpFragment<VoicePresenter, FragmentVoice
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void tasksSignStatus(TasksSignStatus tasksSignStatus) {
|
||||
if (tasksSignStatus.getStatus()==1){
|
||||
MvpPre.activitiesPermission();
|
||||
}else {
|
||||
SignInDialog signInDialog = new SignInDialog(getContext());
|
||||
signInDialog.setOnCloseListener(new Function0<Unit>() {
|
||||
@Override
|
||||
public Unit invoke() {
|
||||
MvpPre.activitiesPermission();
|
||||
return null;
|
||||
}
|
||||
});
|
||||
signInDialog.show();
|
||||
}
|
||||
}
|
||||
|
||||
private void setDialog(){
|
||||
if(ActivityUtils.getTopActivity() instanceof MainActivity){
|
||||
((MainActivity)ActivityUtils.getTopActivity()).dialogUp();
|
||||
|
||||
@@ -4,6 +4,7 @@ import android.content.Context;
|
||||
|
||||
import com.xscm.modulemain.activity.room.contacts.VoiceContacts;
|
||||
import com.xscm.moduleutil.bean.ActivitiesPermission;
|
||||
import com.xscm.moduleutil.bean.TasksSignStatus;
|
||||
import com.xscm.moduleutil.http.BaseObserver;
|
||||
import com.xscm.moduleutil.presenter.BasePresenter;
|
||||
|
||||
@@ -134,4 +135,22 @@ public class VoicePresenter extends BasePresenter<VoiceContacts.View> implements
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void tasksSignStatus() {
|
||||
api.tasksSignStatus(new BaseObserver<TasksSignStatus>() {
|
||||
|
||||
@Override
|
||||
public void onSubscribe(Disposable d) {
|
||||
addDisposable(d);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(TasksSignStatus tasksSignStatus) {
|
||||
if (MvpRef==null)
|
||||
MvpRef=new WeakReference<>(mView);
|
||||
MvpRef.get().tasksSignStatus(tasksSignStatus);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -24,10 +24,10 @@ import com.xscm.modulemain.activity.user.conacts.DailyTasksConacts;
|
||||
import com.xscm.modulemain.activity.user.presenter.DailyTasksPresenter;
|
||||
import com.xscm.modulemain.BaseMvpActivity;
|
||||
import com.xscm.modulemain.activity.WebViewActivity;
|
||||
import com.xscm.modulemain.dialog.SignInDialog;
|
||||
import com.xscm.modulemain.manager.RoomManager;
|
||||
import com.xscm.moduleutil.base.CommonAppContext;
|
||||
import com.xscm.moduleutil.bean.RoomMessageEvent;
|
||||
import com.xscm.moduleutil.bean.TaskDataBean;
|
||||
import com.xscm.moduleutil.utils.CustomMsgCode;
|
||||
import com.xscm.moduleutil.base.WebUrlConstants;
|
||||
import com.xscm.moduleutil.bean.GiftBoxBean;
|
||||
@@ -45,6 +45,8 @@ import java.util.concurrent.TimeUnit;
|
||||
|
||||
import io.reactivex.Observable;
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||
import kotlin.Unit;
|
||||
import kotlin.jvm.functions.Function0;
|
||||
|
||||
/**
|
||||
* @author qx
|
||||
@@ -110,7 +112,8 @@ public class DailyTasksActivity extends BaseMvpActivity<DailyTasksPresenter, Act
|
||||
break;
|
||||
case 3://已完成
|
||||
if (item.getTask_id() == 1){
|
||||
|
||||
SignInDialog sginDialog = new SignInDialog(DailyTasksActivity.this);
|
||||
sginDialog.show();
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -154,6 +157,15 @@ public class DailyTasksActivity extends BaseMvpActivity<DailyTasksPresenter, Act
|
||||
private void taskStatus1(GiftBoxBean.TaskDataBean.DailyTasksBean item) {
|
||||
switch (item.getTask_id()){
|
||||
case 1:
|
||||
SignInDialog sginDialog = new SignInDialog(this);
|
||||
sginDialog.setOnCloseListener(new Function0<Unit>() {
|
||||
@Override
|
||||
public Unit invoke() {
|
||||
MvpPre.tasksLihen();
|
||||
return null;
|
||||
}
|
||||
});
|
||||
sginDialog.show();
|
||||
break;
|
||||
default:
|
||||
switch (item.getJump_type()) {
|
||||
|
||||
Reference in New Issue
Block a user