miduo_server/tablemanager/src/main/java/config/SSpecialConfig.java

161 lines
8.5 KiB
Java

package config;
import manager.STableManager;
import manager.Table;
import util.StringUtil;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
/**
* 常量表
*/
@Table(name = "SpecialConfig")
public class SSpecialConfig implements BaseConfig {
private static Map<String, String> enumers;
private int id;
private String key;
private String value;
public static final String PHONE_BINDING = "Phone_Binding";
public static final String DIAL_PERSCORE = "DIAL_PERSCORE";//探宝转盘每转一次获得的积分
public static final String MANDATORY_ASTROLOGICAL = "Mandatory_Astrological";//强制占星跳到第四颗星
public static final String ARENA_RANKINGSHOWNUM = "Arena_RankingShowNum";//竞技场排行榜上榜显示排名
public static final String TRIAL_RANKINGSHOWNUM = "Trial_RankingShowNum";//试炼副本排行榜上榜显示排名
public static final String BEASTS_RANKINGSHOWNUM = "Beasts_RankingShowNum";//兽潮来袭排行榜上榜显示排名
public static final String ADVENTURE_RANKINGSHOWNUM = "Adventure_RankingShowNum";//外敌入侵排行榜上榜显示排名
public static final String COMBAT_RANKINGSHOWNUM = "Combat_RankingShowNum";//战力排行榜上榜显示排名
public static final String EQUIPSIGN_LIMIT = "EquipSign_limit";//仓库中的魂印上限
public static final String EquipTalismana_limit = "EquipTalismana_limit";//仓库中的法宝上限
public static final String FRIENDAMOUNT_LIMIT = "FriendAmount_limit";//好友上限
public static final String FRIENDAPPLYAMOUNT_LIMIT = "FriendApplyAmount_limit";//好友申请上限
public static final String Friend_Gift = "Friend_Gift";//好友赠送友情点
public static final String Level_RankingShowNum = "Level_RankingShowNum";//关卡排行
public static final String FriendBlackAmount_limit = "FriendBlackAmount_limit";//黑名单上限
public static final String lamp_lottery_content_parm = "lamp_lottery_content_parm";//资质13及以上——系统消息
public static final String lamp_rankup_hero_content_parm = "lamp_rankup_hero_content_parm";//10星及以上——系统消息
public static final String lamp_lottery_differ_content_parm = "lamp_lottery_differ_content_parm";//5及以上——系统消息
// public static final String lamp_activate_differ_content_parm = "lamp_activate_differ_content_parm";//5及以上——系统消息
public static final String lamp_rankup_differ_content_parm = "lamp_rankup_differ_content_parm";//10阶以上——系统消息
public static final String lamp_lottery_equip_content_parm = "lamp_lottery_equip_content_parm";//5及以上——系统消息
public static final String lamp_lottery_equipsign_content_parm = "lamp_lottery_equipsign_content_parm";//5及以上——系统消息
public static final String lamp_lottery_equiptalisman_content_parm = "lamp_lottery_equiptalisman_content_parm";//5及以上——系统消息
public static final String lamp_rankup_equipsign_content_parm = "lamp_rankup_equipsign_content_parm";//5级及以上——系统消息
public static final String lamp_rankup_equiptalisman_content_parm = "lamp_rankup_equiptalisman_content_parm";//8星及以上——系统消息
public static final String SUNLONG_DAILYTASKS = "Sunlong_DailyTasks";//孙龙的宝藏每日、每周、每月任务个数
public static final String SUNLONG_COST = "Sunlong_Cost";//孙龙的宝藏购买等级
public static final String SUNLONG_INTEGRAL = "Sunlong_Integral";//孙龙的宝藏每日积分礼包
public static final String SUNLONG_REWARD = "Sunlong_Reward";//青龙秘宝每周补给
public static final String LAMP_TEXT_SPEED = "lamp_text_speed";//跑马灯速度
public static final String TIME_LIMIT_RECRUITMENT_INTEGRAL = "time_limit_recruitment_integral";//限时抽卡一次积分
public static final String TIME_LIMIT_RECRUITMENT_FREEINTEGRAL = "time_limit_recruitment_FreeIntegral";//东海寻仙每获得150分赠送一次免费招募
public static final String HERO_RETURN_PERCENT = "hero_return_percent";//回溯返还材料比例 实际百分比为填写数值/10000
public static final String HERO_SACRIFICE_PERCENT = "hero_sacrifice_percent";//献祭返还材料比例 实际百分比为填写数值/10000
public static final String HERO_RESOLVE_LICENCE = "hero_resolve_licence";//分解英雄时,处于编队中会有提示
public static final String Sign_Location = "Sign_Location";//魂印位置开启条件(玩家等级)
public static final String Gold_touch = "Gold_touch";//三个点金对应vip
public static final String Gold_touch_refresh = "Gold_touch_refresh";//点金刷新时间
public static final String GUILD_TECHNOLOGY_RETURN_PERCENT = "guild_technology_return_percent";//公会技能重置返还材料比例 实际百分比为填写数值/10000
public static final String LOTTERY_ENERGY_COST = "lottery_energy_cost";//钻石抽积攒仙缘能量(原非酋气息)抽奖消耗
public static final String EXPEDITION_REBORN = "expedition_reborn";// 大闹天宫复活道具id
public static final String REWARD_OF_WORSHIP = "reward_of_worship";//膜拜获得金币奖励
public static final String DISCOUNT_LEVEL= "discount_level";//限时折扣推送等级#推送间隔等级
public static final String GUILD_WAR_ISOPEN = "Guild_war_isopen";//老公会战是否开启
public static final String LUCKYTURNDAILYLIMIT = "LuckyTurnDailyLimit";//幸运探宝每日上限
public static final String REPLACE_ITEM_ID = "replace_item_id";//置换玉道具ID
public static final String REPLACE_COST = "replace_cost";//置换玉消耗
public static final String XUANYUAN_OPEN_TIME = "xuanyuan_open_time";//轩辕开始时间(星期)
public static final String EXCHANGE_FORCE_TYPE = "exchange_focus_type";//货币转换类型
public static final String SKY_TREASURE_SCORE_INGIFT = "sky_treasure_score_ingift";//天宫密保购买默认获得积分
public static final String DISCOUNT_MONSTER_LEVEL = "discount_monster_level";// 心魔试炼折扣礼包触发条件
public static final String DISCOUNT_MAIN = "discount_main";//关卡礼包
@Override
public void init() throws Exception {
Map<Integer, SSpecialConfig> config = STableManager.getConfig(SSpecialConfig.class);
Map<String, String> stringStringMap = new ConcurrentHashMap<>();
for (Map.Entry<Integer, SSpecialConfig> entry : config.entrySet()) {
SSpecialConfig sSpecialConfig = entry.getValue();
stringStringMap.put(sSpecialConfig.getKey(), sSpecialConfig.getValue());
}
enumers = stringStringMap;
}
public static String getStringValue(String key) {
String value = enumers.get(key);
return value;
}
public static int getIntegerValue(String key) {
String value = enumers.get(key);
if (value == null) {
return -1;
}
return Integer.parseInt(value);
}
public static int[] getOnceArrayValue(String key) {
String value = enumers.get(key);
String[] array = value.split("\\#");
int[] arrayNum = new int[array.length];
for (int i = 0; i < array.length; i++) {
arrayNum[i] = Integer.parseInt(array[i]);
}
return arrayNum;
}
public static List<Integer> getListValue(String key) {
List<Integer> list = new LinkedList<>();
String value = enumers.get(key);
String[] array = value.split("\\#");
for (int i = 0; i < array.length; i++) {
list.add(Integer.parseInt(array[i]));
}
return list;
}
public static int[][] getTwiceArrayValue(String key) {
String value = enumers.get(key);
String[] array = value.split("\\|");
int[][] arrayNum = new int[array.length][];
for (int i = 0; i < array.length; i++) {
String[] temp = array[i].split("#");
int[] tempNum = new int[temp.length];
for (int j = 0; j < tempNum.length; j++) {
tempNum[j] = Integer.parseInt(temp[j]);
}
arrayNum[i] = tempNum;
}
return arrayNum;
}
public static int[] getIntegerArrayValue(String key) {
String value = enumers.get(key);
return StringUtil.parseFiledInt(value);
}
public int getId() {
return id;
}
public String getKey() {
return key;
}
public String getValue() {
return value;
}
}