print log
parent
45fe740b3d
commit
f9bf1d7a67
|
|
@ -79,7 +79,7 @@ public class JavaAgent {
|
|||
DynamicClassLoader myLoader = new DynamicClassLoader();
|
||||
Class targetClazz = myLoader.findClass(targetClassFile);
|
||||
writeLog("class name is:["+targetClazz.getName() + "]");
|
||||
|
||||
writeLog("class path is:["+targetClazz.getResource("").getPath() + "]");
|
||||
Class<?> clz = Class.forName(targetClazz.getName());
|
||||
writeLog("clz-->Class.forName:(\""+targetClazz.getName() + "\")");
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,8 @@ import com.ljsd.common.mogodb.MongoBase;
|
|||
import com.ljsd.jieling.config.SRechargeCommodityConfig;
|
||||
import com.ljsd.jieling.core.VipPrivilegeType;
|
||||
import com.ljsd.jieling.logic.store.GiftGoodsType;
|
||||
import io.netty.util.internal.ConcurrentSet;
|
||||
import org.springframework.data.annotation.Transient;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
|
|
@ -16,6 +18,9 @@ public class RechargeInfo extends MongoBase{
|
|||
private int hadBuyFound;
|
||||
private int isDayFirst;
|
||||
|
||||
|
||||
@Transient
|
||||
private Set<Integer> cacheSendedIds = new ConcurrentSet<>();
|
||||
private Map<Integer,Long> levelBagMap = new HashMap<>();
|
||||
|
||||
private Map<Integer,Integer> buyGoodsTimes = new HashMap<>();
|
||||
|
|
@ -28,6 +33,14 @@ public class RechargeInfo extends MongoBase{
|
|||
|
||||
}
|
||||
|
||||
public boolean addNewSendId(int id){
|
||||
return cacheSendedIds.add(id);
|
||||
}
|
||||
|
||||
public void clearCacheSendId(){
|
||||
cacheSendedIds.clear();
|
||||
}
|
||||
|
||||
//检测商品是否过期
|
||||
public Set<Integer> checkIsGoodsTypeOverTime(){
|
||||
int now = (int)(System.currentTimeMillis()/1000);
|
||||
|
|
|
|||
|
|
@ -9,10 +9,12 @@ import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
|
|||
import com.ljsd.jieling.logic.OnlineUserManager;
|
||||
import com.ljsd.jieling.logic.activity.ActivityLogic;
|
||||
import com.ljsd.jieling.logic.activity.ActivityType;
|
||||
import com.ljsd.jieling.logic.dao.ActivityMission;
|
||||
import com.ljsd.jieling.logic.dao.RechargeInfo;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.logic.mail.MailLogic;
|
||||
import com.ljsd.jieling.logic.mission.event.MissionEventDistributor;
|
||||
import com.ljsd.jieling.logic.player.PlayerLogic;
|
||||
import com.ljsd.jieling.network.session.ISession;
|
||||
import com.ljsd.jieling.protocols.CommonProto;
|
||||
|
|
@ -26,16 +28,14 @@ import com.ljsd.jieling.util.TimeUtils;
|
|||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 真钱购买东西
|
||||
*/
|
||||
public class BuyGoodsLogic {
|
||||
|
||||
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(BuyGoodsLogic.class);
|
||||
|
||||
public static void testBuyGoods(ISession session,int goodsId) throws Exception {
|
||||
|
|
@ -266,16 +266,19 @@ public class BuyGoodsLogic {
|
|||
|
||||
}
|
||||
|
||||
public static List<CommonProto.GiftGoodsInfo> getGoodsBagInfo(int uid) throws Exception {
|
||||
public static boolean getGoodsBagInfo(int uid,List<CommonProto.GiftGoodsInfo> giftGoodsInfoList,boolean needClear) throws Exception {
|
||||
User user = UserManager.getUser(uid);
|
||||
RechargeInfo rechargeInfo = user.getPlayerInfoManager().getRechargeInfo();
|
||||
long now = TimeUtils.now();
|
||||
Map<Integer, Integer> buyGoodsTimes = rechargeInfo.getBuyGoodsTimes();
|
||||
Map<Integer, Long> levelBagMap = rechargeInfo.getLevelBagMap();
|
||||
Map<Integer,Integer> goodsOrder = new HashMap<>(6);
|
||||
List<CommonProto.GiftGoodsInfo> giftGoodsInfoList = new ArrayList<>(SRechargeCommodityConfig.rechargeCommodityConfigMap.size());
|
||||
Map<Integer,CommonProto.GiftGoodsInfo> giftGoodsInfoMap = new HashMap<>();
|
||||
long createTime = user.getPlayerInfoManager().getCreateTime();
|
||||
boolean needChange= false;
|
||||
if(needClear){
|
||||
rechargeInfo.clearCacheSendId();
|
||||
}
|
||||
for(SRechargeCommodityConfig sRechargeCommodityConfig :SRechargeCommodityConfig.rechargeCommodityConfigMap.values()){
|
||||
int limit = sRechargeCommodityConfig.getLimit();
|
||||
int goodsId = sRechargeCommodityConfig.getId();
|
||||
|
|
@ -313,7 +316,7 @@ public class BuyGoodsLogic {
|
|||
startTime = sRechargeCommodityConfig.getTimeLong(createTime,1);
|
||||
endTime = sRechargeCommodityConfig.getTimeLong(createTime,2);
|
||||
}
|
||||
if(now<startTime){
|
||||
if(now<startTime || (endTime!=0 && now > endTime)){
|
||||
continue;
|
||||
}
|
||||
int order = sRechargeCommodityConfig.getOrder();
|
||||
|
|
@ -326,21 +329,42 @@ public class BuyGoodsLogic {
|
|||
}
|
||||
goodsOrder.put(sRechargeCommodityConfig.getType(),order*10000 + goodsId);
|
||||
giftGoodsInfoMap.put(goodsId,CommonProto.GiftGoodsInfo.newBuilder().setGoodsId(goodsId).setStartTime((int)(startTime/1000)).setBuyTimes(buyTimes).setEndTime((int)(endTime/1000)).build());
|
||||
boolean isNew = rechargeInfo.addNewSendId(goodsId);
|
||||
if(isNew){
|
||||
needChange = true;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
boolean isNew = rechargeInfo.addNewSendId(goodsId);
|
||||
if(isNew){
|
||||
needChange = true;
|
||||
}
|
||||
giftGoodsInfoList.add(CommonProto.GiftGoodsInfo.newBuilder().setGoodsId(goodsId).setBuyTimes(buyTimes).setStartTime((int)(startTime/1000)).setEndTime((int)(endTime/1000)).build());
|
||||
}
|
||||
giftGoodsInfoList.addAll(giftGoodsInfoMap.values());
|
||||
return giftGoodsInfoList;
|
||||
return needChange;
|
||||
}
|
||||
|
||||
public static void sendGiftGooodsIndication(int uid) throws Exception {
|
||||
List<CommonProto.GiftGoodsInfo> goodsBagInfo = BuyGoodsLogic.getGoodsBagInfo(uid);
|
||||
PlayerInfoProto.AllGiftGoodsIndication build = PlayerInfoProto.AllGiftGoodsIndication.newBuilder().addAllGiftGoodsInfo(goodsBagInfo).build();
|
||||
List<CommonProto.GiftGoodsInfo> goodsBagInfo = new ArrayList<>(SRechargeCommodityConfig.rechargeCommodityConfigMap.size());
|
||||
boolean change = BuyGoodsLogic.getGoodsBagInfo(uid, goodsBagInfo,false);
|
||||
ISession session = OnlineUserManager.getSessionByUid(uid);
|
||||
if(session!=null){
|
||||
if(session!=null && change){
|
||||
PlayerInfoProto.AllGiftGoodsIndication build = PlayerInfoProto.AllGiftGoodsIndication.newBuilder().addAllGiftGoodsInfo(goodsBagInfo).build();
|
||||
MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.ALL_GIFTGOODS_INDICATION_VALUE,build,true);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static void minuteCheckReharge() throws Exception {
|
||||
for (Map.Entry<Integer, ISession> entry : OnlineUserManager.sessionMap.entrySet()) {
|
||||
ISession value = entry.getValue();
|
||||
if(value.getFiveReady() == 1){
|
||||
sendGiftGooodsIndication(entry.getKey());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ import com.ljsd.jieling.logic.fight.CheckFight;
|
|||
import com.ljsd.jieling.logic.fight.CombatLogic;
|
||||
import com.ljsd.jieling.logic.mail.MailLogic;
|
||||
import com.ljsd.jieling.logic.question.QuestionLogic;
|
||||
import com.ljsd.jieling.logic.store.BuyGoodsLogic;
|
||||
import com.ljsd.jieling.logic.store.StoreLogic;
|
||||
import com.ljsd.jieling.network.server.ProtocolsManager;
|
||||
import org.slf4j.Logger;
|
||||
|
|
@ -62,6 +63,7 @@ public class MinuteTask extends Thread {
|
|||
MailLogic.getInstance().checkReadyToMail();
|
||||
ProtocolsManager.getInstance().minuteCheckForbidUser();
|
||||
CoreLogic.getInstance().checkCoreCdk();
|
||||
BuyGoodsLogic.minuteCheckReharge();
|
||||
RedisUtil.getInstence().set(RedisKey.ONLINE_NUM+RedisKey.Delimiter_colon+GameApplication.serverId, String.valueOf(OnlineUserManager.sessionMap.entrySet().size()));
|
||||
LOGGER.info("MinuteTask end...");
|
||||
} catch (Exception e) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue