2019-09-06 11:04:28 +08:00
|
|
|
package config;
|
|
|
|
|
2019-10-11 16:32:20 +08:00
|
|
|
import manager.STableManager;
|
2019-09-06 11:04:28 +08:00
|
|
|
import manager.Table;
|
2019-10-11 16:32:20 +08:00
|
|
|
import util.TimeUtils;
|
|
|
|
import util.StringUtil;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-12-26 10:09:06 +08:00
|
|
|
import java.util.*;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
|
|
|
@Table(name ="RechargeCommodityConfig")
|
|
|
|
public class SRechargeCommodityConfig implements BaseConfig {
|
2019-10-11 16:55:39 +08:00
|
|
|
private int id;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2020-08-21 20:31:30 +08:00
|
|
|
private String rechargeId;
|
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private String name;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int type;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2020-08-14 23:08:45 +08:00
|
|
|
private double price;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int[][] firstMultiple;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int[][] baseReward;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int[][][] extraReward;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int limit;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int firstInvest;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int isDiscount;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int[] discountType;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int order;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int accumulativeRecharge;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int[][] playerLevel;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int[] openPrivilege;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int contiueDays;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2020-09-09 23:22:00 +08:00
|
|
|
private String rechargeId2;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2020-09-09 23:22:00 +08:00
|
|
|
private String rechargeId3;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int time;
|
|
|
|
private String startTime;
|
|
|
|
private String endtime;
|
2019-09-06 11:04:28 +08:00
|
|
|
|
|
|
|
|
|
|
|
private long startTimeLong;
|
|
|
|
private long endTimeLong;
|
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
private int limitShow;
|
|
|
|
|
2020-01-09 16:43:47 +08:00
|
|
|
private int dailyUpdate;
|
|
|
|
|
2020-05-16 16:56:15 +08:00
|
|
|
private int[] passiveSkill;
|
|
|
|
|
2020-10-13 14:58:25 +08:00
|
|
|
private int showType;
|
2020-01-09 16:43:47 +08:00
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
public static Map<Integer, SRechargeCommodityConfig> rechargeCommodityConfigMap;
|
2020-08-21 20:31:30 +08:00
|
|
|
public static Map<String, SRechargeCommodityConfig> sdkRechargeCommodityConfigMap;
|
2019-10-11 16:55:39 +08:00
|
|
|
public static Map<Integer, SRechargeCommodityConfig> rechargeLevelMap;
|
2020-08-24 23:36:16 +08:00
|
|
|
private static TreeMap<Double,Integer> recharegeHeroTime;
|
2020-06-12 17:04:47 +08:00
|
|
|
public static TreeMap<Integer,Integer> rechargePlayerLevelMap;
|
2020-03-20 11:00:59 +08:00
|
|
|
public static Set<SRechargeCommodityConfig> refreshItemInfo;
|
|
|
|
|
2020-10-13 14:58:25 +08:00
|
|
|
public static Map<Integer, Map<Integer, SRechargeCommodityConfig>> rechargeIndetions;
|
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
@Override
|
2019-09-06 11:04:28 +08:00
|
|
|
public void init() throws Exception {
|
2019-10-11 16:32:20 +08:00
|
|
|
Map<Integer, SRechargeCommodityConfig> config = STableManager.getConfig(SRechargeCommodityConfig.class);
|
2019-09-06 11:04:28 +08:00
|
|
|
Map<Integer, SRechargeCommodityConfig> rechargeLevelMapTmp = new HashMap<>();
|
2019-12-26 10:09:06 +08:00
|
|
|
|
2020-08-21 20:31:30 +08:00
|
|
|
sdkRechargeCommodityConfigMap = new HashMap<>();
|
2020-08-24 23:16:18 +08:00
|
|
|
|
2020-08-24 23:36:16 +08:00
|
|
|
TreeMap<Double, Integer> recharegeHeroTimeTmp = new TreeMap<>();
|
2020-08-24 23:16:18 +08:00
|
|
|
|
2020-06-12 17:04:47 +08:00
|
|
|
TreeMap<Integer,Integer> rechargePlayerLevelTemp = new TreeMap<>();
|
2020-03-20 11:00:59 +08:00
|
|
|
Set<SRechargeCommodityConfig> refreshItemInfoTmp = new HashSet<>();
|
2020-10-13 14:58:25 +08:00
|
|
|
Map<Integer, Map<Integer, SRechargeCommodityConfig>> rechargeIndetionsTemp = new HashMap<>();
|
2019-09-06 11:04:28 +08:00
|
|
|
for(SRechargeCommodityConfig sRechargeCommodityConfig : config.values()){
|
2020-08-21 20:31:30 +08:00
|
|
|
sdkRechargeCommodityConfigMap.put(sRechargeCommodityConfig.getRechargeId(),sRechargeCommodityConfig);
|
2020-09-09 23:22:00 +08:00
|
|
|
sdkRechargeCommodityConfigMap.put(sRechargeCommodityConfig.getRechargeId2(),sRechargeCommodityConfig);
|
|
|
|
sdkRechargeCommodityConfigMap.put(sRechargeCommodityConfig.getRechargeId3(),sRechargeCommodityConfig);
|
2019-09-06 11:04:28 +08:00
|
|
|
int[] discountType = sRechargeCommodityConfig.getDiscountType();
|
|
|
|
if(discountType!=null && discountType.length>0 &&discountType[0] == 2){
|
|
|
|
int level = discountType[1];
|
|
|
|
rechargeLevelMapTmp.put(level,sRechargeCommodityConfig);
|
|
|
|
}
|
2020-06-17 09:40:33 +08:00
|
|
|
if(discountType!=null && discountType.length>0 &&sRechargeCommodityConfig.getTime()==4) {
|
2020-09-01 22:11:12 +08:00
|
|
|
//五星成长礼初始化
|
|
|
|
if (discountType[0] == 4&&sRechargeCommodityConfig.getDiscountType().length==4) {
|
2020-08-24 23:36:16 +08:00
|
|
|
recharegeHeroTimeTmp.put((double)discountType[2], sRechargeCommodityConfig.getId());
|
2020-06-12 17:09:03 +08:00
|
|
|
} else if (discountType[0] == 3) {
|
|
|
|
rechargePlayerLevelTemp.put(discountType[1], sRechargeCommodityConfig.getId());
|
2020-06-12 17:04:47 +08:00
|
|
|
}
|
2019-11-25 20:17:30 +08:00
|
|
|
}
|
2020-03-20 11:00:59 +08:00
|
|
|
if(sRechargeCommodityConfig.getDailyUpdate()>0){
|
|
|
|
refreshItemInfoTmp.add(sRechargeCommodityConfig);
|
|
|
|
}
|
2019-09-06 11:04:28 +08:00
|
|
|
|
|
|
|
int time = sRechargeCommodityConfig.getTime();
|
|
|
|
String startTime = sRechargeCommodityConfig.getStartTime();
|
|
|
|
String endtime = sRechargeCommodityConfig.getEndtime();
|
2019-10-11 16:32:20 +08:00
|
|
|
if(time ==1 ){ // ActivityType.OPEN_TYPE_TIME
|
2019-09-06 11:04:28 +08:00
|
|
|
if(!"0".equals(startTime)){
|
|
|
|
sRechargeCommodityConfig.setStartTimeLong(TimeUtils.parseTimeToMiles(startTime,TimeUtils.Stand_CeHua_Data_format));
|
|
|
|
}
|
|
|
|
if(!"0".equals(endtime)){
|
|
|
|
sRechargeCommodityConfig.setEndTimeLong(TimeUtils.parseTimeToMiles(endtime,TimeUtils.Stand_CeHua_Data_format));
|
|
|
|
}
|
|
|
|
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
if(!StringUtil.isEmpty(startTime)){
|
|
|
|
sRechargeCommodityConfig.setStartTimeLong(Long.parseLong(startTime));
|
|
|
|
}
|
|
|
|
if(!StringUtil.isEmpty(endtime)){
|
2020-01-16 17:53:38 +08:00
|
|
|
sRechargeCommodityConfig.setEndTimeLong(Long.parseLong(endtime));
|
2019-09-06 11:04:28 +08:00
|
|
|
}
|
2020-10-13 14:58:25 +08:00
|
|
|
if (sRechargeCommodityConfig.getShowType() == 25 || sRechargeCommodityConfig.getShowType() == 26) {
|
|
|
|
if (!rechargeIndetionsTemp.containsKey(sRechargeCommodityConfig.getShowType())) {
|
|
|
|
rechargeIndetionsTemp.put(sRechargeCommodityConfig.getShowType(), new HashMap<>());
|
|
|
|
}
|
|
|
|
rechargeIndetionsTemp.get(sRechargeCommodityConfig.getShowType()).put(sRechargeCommodityConfig.getId(), sRechargeCommodityConfig);
|
|
|
|
}
|
2019-09-06 11:04:28 +08:00
|
|
|
}
|
|
|
|
rechargeCommodityConfigMap = config;
|
2019-10-11 16:32:20 +08:00
|
|
|
rechargeLevelMap = rechargeLevelMapTmp;
|
2019-12-26 10:09:06 +08:00
|
|
|
recharegeHeroTime = recharegeHeroTimeTmp;
|
2020-03-20 11:00:59 +08:00
|
|
|
refreshItemInfo = refreshItemInfoTmp;
|
2020-06-12 17:04:47 +08:00
|
|
|
rechargePlayerLevelMap = rechargePlayerLevelTemp;
|
2020-10-13 14:58:25 +08:00
|
|
|
rechargeIndetions = rechargeIndetionsTemp;
|
2019-09-06 11:04:28 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
public int getId() {
|
2019-09-06 11:04:28 +08:00
|
|
|
return id;
|
|
|
|
}
|
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
public int getType() {
|
2019-09-06 11:04:28 +08:00
|
|
|
return type;
|
|
|
|
}
|
|
|
|
|
2020-08-14 23:08:45 +08:00
|
|
|
public double getPrice() {
|
2019-09-06 11:04:28 +08:00
|
|
|
return price;
|
|
|
|
}
|
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
public int[][] getFirstMultiple() {
|
2019-09-06 11:04:28 +08:00
|
|
|
return firstMultiple;
|
|
|
|
}
|
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
public int[][] getBaseReward() {
|
2019-09-06 11:04:28 +08:00
|
|
|
return baseReward;
|
|
|
|
}
|
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
public int[][][] getExtraReward() {
|
2019-09-06 11:04:28 +08:00
|
|
|
return extraReward;
|
|
|
|
}
|
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
public int getLimit() {
|
2019-09-06 11:04:28 +08:00
|
|
|
return limit;
|
|
|
|
}
|
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
public int getFirstInvest() {
|
2019-09-06 11:04:28 +08:00
|
|
|
return firstInvest;
|
|
|
|
}
|
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
public int getIsDiscount() {
|
2019-09-06 11:04:28 +08:00
|
|
|
return isDiscount;
|
|
|
|
}
|
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
public int[] getDiscountType() {
|
2019-09-06 11:04:28 +08:00
|
|
|
return discountType;
|
|
|
|
}
|
|
|
|
|
2019-10-11 16:55:39 +08:00
|
|
|
public int getOrder() {
|
2019-09-06 11:04:28 +08:00
|
|
|
return order;
|
|
|
|
}
|
|
|
|
|
|
|
|
public int getAccumulativeRecharge() {
|
|
|
|
return accumulativeRecharge;
|
|
|
|
}
|
|
|
|
|
|
|
|
public int[][] getPlayerLevel() {
|
|
|
|
return playerLevel;
|
|
|
|
}
|
|
|
|
|
|
|
|
public int[] getOpenPrivilege() {
|
|
|
|
return openPrivilege;
|
|
|
|
}
|
|
|
|
|
|
|
|
public int getTime() {
|
|
|
|
return time;
|
|
|
|
}
|
|
|
|
|
|
|
|
public String getStartTime() {
|
|
|
|
return startTime;
|
|
|
|
}
|
|
|
|
|
|
|
|
public String getEndtime() {
|
|
|
|
return endtime;
|
|
|
|
}
|
|
|
|
|
|
|
|
public int getContiueDays() {
|
|
|
|
return contiueDays;
|
|
|
|
}
|
|
|
|
|
|
|
|
public String getName() {
|
|
|
|
return name;
|
|
|
|
}
|
|
|
|
|
|
|
|
public void setStartTimeLong(long startTimeLong) {
|
|
|
|
this.startTimeLong = startTimeLong;
|
|
|
|
}
|
|
|
|
|
|
|
|
public void setEndTimeLong(long endTimeLong) {
|
|
|
|
this.endTimeLong = endTimeLong;
|
|
|
|
}
|
2019-10-11 16:32:20 +08:00
|
|
|
|
|
|
|
public long getStartTimeLong() {
|
|
|
|
return startTimeLong;
|
|
|
|
}
|
|
|
|
|
|
|
|
public long getEndTimeLong() {
|
|
|
|
return endTimeLong;
|
|
|
|
}
|
2019-10-11 16:55:39 +08:00
|
|
|
public int getLimitShow() {
|
|
|
|
return limitShow;
|
|
|
|
}
|
2019-11-25 20:17:30 +08:00
|
|
|
|
2020-01-09 16:43:47 +08:00
|
|
|
public int getDailyUpdate() {
|
|
|
|
return dailyUpdate;
|
|
|
|
}
|
|
|
|
|
2020-08-24 23:36:16 +08:00
|
|
|
public static TreeMap<Double, Integer> getRecharegeHeroTime() {
|
2019-12-26 10:09:06 +08:00
|
|
|
return recharegeHeroTime;
|
|
|
|
}
|
|
|
|
|
2020-08-24 23:36:16 +08:00
|
|
|
public static void setRecharegeHeroTime(TreeMap<Double, Integer> recharegeHeroTime) {
|
2019-12-26 10:09:06 +08:00
|
|
|
SRechargeCommodityConfig.recharegeHeroTime = recharegeHeroTime;
|
|
|
|
}
|
2020-03-20 11:00:59 +08:00
|
|
|
|
2020-08-21 20:31:30 +08:00
|
|
|
public String getRechargeId() {
|
|
|
|
return rechargeId;
|
|
|
|
}
|
2020-09-09 23:22:00 +08:00
|
|
|
|
|
|
|
public String getRechargeId2() {
|
|
|
|
return rechargeId2;
|
|
|
|
}
|
|
|
|
|
|
|
|
public String getRechargeId3() {
|
|
|
|
return rechargeId3;
|
|
|
|
}
|
2020-10-13 14:58:25 +08:00
|
|
|
|
|
|
|
public int getShowType() {
|
|
|
|
return showType;
|
|
|
|
}
|
2019-09-06 11:04:28 +08:00
|
|
|
}
|