特权时间修改,红包时间修改

back_recharge
lvxinran 2020-01-08 02:36:36 +08:00
parent 101d1bcdf3
commit 7c0ac91a44
4 changed files with 60 additions and 7 deletions

View File

@ -138,9 +138,8 @@ public class TimeUtils {
public static final String Stand_CeHua_Data_format = "yyyyMMdd HHmmss";
public static void main(String[] args) {
System.out.println(Integer.MAX_VALUE);
System.out.println((Integer.MAX_VALUE-now()/1000)/Math.pow(10,9));
long lastHour = getLastHour(5);
System.out.println(lastHour);
}
/**
* (HH:mm:ss)
@ -1319,6 +1318,27 @@ public class TimeUtils {
}
}
/**
*
* @param hour
* @return
*/
public static long getLastHour(long time,int hour){
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(time);
int i = cal.get(Calendar.HOUR_OF_DAY);
cal.set(Calendar.HOUR_OF_DAY,hour);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND,0);
cal.set(Calendar.MILLISECOND,0);
long result = cal.getTimeInMillis();
if(i<5){
result = result -TimeUtils.DAY;
}
return result;
}
/**
* Integer-now();
* @return

View File

@ -350,6 +350,7 @@ public class PlayerManager extends MongoBase {
maxTime = (int)(TimeUtils.now()/1000+config.getContinueTime());
}
}
maxTime = (int)(TimeUtils.getLastHour(maxTime*1000,5)/1000);
vipInfo.put(privilageId,new VipInfo(0,maxTime));
updateString("vipInfo", vipInfo);
}

View File

@ -998,12 +998,12 @@ public class GuildLogic {
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
}
long increment = RedisUtil.getInstence().increment(RedisKey.getKey(RedisKey.FAMILY_RED_PACKAGE_INCRE_ID, "", false));
RedisUtil.getInstence().putMapEntry(RedisKey.FAMILY_RED_PACKAGE,String.valueOf(user.getPlayerInfoManager().getGuildId()),String.valueOf(increment),new RedPackage(redId,uid));
RedisUtil.getInstence().putMapEntry(RedisKey.FAMILY_RED_PACKAGE,String.valueOf(user.getPlayerInfoManager().getGuildId()),String.valueOf(increment),new RedPackage(redId,uid,(int)(TimeUtils.now()/1000),config.getLastTime()));
List<String> reward = new ArrayList<>();
for(Long count:generate){
reward.add(String.valueOf(count));
}
RedisUtil.getInstence().lSet(RedisKey.getKey("red_remain_list",String.valueOf(increment),false),reward,200000);
RedisUtil.getInstence().lSet(RedisKey.getKey("red_remain_list",String.valueOf(increment),false),reward,config.getLastTime());
}
/**
@ -1016,7 +1016,12 @@ public class GuildLogic {
int guildId = user.getPlayerInfoManager().getGuildId();
Map<String, RedPackage> redPackageMap = RedisUtil.getInstence().getMapValues(RedisKey.FAMILY_RED_PACKAGE, String.valueOf(guildId), String.class, RedPackage.class);
Family.GetAllRedPackageResponse.Builder builder = Family.GetAllRedPackageResponse.newBuilder();
List<String> removeId = new ArrayList<>();
for(Map.Entry<String, RedPackage> entry:redPackageMap.entrySet()){
if(TimeUtils.now()/1000>entry.getValue().getEffectTime()+entry.getValue().getSendTime()){
removeId.add(entry.getKey());
continue;
}
CommonProto.RedPackage.Builder redPackage = CommonProto.RedPackage.newBuilder();
redPackage.setGetCount(RedisUtil.getInstence().getMapValues("red_already_list", entry.getKey(),int.class,AcceptRedInfo.class).size());
AcceptRedInfo already = RedisUtil.getInstence().getMapEntry("red_already_list", entry.getKey(), String.valueOf(session.getUid()), AcceptRedInfo.class);
@ -1026,6 +1031,10 @@ public class GuildLogic {
redPackage.setRedType(entry.getValue().getTypeId());
builder.addInfo(redPackage);
}
for(String id:removeId){
RedisUtil.getInstence().removeMapEntrys(RedisKey.FAMILY_RED_PACKAGE, String.valueOf(guildId),id);
}
MessageUtil.sendMessage(session,1,messageType.getNumber(),builder.build(),true);
}
@ -1072,7 +1081,8 @@ public class GuildLogic {
PlayerManager playerInfoManager = UserManager.getUser(packInfo.getUid()).getPlayerInfoManager();
builder.setSendName(playerInfoManager.getNickName())
.setHead(playerInfoManager.getHead())
.setHeadFrame(playerInfoManager.getHeadFrame());
.setHeadFrame(playerInfoManager.getHeadFrame())
.setRemainTime(packInfo.getSendTime()+packInfo.getEffectTime()-(int)(TimeUtils.now()/1000));
MessageUtil.sendMessage(session,1,messageType.getNumber(),builder.build(),true);
}
}

View File

@ -11,6 +11,10 @@ public class RedPackage {
private int uid;
private int sendTime;
private int effectTime;
public int getTypeId() {
@ -29,9 +33,27 @@ public class RedPackage {
this.uid = uid;
}
public RedPackage(int typeId, int uid) {
public int getSendTime() {
return sendTime;
}
public void setSendTime(int sendTime) {
this.sendTime = sendTime;
}
public int getEffectTime() {
return effectTime;
}
public void setEffectTime(int effectTime) {
this.effectTime = effectTime;
}
public RedPackage(int typeId, int uid, int sendTime, int effectTime) {
this.typeId = typeId;
this.uid = uid;
this.sendTime = sendTime;
this.effectTime = effectTime;
}
public RedPackage() {