53 lines
1.9 KiB
Go
53 lines
1.9 KiB
Go
package api
|
|
|
|
import (
|
|
"git.rosy.net.cn/baseapi/platformapi/autonavi"
|
|
"git.rosy.net.cn/baseapi/platformapi/dadaapi"
|
|
"git.rosy.net.cn/baseapi/platformapi/elmapi"
|
|
"git.rosy.net.cn/baseapi/platformapi/jdapi"
|
|
"git.rosy.net.cn/baseapi/platformapi/mtpsapi"
|
|
"git.rosy.net.cn/baseapi/platformapi/weixinapi"
|
|
"git.rosy.net.cn/baseapi/utils"
|
|
"github.com/astaxie/beego"
|
|
|
|
"github.com/astaxie/beego/orm"
|
|
_ "github.com/go-sql-driver/mysql" // import your used driver
|
|
)
|
|
|
|
var (
|
|
JdAPI *jdapi.API
|
|
ElmAPI *elmapi.API
|
|
MtpsAPI *mtpsapi.API
|
|
DadaAPI *dadaapi.API
|
|
WeixinAPI *weixinapi.API
|
|
AutonaviAPI *autonavi.API
|
|
)
|
|
|
|
func init() {
|
|
JdAPI = jdapi.New(beego.AppConfig.String("jdToken"), beego.AppConfig.String("jdAppKey"), beego.AppConfig.String("jdSecret"))
|
|
initElm()
|
|
MtpsAPI = mtpsapi.New(beego.AppConfig.String("mtpsAppKey"), beego.AppConfig.String("mtpsSecret"))
|
|
DadaAPI = dadaapi.New(beego.AppConfig.String("dadaAppKey"), beego.AppConfig.String("dadaAppSecret"), beego.AppConfig.String("dadaSourceID"), beego.AppConfig.String("dadaCallbackURL"), beego.AppConfig.DefaultBool("dadaIsProd", false))
|
|
WeixinAPI = weixinapi.New(beego.AppConfig.String("weixinAppID"), beego.AppConfig.String("weixinSecret"))
|
|
AutonaviAPI = autonavi.New(beego.AppConfig.String("autonaviKey"))
|
|
}
|
|
|
|
func initElm() {
|
|
token := beego.AppConfig.String("elmToken")
|
|
if token == "" {
|
|
db := orm.NewOrm()
|
|
var tokenInfo []orm.Params
|
|
num, err := db.Raw("SELECT * FROM config WHERE thirdparty='eleme'").Values(&tokenInfo)
|
|
if err != nil || num != 1 {
|
|
panic(err.Error())
|
|
}
|
|
|
|
var tokenInfo2 map[string]interface{}
|
|
if err := utils.UnmarshalUseNumber([]byte(tokenInfo[0]["token"].(string)), &tokenInfo2); err != nil {
|
|
panic(err.Error())
|
|
}
|
|
token = tokenInfo2["accessToken"].(string)
|
|
}
|
|
ElmAPI = elmapi.New(token, beego.AppConfig.String("elmAppKey"), beego.AppConfig.String("elmSecret"), beego.AppConfig.DefaultBool("elmIsProd", false))
|
|
}
|