Files
jx-callback/globals/globals.go
2020-01-16 10:47:42 +08:00

126 lines
3.6 KiB
Go

package globals
import (
"git.rosy.net.cn/baseapi"
"github.com/astaxie/beego"
"github.com/astaxie/beego/logs"
_ "github.com/go-sql-driver/mysql" // import your used driver
"go.uber.org/zap"
)
var (
ReallyCallPlatformAPI bool
ReallySendWeixinMsg bool
SugarLogger *zap.SugaredLogger
AliKey string
AliSecret string
EnableStoreWrite bool
EnableJdStoreWrite bool
EnableEbaiStoreWrite bool
EnableElmStoreWrite bool
EnableMtwmStoreWrite bool
EnableWscStoreWrite bool
EnablePendingChange bool
QiniuBucket string
WeimobCallbackURL string
WeimobStateSecret string
BackstageHost string
WxBackstageHost string
GetWeixinTokenURL string
GetWeixinTokenKey string
GetYLYTokenURL string
GetWeimobTokenURL string
StoreName string
EnableWXAuth2 bool
DisableWXAuth1 bool
WxpayNotifyURL string
JdOrgCode string
Jd2OrgCode string
IsUseThingMap bool
IsStoreSkuAct bool
IsAddEvent bool
OutputDebugMsgLevel int
)
func init() {
logs.SetLogFuncCallDepth(3)
beego.BConfig.Log.AccessLogs = true
logger, _ := zap.NewDevelopment()
SugarLogger = logger.Sugar()
baseapi.Init(SugarLogger)
Init() // 这里必须要自动调用,不然直接引用全局变量的模块得不到正确的配置值
}
func Init() {
if false { //IsProductEnv() {
OutputDebugMsgLevel = 1
}
SugarLogger.Infof("globals RunMode=%s", beego.BConfig.RunMode)
ReallyCallPlatformAPI = (beego.BConfig.RunMode != "dev" && beego.BConfig.RunMode != "test")
ReallySendWeixinMsg = ReallyCallPlatformAPI && IsProductEnv()
AliKey = beego.AppConfig.DefaultString("aliKey", "")
AliSecret = beego.AppConfig.DefaultString("aliSecret", "")
EnableStoreWrite = beego.AppConfig.DefaultBool("enableStoreWrite", false)
EnableJdStoreWrite = EnableStoreWrite && beego.AppConfig.DefaultBool("enableJdStoreWrite", false)
EnableEbaiStoreWrite = EnableStoreWrite && beego.AppConfig.DefaultBool("enableEbaiStoreWrite", false)
EnableElmStoreWrite = EnableStoreWrite && beego.AppConfig.DefaultBool("enableElmStoreWrite", false)
EnableMtwmStoreWrite = EnableStoreWrite && beego.AppConfig.DefaultBool("enableMtwmStoreWrite", false)
EnableWscStoreWrite = EnableStoreWrite && beego.AppConfig.DefaultBool("enableWscStoreWrite", false)
// EnablePendingChange = beego.AppConfig.DefaultBool("enablePendingChange", false)
QiniuBucket = beego.AppConfig.String("qiniuBucket")
WeimobCallbackURL = beego.AppConfig.DefaultString("weimobCallbackURL", "")
WeimobStateSecret = beego.AppConfig.DefaultString("weimobStateSecret", "")
BackstageHost = beego.AppConfig.DefaultString("backstageHost", "")
WxBackstageHost = beego.AppConfig.DefaultString("wxBackstageHost", "")
GetWeixinTokenURL = beego.AppConfig.DefaultString("getWeixinTokenURL", "")
GetYLYTokenURL = beego.AppConfig.DefaultString("getYLYTokenURL", "")
GetWeimobTokenURL = beego.AppConfig.DefaultString("getWeimobTokenURL", "")
GetWeixinTokenKey = beego.AppConfig.DefaultString("getWeixinTokenKey", "")
StoreName = beego.AppConfig.DefaultString("storeName", "京西菜市")
EnableWXAuth2 = true // beego.BConfig.RunMode == "beta"
DisableWXAuth1 = true
WxpayNotifyURL = beego.AppConfig.DefaultString("wxpayNotifyURL", "")
JdOrgCode = beego.AppConfig.DefaultString("jdOrgCode", "")
Jd2OrgCode = beego.AppConfig.DefaultString("jd2OrgCode", "")
IsUseThingMap = beego.AppConfig.DefaultBool("useThingMap", false)
IsAddEvent = !IsProductEnv()
IsStoreSkuAct = !IsProductEnv()
}
func IsCallbackAlwaysReturnSuccess() bool {
return beego.BConfig.RunMode == "beta"
}
func IsMainProductEnv() bool {
return beego.BConfig.RunMode == "prod"
}
func IsProductEnv() bool {
return IsMainProductEnv() || beego.BConfig.RunMode == "jxgy"
}