diff --git a/business/dada/controller/order.go b/business/dada/controller/order.go index 6993a448d..9db4af47e 100644 --- a/business/dada/controller/order.go +++ b/business/dada/controller/order.go @@ -1,20 +1,20 @@ package controller import ( - "git.rosy.net.cn/baseapi/platform/dadaapi" + "git.rosy.net.cn/baseapi/platformapi/dadaapi" "git.rosy.net.cn/jx-callback/globals/globals2" ) type OrderController struct { } -func Error2Response(err error) *dadaapi.DadaCallbackResponse { +func Error2Response(err error) *dadaapi.CallbackResponse { if err != nil { return dadaapi.FailedResponse } return dadaapi.SuccessResponse } -func (o *OrderController) OrderStatusChanged(msg *dadaapi.DadaCallbackMsg) *dadaapi.DadaCallbackResponse { +func (o *OrderController) OrderStatusChanged(msg *dadaapi.CallbackMsg) *dadaapi.CallbackResponse { return Error2Response(globals2.FreshFoodAPI.DadaOrderStatusChanged(msg)) } diff --git a/business/elm/controller/order.go b/business/elm/controller/order.go index 881e643bd..e1fec9214 100644 --- a/business/elm/controller/order.go +++ b/business/elm/controller/order.go @@ -1,7 +1,7 @@ package controller import ( - "git.rosy.net.cn/baseapi/platform/elmapi" + "git.rosy.net.cn/baseapi/platformapi/elmapi" "git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/jx-callback/business/elm/models" "git.rosy.net.cn/jx-callback/globals" @@ -10,31 +10,31 @@ import ( ) var ( - errResponseInternal = &elmapi.ELMCallbackResponse{Message: "internal error"} - errResponseDataError = &elmapi.ELMCallbackResponse{Message: "elm data error"} - errResponseDBError = &elmapi.ELMCallbackResponse{Message: "DB error"} - errResponseCallELMAPIError = &elmapi.ELMCallbackResponse{Message: "call ELM API error"} + errResponseInternal = &elmapi.CallbackResponse{Message: "internal error"} + errResponseDataError = &elmapi.CallbackResponse{Message: "elm data error"} + errResponseDBError = &elmapi.CallbackResponse{Message: "DB error"} + errResponseCallELMAPIError = &elmapi.CallbackResponse{Message: "call ELM API error"} ) type OrderController struct { } -func (o *OrderController) OrderMessage(msg *elmapi.ELMCallbackMsg) *elmapi.ELMCallbackResponse { +func (o *OrderController) OrderMessage(msg *elmapi.CallbackMsg) *elmapi.CallbackResponse { var innerMsg map[string]interface{} err := utils.UnmarshalUseNumber([]byte(msg.Message), &innerMsg) if err != nil { globals.SugarLogger.Warnf("OrderMessage unmarshal %v error:%v", msg, err) return errResponseDataError } - if msg.Type == elmapi.OrderValid { + if msg.Type == elmapi.MsgTypeOrderValid { return o.NewOrder(msg, innerMsg["id"].(string)) - } else if msg.Type >= elmapi.MerchantValid && msg.Type <= elmapi.OrderFinished { + } else if msg.Type >= elmapi.MsgTypeMerchantValid && msg.Type <= elmapi.MsgTypeOrderFinished { return o.OrderStatusChanged(msg, innerMsg["orderId"].(string)) } return elmapi.SuccessResponse } -func (o *OrderController) NewOrder(msg *elmapi.ELMCallbackMsg, orderId string) *elmapi.ELMCallbackResponse { +func (o *OrderController) NewOrder(msg *elmapi.CallbackMsg, orderId string) *elmapi.CallbackResponse { db := orm.NewOrm() rec := &models.ELMOrder{ OrderId: orderId, @@ -63,7 +63,7 @@ func (o *OrderController) NewOrder(msg *elmapi.ELMCallbackMsg, orderId string) * return elmapi.SuccessResponse } -func (o *OrderController) OrderStatusChanged(msg *elmapi.ELMCallbackMsg, orderId string) *elmapi.ELMCallbackResponse { +func (o *OrderController) OrderStatusChanged(msg *elmapi.CallbackMsg, orderId string) *elmapi.CallbackResponse { db := orm.NewOrm() rec := &models.ELMOrder{ OrderId: orderId, diff --git a/business/freshfood/freshfood.go b/business/freshfood/freshfood.go index 9e390fa95..2d44ccb21 100644 --- a/business/freshfood/freshfood.go +++ b/business/freshfood/freshfood.go @@ -5,10 +5,10 @@ import ( "net/url" "time" - "git.rosy.net.cn/baseapi/platform/dadaapi" + "git.rosy.net.cn/baseapi/platformapi/dadaapi" - "git.rosy.net.cn/baseapi/platform/jdapi" - "git.rosy.net.cn/baseapi/platform/mtpsapi" + "git.rosy.net.cn/baseapi/platformapi/jdapi" + "git.rosy.net.cn/baseapi/platformapi/mtpsapi" "git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/jx-callback/business/jd/models" "git.rosy.net.cn/jx-callback/globals" @@ -119,7 +119,7 @@ func (f *FreshFoodAPI) NewJDOrder(jdorder *models.Jdorder) error { params := make(url.Values) params.Set(URL_FRESHFOOD_PARA_JDORDER, string(utils.MustMarshal(jdorder))) - if jdorder.OrderStatus == utils.Str2Int(jdapi.JdOrderStatusNew) { + if jdorder.OrderStatus == utils.Str2Int(jdapi.OrderStatusNew) { return f.AccessFreshFood(URL_FRESHFOOD_ORDER_CREATE_JDDJ, params) } return f.AccessFreshFood(URL_FRESHFOOD_ORDER_MODIFY, params) @@ -137,12 +137,12 @@ func (f *FreshFoodAPI) JDOrderStatus(jdorder *models.Jdorder) error { return f.AccessFreshFood(URL_FRESHFOOD_ORDER_STATUS, params) } -func (f *FreshFoodAPI) JDOrderDeliveryStatus(jdOrderDeliveryStatusMsg *jdapi.JDDeliveryStatusMsg) error { +func (f *FreshFoodAPI) JDOrderDeliveryStatus(jdOrderDeliveryStatusMsg *jdapi.CallbackDeliveryStatusMsg) error { params := make(url.Values) cityName := "all" params.Set(URL_FRESHFOOD_PARA_VENDERID, utils.Int2Str(JD_VENDERID)) - params.Set(URL_FRESHFOOD_PARA_ORDERID, jdOrderDeliveryStatusMsg.OrderId) + params.Set(URL_FRESHFOOD_PARA_ORDERID, jdOrderDeliveryStatusMsg.OrderID) params.Set(URL_FRESHFOOD_PARA_DELIVERYSTATUS, utils.Int2Str(jdOrderDeliveryStatusMsg.DeliveryStatus)) params.Set(URL_FRESHFOOD_PARA_DLIVERYSTATUSTIME, jdOrderDeliveryStatusMsg.DeliveryStatusTime) params.Set(URL_FRESHFOOD_PARA_DELIVERYCARRIERNO, jdOrderDeliveryStatusMsg.DeliveryCarrierNo) @@ -175,7 +175,7 @@ func (f *FreshFoodAPI) ELMOrderStatus(orderId string, status int, timestamp int6 } // mtps api -func (f *FreshFoodAPI) MtpsOrderStatusChanged(order *mtpsapi.MtpsCallbackOrderMsg) error { +func (f *FreshFoodAPI) MtpsOrderStatusChanged(order *mtpsapi.CallbackOrderMsg) error { params := make(url.Values) params.Set(URL_FRESHFOOD_PARA_DELIVERYID, utils.Int64ToStr(order.DeliveryId)) params.Set(URL_FRESHFOOD_PARA_MTPEISONID, order.MtPeisongId) @@ -192,12 +192,12 @@ func (f *FreshFoodAPI) MtpsOrderStatusChanged(order *mtpsapi.MtpsCallbackOrderMs return f.AccessFreshFood(URL_FRESHFOOD_MTPS_DELIVERYSTATUS, params) } -func (f *FreshFoodAPI) MtpsOrderException(order *mtpsapi.MtpsCallbackOrderExceptionMsg) error { +func (f *FreshFoodAPI) MtpsOrderException(order *mtpsapi.CallbackOrderExceptionMsg) error { params := make(url.Values) params.Set(URL_FRESHFOOD_PARA_DELIVERYID, utils.Int64ToStr(order.DeliveryId)) params.Set(URL_FRESHFOOD_PARA_MTPEISONID, order.MtPeisongId) params.Set(URL_FRESHFOOD_PARA_ORDERID, order.OrderId) - params.Set(URL_FRESHFOOD_PARA_EXCEPTIONID, utils.Int64ToStr(order.ExceptionId)) + params.Set(URL_FRESHFOOD_PARA_EXCEPTIONID, utils.Int64ToStr(order.ExceptionID)) params.Set(URL_FRESHFOOD_PARA_EXCEPTIONCODE, utils.Int2Str(order.ExceptionCode)) params.Set(URL_FRESHFOOD_PARA_EXCEPTIONDESC, order.ExceptionDescr) params.Set(URL_FRESHFOOD_PARA_EXCEPTIONTIME, utils.Int64ToStr(order.ExceptionTime)) @@ -212,15 +212,15 @@ func (f *FreshFoodAPI) MtpsOrderException(order *mtpsapi.MtpsCallbackOrderExcept // dada -func (f *FreshFoodAPI) DadaOrderStatusChanged(msg *dadaapi.DadaCallbackMsg) error { +func (f *FreshFoodAPI) DadaOrderStatusChanged(msg *dadaapi.CallbackMsg) error { params := make(url.Values) - params.Set(URL_FRESHFOOD_PARA_CLIENTID, msg.ClientId) - params.Set(URL_FRESHFOOD_PARA_ORDERID, msg.OrderId) + params.Set(URL_FRESHFOOD_PARA_CLIENTID, msg.ClientID) + params.Set(URL_FRESHFOOD_PARA_ORDERID, msg.OrderID) params.Set(URL_FRESHFOOD_PARA_ORDERSTATUS, utils.Int2Str(msg.OrderStatus)) params.Set(URL_FRESHFOOD_PARA_CANCELREASON, msg.CancelReason) params.Set(URL_FRESHFOOD_PARA_CANCELFROM, utils.Int2Str(msg.CancelFrom)) params.Set(URL_FRESHFOOD_PARA_UPDATETIME, utils.Int2Str(msg.UpdateTime)) - params.Set(URL_FRESHFOOD_PARA_DMID, utils.Int2Str(msg.DmId)) + params.Set(URL_FRESHFOOD_PARA_DMID, utils.Int2Str(msg.DmID)) params.Set(URL_FRESHFOOD_PARA_DMNAME, msg.DmName) params.Set(URL_FRESHFOOD_PARA_DMMOBILE, msg.DmMobile) diff --git a/business/jd/controller/order.go b/business/jd/controller/order.go index ffccf628c..491b28df5 100644 --- a/business/jd/controller/order.go +++ b/business/jd/controller/order.go @@ -3,7 +3,7 @@ package controller import ( "encoding/json" - "git.rosy.net.cn/baseapi/platform/jdapi" + "git.rosy.net.cn/baseapi/platformapi/jdapi" "git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/jx-callback/business/jd/models" "git.rosy.net.cn/jx-callback/compat/corm" @@ -18,7 +18,7 @@ const ( var ( errChecker corm.DBErrorChecker - orderMsgChan chan jdapi.JDOrderMsg + orderMsgChan chan jdapi.CallbackOrderMsg ) type OrderController struct { @@ -27,7 +27,7 @@ type OrderController struct { func InitOrder() { errChecker = new(corm.MysqlErrorChecker) - orderMsgChan = make(chan jdapi.JDOrderMsg, 128) + orderMsgChan = make(chan jdapi.CallbackOrderMsg, 128) go orderMsgHandlerRoutine() // todo 这样操作在有多个进程时,会有问题 @@ -43,10 +43,10 @@ func handlePendingOrderMsg() { globals.SugarLogger.Errorf("can not get jdorder from db, error:%v", err) } else { for _, jdOrderInfo := range ordersInfo { - orderMsg := &jdapi.JDOrderMsg{ - Id: jdOrderInfo.Id, - BillId: utils.Int64ToStr(jdOrderInfo.JdOrderId), - StatusId: utils.Int2Str(jdOrderInfo.OrderStatus), + orderMsg := &jdapi.CallbackOrderMsg{ + ID: jdOrderInfo.Id, + BillID: utils.Int64ToStr(jdOrderInfo.JdOrderId), + StatusID: utils.Int2Str(jdOrderInfo.OrderStatus), Timestamp: jdOrderInfo.OrderStatusTime, } @@ -63,17 +63,17 @@ func orderMsgHandlerRoutine() { } } -func addOrderMsg(orderMsg *jdapi.JDOrderMsg) { +func addOrderMsg(orderMsg *jdapi.CallbackOrderMsg) { globals.SugarLogger.Debugf("addOrderMsg:%v", orderMsg) orderMsgChan <- *orderMsg } -func handleOrderMsg(orderMsg *jdapi.JDOrderMsg) { +func handleOrderMsg(orderMsg *jdapi.CallbackOrderMsg) { globals.SugarLogger.Debugf("handleOrderMsg:%v", orderMsg) - switch orderMsg.StatusId { - case jdapi.JdOrderStatusNew: + switch orderMsg.StatusID { + case jdapi.OrderStatusNew: newOrder(orderMsg) - case jdapi.JdOrderStatusAdjust: + case jdapi.OrderStatusAdjust: adjustOrder(orderMsg) default: normalOrderStatus(orderMsg) @@ -81,16 +81,16 @@ func handleOrderMsg(orderMsg *jdapi.JDOrderMsg) { } // -------------- -func (c *OrderController) OrderStatus(order *jdapi.JDOrderMsg) *jdapi.JDCallbackResponse { - if order.StatusId != jdapi.JdOrderStatusNew && order.StatusId != jdapi.JdOrderStatusAdjust { +func (c *OrderController) OrderStatus(order *jdapi.CallbackOrderMsg) *jdapi.CallbackResponse { + if order.StatusID != jdapi.OrderStatusNew && order.StatusID != jdapi.OrderStatusAdjust { err := normalOrderStatus(order) if err != nil { - return &jdapi.JDCallbackResponse{jdapi.JDerrorCodeAccessFailed, err.Error(), ""} + return &jdapi.CallbackResponse{jdapi.ResponseCodeAccessFailed, err.Error(), ""} } } else { db := orm.NewOrm() - jdorderid := utils.Str2Int64(order.BillId) - status := utils.Str2Int(order.StatusId) + jdorderid := utils.Str2Int64(order.BillID) + status := utils.Str2Int(order.StatusID) rec := &models.Jdorder{ Code: MsgNotHandledCode, JdOrderId: jdorderid, @@ -99,19 +99,19 @@ func (c *OrderController) OrderStatus(order *jdapi.JDOrderMsg) *jdapi.JDCallback } if created, _, err := db.ReadOrCreate(rec, "Jdorderid"); err == nil { - order.Id = rec.Id + order.ID = rec.Id if created { - if order.StatusId != jdapi.JdOrderStatusNew && order.StatusId != jdapi.JdOrderStatusAdjust { + if order.StatusID != jdapi.OrderStatusNew && order.StatusID != jdapi.OrderStatusAdjust { globals.SugarLogger.Warnf("order:%v get before create", order) - oldStatusId := order.StatusId - order.StatusId = jdapi.JdOrderStatusNew + oldStatusId := order.StatusID + order.StatusID = jdapi.OrderStatusNew addOrderMsg(order) - order.StatusId = oldStatusId + order.StatusID = oldStatusId } addOrderMsg(order) } else { if rec.OrderStatus != status { - if order.StatusId == jdapi.JdOrderStatusNew { + if order.StatusID == jdapi.OrderStatusNew { globals.SugarLogger.Warnf("order:%v get after some other message:%d", order, rec.OrderStatus) } else { rec.OrderStatus = status @@ -129,36 +129,36 @@ func (c *OrderController) OrderStatus(order *jdapi.JDOrderMsg) *jdapi.JDCallback } } else { globals.SugarLogger.Errorf("error when calling ReadOrCreate:%v", err) - return &jdapi.JDCallbackResponse{jdapi.JDerrorCodeAccessFailed, err.Error(), ""} + return &jdapi.CallbackResponse{jdapi.ResponseCodeAccessFailed, err.Error(), ""} } } return jdapi.SuccessResponse } -func (c *OrderController) OrderDeliveryStatus(jdOrderDeliveryStatusMsg *jdapi.JDDeliveryStatusMsg) *jdapi.JDCallbackResponse { +func (c *OrderController) OrderDeliveryStatus(jdOrderDeliveryStatusMsg *jdapi.CallbackDeliveryStatusMsg) *jdapi.CallbackResponse { err := globals2.FreshFoodAPI.JDOrderDeliveryStatus(jdOrderDeliveryStatusMsg) if err != nil { globals.SugarLogger.Errorf("Error when calling JDOrderDeliveryStatus, error:%v", err) - return &jdapi.JDCallbackResponse{jdapi.JDerrorCodeAccessFailed, err.Error(), ""} + return &jdapi.CallbackResponse{jdapi.ResponseCodeAccessFailed, err.Error(), ""} } return jdapi.SuccessResponse } //----------- -func acceptOrder(order *jdapi.JDOrderMsg) { - globals2.Jdapi.OrderAcceptOperate(order.BillId, true) +func acceptOrder(order *jdapi.CallbackOrderMsg) { + globals2.Jdapi.OrderAcceptOperate(order.BillID, true) } -func newOrder(order *jdapi.JDOrderMsg) error { - result, err := globals2.Jdapi.LegacyQuerySingleOrder(order.BillId) +func newOrder(order *jdapi.CallbackOrderMsg) error { + result, err := globals2.Jdapi.LegacyQuerySingleOrder(order.BillID) acceptOrder(order) if err != nil { - globals.SugarLogger.Errorf("error when query jd order:%s, error:%v", order.BillId, err) + globals.SugarLogger.Errorf("error when query jd order:%s, error:%v", order.BillID, err) } else { rec := &models.Jdorder{ - Id: order.Id, + Id: order.ID, } rec.Code, _ = result["code"].(string) @@ -195,20 +195,20 @@ func newOrder(order *jdapi.JDOrderMsg) error { globals.SugarLogger.Errorf("Error when calling NewJDOrder error:%v", err) } } else { - globals.SugarLogger.Warnf("can not get jdorder info:%v", order.BillId) + globals.SugarLogger.Warnf("can not get jdorder info:%v", order.BillID) } } return err } -func adjustOrder(order *jdapi.JDOrderMsg) error { +func adjustOrder(order *jdapi.CallbackOrderMsg) error { return newOrder(order) } -func normalOrderStatus(order *jdapi.JDOrderMsg) error { +func normalOrderStatus(order *jdapi.CallbackOrderMsg) error { db := orm.NewOrm() rec := &models.Jdorder{ - JdOrderId: utils.Str2Int64(order.BillId), + JdOrderId: utils.Str2Int64(order.BillID), } err := db.Read(rec, "JdOrderId") @@ -217,12 +217,12 @@ func normalOrderStatus(order *jdapi.JDOrderMsg) error { return err } - if rec.OrderStatus == utils.Str2Int(order.StatusId) { + if rec.OrderStatus == utils.Str2Int(order.StatusID) { globals.SugarLogger.Infof("Duplicate message order:%v", order) return nil } - rec.OrderStatus = utils.Str2Int(order.StatusId) + rec.OrderStatus = utils.Str2Int(order.StatusID) rec.OrderStatusTime = order.Timestamp err = globals2.FreshFoodAPI.JDOrderStatus(rec) if err != nil { diff --git a/business/mtps/controller/order.go b/business/mtps/controller/order.go index 290639058..66c0331d6 100644 --- a/business/mtps/controller/order.go +++ b/business/mtps/controller/order.go @@ -1,26 +1,26 @@ package controller import ( - "git.rosy.net.cn/baseapi/platform/mtpsapi" + "git.rosy.net.cn/baseapi/platformapi/mtpsapi" "git.rosy.net.cn/jx-callback/globals/globals2" ) type OrderController struct { } -func Error2Response(err error) *mtpsapi.MtpsCallbackResponse { +func Error2Response(err error) *mtpsapi.CallbackResponse { if err != nil { - return &mtpsapi.MtpsCallbackResponse{ + return &mtpsapi.CallbackResponse{ Code: -1, } } return mtpsapi.SuccessResponse } -func (c *OrderController) OrderStatusChanged(order *mtpsapi.MtpsCallbackOrderMsg) *mtpsapi.MtpsCallbackResponse { +func (c *OrderController) OrderStatusChanged(order *mtpsapi.CallbackOrderMsg) *mtpsapi.CallbackResponse { return Error2Response(globals2.FreshFoodAPI.MtpsOrderStatusChanged(order)) } -func (c *OrderController) OrderException(order *mtpsapi.MtpsCallbackOrderExceptionMsg) *mtpsapi.MtpsCallbackResponse { +func (c *OrderController) OrderException(order *mtpsapi.CallbackOrderExceptionMsg) *mtpsapi.CallbackResponse { return Error2Response(globals2.FreshFoodAPI.MtpsOrderException(order)) } diff --git a/controllers/elm_order.go b/controllers/elm_order.go index 59839952f..c4ff39078 100644 --- a/controllers/elm_order.go +++ b/controllers/elm_order.go @@ -1,7 +1,7 @@ package controllers import ( - "git.rosy.net.cn/baseapi/platform/elmapi" + "git.rosy.net.cn/baseapi/platformapi/elmapi" "git.rosy.net.cn/jx-callback/business/elm/controller" "git.rosy.net.cn/jx-callback/globals/globals2" "github.com/astaxie/beego" diff --git a/globals/globals2/globals2.go b/globals/globals2/globals2.go index 16abf4a6b..03d1124b2 100644 --- a/globals/globals2/globals2.go +++ b/globals/globals2/globals2.go @@ -1,10 +1,10 @@ package globals2 import ( - "git.rosy.net.cn/baseapi/platform/dadaapi" - "git.rosy.net.cn/baseapi/platform/elmapi" - "git.rosy.net.cn/baseapi/platform/jdapi" - "git.rosy.net.cn/baseapi/platform/mtpsapi" + "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/utils" elmmodels "git.rosy.net.cn/jx-callback/business/elm/models" "git.rosy.net.cn/jx-callback/business/freshfood" @@ -69,19 +69,19 @@ const ( var ( FreshFoodAPI *freshfood.FreshFoodAPI - Jdapi *jdapi.JDAPI - ElmAPI *elmapi.ELMAPI - MtpsAPI *mtpsapi.MTPSAPI - DadaAPI *dadaapi.DadaAPI + Jdapi *jdapi.API + ElmAPI *elmapi.API + MtpsAPI *mtpsapi.API + DadaAPI *dadaapi.API ) func init() { initDB() FreshFoodAPI = freshfood.NewFreshFoodAPI(freshFoodServerURL) - Jdapi = jdapi.NewJDAPI(jdToken, jdAppKey, jdSecret) + Jdapi = jdapi.New(jdToken, jdAppKey, jdSecret) initElm() - MtpsAPI = mtpsapi.NewMTPSAPI(mtpsAppKey, mtpsSecret) - DadaAPI = dadaapi.NewDadaAPI(dadaAppKey, dadaAppSecret, dadaSourceId, dadaCallbackURL, dadaIsProd) + MtpsAPI = mtpsapi.New(mtpsAppKey, mtpsSecret) + DadaAPI = dadaapi.New(dadaAppKey, dadaAppSecret, dadaSourceId, dadaCallbackURL, dadaIsProd) } func initElm() { @@ -100,7 +100,7 @@ func initElm() { } token = tokenInfo2["accessToken"].(string) } - ElmAPI = elmapi.NewELMAPI(token, elmAppKey, elmSecret, elmIsProd) + ElmAPI = elmapi.New(token, elmAppKey, elmSecret, elmIsProd) } func initDB() {