日常任务改版tab
This commit is contained in:
@@ -978,6 +978,7 @@ public enum BusiStatus {
|
||||
|
||||
GUILD_H5_INVITE_EMAIL_ALREADY_BOUND(33001, "该邮箱地址不是新的"),
|
||||
GUILD_H5_INVITE_JOIN_GUILD_NOT_EXIST(33002, "邀请人公会不存在"),
|
||||
DAILY_TASK_LIMIT(500, "ACCESS DENIED"),
|
||||
;
|
||||
|
||||
private final int value;
|
||||
|
@@ -48,4 +48,11 @@ public interface DailyTaskConstant {
|
||||
|
||||
int IP_SIGN_LIMIT_NUM = 5;
|
||||
int SIGN_ROUND_DAY = 7;
|
||||
|
||||
|
||||
interface TaskTabType {
|
||||
int DAILY_TAB = 1;
|
||||
int WEEK_TAB = 2;
|
||||
int GUILD_TAB = 3;
|
||||
}
|
||||
}
|
||||
|
@@ -0,0 +1,20 @@
|
||||
package com.accompany.business.vo.dailytask;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
@ApiModel
|
||||
@Data
|
||||
public class DailyTaskTabVo {
|
||||
@ApiModelProperty("tab类型,1-日常任务,2-周任务,3-公会开业")
|
||||
private Integer taskTabType;
|
||||
@ApiModelProperty("是否开启")
|
||||
private Boolean locked;
|
||||
}
|
@@ -2,6 +2,7 @@ package com.accompany.business.service.dailytask;
|
||||
|
||||
import com.accompany.business.common.constant.RewardTypeEnum;
|
||||
import com.accompany.business.common.vo.RewardVo;
|
||||
import com.accompany.business.constant.dailytask.DailyTaskConstant;
|
||||
import com.accompany.business.constant.dailytask.DailyTaskTypeEnum;
|
||||
import com.accompany.business.constant.guild.GuildConstant;
|
||||
import com.accompany.business.model.dailytask.DailyTaskConfig;
|
||||
@@ -10,13 +11,11 @@ import com.accompany.business.model.guild.GuildMember;
|
||||
import com.accompany.business.service.activity.h5.ActivityH5LevelAwardService;
|
||||
import com.accompany.business.service.guild.GuildMemberService;
|
||||
import com.accompany.business.service.user.UsersService;
|
||||
import com.accompany.business.vo.dailytask.DailyProgressContext;
|
||||
import com.accompany.business.vo.dailytask.DailyTaskContext;
|
||||
import com.accompany.business.vo.dailytask.DailyTaskRewardVo;
|
||||
import com.accompany.business.vo.dailytask.DailyTaskVo;
|
||||
import com.accompany.business.vo.dailytask.*;
|
||||
import com.accompany.common.result.BusiResult;
|
||||
import com.accompany.common.status.BusiStatus;
|
||||
import com.accompany.common.utils.StringUtils;
|
||||
import com.accompany.core.enumeration.PartitionEnum;
|
||||
import com.accompany.core.exception.ServiceException;
|
||||
import com.accompany.core.model.Users;
|
||||
import com.accompany.payment.service.RechargeUserService;
|
||||
@@ -91,6 +90,27 @@ public class DailyTaskService {
|
||||
return handler.receive(uid, todayDate, dailyTaskVo);
|
||||
}
|
||||
|
||||
public BusiResult<List<DailyTaskTabVo>> taskTab(Long uid) {
|
||||
Users users = usersService.getUsersByUid(uid);
|
||||
Integer partitionId = users.getPartitionId();
|
||||
List<DailyTaskTabVo> resultList = new ArrayList<>();
|
||||
resultList.add(DailyTaskTabVo.builder().taskTabType(DailyTaskConstant.TaskTabType.DAILY_TAB).locked(Boolean.TRUE).build());
|
||||
if (PartitionEnum.ENGLISH2.getId() == partitionId) {
|
||||
GuildMember guildMember = guildMemberService.getVaildGuildMemberByUid(uid);
|
||||
if (guildMember == null) {
|
||||
resultList.add(DailyTaskTabVo.builder().taskTabType(DailyTaskConstant.TaskTabType.WEEK_TAB).locked(Boolean.FALSE).build());
|
||||
resultList.add(DailyTaskTabVo.builder().taskTabType(DailyTaskConstant.TaskTabType.GUILD_TAB).locked(Boolean.FALSE).build());
|
||||
} else if (guildMember.getRoleType().equals(GuildConstant.RoleType.OWNER)) {
|
||||
resultList.add(DailyTaskTabVo.builder().taskTabType(DailyTaskConstant.TaskTabType.WEEK_TAB).locked(Boolean.TRUE).build());
|
||||
resultList.add(DailyTaskTabVo.builder().taskTabType(DailyTaskConstant.TaskTabType.GUILD_TAB).locked(Boolean.TRUE).build());
|
||||
} else {
|
||||
resultList.add(DailyTaskTabVo.builder().taskTabType(DailyTaskConstant.TaskTabType.WEEK_TAB).locked(Boolean.TRUE).build());
|
||||
resultList.add(DailyTaskTabVo.builder().taskTabType(DailyTaskConstant.TaskTabType.GUILD_TAB).locked(Boolean.FALSE).build());
|
||||
}
|
||||
}
|
||||
return BusiResult.success(resultList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 任务列表
|
||||
*
|
||||
@@ -109,6 +129,14 @@ public class DailyTaskService {
|
||||
}
|
||||
});
|
||||
|
||||
if (guildMember == null && (taskTabType == DailyTaskConstant.TaskTabType.GUILD_TAB
|
||||
|| taskTabType == DailyTaskConstant.TaskTabType.WEEK_TAB)) {
|
||||
throw new ServiceException(BusiStatus.DAILY_TASK_LIMIT);
|
||||
} else if (guildMember != null && !guildMember.getRoleType().equals(GuildConstant.RoleType.OWNER)
|
||||
&& taskTabType == DailyTaskConstant.TaskTabType.GUILD_TAB) {
|
||||
throw new ServiceException(BusiStatus.DAILY_TASK_LIMIT);
|
||||
}
|
||||
|
||||
Users users = usersService.getUsersByUid(uid);
|
||||
Integer partitionId = users.getPartitionId();
|
||||
List<DailyTaskVo> dailyTaskVos = this.taskVoList(partitionId, taskTabType, taskRole, uid);
|
||||
@@ -121,7 +149,6 @@ public class DailyTaskService {
|
||||
executeDailyTask(dailyTaskVo, uid, partitionId);
|
||||
});
|
||||
|
||||
|
||||
return dailyTaskVos;
|
||||
}
|
||||
|
||||
|
@@ -3,6 +3,7 @@ package com.accompany.business.controller.activity.dailytask;
|
||||
import com.accompany.business.service.dailytask.DailyTaskService;
|
||||
import com.accompany.business.service.dailytask.DailyTaskShopService;
|
||||
import com.accompany.business.vo.dailytask.DailyTaskShopCenterVo;
|
||||
import com.accompany.business.vo.dailytask.DailyTaskTabVo;
|
||||
import com.accompany.business.vo.dailytask.DailyTaskVo;
|
||||
import com.accompany.business.vo.dailytask.UserGoldBeanBillVo;
|
||||
import com.accompany.common.result.BusiResult;
|
||||
@@ -26,6 +27,13 @@ public class DailyTaskController {
|
||||
@Autowired
|
||||
private DailyTaskShopService dailyTaskShopService;
|
||||
|
||||
|
||||
@ApiOperation(value = "任务列表-tab", httpMethod = "GET")
|
||||
@GetMapping("/taskTab")
|
||||
public BusiResult<List<DailyTaskTabVo>> taskTab(@RequestHeader(PUB_UID) Long uid) {
|
||||
return dailyTaskService.taskTab(uid);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "任务列表", httpMethod = "GET")
|
||||
@GetMapping("/tasks")
|
||||
public BusiResult<List<DailyTaskVo>> tasks(@RequestHeader(PUB_UID) Long uid,
|
||||
|
Reference in New Issue
Block a user