From 90592dbe7b784c487fa6c7dca07b1f548d87bc0d Mon Sep 17 00:00:00 2001 From: gazebo Date: Fri, 24 May 2019 11:03:09 +0800 Subject: [PATCH] =?UTF-8?q?-=20AfsOrder=E6=B7=BB=E5=8A=A0RefuseReason?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxcallback/orderman/order_afs.go | 10 ++++++++++ business/jxcallback/scheduler/basesch/basesch_ext.go | 2 ++ business/model/order_financial.go | 1 + business/partner/partner.go | 1 + 4 files changed, 14 insertions(+) diff --git a/business/jxcallback/orderman/order_afs.go b/business/jxcallback/orderman/order_afs.go index 32abcbc48..798cf8954 100644 --- a/business/jxcallback/orderman/order_afs.go +++ b/business/jxcallback/orderman/order_afs.go @@ -9,6 +9,7 @@ import ( "git.rosy.net.cn/jx-callback/business/model" "git.rosy.net.cn/jx-callback/business/model/dao" "git.rosy.net.cn/jx-callback/globals" + "github.com/astaxie/beego/orm" ) func (c *OrderManager) LoadAfsOrder(vendorAfsOrderID string, vendorID int) (afsOrder *model.AfsOrder, err error) { @@ -283,3 +284,12 @@ func (c *OrderManager) updateAfsOrderOtherInfo(db *dao.DaoDB, afsOrder *model.Af } return err } + +func (c *OrderManager) UpdateAfsOrderFields(afsOrder *model.AfsOrder, fieldList []string) (err error) { + db := orm.NewOrm() + utils.CallFuncLogError(func() error { + _, err = db.Update(afsOrder, fieldList...) + return err + }, "UpdateAfsOrderFields orderID:%s failed with error:%v", afsOrder.VendorOrderID, err) + return err +} diff --git a/business/jxcallback/scheduler/basesch/basesch_ext.go b/business/jxcallback/scheduler/basesch/basesch_ext.go index cecc15f96..0cf773863 100644 --- a/business/jxcallback/scheduler/basesch/basesch_ext.go +++ b/business/jxcallback/scheduler/basesch/basesch_ext.go @@ -208,6 +208,8 @@ func (c *BaseScheduler) AgreeOrRefuseRefund(ctx *jxcontext.Context, afsOrderID s flag := model.AfsOrderFlagAgreeUserRefund if approveType == partner.AfsApproveTypeRefused { flag = model.AfsOrderFlagRefuseUserRefund + afsOrder.RefuseReason = reason + partner.CurOrderManager.UpdateAfsOrderFields(afsOrder, []string{"RefuseReason"}) } dao.SetAfsOrderFlag(dao.GetDB(), ctx.GetUserName(), afsOrderID, vendorID, flag) } diff --git a/business/model/order_financial.go b/business/model/order_financial.go index 19f219037..3cb6eeba3 100644 --- a/business/model/order_financial.go +++ b/business/model/order_financial.go @@ -91,6 +91,7 @@ type AfsOrder struct { VendorAppealType string `orm:"size(255)" json:"vendorAppealType"` Flag int `json:"flag"` RefundType int8 `json:"refundType"` + RefuseReason string `orm:"size(1024)" json:"refuseReason"` SkuUserMoney int64 `json:"skuUserMoney"` // 用户支付菜品金额 FreightUserMoney int64 `json:"freightUserMoney"` // 用户支付运费金额 diff --git a/business/partner/partner.go b/business/partner/partner.go index 09f1d5e38..792474d61 100644 --- a/business/partner/partner.go +++ b/business/partner/partner.go @@ -158,6 +158,7 @@ type IOrderManager interface { OnAfsOrderNew(afsOrder *model.AfsOrder, orderStatus *model.OrderStatus) (err error) OnAfsOrderStatusChanged(orderStatus *model.OrderStatus) (err error) LoadAfsOrder(vendorAfsOrderID string, vendorID int) (afsOrder *model.AfsOrder, err error) + UpdateAfsOrderFields(afsOrder *model.AfsOrder, fieldList []string) (err error) } type IStoreManager interface {