diff --git a/business/jd/controller/order.go b/business/jd/controller/order.go index afdd945f5..e1fe54b70 100644 --- a/business/jd/controller/order.go +++ b/business/jd/controller/order.go @@ -174,18 +174,18 @@ func newOrder(order *jdapi.CallbackOrderMsg) error { resultByteArr := utils.MustMarshal(data) rec.Data = string(resultByteArr) - err = globals2.FreshFoodAPI.NewJDOrder(rec, order.StatusID == jdapi.OrderStatusNew) - if err == nil { + rec.Data4Json = data + err = utils.CallFuncLogError(func() error { db := orm.NewOrm() - utils.CallFuncLogError(func() error { - _, err := db.Update(rec, "Data", "Code", "Msg", "Success", "CityName", "OrderStatus", "OrderStatusTime") - return err - }, globals2.ErrStrAccessDB) - } else { - globals.SugarLogger.Errorf("Error when calling NewJDOrder error:%v", err) - } + _, err := db.Update(rec, "Data", "Code", "Msg", "Success", "CityName", "OrderStatus", "OrderStatusTime") + return err + }, globals2.ErrStrAccessDB) + err = utils.CallFuncLogError(func() error { + err := globals2.FreshFoodAPI.NewJDOrder(rec, order.StatusID == jdapi.OrderStatusNew) + return err + }, globals2.ErrStrAccessDB) } else { - globals.SugarLogger.Warnf("can not get jdorder info:%v", order.BillID) + globals.SugarLogger.Errorf("can not get jdorder info:%v", order.BillID) } } return err diff --git a/business/jd/models/order.go b/business/jd/models/order.go index 5581138db..30cb8bcdf 100644 --- a/business/jd/models/order.go +++ b/business/jd/models/order.go @@ -1,13 +1,14 @@ package models type Jdorder struct { - ID int `orm:"column(id)" json:"-"` - Code string `orm:"size(2);null" json:"code"` - Msg string `orm:"size(100);null" json:"msg"` - Data string `orm:"type(text)" json:"data"` - Success bool `orm:"null" json:"success"` - JdOrderID int64 `orm:"unique;size(19);column(jdorderid);null" json:"jdOrderId"` - CityName string `orm:"size(20);column(cityname)" json:"cityName"` - OrderStatus int `orm:"column(orderstatus);null" json:"orderStatus"` - OrderStatusTime string `orm:"size(50);column(orderstatustime);null" json:"orderStatusTime"` + ID int `orm:"column(id)" json:"-"` + Code string `orm:"size(2);null" json:"code"` + Msg string `orm:"size(100);null" json:"msg"` + Data string `orm:"type(text)" json:"-"` + Data4Json map[string]interface{} `orm:"-" json:"data"` + Success bool `orm:"null" json:"success"` + JdOrderID int64 `orm:"unique;size(19);column(jdorderid);null" json:"jdOrderId"` + CityName string `orm:"size(20);column(cityname)" json:"cityName"` + OrderStatus int `orm:"column(orderstatus);null" json:"orderStatus"` + OrderStatusTime string `orm:"size(50);column(orderstatustime);null" json:"orderStatusTime"` }