1:添加签到功能,在首页展示,跟在青少年模式下,
2:在任务页面展示签到功能
This commit is contained in:
@@ -919,4 +919,14 @@ public interface ApiServer {
|
|||||||
@FormUrlEncoded
|
@FormUrlEncoded
|
||||||
@POST(Constants.POST_SIGN_REFUSE)
|
@POST(Constants.POST_SIGN_REFUSE)
|
||||||
Call<BaseModel<String>> signRefuse(@Field("room_id") String room_id);
|
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_FREE_RE_SIGN = "/api/Sign/free_re_sign";//免费续约
|
||||||
public static final String POST_RE_SIGN = "/api/Sign/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 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.IPresenter;
|
||||||
import com.xscm.moduleutil.activity.IView;
|
import com.xscm.moduleutil.activity.IView;
|
||||||
import com.xscm.moduleutil.bean.ActivitiesPermission;
|
import com.xscm.moduleutil.bean.ActivitiesPermission;
|
||||||
|
import com.xscm.moduleutil.bean.TasksSignStatus;
|
||||||
|
|
||||||
|
|
||||||
public final class VoiceContacts {
|
public final class VoiceContacts {
|
||||||
@@ -15,6 +16,8 @@ public final class VoiceContacts {
|
|||||||
void hideRecommend(boolean hideRecommend,boolean hideGame);
|
void hideRecommend(boolean hideRecommend,boolean hideGame);
|
||||||
void activitiesPermissionSuccess(ActivitiesPermission activitiesPermission);
|
void activitiesPermissionSuccess(ActivitiesPermission activitiesPermission);
|
||||||
|
|
||||||
|
void tasksSignStatus(TasksSignStatus tasksSignStatus);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IIndexPre extends IPresenter {
|
public interface IIndexPre extends IPresenter {
|
||||||
@@ -25,6 +28,8 @@ public final class VoiceContacts {
|
|||||||
|
|
||||||
void activitiesPermission();//活动弹框权限
|
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.activity.room.contacts.VoiceContacts;
|
||||||
import com.xscm.modulemain.databinding.FragmentVoiceBinding;
|
import com.xscm.modulemain.databinding.FragmentVoiceBinding;
|
||||||
import com.xscm.modulemain.activity.room.presenter.VoicePresenter;
|
import com.xscm.modulemain.activity.room.presenter.VoicePresenter;
|
||||||
|
import com.xscm.modulemain.dialog.SignInDialog;
|
||||||
import com.xscm.moduleutil.adapter.MyFragmentPagerAdapter;
|
import com.xscm.moduleutil.adapter.MyFragmentPagerAdapter;
|
||||||
import com.xscm.moduleutil.base.BaseMvpFragment;
|
import com.xscm.moduleutil.base.BaseMvpFragment;
|
||||||
import com.xscm.moduleutil.bean.ActivitiesPermission;
|
import com.xscm.moduleutil.bean.ActivitiesPermission;
|
||||||
import com.xscm.moduleutil.bean.FirstChargeGiftBean;
|
import com.xscm.moduleutil.bean.FirstChargeGiftBean;
|
||||||
|
import com.xscm.moduleutil.bean.TasksSignStatus;
|
||||||
import com.xscm.moduleutil.dialog.FirstChargeDialog;
|
import com.xscm.moduleutil.dialog.FirstChargeDialog;
|
||||||
import com.xscm.moduleutil.dialog.RechargeDialogFragment;
|
import com.xscm.moduleutil.dialog.RechargeDialogFragment;
|
||||||
import com.xscm.modulemain.dialog.YouthModelDialog;
|
import com.xscm.modulemain.dialog.YouthModelDialog;
|
||||||
@@ -33,6 +35,8 @@ import java.util.concurrent.TimeUnit;
|
|||||||
|
|
||||||
import io.reactivex.Observable;
|
import io.reactivex.Observable;
|
||||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||||
|
import kotlin.Unit;
|
||||||
|
import kotlin.jvm.functions.Function0;
|
||||||
|
|
||||||
|
|
||||||
public class VoiceFragment extends BaseMvpFragment<VoicePresenter, FragmentVoiceBinding> implements VoiceContacts.View {
|
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);
|
SpUtil.setBooleanValue("youth_model_shown", true);
|
||||||
dialog.dismiss();
|
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(){
|
private void setDialog(){
|
||||||
if(ActivityUtils.getTopActivity() instanceof MainActivity){
|
if(ActivityUtils.getTopActivity() instanceof MainActivity){
|
||||||
((MainActivity)ActivityUtils.getTopActivity()).dialogUp();
|
((MainActivity)ActivityUtils.getTopActivity()).dialogUp();
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import android.content.Context;
|
|||||||
|
|
||||||
import com.xscm.modulemain.activity.room.contacts.VoiceContacts;
|
import com.xscm.modulemain.activity.room.contacts.VoiceContacts;
|
||||||
import com.xscm.moduleutil.bean.ActivitiesPermission;
|
import com.xscm.moduleutil.bean.ActivitiesPermission;
|
||||||
|
import com.xscm.moduleutil.bean.TasksSignStatus;
|
||||||
import com.xscm.moduleutil.http.BaseObserver;
|
import com.xscm.moduleutil.http.BaseObserver;
|
||||||
import com.xscm.moduleutil.presenter.BasePresenter;
|
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.activity.user.presenter.DailyTasksPresenter;
|
||||||
import com.xscm.modulemain.BaseMvpActivity;
|
import com.xscm.modulemain.BaseMvpActivity;
|
||||||
import com.xscm.modulemain.activity.WebViewActivity;
|
import com.xscm.modulemain.activity.WebViewActivity;
|
||||||
|
import com.xscm.modulemain.dialog.SignInDialog;
|
||||||
import com.xscm.modulemain.manager.RoomManager;
|
import com.xscm.modulemain.manager.RoomManager;
|
||||||
import com.xscm.moduleutil.base.CommonAppContext;
|
import com.xscm.moduleutil.base.CommonAppContext;
|
||||||
import com.xscm.moduleutil.bean.RoomMessageEvent;
|
import com.xscm.moduleutil.bean.RoomMessageEvent;
|
||||||
import com.xscm.moduleutil.bean.TaskDataBean;
|
|
||||||
import com.xscm.moduleutil.utils.CustomMsgCode;
|
import com.xscm.moduleutil.utils.CustomMsgCode;
|
||||||
import com.xscm.moduleutil.base.WebUrlConstants;
|
import com.xscm.moduleutil.base.WebUrlConstants;
|
||||||
import com.xscm.moduleutil.bean.GiftBoxBean;
|
import com.xscm.moduleutil.bean.GiftBoxBean;
|
||||||
@@ -45,6 +45,8 @@ import java.util.concurrent.TimeUnit;
|
|||||||
|
|
||||||
import io.reactivex.Observable;
|
import io.reactivex.Observable;
|
||||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||||
|
import kotlin.Unit;
|
||||||
|
import kotlin.jvm.functions.Function0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author qx
|
* @author qx
|
||||||
@@ -110,7 +112,8 @@ public class DailyTasksActivity extends BaseMvpActivity<DailyTasksPresenter, Act
|
|||||||
break;
|
break;
|
||||||
case 3://已完成
|
case 3://已完成
|
||||||
if (item.getTask_id() == 1){
|
if (item.getTask_id() == 1){
|
||||||
|
SignInDialog sginDialog = new SignInDialog(DailyTasksActivity.this);
|
||||||
|
sginDialog.show();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -154,6 +157,15 @@ public class DailyTasksActivity extends BaseMvpActivity<DailyTasksPresenter, Act
|
|||||||
private void taskStatus1(GiftBoxBean.TaskDataBean.DailyTasksBean item) {
|
private void taskStatus1(GiftBoxBean.TaskDataBean.DailyTasksBean item) {
|
||||||
switch (item.getTask_id()){
|
switch (item.getTask_id()){
|
||||||
case 1:
|
case 1:
|
||||||
|
SignInDialog sginDialog = new SignInDialog(this);
|
||||||
|
sginDialog.setOnCloseListener(new Function0<Unit>() {
|
||||||
|
@Override
|
||||||
|
public Unit invoke() {
|
||||||
|
MvpPre.tasksLihen();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
sginDialog.show();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
switch (item.getJump_type()) {
|
switch (item.getJump_type()) {
|
||||||
|
|||||||
Reference in New Issue
Block a user