This commit is contained in:
邹宗楠
2023-04-14 09:11:06 +08:00
parent eccfb45dc6
commit 70fa2ccdd3
4 changed files with 32 additions and 7 deletions

View File

@@ -144,8 +144,22 @@ func buildAfsOrder(msg *CallbackMsg) (outAfsOrder *model.AfsOrder, err error) {
return nil, err
}
// 最后一个商品
if len(skuList) == len(refundFinancial)+len(afsOrder.Skus) && len(skuList) != model.YES {
makeOrderSkuCount := 0
afsOrderOrderSkuCount := 0
refundFinacialSkuCount := 0
for _, v := range skuList {
makeOrderSkuCount += v.Count
}
for _, v := range afsOrder.Skus {
afsOrderOrderSkuCount += v.Count
}
for _, v := range refundFinancial {
refundFinacialSkuCount += v.Count
}
// 这么写主要是不想让满足条件一的进入条件三
if makeOrderSkuCount == afsOrderOrderSkuCount && refundFinacialSkuCount == model.NO { // 整单退
} else if makeOrderSkuCount-refundFinacialSkuCount == model.YES && makeOrderSkuCount == model.YES { // 整单退且只有一个商品
} else if makeOrderSkuCount-refundFinacialSkuCount-afsOrderOrderSkuCount == model.NO && afsOrderOrderSkuCount > 0 { // 分单退最后一个,不给退
return nil, errors.New("如需整单退款,请使用整单退,无法分批次整单退款")
}