From 6b587796d0ab096686275c027d6506d9f1d7383f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Mon, 24 Aug 2020 18:27:34 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=88=E4=BB=B7=E6=94=AF=E4=BB=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/partner/purchase/jx/localjx/order.go | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go index 8fbe46cd6..145204f7f 100644 --- a/business/partner/purchase/jx/localjx/order.go +++ b/business/partner/purchase/jx/localjx/order.go @@ -277,6 +277,7 @@ func buildDefendPriceOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, address IsBuyNowPrice: jxOrder.IsBuyNowPrice, Issue: issue, IsSuccess: model.NO, //默认是不成功 + IsPay: model.NO, } dao.WrapAddIDCULDEntity(priceDefendOrder, ctx.GetUserName()) priceDefendOrder.ActualPayPrice = int64(priceDefendOrder.Count)*priceDefendOrder.DefendPrice + jxOrder.FreightPrice @@ -456,9 +457,10 @@ func OnPayFinished(orderPay *model.OrderPay) (err error) { } else { priceDefendOrders, _ := dao.GetPriceDefendOrder(dao.GetDB(), orderPay.VendorOrderID, nil, nil, []int{jxutils.GetDefendPriceIssue()}, 0, -1, -1, "", utils.ZeroTimeValue, utils.ZeroTimeValue, false) if len(priceDefendOrders) > 0 { + priceDefendOrders[0].IsPay = model.YES + dao.UpdateEntity(dao.GetDB(), priceDefendOrders[0], "IsPay") err = nil } - } return err } @@ -810,7 +812,13 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 // } //如果是守价的订单,需要查询本期中该用户是否已经守价过,如果守价过就只算一次运费 priceDefendOrders, _ := dao.GetPriceDefendOrder(db, "", nil, nil, []int{jxutils.GetDefendPriceIssue()}, 0, -1, -1, deliveryAddress.UserID, utils.ZeroTimeValue, utils.ZeroTimeValue, false) - if len(priceDefendOrders) > 0 { + flag2 := false + for _, v := range priceDefendOrders { + if v.IsPay == model.YES { + flag2 = true + } + } + if len(priceDefendOrders) > 0 && flag2 { outJxOrder.FreightPrice = 0 } } else {