diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go index a196f8c15..bfd914ce9 100644 --- a/business/jxcallback/orderman/order.go +++ b/business/jxcallback/orderman/order.go @@ -1835,3 +1835,24 @@ func RefreshJdsOrderConsigneeInfo(ctx *jxcontext.Context, vendorOrderID string) partner.CurOrderManager.UpdateOrderFields(order, []string{"ConsigneeAddress", "ConsigneeName", "ConsigneeMobile", "ConsigneeMobile2", "BuyerComment", "ConsigneeLng", "ConsigneeLat"}) return err } + +func UpdateOrderInfo(ctx *jxcontext.Context, vendorOrderID string, vendorID int, payload map[string]interface{}) (num int64, err error) { + var ( + db = dao.GetDB() + ) + order, err := partner.CurOrderManager.LoadOrder(vendorOrderID, vendorID) + valid := dao.StrictMakeMapByStructObject(payload, order, ctx.GetUserName()) + dao.Begin(db) + defer func() { + if r := recover(); r != nil { + dao.Rollback(db) + panic(r) + } + }() + if num, err = dao.UpdateEntityLogically(db, order, valid, ctx.GetUserName(), nil); err != nil { + dao.Rollback(db) + return 0, err + } + dao.Commit(db) + return num, err +} diff --git a/controllers/jx_order.go b/controllers/jx_order.go index d88564eae..952722fed 100644 --- a/controllers/jx_order.go +++ b/controllers/jx_order.go @@ -1182,3 +1182,22 @@ func (c *OrderController) RefreshJdsOrderConsigneeInfo() { return retVal, "", err }) } + +// @Title 修改订单信息 +// @Description 修改订单信息 +// @Param token header string true "认证token" +// @Param vendorOrderID formData string true "订单号" +// @Param vendorID formData int true "平台ID" +// @Param payload formData string true "json数据,格式为goodsOrder" +// @Success 200 {object} controllers.CallResult +// @Failure 200 {object} controllers.CallResult +// @router /UpdateOrderInfo [put] +func (c *OrderController) UpdateOrderInfo() { + c.callUpdateOrderInfo(func(params *tOrderUpdateOrderInfoParams) (retVal interface{}, errCode string, err error) { + payload := make(map[string]interface{}) + if err = utils.UnmarshalUseNumber([]byte(params.Payload), &payload); err == nil { + retVal, err = orderman.UpdateOrderInfo(params.Ctx, params.VendorOrderID, params.VendorID, payload) + } + return retVal, "", err + }) +} diff --git a/routers/commentsRouter_controllers.go b/routers/commentsRouter_controllers.go index 43e739309..7fc3d3774 100644 --- a/routers/commentsRouter_controllers.go +++ b/routers/commentsRouter_controllers.go @@ -1386,6 +1386,15 @@ func init() { Filters: nil, Params: nil}) + beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:OrderController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:OrderController"], + beego.ControllerComments{ + Method: "UpdateOrderInfo", + Router: `/UpdateOrderInfo`, + AllowHTTPMethods: []string{"put"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:OrderController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:OrderController"], beego.ControllerComments{ Method: "UpdateOrderWaybillTip",