sunpengfei
2025-06-11 aa62bd742942bf4e6556714224dce076dab15c9f
feat:订单列表及导出增加运营商字段
1个文件已添加
3个文件已修改
231 ■■■■■ 已修改文件
LifePayment/LifePayment.Application.Contracts/LifePay/LifePayOutput.cs 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Application/LifePay/LifePayService.cs 95 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Domain.Shared/Enum/LifePay/ElectricTypeEnum.cs 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Application.Contracts/LifePay/LifePayOutput.cs
@@ -167,6 +167,11 @@
    public string? ChannelName { get; set; }
    /// <summary>
    /// 运营商
    /// </summary>
    public string Operator { get; set; }
    /// <summary>
    /// 订单类型
    /// </summary>
    public LifePayOrderTypeEnum LifePayOrderType { get; set; }
@@ -284,6 +289,11 @@
    public LifePayRefundStatusEnum? LifePayRefundStatus { get; set; }
    /// <summary>
    /// 订单参数详情
    /// </summary>
    public string OrderParamDetailJsonStr { get; set; }
    /// <summary>
    /// 实际到账金额
    /// </summary>
    public decimal? ActualReceivedAmount { get; set; }
@@ -309,6 +319,17 @@
    [Name("充值渠道")]
    public string ChannelName { get; set; }
    /// <summary>
    /// 运营商
    /// </summary>
    [Name("运营商")]
    public string Operator { get; set; }
    /// <summary>
    /// 订单参数详情
    /// </summary>
    public string OrderParamDetailJsonStr { get; set; }
    /// <summary>
    /// 下单时间
@@ -446,6 +467,12 @@
    public string ChannelName { get; set; }
    /// <summary>
    /// 运营商
    /// </summary>
    [Name("运营商")]
    public string Operator { get; set; }
    /// <summary>
    /// 下单时间
    /// </summary>
    public DateTime CreationTime { get; set; }
@@ -510,6 +537,11 @@
    public decimal PlatformPrice { get; set; }
    /// <summary>
    /// 订单参数详情
    /// </summary>
    public string OrderParamDetailJsonStr { get; set; }
    /// <summary>
    /// 平台退款状态
    /// </summary>
    public LifePayRefundStatusEnum? LifePayRefundStatus { get; set; }
LifePayment/LifePayment.Application/LifePay/LifePayService.cs
@@ -308,7 +308,41 @@
                                PlatformDeductionAmount = a.PlatformDeductionAmount,
                                ACOOLYStatus = a.ACOOLYStatus,
                                LifePayRefundStatus = a.LifePayRefundStatus,
                                OrderParamDetailJsonStr = a.OrderParamDetailJsonStr,
                            }).GetPageResult(input.PageModel);
        if (result != null && result.Data != null && result.Data.Count > 0)
        {
            foreach (var s in result.Data)
            {
                if (!string.IsNullOrWhiteSpace(s.OrderParamDetailJsonStr))
                {
                    if (s.LifePayOrderType == LifePayOrderTypeEnum.PhoneOrder)
                    {
                        var name = s.OrderParamDetailJsonStr.JsonToObject<LifePhoneData>()?.IspCode;
                        if (Enum.TryParse<IspCodeEnum>(name, true, out var @enum))
                        {
                            s.Operator = @enum.GetDescription();
                        }
                    }
                    else if (s.LifePayOrderType == LifePayOrderTypeEnum.ElectricOrder)
                    {
                        var name = s.OrderParamDetailJsonStr.JsonToObject<LifeElectricData>()?.ElectricType;
                        if (Enum.TryParse<ElectricTypeEnum>(name, true, out var @enum))
                        {
                            s.Operator = @enum.GetDescription();
                        }
                    }
                    else if (s.LifePayOrderType == LifePayOrderTypeEnum.GasOrder)
                    {
                        var name = s.OrderParamDetailJsonStr.JsonToObject<LifeGasData>()?.GasOrgType;
                        if (Enum.TryParse<GasOrgCodeEnum>(name, true, out var @enum))
                        {
                            s.Operator = @enum.GetDescription();
                        }
                    }
                }
            }
        }
        return result;
    }
@@ -768,7 +802,8 @@
            ACOOLYStatus = x.ACOOLYStatus,
            //RefundApplyRemark = x.RefundApplyRemark,
            ChannelName = x.ChannelName,
            PlatformPrice = x.PlatformDeductionAmount.HasValue ? x.PlatformDeductionAmount.Value : 0.00m
            PlatformPrice = x.PlatformDeductionAmount.HasValue ? x.PlatformDeductionAmount.Value : 0.00m,
            OrderParamDetailJsonStr = x.OrderParamDetailJsonStr,
        }).OrderByDescending(r => r.CreationTime).ToListAsync();
        var i = 0;
        result.ForEach(s =>
@@ -786,6 +821,33 @@
            s.ACOOLYStatusStr = s.ACOOLYStatus.GetDescription();
            s.LifePayOrderStatusStr = s.LifePayOrderStatus.GetDescription();
            s.FinishTimeStr = !s.FinishTime.HasValue ? string.Empty : s.FinishTime.Value.ToString(LifePaymentConstant.DateTimeFormatStr.yyyyMMddHHmmss);
            if (!string.IsNullOrWhiteSpace(s.OrderParamDetailJsonStr))
            {
                if (s.LifePayOrderType == LifePayOrderTypeEnum.PhoneOrder)
                {
                    var name = s.OrderParamDetailJsonStr.JsonToObject<LifePhoneData>()?.IspCode;
                    if (Enum.TryParse<IspCodeEnum>(name, true, out var @enum))
                    {
                        s.Operator = @enum.GetDescription();
                    }
                }
                else if (s.LifePayOrderType == LifePayOrderTypeEnum.ElectricOrder)
                {
                    var name = s.OrderParamDetailJsonStr.JsonToObject<LifeElectricData>()?.ElectricType;
                    if (Enum.TryParse<ElectricTypeEnum>(name, true, out var @enum))
                    {
                        s.Operator = @enum.GetDescription();
                    }
                }
                else if (s.LifePayOrderType == LifePayOrderTypeEnum.GasOrder)
                {
                    var name = s.OrderParamDetailJsonStr.JsonToObject<LifeGasData>()?.GasOrgType;
                    if (Enum.TryParse<GasOrgCodeEnum>(name, true, out var @enum))
                    {
                        s.Operator = @enum.GetDescription();
                    }
                }
            }
        });
        CheckExtensions.IfTrueThrowUserFriendlyException(result.IsNullOrEmpty(), "暂无数据导出");
        return result;
@@ -814,7 +876,8 @@
            ACOOLYStatus = x.ACOOLYStatus,
            //RefundApplyRemark = x.RefundApplyRemark,
            ChannelName = x.ChannelName,
            PlatformPrice = x.PlatformDeductionAmount.HasValue ? x.PlatformDeductionAmount.Value : 0.00m
            PlatformPrice = x.PlatformDeductionAmount.HasValue ? x.PlatformDeductionAmount.Value : 0.00m,
            OrderParamDetailJsonStr = x.OrderParamDetailJsonStr,
        }).OrderByDescending(r => r.CreationTime).ToListAsync();
        var i = 0;
        result.ForEach(s =>
@@ -832,6 +895,33 @@
            s.ACOOLYStatusStr = s.ACOOLYStatus.GetDescription();
            s.LifePayOrderStatusStr = s.LifePayOrderStatus.GetDescription();
            s.FinishTimeStr = !s.FinishTime.HasValue ? string.Empty : s.FinishTime.Value.ToString(LifePaymentConstant.DateTimeFormatStr.yyyyMMddHHmmss);
            if (!string.IsNullOrWhiteSpace(s.OrderParamDetailJsonStr))
            {
                if (s.LifePayOrderType == LifePayOrderTypeEnum.PhoneOrder)
                {
                    var name = s.OrderParamDetailJsonStr.JsonToObject<LifePhoneData>()?.IspCode;
                    if (Enum.TryParse<IspCodeEnum>(name, true, out var @enum))
                    {
                        s.Operator = @enum.GetDescription();
                    }
                }
                else if (s.LifePayOrderType == LifePayOrderTypeEnum.ElectricOrder)
                {
                    var name = s.OrderParamDetailJsonStr.JsonToObject<LifeElectricData>()?.ElectricType;
                    if (Enum.TryParse<ElectricTypeEnum>(name, true, out var @enum))
                    {
                        s.Operator = @enum.GetDescription();
                    }
                }
                else if (s.LifePayOrderType == LifePayOrderTypeEnum.GasOrder)
                {
                    var name = s.OrderParamDetailJsonStr.JsonToObject<LifeGasData>()?.GasOrgType;
                    if (Enum.TryParse<GasOrgCodeEnum>(name, true, out var @enum))
                    {
                        s.Operator = @enum.GetDescription();
                    }
                }
            }
        });
        CheckExtensions.IfTrueThrowUserFriendlyException(result.IsNullOrEmpty(), "暂无数据导出");
        return result;
@@ -2224,6 +2314,7 @@
                          PlatformDeductionAmount = a.PlatformDeductionAmount,
                          ACOOLYStatus = a.ACOOLYStatus,
                          LifePayRefundStatus = a.LifePayRefundStatus,
                          OrderParamDetailJsonStr = a.OrderParamDetailJsonStr
                      });
LifePayment/LifePayment.Domain.Shared/Enum/LifePay/ElectricTypeEnum.cs
New file
@@ -0,0 +1,74 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace LifePayment.Domain.Shared
{
    public enum ElectricTypeEnum
    {
        /// <summary>
        /// 国家电网
        /// </summary>
        [Description("国家电网")]
        guowang = 1,
        /// <summary>
        /// 南方电网
        /// </summary>
        [Description("南方电网")]
        nanwang = 2
    }
    public enum IspCodeEnum
    {
        /// <summary>
        /// 中国移动
        /// </summary>
        [Description("中国移动")]
        yidong = 1,
        /// <summary>
        /// 中国电信
        /// </summary>
        [Description("中国电信")]
        dianxin = 2,
        /// <summary>
        /// 中国联通
        /// </summary>
        [Description("中国联通")]
        liantong = 3
    }
    public enum GasOrgCodeEnum
    {
        /// <summary>
        /// 中国燃气
        /// </summary>
        [Description("中国燃气")]
        zhong_guo = 1,
        /// <summary>
        /// 新奥燃气
        /// </summary>
        [Description("新奥燃气")]
        xin_ao = 1,
        /// <summary>
        /// 华润燃气
        /// </summary>
        [Description("华润燃气")]
        hua_run = 2,
        /// <summary>
        /// 港华燃气
        /// </summary>
        [Description("港华燃气")]
        gang_hua = 3,
        /// <summary>
        /// 中燃燃气
        /// </summary>
        [Description("中燃燃气")]
        zhong_ran = 4,
        /// <summary>
        /// 北京燃气
        /// </summary>
        [Description("北京燃气")]
        bei_jing = 5,
    }
}
LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml
@@ -1084,6 +1084,11 @@
            渠道名称
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayOrderListOutput.Operator">
            <summary>
            运营商
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayOrderListOutput.LifePayOrderType">
            <summary>
            订单类型
@@ -1199,9 +1204,24 @@
            平台退款状态
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayOrderListOutput.OrderParamDetailJsonStr">
            <summary>
            订单参数详情
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayOrderListOutput.ActualReceivedAmount">
            <summary>
            实际到账金额
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayOrderListTemplate.Operator">
            <summary>
            运营商
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayOrderListTemplate.OrderParamDetailJsonStr">
            <summary>
            订单参数详情
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayOrderListTemplate.CreationTime">
@@ -1264,6 +1284,11 @@
            完成时间
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayOrderListTemplateForChannle.Operator">
            <summary>
            运营商
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayOrderListTemplateForChannle.CreationTime">
            <summary>
            下单时间
@@ -1299,6 +1324,11 @@
            平台扣款金额
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayOrderListTemplateForChannle.OrderParamDetailJsonStr">
            <summary>
            订单参数详情
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayOrderListTemplateForChannle.LifePayRefundStatus">
            <summary>
            平台退款状态