zhengyuxuan
2025-03-27 fa7b6158e23dafad4824b8832599143c7ba8dc49
Merge branch 'master' into dev-lifepay-v1.3
1个文件已修改
32 ■■■■ 已修改文件
LifePayment/LifePayment.Application/LifePay/LifePayService.cs 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Application/LifePay/LifePayService.cs
@@ -402,8 +402,8 @@
        var channle = await _lifePayChannlesRep.FirstOrDefaultAsync(r => r.ChannlesNum == order.ChannelId);
        CheckExtensions.IfTrueThrowUserFriendlyException(order == null, "订单不存在");
        var user = await _lifePayUserRepository.FirstOrDefaultAsync(x => x.Id == order.UserId);
        var channlesRakePrice = (order.PayAmount - (order.PlatformDeductionAmount == null ? 0 : order.PlatformDeductionAmount)) * channle.ChannlesRakeRate / 100;
        var orderpirce = await GetOrderPrice(order.RechargeAmount, order.PayAmount, order.PlatformRate, order.ChannleRate, order.ChannlesRakeRate, order.PremiumRate);
        CheckExtensions.IfTrueThrowUserFriendlyException(user == null, "用户不存在");
        var orderpirce = await GetOrderPrice(order.RechargeAmount, order.PayAmount, order.PlatformRate ?? 0, order.ChannleRate ?? 0, order.ChannlesRakeRate ?? 0, order.PremiumRate ?? 0);
        var result = new LifePayOrderOutput()
@@ -442,7 +442,8 @@
            ChannlesRakePrice = orderpirce.ChannlesRakePrice,
            PremiumRate = order.PremiumRate,
            PremiumPrice = orderpirce.PremiumPrice,
            Profit = orderpirce.Profit
            Profit = orderpirce.Profit,
            RefundOrderNo = order.RefundOrderNo,
        };
        return result;
@@ -1655,7 +1656,7 @@
            dto.Status = input.Status;
            #region 记录日志
            await PublishLifePayOrderHistoryEvent("渠道管理", "编辑", input.Id.Value, TableType.LifePayChannles);
            await LifePayOrderHistory("渠道管理", "编辑", input.Id.Value, TableType.LifePayChannles);
            #endregion
        }
@@ -1668,7 +1669,7 @@
            #region 记录日志
            await PublishLifePayOrderHistoryEvent("渠道管理", "新增", input.Id.Value, TableType.LifePayChannles);
            await LifePayOrderHistory("渠道管理", "新增", input.Id.Value, TableType.LifePayChannles);
            #endregion
        }
@@ -1685,8 +1686,7 @@
        #region 记录日志
        await PublishLifePayOrderHistoryEvent("渠道管理", status.GetDescription(), id, TableType.LifePayChannles);
        await LifePayOrderHistory("渠道管理", status.GetDescription(), id, TableType.LifePayChannles);
        #endregion
    }
@@ -2125,8 +2125,8 @@
                    });
    }
    public async Task<OrderPriceReturn> GetOrderPrice(decimal price, decimal priceAmount, decimal? platformRate,decimal? channleRate,
        decimal? channlesRakeRate,decimal? premiumRate)
    public async Task<OrderPriceReturn> GetOrderPrice(decimal price, decimal priceAmount, decimal platformRate, decimal channleRate,
        decimal channlesRakeRate, decimal premiumRate)
    {
        /// 毛利
        var grossProfit = price * (channleRate - platformRate) / 100;
@@ -2135,20 +2135,20 @@
        var platformPrice = price * platformRate / 100;
        /// 手续费
        var premiumPrice = priceAmount * premiumRate / 100;
        var premiumPrice = priceAmount * (premiumRate) / 100;
        /// 渠道佣金  ((充值面额 * 渠道折扣比例)-(充值面额 * 平台折扣比例))* 佣金比例
        var channlesRakePrice = grossProfit * channlesRakeRate / 100;
        var channlesRakePrice = grossProfit * (channlesRakeRate) / 100;
        /// 利润
        var profit = grossProfit - channlesRakePrice - premiumPrice;
        var profit = grossProfit - channlesRakePrice - (premiumRate);
        return new OrderPriceReturn()
        {
            PlatformPrice = platformPrice.HasValue? platformPrice.Value :0,
            PremiumPrice = premiumPrice.HasValue ? premiumPrice.Value : 0,
            ChannlesRakePrice = channlesRakePrice.HasValue? channlesRakePrice.Value:0,
            Profit = profit.HasValue ? profit.Value : 0
            PlatformPrice = platformPrice,
            PremiumPrice = premiumPrice,
            ChannlesRakePrice = channlesRakePrice,
            Profit = profit
        };
    }