zhengyuxuan
2025-03-25 8dd294b46213917661aa9d580289a973eb614e67
fix:退款驳回
2个文件已修改
37 ■■■■ 已修改文件
LifePayment/LifePayment.Application/LifePay/LifePayService.cs 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Application/LifePay/LifePayService.cs
@@ -834,6 +834,8 @@
        var rate = await GetRate();
        CheckExtensions.IfTrueThrowUserFriendlyException(rate.IsNullOrEmpty(), "未配置折扣");
        var amount = CalculateAmount(input.ProductData.ParValue, rate.FirstOrDefault(x => x.RateType == LifePayRateTypeEnum.默认话费折扣).Rate);
        var platformRate = await _lifePayRateRepository.FirstOrDefaultAsync(r => r.RateType == LifePayRateTypeEnum.供应商折扣价);
@@ -1566,24 +1568,21 @@
        var order = await _lifePayOrderRepository.FirstOrDefaultAsync(x => x.Id == input.Id);
        CheckExtensions.IfTrueThrowUserFriendlyException(order == null, "订单不存在");
        if(order.LifePayRefundStatus == LifePayRefundStatusEnum.已退款)
        if (order.LifePayRefundStatus == LifePayRefundStatusEnum.已退款)
        {
            return;
        }
        if (order.LifePayOrderStatus == LifePayOrderStatusEnum.待退款)
        if (order.LifePayOrderStatus == LifePayOrderStatusEnum.待退款 || order.LifePayRefundStatus == LifePayRefundStatusEnum.待退款)
        {
            if (order.ACOOLYStatus == ACOOLYStatusEnum.已完成 || order.ACOOLYStatus == ACOOLYStatusEnum.部分充值成功)
            if (order.ACOOLYStatus == ACOOLYStatusEnum.已完成 || order.ACOOLYStatus == ACOOLYStatusEnum.充值成功 || order.ACOOLYStatus == ACOOLYStatusEnum.部分充值成功)
            {
                order.LifePayOrderStatus = LifePayOrderStatusEnum.已完成;
            }
            else if (order.ACOOLYStatus == ACOOLYStatusEnum.充值失败)
            {
                order.LifePayOrderStatus = LifePayOrderStatusEnum.退款失败;
            }
            order.RefundCheckRemark = input.RefundCheckRemark;
            order.RefundCheckUserId = CurrentUser.Id;
            order.LifePayRefundStatus = LifePayRefundStatusEnum.无需退款;
            await _lifePayOrderRepository.UpdateAsync(order);
@@ -2101,5 +2100,24 @@
        };
    }
    public async Task<decimal> GetLifePayRate(string channelId, LifePayRateTypeEnum lifePayRateType)
    {
        if (string.IsNullOrEmpty(channelId))
        {
            var rate = await GetRate();
            CheckExtensions.IfTrueThrowUserFriendlyException(rate.IsNullOrEmpty(), "未配置折扣");
            var result = rate.FirstOrDefault(x => x.RateType == lifePayRateType).Rate;
            return result;
        }
        else
        {
            //var channel = await _lifePayChannlesRep.Where(x => x.ChannlesNum == channelId);
            return 0;
        }
    }
    #endregion
}
LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml
@@ -1041,6 +1041,11 @@
            退款时间
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.UserLifePayOrderOutput.RefundApplyTime">
            <summary>
            退款申请时间
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.UserLifePayOrderOutput.RefundCredentialsImgUrl">
            <summary>
            退款凭证