- mtps added.

- refactor.
This commit is contained in:
gazebo
2018-06-18 12:03:53 +08:00
parent a0a97c6fc2
commit 03c7efbe1e
14 changed files with 302 additions and 178 deletions

View File

@@ -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)
}

View File

@@ -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
}