go_dreamfactory/modules/pay/configure.go
2022-11-08 16:03:31 +08:00

101 lines
2.4 KiB
Go

package pay
import (
"fmt"
"go_dreamfactory/lego/core"
"go_dreamfactory/modules"
cfg "go_dreamfactory/sys/configure/structs"
)
const (
game_recharge = "game_recharge.json"
game_paypackage = "game_paypackage.json"
)
///背包配置管理组件
type configureComp struct {
modules.MCompConfigure
module *Pay
}
//组件初始化接口
func (this *configureComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
this.MCompConfigure.Init(service, module, comp, options)
this.module = module.(*Pay)
this.LoadConfigure(game_recharge, cfg.NewGameRecharge)
this.LoadConfigure(game_paypackage, cfg.NewGamePayPackage)
return
}
//获取手动加入频道 任务限制
func (this *configureComp) getGameRecharge(id string) (result *cfg.GameRechargeData, err error) {
var (
v interface{}
ok bool
)
if v, err = this.GetConfigure(game_recharge); err != nil {
this.module.Errorf("err:%v", err)
return
} else {
if result, ok = v.(*cfg.GameRecharge).GetDataMap()[id]; !ok {
err = fmt.Errorf("getGameRecharge on found %s", id)
this.module.Errorf("err:%v", err)
return
}
}
return
}
//获取手动加入频道 任务限制
func (this *configureComp) getPayPackageDatas() (result []*cfg.GamePayPackageData, err error) {
var (
v interface{}
)
if v, err = this.GetConfigure(game_paypackage); err != nil {
this.module.Errorf("err:%v", err)
return
} else {
result = v.(*cfg.GamePayPackage).GetDataList()
}
return
}
//获取手动加入频道 任务限制
func (this *configureComp) getPayPackageData(id int32) (result *cfg.GamePayPackageData, err error) {
var (
v interface{}
ok bool
)
if v, err = this.GetConfigure(game_paypackage); err != nil {
this.module.Errorf("err:%v", err)
return
} else {
if result, ok = v.(*cfg.GamePayPackage).GetDataMap()[id]; !ok {
err = fmt.Errorf("getGameRecharge on found %d", id)
this.module.Errorf("err:%v", err)
return
}
}
return
}
//获取手动加入频道 任务限制
func (this *configureComp) getPayPackageDataByPid(pid string) (result *cfg.GamePayPackageData, err error) {
var (
v interface{}
)
if v, err = this.GetConfigure(game_paypackage); err != nil {
this.module.Errorf("err:%v", err)
return
} else {
for _, v := range v.(*cfg.GamePayPackage).GetDataMap() {
if v.Packagetype == pid {
result = v
return
}
}
}
err = fmt.Errorf("getPayPackageDataByPid no found %s", pid)
return
}