- mtps added.
- refactor.
This commit is contained in:
@@ -1,40 +0,0 @@
|
||||
package controller
|
||||
|
||||
import (
|
||||
"git.rosy.net.cn/baseapi/platform/elmapi"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
"github.com/astaxie/beego/orm"
|
||||
"go.uber.org/zap"
|
||||
)
|
||||
|
||||
const (
|
||||
elmToken = "" //"bab2a27f99562f394b411dbb9a6214da"
|
||||
elmAppKey = "KLRDcOZGrk"
|
||||
elmSecret = "1fc221f8265506531da36fb613d5f5ad673f2e9a"
|
||||
)
|
||||
|
||||
var (
|
||||
gElmAPI *elmapi.ELMAPI
|
||||
sugarLogger *zap.SugaredLogger
|
||||
)
|
||||
|
||||
func init() {
|
||||
sugarLogger = globals.SugarLogger
|
||||
token := elmToken
|
||||
if token == "" {
|
||||
db := orm.NewOrm()
|
||||
var tokenInfo []orm.Params
|
||||
num, err := db.Raw("SELECT * FROM thirdpartytoken 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)
|
||||
}
|
||||
gElmAPI = elmapi.NewELMAPI(token, elmAppKey, elmSecret, sugarLogger, true)
|
||||
}
|
||||
@@ -22,7 +22,7 @@ func (o *OrderController) OrderMessage(msg *elmapi.ELMCallbackMsg) *elmapi.ELMCa
|
||||
var innerMsg map[string]interface{}
|
||||
err := utils.UnmarshalUseNumber([]byte(msg.Message), &innerMsg)
|
||||
if err != nil {
|
||||
sugarLogger.Warnf("OrderMessage unmarshal %v error:%v", msg, err)
|
||||
globals.SugarLogger.Warnf("OrderMessage unmarshal %v error:%v", msg, err)
|
||||
return errResponseDataError
|
||||
}
|
||||
if msg.Type == elmapi.OrderValid {
|
||||
@@ -30,7 +30,7 @@ func (o *OrderController) OrderMessage(msg *elmapi.ELMCallbackMsg) *elmapi.ELMCa
|
||||
} else if msg.Type >= elmapi.MerchantValid && msg.Type <= elmapi.OrderFinished {
|
||||
return o.OrderStatusChanged(msg, innerMsg["orderId"].(string))
|
||||
}
|
||||
return elmapi.ELMResponseOK
|
||||
return elmapi.SuccessResponse
|
||||
}
|
||||
|
||||
func (o *OrderController) NewOrder(msg *elmapi.ELMCallbackMsg, orderId string) *elmapi.ELMCallbackResponse {
|
||||
@@ -42,24 +42,24 @@ func (o *OrderController) NewOrder(msg *elmapi.ELMCallbackMsg, orderId string) *
|
||||
|
||||
created, _, err := db.ReadOrCreate(rec, "OrderId")
|
||||
if err != nil {
|
||||
sugarLogger.Warnf("error when calling ReadOrCreate, error:%v", err)
|
||||
globals.SugarLogger.Warnf("error when calling ReadOrCreate, error:%v", err)
|
||||
return errResponseDBError
|
||||
}
|
||||
if created || rec.Type != msg.Type {
|
||||
result, err := gElmAPI.GetOrder(orderId)
|
||||
result, err := globals.ElmAPI.GetOrder(orderId)
|
||||
if err != nil {
|
||||
sugarLogger.Warnf("call GetOrder error:%v", err)
|
||||
globals.SugarLogger.Warnf("call GetOrder error:%v", err)
|
||||
return errResponseCallELMAPIError
|
||||
}
|
||||
err = globals.FreshFoodAPI.NewELMOrder(result)
|
||||
if err != nil {
|
||||
sugarLogger.Warnf("internal error:%v", err)
|
||||
globals.SugarLogger.Warnf("internal error:%v", err)
|
||||
return errResponseInternal
|
||||
}
|
||||
} else {
|
||||
sugarLogger.Infof("duplicate elm msg received:%v", msg)
|
||||
globals.SugarLogger.Infof("duplicate elm msg received:%v", msg)
|
||||
}
|
||||
return elmapi.ELMResponseOK
|
||||
return elmapi.SuccessResponse
|
||||
}
|
||||
|
||||
func (o *OrderController) OrderStatusChanged(msg *elmapi.ELMCallbackMsg, orderId string) *elmapi.ELMCallbackResponse {
|
||||
@@ -70,17 +70,17 @@ func (o *OrderController) OrderStatusChanged(msg *elmapi.ELMCallbackMsg, orderId
|
||||
|
||||
err := db.Read(rec, "OrderId")
|
||||
if err != nil {
|
||||
sugarLogger.Warnf("error when calling ReadOrCreate, error:%v", err)
|
||||
globals.SugarLogger.Warnf("error when calling ReadOrCreate, error:%v", err)
|
||||
return errResponseDBError
|
||||
}
|
||||
if rec.Type != msg.Type {
|
||||
err = globals.FreshFoodAPI.ELMOrderStatus(orderId, msg.Type, utils.GetCurTimestamp())
|
||||
if err != nil {
|
||||
sugarLogger.Warnf("internal error:%v", err)
|
||||
globals.SugarLogger.Warnf("internal error:%v", err)
|
||||
return errResponseInternal
|
||||
}
|
||||
} else {
|
||||
sugarLogger.Infof("duplicate elm msg received:%v", msg)
|
||||
globals.SugarLogger.Infof("duplicate elm msg received:%v", msg)
|
||||
}
|
||||
return elmapi.ELMResponseOK
|
||||
return elmapi.SuccessResponse
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user