This commit is contained in:
@@ -7,7 +7,7 @@ import (
|
||||
)
|
||||
|
||||
// /取消redis空节点的强制缓存
|
||||
func dbm(m cool.IModel) *gdb.Model {
|
||||
func dbm_enable(m cool.IModel) *gdb.Model {
|
||||
ret := cool.DBM(m)
|
||||
if cool.Config.ServerInfo.IsVip == 0 { //正式服启动缓存
|
||||
ret = ret.Where("is_enable", 1)
|
||||
@@ -20,7 +20,7 @@ func dbm(m cool.IModel) *gdb.Model {
|
||||
}
|
||||
return ret
|
||||
}
|
||||
func dbm_fix(m cool.IModel) *gdb.Model {
|
||||
func dbm_notenable(m cool.IModel) *gdb.Model {
|
||||
ret := cool.DBM(m).Cache(gdb.CacheOption{
|
||||
Force: false,
|
||||
})
|
||||
@@ -40,3 +40,8 @@ func dbm_nocache(m cool.IModel) *gdb.Model {
|
||||
// }
|
||||
return ret
|
||||
}
|
||||
func dbm_nocache_noenable(m cool.IModel) *gdb.Model {
|
||||
ret := cool.DBM(m)
|
||||
|
||||
return ret
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ func (s *BossService) Get(id uint32) *model.BossConfig {
|
||||
return nil
|
||||
}
|
||||
var item *model.BossConfig
|
||||
dbm_fix(s.Model).Where("id", id).Scan(&item)
|
||||
dbm_notenable(s.Model).Where("id", id).Scan(&item)
|
||||
|
||||
return item
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ func NewCdkService() *CdkService {
|
||||
}
|
||||
func (s *CdkService) Get(id string) *model.CDKConfig {
|
||||
var item *model.CDKConfig
|
||||
dbm_fix(s.Model).Where("cdk_code", id).WhereNot("exchange_remain_count", 0).Scan(&item)
|
||||
dbm_notenable(s.Model).Where("cdk_code", id).WhereNot("exchange_remain_count", 0).Scan(&item)
|
||||
|
||||
return item
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ type EffectService struct {
|
||||
}
|
||||
|
||||
func (s *EffectService) Args(id uint32) (int, []int) {
|
||||
m := dbm_fix(s.Model).Where("se_idx", id)
|
||||
m := dbm_notenable(s.Model).Where("se_idx", id)
|
||||
var tt model.PlayerPetSpecialEffect
|
||||
m.Scan(&tt)
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ func NewEggService() *EggService {
|
||||
|
||||
func (s *EggService) GetData(p1 uint32) []int32 {
|
||||
//cacheKey := strings.Join([]string{fmt.Sprintf("%d", p1), fmt.Sprintf("%d", p2)}, ":")
|
||||
m := dbm(s.Model)
|
||||
m := dbm_enable(s.Model)
|
||||
|
||||
var pet []model.Egg //一个特性应该是唯一的,但是我们要获取默认随机特性
|
||||
m.Wheref(`male_pet_ids @> ARRAY[?]::integer[]`, p1).Scan(&pet)
|
||||
@@ -37,7 +37,7 @@ func (s *EggService) GetData(p1 uint32) []int32 {
|
||||
}
|
||||
func (s *EggService) GetResult(m, f uint32) uint32 {
|
||||
//cacheKey := strings.Join([]string{fmt.Sprintf("%d", p1), fmt.Sprintf("%d", p2)}, ":")
|
||||
md := dbm(s.Model)
|
||||
md := dbm_enable(s.Model)
|
||||
|
||||
var pet *model.Egg //一个特性应该是唯一的,但是我们要获取默认随机特性
|
||||
md.Wheref(`male_pet_ids @> ARRAY[?]::integer[]`, m).
|
||||
|
||||
@@ -17,14 +17,14 @@ type ItemService struct {
|
||||
func (s *ItemService) GetItem(id uint32) *model.ItemGift {
|
||||
var item *model.ItemGift
|
||||
|
||||
dbm(s.Model).Where("id", id).Scan(&item)
|
||||
dbm_notenable(s.Model).Where("id", id).Scan(&item)
|
||||
|
||||
return item
|
||||
}
|
||||
func (s *ItemService) GetItemCount(id uint32) data.ItemInfo {
|
||||
var item model.ItemGift
|
||||
var res data.ItemInfo
|
||||
dbm(s.Model).Where("id", id).Scan(&item)
|
||||
dbm_notenable(s.Model).Where("id", id).Scan(&item)
|
||||
|
||||
if item.ItemID == 0 {
|
||||
|
||||
@@ -41,7 +41,7 @@ func (s *ItemService) GetItemCount(id uint32) data.ItemInfo {
|
||||
}
|
||||
func (s *ItemService) GetEgg(count int64) []data.ItemInfo {
|
||||
var item []model.ItemGift
|
||||
dbm(s.Model).Where("is_egg", 1).Scan(&item)
|
||||
dbm_notenable(s.Model).Where("is_egg", 1).Scan(&item)
|
||||
|
||||
rr := utils.RandomSlice(item, int(count))
|
||||
var res = make([]data.ItemInfo, len(rr))
|
||||
|
||||
@@ -23,7 +23,7 @@ func NewPetRewardService() *PetRewardService {
|
||||
}
|
||||
func (s *PetRewardService) GetEgg() model.PetReward {
|
||||
var item model.PetReward
|
||||
dbm_nocache(s.Model).Where("is_egg", 1).OrderRandom().Limit(1).Scan(&item)
|
||||
dbm_nocache_noenable(s.Model).Where("is_egg", 1).OrderRandom().Limit(1).Scan(&item)
|
||||
|
||||
return item
|
||||
|
||||
@@ -33,7 +33,7 @@ func (s *PetRewardService) Get(id uint32) *model.PetReward {
|
||||
return nil
|
||||
}
|
||||
var item *model.PetReward
|
||||
dbm(s.Model).Where("id", id).Scan(&item)
|
||||
dbm_notenable(s.Model).Where("id", id).Scan(&item)
|
||||
|
||||
return item
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@ func (s *PetFusionMaterialService) Data(Material1 [4]uint32) int32 {
|
||||
}
|
||||
|
||||
}
|
||||
m := dbm(s.Model)
|
||||
m := dbm_enable(s.Model)
|
||||
|
||||
var effect *model.PetFusionMaterial //一个特性应该是唯一的,但是我们要获取默认随机特性
|
||||
condition := g.Map{
|
||||
|
||||
@@ -64,7 +64,7 @@ func (s *PetFusionService) Data(p1, p2, rand uint32) uint32 {
|
||||
func (s *PetFusionService) getData(p1, p2 uint32) []model.PetFusion {
|
||||
|
||||
var pet []model.PetFusion //一个特性应该是唯一的,但是我们要获取默认随机特性
|
||||
dbm(s.Model).Where("main_pet_id", p1).Wheref(`sub_pet_ids @> ARRAY[?]::integer[]`, p2).Scan(&pet)
|
||||
dbm_enable(s.Model).Where("main_pet_id", p1).Wheref(`sub_pet_ids @> ARRAY[?]::integer[]`, p2).Scan(&pet)
|
||||
|
||||
return pet
|
||||
|
||||
@@ -73,7 +73,7 @@ func (s *PetFusionService) getData(p1, p2 uint32) []model.PetFusion {
|
||||
func (s *PetFusionService) def() []model.PetFusion {
|
||||
|
||||
var pets []model.PetFusion
|
||||
dbm(s.Model).Where("is_default", 1).Scan(&pets)
|
||||
dbm_enable(s.Model).Where("is_default", 1).Scan(&pets)
|
||||
|
||||
return pets
|
||||
// return ret.Interface().([]model.PetFusion)
|
||||
|
||||
@@ -46,7 +46,7 @@ func (s *ShinyService) RandShiny(id uint32) *model.ColorfulSkin {
|
||||
var ret []model.ColorfulSkin
|
||||
|
||||
// 执行 Raw SQL 并扫描返回值
|
||||
dbm(s.Model).
|
||||
dbm_enable(s.Model).
|
||||
Wheref(`bind_elf_ids @> ?::jsonb`, id).
|
||||
Wheref(`jsonb_typeof(bind_elf_ids) = ?`, "array").Scan(&ret)
|
||||
|
||||
@@ -73,7 +73,7 @@ func (s *ShinyService) FixShiny(id uint32) *model.ColorfulSkin {
|
||||
var ret []model.ColorfulSkin
|
||||
|
||||
// 执行 Raw SQL 并扫描返回值
|
||||
dbm(s.Model).
|
||||
dbm_enable(s.Model).
|
||||
Wheref(`bind_elf_ids @> ?::jsonb`, id).
|
||||
Wheref(`jsonb_typeof(bind_elf_ids) = ?`, "array").Scan(&ret)
|
||||
if len(ret) == 0 {
|
||||
@@ -93,7 +93,7 @@ func (s *ShinyService) GetShiny(id int) *data.GlowFilter {
|
||||
var ret []model.ColorfulSkin
|
||||
|
||||
// 执行 Raw SQL 并扫描返回值
|
||||
dbm(s.Model).
|
||||
dbm_enable(s.Model).
|
||||
Where("id", id).Scan(&ret)
|
||||
if len(ret) == 0 {
|
||||
return nil
|
||||
|
||||
@@ -21,7 +21,7 @@ func NewShopService() *ShopService {
|
||||
}
|
||||
}
|
||||
func (s *ShopService) Get(product_id uint32) *model.ShopConfig {
|
||||
m := dbm(s.Model).Where("product_id", product_id)
|
||||
m := dbm_enable(s.Model).Where("product_id", product_id)
|
||||
var tt *model.ShopConfig
|
||||
m.Scan(&tt)
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ func NewTalkConfigService() *TalkConfigService {
|
||||
func (s *TalkConfigService) GetCache(flag int) model.MineralCollectionConfig {
|
||||
|
||||
var config model.MineralCollectionConfig
|
||||
dbm(s.Model).Where("type", flag).Scan(&config)
|
||||
dbm_enable(s.Model).Where("type", flag).Scan(&config)
|
||||
return config
|
||||
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ func NewTaskService() *TaskService {
|
||||
}
|
||||
func (s *TaskService) Get(id, os int) *model.TaskConfig {
|
||||
var item []model.TaskConfig
|
||||
dbm(s.Model).Where("task_id", id).Scan(&item)
|
||||
dbm_enable(s.Model).Where("task_id", id).Scan(&item)
|
||||
var res *model.TaskConfig
|
||||
for _, v := range item {
|
||||
if v.OutState == os {
|
||||
@@ -40,7 +40,7 @@ func (s *TaskService) Get(id, os int) *model.TaskConfig {
|
||||
}
|
||||
func (s *TaskService) GetDaily() []model.TaskConfig {
|
||||
var item []model.TaskConfig
|
||||
dbm(s.Model).Where("task_type", 1).Scan(&item)
|
||||
dbm_enable(s.Model).Where("task_type", 1).Scan(&item)
|
||||
|
||||
return item
|
||||
|
||||
|
||||
@@ -68,7 +68,7 @@ func (m *UnifiedTowerModel) GroupName() string {
|
||||
// Boss 根据塔等级获取对应的Boss配置(统一入口)
|
||||
func (s *TowerService) Boss(towerLevel uint32) *model.BaseTowerConfig {
|
||||
// 构建基础查询条件
|
||||
query := dbm(s.Model).Where("tower_level = ?", towerLevel)
|
||||
query := dbm_enable(s.Model).Where("tower_level = ?", towerLevel)
|
||||
|
||||
// 600塔专属的缓存配置
|
||||
var config model.BaseTowerConfig
|
||||
|
||||
Reference in New Issue
Block a user