修复购买数量低于限制的问题
This commit is contained in:
@@ -1,10 +1,12 @@
|
||||
## TODO
|
||||
|
||||
- 解决提取成功率问题
|
||||
- 提交代理端口配置后,并非同步将节点标记为占用状态,导致后续提取请求仍然会选中该节点,直到下一个提取请求才会发现该节点已满,导致提取失败?
|
||||
- otel 没有正确记录接口失败信息
|
||||
- 购买数低于最小限制
|
||||
|
||||
创建 channel 时以 defer 的思路执行 fallback 函数,确保执行幂等性
|
||||
筛选和关联展示功能扩展
|
||||
|
||||
channel 管理逻辑优化,需要携带 proxy 信息,考虑到 channel 没有成功创建的情况,或者保证创建操作的原子性
|
||||
|
||||
错误提示增强,展示整链路信息
|
||||
|
||||
|
||||
@@ -372,7 +372,7 @@ func (s *channelBaiyinProvider) ClearExpiredChannels(proxyId int32) (int, error)
|
||||
|
||||
// 排除未过期通道
|
||||
var batchQueried []struct{ BatchNo string }
|
||||
err = q.Channel.Debug().
|
||||
err = q.Channel.
|
||||
Select(q.Channel.BatchNo).
|
||||
Where(
|
||||
q.Channel.BatchNo.In(batchList...),
|
||||
|
||||
@@ -160,6 +160,10 @@ func (s *resourceService) CalcPrice(skuCode string, count int32, user *m.User, c
|
||||
return nil, nil, nil, decimal.Zero, decimal.Zero, decimal.Zero, core.NewBizErr("产品不可用", err)
|
||||
}
|
||||
|
||||
if count < sku.CountMin {
|
||||
return nil, nil, nil, decimal.Zero, decimal.Zero, decimal.Zero, core.NewBizErr(fmt.Sprintf("购买数量不能少于 %d", sku.CountMin))
|
||||
}
|
||||
|
||||
// 原价
|
||||
amountMin := sku.PriceMin.Mul(decimal.NewFromInt32(count))
|
||||
amount := sku.Price.Mul(decimal.NewFromInt32(count))
|
||||
|
||||
Reference in New Issue
Block a user