diff --git a/business/jxutils/tasks/configrefresh.go b/business/jxutils/tasks/configrefresh.go index ced368d0a..e38bc2f7f 100644 --- a/business/jxutils/tasks/configrefresh.go +++ b/business/jxutils/tasks/configrefresh.go @@ -29,6 +29,7 @@ const ( weimobTokenExpires = 7200 * time.Second yilianyunTokenExpires = 30 * 24 * 3600 * time.Second pushTokenExpires = 7200 * time.Second + fnTokenExpires = 12 * time.Hour maxRefreshGap = 5 * 60 * time.Second errRefreshGap = 10 * time.Second @@ -139,6 +140,28 @@ func RefreshWeixinToken() (err error) { return err } +func RefreshFnToken() (err error) { + if api.FnAPI != nil { + err = RefreshConfig("fn", fnTokenExpires, func() (token string, expireTimeStr string) { + globals.SugarLogger.Debugf("RefreshFnToken RunMode:%s", beego.BConfig.RunMode) + if globals.IsMainProductEnv() { + if tokenInfo, err := api.FnAPI.GetAccessToken(); err == nil { + globals.SugarLogger.Debugf("RefreshFnToken tokenInfo:%s", utils.Format4Output(tokenInfo, true)) + token = tokenInfo.AccessToken + } else { + globals.SugarLogger.Errorf("RefreshFnToken RefreshToken failed with error:%v", err) + } + } + return token, expireTimeStr + }, func(value string) { + globals.SugarLogger.Debugf("RefreshFnToken setter value:%s", value) + // syseventhub.SysEventHub.OnNewWXToken(value) + api.FnAPI.SetToken(value) + }) + } + return err +} + func RefreshWeixin2Token() (err error) { if api.WeixinMiniAPI2 != nil { err = RefreshConfig("wechat2", weixinTokenExpires, func() (token string, expireTimeStr string) { diff --git a/conf/app.conf b/conf/app.conf index efaadf5c5..4739e2847 100644 --- a/conf/app.conf +++ b/conf/app.conf @@ -263,6 +263,9 @@ pushAppKey = "iFrkUDmR2g5eqQpfh2kQ57" pushAppSecret = "WTn53qd6WAAdLMXfmXvzb7" pushMasterSecret= "dGZcR0XGGg7H5Pd7FR3n47" +fnAppID = "6a3e2073-1850-413b-9eb7-6c342ec36e1c" +fnAppSecret = "a8248088-a742-4c33-a0db-03aeae00ca7d" + [jxgy] httpport = 8088 EnableDocs = false diff --git a/globals/api/api.go b/globals/api/api.go index 8e98883a1..aac87d0d2 100644 --- a/globals/api/api.go +++ b/globals/api/api.go @@ -3,6 +3,8 @@ package api import ( "time" + "git.rosy.net.cn/baseapi/platformapi/fnpsapi" + "git.rosy.net.cn/baseapi/platformapi/unipushapi" "git.rosy.net.cn/baseapi/platformapi/jdshopapi" @@ -69,6 +71,7 @@ var ( WeixinMiniAppID3 string WxpayAPI *wxpayapi.API // 微信支付API TLpayAPI *tonglianpayapi.API //通联收银宝api + FnAPI *fnpsapi.API //蜂鸟配送api YinBaoAPI *yinbaoapi.API //银豹平台api @@ -246,6 +249,7 @@ func Init() { AliPayAPI = alipayapi.New(alipayAppID, []byte(beego.AppConfig.String("alipayPrivateKey"))) } + FnAPI = fnpsapi.New(beego.AppConfig.DefaultString("fnAppID", ""), beego.AppConfig.DefaultString("fnAppSecret", "")) FeieAPI = feieapi.New(beego.AppConfig.DefaultString("feieUser", ""), beego.AppConfig.DefaultString("feieKey", "")) XiaoWMAPI = xiaowmapi.New(beego.AppConfig.DefaultInt("xiaoWMAppID", 0), beego.AppConfig.DefaultString("xiaoWMAppKey", "")) YilianyunAPI = yilianyunapi.New(beego.AppConfig.DefaultString("yilianyunClientID", ""), beego.AppConfig.DefaultString("yilianyunClientSecret", ""))