diff --git a/internal/service/order/service.go b/internal/service/order/service.go index bda54e3..02a3a7f 100644 --- a/internal/service/order/service.go +++ b/internal/service/order/service.go @@ -259,7 +259,9 @@ func (s *Service) CreateLegacy(ctx context.Context, req *dto.CreateOrderRequest, operatorType = "agent" actualPaidAmount = &operatorCostPrice purchaseRole = model.PurchaseRolePurchaseForSubordinate - sellerCostPrice = buyerCostPrice + // 代理代购下级时,佣金差额基准应是操作方(代理自己)的成本价,而非下级的成本价 + // 使用 buyerCostPrice 会导致差额为 0,上级代理无法获得应有佣金 + sellerCostPrice = operatorCostPrice } } @@ -545,7 +547,8 @@ func (s *Service) CreateAdminOrder(ctx context.Context, req *dto.CreateAdminOrde operatorType = "agent" actualPaidAmount = &operatorCostPrice purchaseRole = model.PurchaseRolePurchaseForSubordinate - sellerCostPrice = buyerCostPrice + // 代理代购下级时,佣金差额基准应是操作方(代理自己)的成本价,而非下级的成本价 + sellerCostPrice = operatorCostPrice } } else { // 兜底检查:后台不支持其他支付方式(DTO 验证已拒绝,此为防御性编程) @@ -806,7 +809,8 @@ func (s *Service) CreateH5Order(ctx context.Context, req *dto.CreateOrderRequest operatorType = "agent" actualPaidAmount = &operatorCostPrice purchaseRole = model.PurchaseRolePurchaseForSubordinate - sellerCostPrice = buyerCostPrice + // 代理代购下级时,佣金差额基准应是操作方(代理自己)的成本价,而非下级的成本价 + sellerCostPrice = operatorCostPrice } }