妖晶累充活动优化

duhui 2022-12-09 15:31:39 +08:00
parent e8c70027a9
commit 5861711eaa
1 changed files with 15 additions and 8 deletions

View File

@ -90,19 +90,27 @@ public class MoneyTotalRechargeActivity extends AbstractActivity {
*/
private int getState(User user, SActivityRewardConfig config){
if (config == null){
return 0;
return 1;
}
ActivityMission mission = user.getActivityManager().getActivityMissionMap().get(id);
ActivityProgressInfo info = mission.getActivityMissionMap().get(config.getId());
if (info != null && info.getState() == 2){
return 2;
}
if (mission.getV() >= config.getValues()[0][1]){
if (info != null && info.getState() == 1){
return 1;
}
return 0;
}
/**
*
* @param mission
* @param config
* @return
* @throws Exception
*/
boolean checkValue(ActivityMission mission, SActivityRewardConfig config) throws Exception {
return mission.getV() >= config.getValues()[0][1];
}
@Override
public List<CommonProto.ActivityInfo.MissionInfo> getAllMissInfo(User user,ActivityMission activityMission, Set<Integer> filter) {
if (activityMission == null){
@ -144,14 +152,13 @@ public class MoneyTotalRechargeActivity extends AbstractActivity {
throw new ErrorCodeException(ErrorCode.SYS_ERROR_CODE,"活动信息不存在:"+id);
}
SActivityRewardConfig rewardConfig = SActivityRewardConfig.getsActivityRewardConfigByMissionId(missionId);
int state = getState(user, rewardConfig);
if (state != 1){
if (!checkValue(mission,rewardConfig)){
throw new ErrorCodeException(ErrorCode.HAD_TAKE,"活动奖励领取失败:"+mission);
}
// 更新数据库信息
ActivityProgressInfo info = new ActivityProgressInfo();
info.setState(2);
info.setState(1);
mission.getActivityMissionMap().put(missionId,info);
// reward