fix store
parent
f246d8ce74
commit
2acbce61b4
|
|
@ -8,6 +8,7 @@ import com.ljsd.jieling.globals.Global;
|
|||
import com.ljsd.jieling.ktbeans.KtEventUtils;
|
||||
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
|
||||
import com.ljsd.jieling.logic.OnlineUserManager;
|
||||
import com.ljsd.jieling.logic.activity.ActivityType;
|
||||
import com.ljsd.jieling.logic.activity.event.GoldEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.Poster;
|
||||
import com.ljsd.jieling.logic.dao.PlayerManager;
|
||||
|
|
@ -52,14 +53,8 @@ public class StoreLogic {
|
|||
long now = System.currentTimeMillis();
|
||||
for(SStoreTypeConfig sStoreTypeConfig : SStoreTypeConfig.getsStoreTypeConfigMap().values()){
|
||||
if(sStoreTypeConfig.getStoreOpenRule() == 3){
|
||||
long startTime = 0;
|
||||
long endTime = 0;
|
||||
if (!sStoreTypeConfig.getStartTime().equals("0")){
|
||||
startTime = TimeUtils.parseTimeToMiles(sStoreTypeConfig.getStartTime(), TimeUtils.Stand_CeHua_Data_format);
|
||||
}
|
||||
if (!sStoreTypeConfig.getEndTime().equals("0")){
|
||||
endTime = TimeUtils.parseTimeToMiles(sStoreTypeConfig.getEndTime(), TimeUtils.Stand_CeHua_Data_format);
|
||||
}
|
||||
long startTime = ToolsUtil.getTimeLong(sStoreTypeConfig.getStartTimeLong(), sStoreTypeConfig.getEndTimeLong(),ActivityType.OPEN_TYPE_TIME,0, 1);
|
||||
long endTime = ToolsUtil.getTimeLong(sStoreTypeConfig.getStartTimeLong(),sStoreTypeConfig.getEndTimeLong(), ActivityType.OPEN_TYPE_TIME,0, 2);
|
||||
if(startTime!=0 && endTime!=0 && now > startTime && now<endTime && !openStoreInfo.contains(sStoreTypeConfig.getId())){
|
||||
for(ISession session : OnlineUserManager.sessionMap.values()){
|
||||
if(session.getFiveReady() == 1){
|
||||
|
|
@ -70,6 +65,36 @@ public class StoreLogic {
|
|||
openStoreInfo.add(sStoreTypeConfig.getId());
|
||||
}
|
||||
}
|
||||
}else if(sStoreTypeConfig.getStoreOpenRule() == 6 ){
|
||||
for(ISession session : OnlineUserManager.sessionMap.values()){
|
||||
if(session.getFiveReady() == 1){
|
||||
User user = UserManager.getUser(session.getUid());
|
||||
long userCreateTime = user.getPlayerInfoManager().getCreateTime();
|
||||
long startTime = ToolsUtil.getTimeLong(sStoreTypeConfig.getStartTimeLong(), sStoreTypeConfig.getEndTimeLong(),ActivityType.OPEN_TYPE_ROLE,userCreateTime, 1);
|
||||
long endTime = ToolsUtil.getTimeLong(sStoreTypeConfig.getStartTimeLong(),sStoreTypeConfig.getEndTimeLong(), ActivityType.OPEN_TYPE_ROLE,userCreateTime, 2);
|
||||
if (now < startTime || now>endTime) {
|
||||
continue;
|
||||
}
|
||||
if(!user.getStoreManager().getStoreInfoMap().containsKey(sStoreTypeConfig.getId())){
|
||||
updateUsersStoreAyync(UserManager.getUser(session.getUid()),sStoreTypeConfig.getId());
|
||||
}
|
||||
}
|
||||
}
|
||||
}else if(sStoreTypeConfig.getStoreOpenRule() == 7){
|
||||
long startTime = ToolsUtil.getTimeLong(sStoreTypeConfig.getStartTimeLong(), sStoreTypeConfig.getEndTimeLong(),ActivityType.OPEN_TYPE_ROLE,0, 1);
|
||||
long endTime = ToolsUtil.getTimeLong(sStoreTypeConfig.getStartTimeLong(),sStoreTypeConfig.getEndTimeLong(), ActivityType.OPEN_TYPE_ROLE,0, 2);
|
||||
if (now < startTime || now>endTime) {
|
||||
continue;
|
||||
}
|
||||
for(ISession session : OnlineUserManager.sessionMap.values()){
|
||||
if(session.getFiveReady() == 1){
|
||||
User user = UserManager.getUser(session.getUid());
|
||||
if(!user.getStoreManager().getStoreInfoMap().containsKey(sStoreTypeConfig.getId())){
|
||||
updateUsersStoreAyync(UserManager.getUser(session.getUid()),sStoreTypeConfig.getId());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -177,15 +202,13 @@ public class StoreLogic {
|
|||
return;
|
||||
}
|
||||
long now = TimeUtils.now();
|
||||
long startTime = now;
|
||||
long endTime = 0;
|
||||
|
||||
long startTime = sStoreTypeConfig.getStartTimeLong();
|
||||
long endTime = sStoreTypeConfig.getEndTimeLong();
|
||||
if(sStoreTypeConfig.getStoreOpenRule() == 2 ){
|
||||
startTime = now;
|
||||
endTime =Integer.parseInt(sStoreTypeConfig.getEndTime())*60*1000 + now;
|
||||
}
|
||||
if(sStoreTypeConfig.getStoreOpenRule() == 3 ){
|
||||
startTime = TimeUtils.parseTimeToMiles(sStoreTypeConfig.getStartTime(), TimeUtils.Stand_CeHua_Data_format);
|
||||
endTime = TimeUtils.parseTimeToMiles(sStoreTypeConfig.getEndTime(), TimeUtils.Stand_CeHua_Data_format);
|
||||
}
|
||||
Map<Integer, Integer> itemNumMap = getStoreItem(sStoreTypeConfig.getId(),sStoreTypeConfig,user);
|
||||
storeManager.newStoreInfo(sStoreTypeConfig.getId(),startTime,endTime,itemNumMap);
|
||||
sendStoreUpdateIndication(user.getId(),storeManager.getStoreInfoMap().get(sStoreTypeConfig.getId()));
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ package config;
|
|||
|
||||
import manager.STableManager;
|
||||
import manager.Table;
|
||||
import util.TimeUtils;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
|
|
@ -25,10 +26,33 @@ public class SStoreTypeConfig implements BaseConfig {
|
|||
private int ifManualRefresh;
|
||||
|
||||
private int storeType;
|
||||
|
||||
|
||||
private long startTimeLong;
|
||||
|
||||
private long endTimeLong;
|
||||
|
||||
@Override
|
||||
public void init() throws Exception {
|
||||
sStoreTypeConfigMap = STableManager.getConfig(SStoreTypeConfig.class);
|
||||
Map<Integer, SStoreTypeConfig> config = STableManager.getConfig(SStoreTypeConfig.class);
|
||||
|
||||
for(SStoreTypeConfig sStoreTypeConfig : config.values()){
|
||||
int time = sStoreTypeConfig.getStoreOpenRule();
|
||||
String startTime = sStoreTypeConfig.getStartTime();
|
||||
String endtime = sStoreTypeConfig.getEndTime();
|
||||
if(time == 1 ){//ActivityType.OPEN_TYPE_TIME
|
||||
if (!sStoreTypeConfig.getStartTime().equals("0")){
|
||||
sStoreTypeConfig.setStartTimeLong(TimeUtils.parseTimeToMiles(sStoreTypeConfig.getStartTime(), TimeUtils.Stand_CeHua_Data_format));
|
||||
|
||||
}
|
||||
if (!sStoreTypeConfig.getEndTime().equals("0")){
|
||||
sStoreTypeConfig.setEndTimeLong(TimeUtils.parseTimeToMiles(sStoreTypeConfig.getEndTime(), TimeUtils.Stand_CeHua_Data_format));
|
||||
}
|
||||
continue;
|
||||
}
|
||||
sStoreTypeConfig.setStartTimeLong(Long.parseLong(startTime)*60*1000L);
|
||||
sStoreTypeConfig.setEndTimeLong(Long.parseLong(endtime)*60*1000L);
|
||||
}
|
||||
sStoreTypeConfigMap=config;
|
||||
}
|
||||
|
||||
public static Map<Integer, SStoreTypeConfig> getsStoreTypeConfigMap() {
|
||||
|
|
@ -73,4 +97,20 @@ public class SStoreTypeConfig implements BaseConfig {
|
|||
public int getStoreType() {
|
||||
return storeType;
|
||||
}
|
||||
|
||||
public void setStartTimeLong(long startTimeLong) {
|
||||
this.startTimeLong = startTimeLong;
|
||||
}
|
||||
|
||||
public void setEndTimeLong(long endTimeLong) {
|
||||
this.endTimeLong = endTimeLong;
|
||||
}
|
||||
|
||||
public long getStartTimeLong() {
|
||||
return startTimeLong;
|
||||
}
|
||||
|
||||
public long getEndTimeLong() {
|
||||
return endTimeLong;
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue