diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go index 7deb9cb19..76b87e0cc 100644 --- a/business/partner/purchase/jx/localjx/order.go +++ b/business/partner/purchase/jx/localjx/order.go @@ -815,18 +815,20 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 outJxOrder.FreightPrice = 500 // } //如果是守价的订单,需要查询本期中该用户是否已经守价过,如果守价过就只算一次运费 - priceDefendOrders, _ := dao.GetPriceDefendOrder(db, "", nil, nil, []int{jxutils.GetDefendPriceIssue()}, 0, -1, -1, 1, deliveryAddress.UserID, utils.ZeroTimeValue, utils.ZeroTimeValue, false) - if len(priceDefendOrders) > 0 { - flag2 := false - for _, v := range priceDefendOrders { - if v.StoreID != jxOrder.StoreID { - flag2 = true + if jxOrder.OrderType == model.OrderTypeDefendPrice { + priceDefendOrders, _ := dao.GetPriceDefendOrder(db, "", nil, nil, []int{jxutils.GetDefendPriceIssue()}, 0, -1, -1, 1, deliveryAddress.UserID, utils.ZeroTimeValue, utils.ZeroTimeValue, false) + if len(priceDefendOrders) > 0 { + flag2 := false + for _, v := range priceDefendOrders { + if v.StoreID != jxOrder.StoreID { + flag2 = true + } } + if flag2 { + return nil, nil, fmt.Errorf("同一期不允许相同用户在不同门店进行守价!") + } + outJxOrder.FreightPrice = 0 } - if flag2 { - return nil, nil, fmt.Errorf("同一期不允许相同用户在不同门店进行守价!") - } - outJxOrder.FreightPrice = 0 } } else { outJxOrder.FreightPrice = 0