Merge branch 'master_test_gn' of http://60.1.1.230/backend/jieling_server into dev_dh_fourSpirit2
commit
19c3a04559
|
@ -20,6 +20,8 @@ import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
public class CoreService implements RPCRequestIFace.Iface {
|
public class CoreService implements RPCRequestIFace.Iface {
|
||||||
private static final Logger LOGGER = LoggerFactory.getLogger(CoreService.class);
|
private static final Logger LOGGER = LoggerFactory.getLogger(CoreService.class);
|
||||||
|
@ -54,13 +56,12 @@ public class CoreService implements RPCRequestIFace.Iface {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public RechargeResult getRecharge(int uid) throws TException {
|
public RechargeResult getRecharge(int uid) {
|
||||||
try {
|
try {
|
||||||
HashSet<Integer> integers = new HashSet<>();
|
Set<Integer> list = BuyGoodsNewLogic.getGoodsBagInfoFromDelive(uid);
|
||||||
// BuyGoodsLogic.getGoodsBagInfoFromDelive(uid,integers);
|
|
||||||
RechargeResult result = new RechargeResult();
|
RechargeResult result = new RechargeResult();
|
||||||
result.setResultCode(1);
|
result.setResultCode(1);
|
||||||
result.setSubNodeSet(integers);
|
result.setSubNodeSet(list);
|
||||||
return result;
|
return result;
|
||||||
}catch (Exception e){
|
}catch (Exception e){
|
||||||
User user = UserManager.getUserInMem(uid);
|
User user = UserManager.getUserInMem(uid);
|
||||||
|
|
|
@ -68,6 +68,7 @@ public enum FunctionIdEnum {
|
||||||
Four_Challenge(83,null,MessageTypeProto.MessageType.FOUR_CHALLENGE_DO_REQUEST_VALUE),
|
Four_Challenge(83,null,MessageTypeProto.MessageType.FOUR_CHALLENGE_DO_REQUEST_VALUE),
|
||||||
GodTree(84,null),
|
GodTree(84,null),
|
||||||
HongMeng(86,null),
|
HongMeng(86,null),
|
||||||
|
WeekGood(9091,null),
|
||||||
;
|
;
|
||||||
|
|
||||||
private int functionType;
|
private int functionType;
|
||||||
|
|
|
@ -4,18 +4,19 @@ import com.ljsd.jieling.handler.BaseHandler;
|
||||||
import com.ljsd.jieling.logic.family.GuildLogic;
|
import com.ljsd.jieling.logic.family.GuildLogic;
|
||||||
import com.ljsd.jieling.netty.cocdex.PacketNetData;
|
import com.ljsd.jieling.netty.cocdex.PacketNetData;
|
||||||
import com.ljsd.jieling.network.session.ISession;
|
import com.ljsd.jieling.network.session.ISession;
|
||||||
|
import rpc.protocols.Family;
|
||||||
import rpc.protocols.MessageTypeProto;
|
import rpc.protocols.MessageTypeProto;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
public class FamilyRecommandHandler extends BaseHandler {
|
public class FamilyRecommandHandler extends BaseHandler<Family.FamilyRecommandRequest> {
|
||||||
@Override
|
@Override
|
||||||
public MessageTypeProto.MessageType getMessageCode() {
|
public MessageTypeProto.MessageType getMessageCode() {
|
||||||
return MessageTypeProto.MessageType.FAMILY_RECOMEND_REQUEST;
|
return MessageTypeProto.MessageType.FAMILY_RECOMEND_REQUEST;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void process(ISession iSession, PacketNetData netData) throws Exception {
|
public void processWithProto(ISession session, Family.FamilyRecommandRequest proto) throws Exception {
|
||||||
GuildLogic.recommendFamily(iSession);
|
GuildLogic.recommendFamily(session,proto);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -197,7 +197,9 @@ public class StartHardStageRequestHandler extends BaseHandler<PlayerInfoProto.Ha
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//参与奖励
|
//参与奖励
|
||||||
|
if(nodeConfig.getStageType()!= 2){
|
||||||
user.getUserMissionManager().onGameEvent(user, GameEvent.HARSTAGE_PARTICIPATION_REWARD,1);
|
user.getUserMissionManager().onGameEvent(user, GameEvent.HARSTAGE_PARTICIPATION_REWARD,1);
|
||||||
|
}
|
||||||
//排行榜章节
|
//排行榜章节
|
||||||
int hardStageId = SHardStage.getStageIdByChapterAndSection(user.getHardStageManager().getCurChapter(), user.getHardStageManager().getCurNode());
|
int hardStageId = SHardStage.getStageIdByChapterAndSection(user.getHardStageManager().getCurChapter(), user.getHardStageManager().getCurNode());
|
||||||
Poster.getPoster().dispatchEvent(new ShanHeSheJiTuStarEvent(iSession.getUid(), 1, hardStageId));
|
Poster.getPoster().dispatchEvent(new ShanHeSheJiTuStarEvent(iSession.getUid(), 1, hardStageId));
|
||||||
|
|
|
@ -126,7 +126,7 @@ public class GlobalDataManaager implements IManager {
|
||||||
if( limitDay[0] == 2 ){
|
if( limitDay[0] == 2 ){
|
||||||
//此时是开服第几天
|
//此时是开服第几天
|
||||||
long day = TimeUtils.getGapDaysByTwoTime(GameApplication.serverConfig.getOpenTime(),TimeUtils.getTimeStamp2(TimeUtils.now()))+1;
|
long day = TimeUtils.getGapDaysByTwoTime(GameApplication.serverConfig.getOpenTime(),TimeUtils.getTimeStamp2(TimeUtils.now()))+1;
|
||||||
if(day < limitDay[1]){
|
if(day <= limitDay[1]){
|
||||||
closeList.add(id);
|
closeList.add(id);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -155,10 +155,10 @@ public class GlobalDataManaager implements IManager {
|
||||||
//开服几天后开启
|
//开服几天后开启
|
||||||
if(getServerOpenTimeCompareSpecialTimeResult()){
|
if(getServerOpenTimeCompareSpecialTimeResult()){
|
||||||
int[]limitDay = sGlobalSystemConfig.getIfOpen();
|
int[]limitDay = sGlobalSystemConfig.getIfOpen();
|
||||||
if(limitDay.length>0 && limitDay != null){
|
if(limitDay.length > 0){
|
||||||
if( limitDay[0] == 2 ){
|
if( limitDay[0] == 2 ){
|
||||||
long day = TimeUtils.getGapDaysByTwoTime(GameApplication.serverConfig.getOpenTime(),TimeUtils.getTimeStamp2(TimeUtils.now()))+1;
|
long day = TimeUtils.getGapDaysByTwoTime(GameApplication.serverConfig.getOpenTime(),TimeUtils.getTimeStamp2(TimeUtils.now()))+1;
|
||||||
if(day < limitDay[1]){
|
if(day <= limitDay[1]){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -214,11 +214,13 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
||||||
User user = UserManager.getUser(session.getUid());
|
User user = UserManager.getUser(session.getUid());
|
||||||
List<int[][]> itemArrs = new LinkedList<>();
|
List<int[][]> itemArrs = new LinkedList<>();
|
||||||
getAllMissRewards(user, session, itemArrs);
|
getAllMissRewards(user, session, itemArrs);
|
||||||
if (itemArrs.size() == 0)
|
if (itemArrs.size() == 0) {
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||||
if (null == sGlobalActivity)
|
if (null == sGlobalActivity) {
|
||||||
throw new ErrorCodeException(ErrorCode.ITEM_NOT_ENOUGH);
|
throw new ErrorCodeException(ErrorCode.ITEM_NOT_ENOUGH);
|
||||||
|
}
|
||||||
String title = SErrorCodeEerverConfig.getI18NMessageNeedConvert("receive_activity_title", new Object[]{sGlobalActivity.getSesc()},new int[]{1},"#");
|
String title = SErrorCodeEerverConfig.getI18NMessageNeedConvert("receive_activity_title", new Object[]{sGlobalActivity.getSesc()},new int[]{1},"#");
|
||||||
String content = SErrorCodeEerverConfig.getI18NMessageNeedConvert("receive_activity_txt", new Object[]{sGlobalActivity.getSesc()},new int[]{1},"#");
|
String content = SErrorCodeEerverConfig.getI18NMessageNeedConvert("receive_activity_txt", new Object[]{sGlobalActivity.getSesc()},new int[]{1},"#");
|
||||||
String mailReward = ItemUtil.getMailReward(itemArrs);
|
String mailReward = ItemUtil.getMailReward(itemArrs);
|
||||||
|
@ -308,8 +310,9 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
||||||
|
|
||||||
void onActivityEndSelfWithDealReward(User user) throws Exception {
|
void onActivityEndSelfWithDealReward(User user) throws Exception {
|
||||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||||
if (sGlobalActivity.getIsMail() == 1)
|
if (sGlobalActivity.getIsMail() == 1) {
|
||||||
onActivityEndDealReward(user);
|
onActivityEndDealReward(user);
|
||||||
|
}
|
||||||
onActivityEndOnMySelf(user);
|
onActivityEndOnMySelf(user);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -336,6 +339,15 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取关闭的礼包
|
||||||
|
* @param user
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public Set<Integer> getCloseGoods(User user){
|
||||||
|
return new HashSet<>(1);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 活动结束邮件 有比较多的潜规则 单号1003747体现
|
* 活动结束邮件 有比较多的潜规则 单号1003747体现
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -17,8 +17,10 @@ import config.SGlobalActivity;
|
||||||
import rpc.protocols.CommonProto;
|
import rpc.protocols.CommonProto;
|
||||||
import rpc.protocols.PlayerInfoProto;
|
import rpc.protocols.PlayerInfoProto;
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
public class HeroStarActivity extends AbstractActivity {
|
public class HeroStarActivity extends AbstractActivity {
|
||||||
private int heroId;
|
private int heroId;
|
||||||
|
@ -132,4 +134,26 @@ public class HeroStarActivity extends AbstractActivity {
|
||||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Set<Integer> getCloseGoods(User user){
|
||||||
|
HashSet<Integer> set = new HashSet<>();
|
||||||
|
ActivityMission mission = user.getActivityManager().getActivityMissionMap().get(id);
|
||||||
|
if (mission == null){
|
||||||
|
return set;
|
||||||
|
}
|
||||||
|
// 活动奖励条件
|
||||||
|
List<SActivityRewardConfig> rewardConfigs = SActivityRewardConfig.getsActivityRewardConfigByActivityId(id);
|
||||||
|
for (SActivityRewardConfig rewardConfig : rewardConfigs) {
|
||||||
|
Map<Integer, ActivityProgressInfo> map = mission.getActivityMissionMap();
|
||||||
|
ActivityProgressInfo progressInfo = map.get(rewardConfig.getId());
|
||||||
|
// 页签不存在或者状态不为可领取状态
|
||||||
|
if (progressInfo == null || progressInfo.getState() != 1){
|
||||||
|
int goodsId = rewardConfig.getValues()[2][0];
|
||||||
|
set.add(goodsId);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return set;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,9 +26,7 @@ import rpc.protocols.CommonProto;
|
||||||
import rpc.protocols.PlayerInfoProto;
|
import rpc.protocols.PlayerInfoProto;
|
||||||
import util.TimeUtils;
|
import util.TimeUtils;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.*;
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
public class MistyTripActivity extends AbstractActivity {
|
public class MistyTripActivity extends AbstractActivity {
|
||||||
|
|
||||||
|
@ -115,5 +113,32 @@ public class MistyTripActivity extends AbstractActivity {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Set<Integer> getCloseGoods(User user){
|
||||||
|
HashSet<Integer> set = new HashSet<>();
|
||||||
|
ActivityMission mission = user.getActivityManager().getActivityMissionMap().get(id);
|
||||||
|
if (mission == null){
|
||||||
|
return set;
|
||||||
|
}
|
||||||
|
// 活动详细配置
|
||||||
|
Map<Integer, ActivityProgressInfo> map = mission.getActivityMissionMap();
|
||||||
|
List<SActivityRewardConfig> rewardConfigs = SActivityRewardConfig.getsActivityRewardConfigByActivityId(id);
|
||||||
|
// 创角色第几天
|
||||||
|
int days = TimeUtils.getSoFarWentDays(user.getPlayerInfoManager().getCreateTime(), TimeUtils.now())+1;
|
||||||
|
for (SActivityRewardConfig config : rewardConfigs) {
|
||||||
|
// 单个页签信息
|
||||||
|
ActivityProgressInfo info = map.getOrDefault(config.getId(), null);
|
||||||
|
if (info == null){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
int[][] values = config.getValues();
|
||||||
|
// 条件,天数和任务数量
|
||||||
|
if (days < values[0][1] || info.getProgrss() < values[0][0]){
|
||||||
|
set.add(values[1][0]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return set;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -58,6 +58,7 @@ class RechargeSumDayActivity extends AbstractActivity {
|
||||||
/**
|
/**
|
||||||
* 根据配置解析数值进度完成度
|
* 根据配置解析数值进度完成度
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
boolean checkValue(ISession session, SActivityRewardConfig sActivityRewardConfig, ActivityProgressInfo activityProgressInfo) throws Exception {
|
boolean checkValue(ISession session, SActivityRewardConfig sActivityRewardConfig, ActivityProgressInfo activityProgressInfo) throws Exception {
|
||||||
int[][] values = sActivityRewardConfig.getValues();
|
int[][] values = sActivityRewardConfig.getValues();
|
||||||
User user = UserManager.getUser(session.getUid());
|
User user = UserManager.getUser(session.getUid());
|
||||||
|
|
|
@ -265,4 +265,27 @@ public class SuperBoxActivity extends AbstractActivity {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Set<Integer> getCloseGoods(User user){
|
||||||
|
HashSet<Integer> set = new HashSet<>();
|
||||||
|
ActivityMission mission = user.getActivityManager().getActivityMissionMap().get(id);
|
||||||
|
if (mission == null){
|
||||||
|
return set;
|
||||||
|
}
|
||||||
|
// 活动页签
|
||||||
|
Map<Integer, ActivityProgressInfo> map = mission.getActivityMissionMap();
|
||||||
|
Map<Integer, SSurpriseBox> boxMap = SSurpriseBox.map.get(id);
|
||||||
|
// 活动奖励条件
|
||||||
|
for (Map.Entry<Integer, ActivityProgressInfo> entry2 : map.entrySet()) {
|
||||||
|
if (entry2.getValue().getProgrss() != 1){
|
||||||
|
SSurpriseBox box = boxMap.getOrDefault(entry2.getKey(), null);
|
||||||
|
if (box == null){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
set.add(box.getPackId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return set;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,12 +48,6 @@ public class TreasureActivity extends AbstractActivity {
|
||||||
if(user.getPlayerInfoManager().getHadBuyTreasure() == 1){
|
if(user.getPlayerInfoManager().getHadBuyTreasure() == 1){
|
||||||
LOGGER.info("[青龙秘宝初始化] [重置秘宝解锁状态] [uid:{}]",user.getId());
|
LOGGER.info("[青龙秘宝初始化] [重置秘宝解锁状态] [uid:{}]",user.getId());
|
||||||
user.getPlayerInfoManager().setHadBuyTreasure(0);
|
user.getPlayerInfoManager().setHadBuyTreasure(0);
|
||||||
int id=0;
|
|
||||||
for(SRechargeCommodityNewConfig sRechargeCommodityConfig : SRechargeCommodityNewConfig.configMap.values()){
|
|
||||||
if(sRechargeCommodityConfig.getType() == GiftGoodsType.SUN_LONG){
|
|
||||||
id=sRechargeCommodityConfig.getId();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||||
|
|
|
@ -315,7 +315,8 @@ public class DeathPathLogic {
|
||||||
String key;
|
String key;
|
||||||
// 是否是跨服
|
// 是否是跨服
|
||||||
Set<ZSetOperations.TypedTuple<String>> zSetReverseRangeWithScores;
|
Set<ZSetOperations.TypedTuple<String>> zSetReverseRangeWithScores;
|
||||||
if (getGroupId() > 0) {
|
boolean result = getGroupId() > 0;
|
||||||
|
if (result) {
|
||||||
key = guildRank.getCrossRedisKey();
|
key = guildRank.getCrossRedisKey();
|
||||||
zSetReverseRangeWithScores = RedisUtil.getInstence().getZsetreverseRangeWithScores(key, String.valueOf(i), 0, 0,false);
|
zSetReverseRangeWithScores = RedisUtil.getInstence().getZsetreverseRangeWithScores(key, String.valueOf(i), 0, 0,false);
|
||||||
LOGGER.info("========================获取十绝阵内部信息,跨服:{}",uid);
|
LOGGER.info("========================获取十绝阵内部信息,跨服:{}",uid);
|
||||||
|
@ -332,7 +333,7 @@ public class DeathPathLogic {
|
||||||
int guildId = Integer.parseInt(next.getValue());
|
int guildId = Integer.parseInt(next.getValue());
|
||||||
GuildInfoCache crossGuild = CrossDeathPathLogic.getCrossGuild(guildId);
|
GuildInfoCache crossGuild = CrossDeathPathLogic.getCrossGuild(guildId);
|
||||||
Integer serverId = Optional.ofNullable(CrossDeathPathLogic.getCrossGuild(guildId)).map(GuildInfoCache::getServerId).orElse(0);
|
Integer serverId = Optional.ofNullable(CrossDeathPathLogic.getCrossGuild(guildId)).map(GuildInfoCache::getServerId).orElse(0);
|
||||||
String serverName = CrossDeathPathLogic.getInstance().getServerNameByDeathPath(serverId);
|
String serverName = result?CrossDeathPathLogic.getInstance().getServerNameByDeathPath(serverId):"";
|
||||||
Family.DeathPathInfo info = Family.DeathPathInfo.newBuilder().setGuildName(crossGuild.getGuildName()).setPathId(i).setGid(guildId).setServerName(serverName).build();
|
Family.DeathPathInfo info = Family.DeathPathInfo.newBuilder().setGuildName(crossGuild.getGuildName()).setPathId(i).setGid(guildId).setServerName(serverName).build();
|
||||||
response.addInfos(info);
|
response.addInfos(info);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package com.ljsd.jieling.logic.family;
|
package com.ljsd.jieling.logic.family;
|
||||||
|
|
||||||
|
import com.google.common.collect.Lists;
|
||||||
import com.google.protobuf.GeneratedMessage;
|
import com.google.protobuf.GeneratedMessage;
|
||||||
import com.google.protobuf.Message;
|
import com.google.protobuf.Message;
|
||||||
import com.ljsd.GameApplication;
|
import com.ljsd.GameApplication;
|
||||||
|
@ -235,10 +236,10 @@ public class GuildLogic {
|
||||||
* @param session
|
* @param session
|
||||||
* @throws Exception
|
* @throws Exception
|
||||||
*/
|
*/
|
||||||
public static void recommendFamily(ISession session) throws Exception {
|
public static void recommendFamily(ISession session,Family.FamilyRecommandRequest proto) throws Exception {
|
||||||
int uid = session.getUid();
|
int uid = session.getUid();
|
||||||
User user = UserManager.getUser(uid);
|
User user = UserManager.getUser(uid);
|
||||||
int msgId = MessageTypeProto.MessageType.FAMILY_RECOMEND_RESPONSE_VALUE;
|
|
||||||
Collection<GuildInfo> guildInfos = GuilidManager.recommandGuild(user);
|
Collection<GuildInfo> guildInfos = GuilidManager.recommandGuild(user);
|
||||||
Family.FamilyRecommandResponse.Builder builder = Family.FamilyRecommandResponse.newBuilder();
|
Family.FamilyRecommandResponse.Builder builder = Family.FamilyRecommandResponse.newBuilder();
|
||||||
Map<Integer, GuildApply> applyGuildInfos = GuilidManager.getApplyGuildInfos(uid, 1);
|
Map<Integer, GuildApply> applyGuildInfos = GuilidManager.getApplyGuildInfos(uid, 1);
|
||||||
|
@ -255,13 +256,20 @@ public class GuildLogic {
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for(GuildInfo guildInfo : guildInfos){
|
|
||||||
|
|
||||||
|
int page = proto.getPage();
|
||||||
|
List<List<GuildInfo>> partition = Lists.partition(new ArrayList<>(guildInfos), 10);
|
||||||
|
// 防止超出下标
|
||||||
|
if (page <= partition.size()){
|
||||||
|
for(GuildInfo guildInfo : partition.get(page-1)){
|
||||||
builder.addFamilyRecomandInfo(Family.FamilyRecomandInfo.newBuilder().
|
builder.addFamilyRecomandInfo(Family.FamilyRecomandInfo.newBuilder().
|
||||||
setFamilyBaseInfo(CBean2Proto.getFamilyBaseInfo(guildInfo))
|
setFamilyBaseInfo(CBean2Proto.getFamilyBaseInfo(guildInfo))
|
||||||
.setIsApply(applyGuildInfos.containsKey(guildInfo.getId())?1:0)
|
.setIsApply(applyGuildInfos.containsKey(guildInfo.getId())?1:0)
|
||||||
.build());
|
.build());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
// 返回信息
|
||||||
|
int msgId = MessageTypeProto.MessageType.FAMILY_RECOMEND_RESPONSE_VALUE;
|
||||||
MessageUtil.sendMessage(session,1,msgId,builder.build(),true);
|
MessageUtil.sendMessage(session,1,msgId,builder.build(),true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -998,9 +998,10 @@ public class CombatLogic {
|
||||||
if(randomReward.length()!=0){
|
if(randomReward.length()!=0){
|
||||||
reward = reward + "|" + randomReward;
|
reward = reward + "|" + randomReward;
|
||||||
MailLogic.getInstance().sendMail(user.getId(),title,content,reward,time, Global.MAIL_EFFECTIVE_TIME);
|
MailLogic.getInstance().sendMail(user.getId(),title,content,reward,time, Global.MAIL_EFFECTIVE_TIME);
|
||||||
|
mainLevelManager.afterTakeStateReward(true,0,time);
|
||||||
|
System.out.printf("================在线奖励升级vip发送邮件:{%s},{%s}\n",mainLevelManager.getStartTime(),mainLevelManager.getLastTime());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// mainLevelManager.afterTakeStateReward(true,0,time);
|
|
||||||
myResult = true;
|
myResult = true;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
|
@ -701,8 +701,16 @@ public class FriendLogic {
|
||||||
friendManager.setHaveRewardMap(new HashMap<>());
|
friendManager.setHaveRewardMap(new HashMap<>());
|
||||||
for (Map.Entry<Integer,Integer> entry: giveMap.entrySet()){
|
for (Map.Entry<Integer,Integer> entry: giveMap.entrySet()){
|
||||||
Integer friendId = entry.getKey();
|
Integer friendId = entry.getKey();
|
||||||
LOGGER.info("friendId当前:{}",friendId);
|
User friendUser = null;
|
||||||
User friendUser = UserManager.getUser(friendId);
|
try {
|
||||||
|
friendUser = UserManager.getUser(friendId);
|
||||||
|
}catch (Exception e){
|
||||||
|
LOGGER.info("获取好友信息报错,friendId当前:{}",friendId);
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
if (friendUser == null){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
FriendManager friendManager1 = friendUser.getFriendManager();
|
FriendManager friendManager1 = friendUser.getFriendManager();
|
||||||
Map<Integer, Integer> haveRewardMap = friendManager1.getHaveRewardMap();
|
Map<Integer, Integer> haveRewardMap = friendManager1.getHaveRewardMap();
|
||||||
if (haveRewardMap.containsKey(uid)){
|
if (haveRewardMap.containsKey(uid)){
|
||||||
|
|
|
@ -943,6 +943,7 @@ public class ItemLogic {
|
||||||
throw new ErrorCodeException(ErrorCode.ITEM_NOT_ENOUGH);
|
throw new ErrorCodeException(ErrorCode.ITEM_NOT_ENOUGH);
|
||||||
}
|
}
|
||||||
progress.setProgrss(progress.getProgrss()-1);
|
progress.setProgrss(progress.getProgrss()-1);
|
||||||
|
user.getActivityManager().getActivityMissionMap().put(activityId,misson);
|
||||||
CommonProto.Drop.Builder drop = ItemUtil.drop(user,new int[][]{{config.getGoalItems()[0][0],config.getGoalItems()[0][1]}},BIReason.EQUIP_UPLEVEL_REWARD);
|
CommonProto.Drop.Builder drop = ItemUtil.drop(user,new int[][]{{config.getGoalItems()[0][0],config.getGoalItems()[0][1]}},BIReason.EQUIP_UPLEVEL_REWARD);
|
||||||
response.setResult(true);
|
response.setResult(true);
|
||||||
response.setDrop(drop);
|
response.setDrop(drop);
|
||||||
|
|
|
@ -76,24 +76,12 @@ public class CrossArenaRank extends AbstractRank {
|
||||||
builder.addRanks(everyRank);
|
builder.addRanks(everyRank);
|
||||||
}else{
|
}else{
|
||||||
ArenaOfUser query = CrossServiceLogic.getInstance().query(Integer.valueOf(data.getValue()));
|
ArenaOfUser query = CrossServiceLogic.getInstance().query(Integer.valueOf(data.getValue()));
|
||||||
String serverName = CrossDeathPathLogic.getInstance().getServerNameByDeathPath(query.getPlayerManager().getServerId());
|
|
||||||
CommonProto.RankInfo.Builder everyRankInfo = CommonProto.RankInfo.newBuilder()
|
CommonProto.RankInfo.Builder everyRankInfo = CommonProto.RankInfo.newBuilder()
|
||||||
.setRank(index)
|
.setRank(index)
|
||||||
.setParam1(query.getHeroManager().getTotalForce())
|
.setParam1(query.getHeroManager().getTotalForce())
|
||||||
.setParam2(getParam2(data.getScore()))
|
.setParam2(getParam2(data.getScore()))
|
||||||
.setParam3(getParam3(data.getScore()));
|
.setParam3(getParam3(data.getScore()));
|
||||||
CommonProto.UserRank.Builder everyRank = CommonProto.UserRank.newBuilder()
|
CommonProto.UserRank.Builder everyRank = getCrossOneUserRank(query,everyRankInfo);
|
||||||
.setUid(query.getId())
|
|
||||||
.setUserName(query.getPlayerManager().getName())
|
|
||||||
.setLevel(query.getPlayerManager().getLevel())
|
|
||||||
.setUserTitle(query.getPlayerManager().getUserTitle())
|
|
||||||
.setUserSkin(80012)
|
|
||||||
.setUserMount(query.getPlayerManager().getUserMount())
|
|
||||||
.setRankInfo(everyRankInfo)
|
|
||||||
.setForce(query.getHeroManager().getTotalForce())
|
|
||||||
.setPracticeLevel(query.getPlayerManager().getPracticeLevel())
|
|
||||||
.setServerName(serverName)
|
|
||||||
.setSex(0);
|
|
||||||
builder.addRanks(everyRank);
|
builder.addRanks(everyRank);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,17 +11,18 @@ import com.ljsd.jieling.exception.ErrorCode;
|
||||||
import com.ljsd.jieling.exception.ErrorCodeException;
|
import com.ljsd.jieling.exception.ErrorCodeException;
|
||||||
import com.ljsd.jieling.globals.BIReason;
|
import com.ljsd.jieling.globals.BIReason;
|
||||||
import com.ljsd.jieling.globals.Global;
|
import com.ljsd.jieling.globals.Global;
|
||||||
|
import com.ljsd.jieling.jbean.ActivityMission;
|
||||||
|
import com.ljsd.jieling.jbean.ActivityProgressInfo;
|
||||||
import com.ljsd.jieling.ktbeans.ReportEventEnum;
|
import com.ljsd.jieling.ktbeans.ReportEventEnum;
|
||||||
import com.ljsd.jieling.ktbeans.ReportUtil;
|
import com.ljsd.jieling.ktbeans.ReportUtil;
|
||||||
import com.ljsd.jieling.logic.GlobalDataManaager;
|
import com.ljsd.jieling.logic.GlobalDataManaager;
|
||||||
import com.ljsd.jieling.logic.OnlineUserManager;
|
import com.ljsd.jieling.logic.OnlineUserManager;
|
||||||
|
import com.ljsd.jieling.logic.activity.AbstractActivity;
|
||||||
import com.ljsd.jieling.logic.activity.ActivityLogic;
|
import com.ljsd.jieling.logic.activity.ActivityLogic;
|
||||||
import com.ljsd.jieling.logic.activity.ActivityType;
|
import com.ljsd.jieling.logic.activity.ActivityType;
|
||||||
|
import com.ljsd.jieling.logic.activity.ActivityTypeEnum;
|
||||||
import com.ljsd.jieling.logic.activity.event.*;
|
import com.ljsd.jieling.logic.activity.event.*;
|
||||||
import com.ljsd.jieling.logic.dao.PlayerManager;
|
import com.ljsd.jieling.logic.dao.*;
|
||||||
import com.ljsd.jieling.logic.dao.RechargeInfo;
|
|
||||||
import com.ljsd.jieling.logic.dao.UserManager;
|
|
||||||
import com.ljsd.jieling.logic.dao.VipInfo;
|
|
||||||
import com.ljsd.jieling.logic.dao.root.User;
|
import com.ljsd.jieling.logic.dao.root.User;
|
||||||
import com.ljsd.jieling.logic.expedition.ExpeditionLogic;
|
import com.ljsd.jieling.logic.expedition.ExpeditionLogic;
|
||||||
import com.ljsd.jieling.logic.fight.CombatLogic;
|
import com.ljsd.jieling.logic.fight.CombatLogic;
|
||||||
|
@ -622,20 +623,91 @@ public class BuyGoodsNewLogic {
|
||||||
giftGoodsInfoList.add(buildGoodsInfo(bag));
|
giftGoodsInfoList.add(buildGoodsInfo(bag));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
giftGoodsInfoList.sort(new Comparator<CommonProto.GiftGoodsInfo>() {
|
giftGoodsInfoList.sort((o1, o2) -> {
|
||||||
@Override
|
|
||||||
public int compare(CommonProto.GiftGoodsInfo o1, CommonProto.GiftGoodsInfo o2) {
|
|
||||||
if(o1.getGoodsId() > o2.getGoodsId()){
|
if(o1.getGoodsId() > o2.getGoodsId()){
|
||||||
return 1;
|
return 1;
|
||||||
}else if(o1.getGoodsId() < o2.getGoodsId()){
|
}else if(o1.getGoodsId() < o2.getGoodsId()){
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
|
||||||
});
|
});
|
||||||
return needChange;
|
return needChange;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Set<Integer> getGoodsBagInfoFromDelive(int uid) throws Exception {
|
||||||
|
User user = UserManager.getUser(uid);
|
||||||
|
Set<Integer> list = new HashSet<>();
|
||||||
|
// 礼包是否打开
|
||||||
|
NewRechargeInfo rechargeInfo = user.getPlayerInfoManager().getNewRechargeInfo();
|
||||||
|
Map<Integer, SRechargeCommodityNewConfig> configMap = SRechargeCommodityNewConfig.configMap;
|
||||||
|
// 次数,推送,永久礼包一起处理
|
||||||
|
ArrayList<AbstractWelfareBag> welfareBags = new ArrayList<>(rechargeInfo.getPerpetualMap().values());
|
||||||
|
welfareBags.addAll(rechargeInfo.getTimeLimitMap().values());
|
||||||
|
welfareBags.addAll(rechargeInfo.getReceiveMap().values());
|
||||||
|
welfareBags.addAll(rechargeInfo.getPushMap().values());
|
||||||
|
for (AbstractWelfareBag bag : welfareBags) {
|
||||||
|
if(bag.isOpen()){
|
||||||
|
if (bag.getLimit() == 0 || bag.getLimit() > bag.getBuyTimes()){
|
||||||
|
list.add(bag.getModId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 走表判断开启的礼包
|
||||||
|
Map<Integer, SGlobalActivity> activityMap = SGlobalActivity.getsGlobalActivityMap();
|
||||||
|
Map<Integer, ActivityMission> missionMap = user.getActivityManager().getActivityMissionMap();
|
||||||
|
|
||||||
|
for (Map.Entry<Integer, ActivityMission> entry : missionMap.entrySet()) {
|
||||||
|
int activityId = entry.getKey();
|
||||||
|
ActivityMission mission = entry.getValue();
|
||||||
|
// 遍历
|
||||||
|
Iterator<Integer> iterator = list.iterator();
|
||||||
|
while (iterator.hasNext()){
|
||||||
|
SRechargeCommodityNewConfig config = configMap.get(iterator.next());
|
||||||
|
// 表控制不显示
|
||||||
|
if (config.getIsShowInWeb() == 0){
|
||||||
|
iterator.remove();
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
// 未加入公会,不显示公会红包
|
||||||
|
if (user.getPlayerInfoManager().getGuildId() == 0 && config.getType() == 10){
|
||||||
|
iterator.remove();
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (String[] open : config.getCondition()) {
|
||||||
|
// 活动未开启的礼包
|
||||||
|
if ("3".equals(open[0])){
|
||||||
|
if (mission.getActivityState() != ActivityType.OPEN_STATE){
|
||||||
|
if (open[1].equals(String.valueOf(activityId))){
|
||||||
|
iterator.remove();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 功能未开启的表
|
||||||
|
if ("2".equals(open[0])){
|
||||||
|
if (!GlobalDataManaager.getInstance().checkIsOpen(Integer.parseInt(open[1]))){
|
||||||
|
iterator.remove();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 单独活动信息处理
|
||||||
|
SGlobalActivity activity = activityMap.get(activityId);
|
||||||
|
if (activity == null){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
AbstractActivity activityType = ActivityTypeEnum.getActicityType(activityId);
|
||||||
|
if (activityType == null || list.isEmpty()){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
list.removeAll(activityType.getCloseGoods(user));
|
||||||
|
}
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
public static CommonProto.GiftGoodsInfo buildGoodsInfo(AbstractWelfareBag bag){
|
public static CommonProto.GiftGoodsInfo buildGoodsInfo(AbstractWelfareBag bag){
|
||||||
CommonProto.GiftGoodsInfo.Builder builder = CommonProto.GiftGoodsInfo.newBuilder();
|
CommonProto.GiftGoodsInfo.Builder builder = CommonProto.GiftGoodsInfo.newBuilder();
|
||||||
builder.setGoodsId(bag.getModId());
|
builder.setGoodsId(bag.getModId());
|
||||||
|
@ -726,7 +798,7 @@ public class BuyGoodsNewLogic {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static int judgePushCondition(User user,SPackPushConfig con){
|
private static int judgePushCondition(User user,SPackPushConfig con){
|
||||||
int[] scope = con.getScopeId();
|
int[] scope = con.getScopeId();
|
||||||
if(scope[0] == 1){//主线关卡
|
if(scope[0] == 1){//主线关卡
|
||||||
int mainLevel = user.getMainLevelManager().getFightId();
|
int mainLevel = user.getMainLevelManager().getFightId();
|
||||||
|
|
|
@ -59,7 +59,7 @@ public class SRechargeCommodityNewConfig implements BaseConfig {
|
||||||
private String rechargeId9;
|
private String rechargeId9;
|
||||||
private String rechargeId10;
|
private String rechargeId10;
|
||||||
|
|
||||||
|
private int isShowInWeb;
|
||||||
|
|
||||||
private int[] forbid;
|
private int[] forbid;
|
||||||
|
|
||||||
|
@ -205,4 +205,7 @@ public class SRechargeCommodityNewConfig implements BaseConfig {
|
||||||
this.condition = condition;
|
this.condition = condition;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int getIsShowInWeb() {
|
||||||
|
return isShowInWeb;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue