using Newtonsoft.Json;
|
using System.Collections.Generic;
|
|
namespace LifePayment.Domain.Shared;
|
|
public interface IACOOLYRequestBaseResponse
|
{
|
/// <summary>
|
/// 接口调用状态(true/false)
|
/// </summary>
|
public bool Success { get; set; }
|
|
/// <summary>
|
/// 请求号(16-40位)
|
/// </summary>
|
public string RequestNo { get; set; }
|
|
/// <summary>
|
/// 商户ID(定长20字符)
|
/// </summary>
|
public string PartnerId { get; set; }
|
|
/// <summary>
|
/// 服务名称
|
/// </summary>
|
public string Service { get; set; }
|
|
/// <summary>
|
/// 服务版本(默认1.0)
|
/// </summary>
|
public string? Version { get; set; }
|
|
/// <summary>
|
/// 协议类型(HTTP/JSON)
|
/// </summary>
|
public string? Protocol { get; set; }
|
|
/// <summary>
|
/// 会话参数(JSON格式)
|
/// </summary>
|
public string? Context { get; set; }
|
|
/// <summary>
|
/// 扩展参数(JSON单层结构)
|
/// </summary>
|
public object Ext { get; set; }
|
|
/// <summary>
|
/// 响应编码(SUCCESS/PARAM_ERROR等)
|
/// </summary>
|
public string Code { get; set; }
|
|
/// <summary>
|
/// 响应消息
|
/// </summary>
|
public string Message { get; set; }
|
|
/// <summary>
|
/// 响应详情
|
/// </summary>
|
public string? Detail { get; set; }
|
}
|
|
/// <summary>
|
/// 公共响应参数基类
|
/// </summary>
|
public class ACOOLYRequestBaseResponse : IACOOLYRequestBaseResponse
|
{
|
/// <summary>
|
/// 接口调用状态(true/false)
|
/// </summary>
|
public bool Success { get; set; }
|
|
/// <summary>
|
/// 请求号(16-40位)
|
/// </summary>
|
public string RequestNo { get; set; }
|
|
/// <summary>
|
/// 商户ID(定长20字符)
|
/// </summary>
|
public string PartnerId { get; set; }
|
|
/// <summary>
|
/// 服务名称
|
/// </summary>
|
public string Service { get; set; }
|
|
/// <summary>
|
/// 服务版本(默认1.0)
|
/// </summary>
|
public string? Version { get; set; }
|
|
/// <summary>
|
/// 协议类型(HTTP/JSON)
|
/// </summary>
|
public string? Protocol { get; set; }
|
|
/// <summary>
|
/// 会话参数(JSON格式)
|
/// </summary>
|
public string? Context { get; set; }
|
|
/// <summary>
|
/// 扩展参数(JSON单层结构)
|
/// </summary>
|
public object Ext { get; set; }
|
|
/// <summary>
|
/// 响应编码(SUCCESS/PARAM_ERROR等)
|
/// </summary>
|
public string Code { get; set; }
|
|
/// <summary>
|
/// 响应消息
|
/// </summary>
|
public string Message { get; set; }
|
|
/// <summary>
|
/// 响应详情
|
/// </summary>
|
public string? Detail { get; set; }
|
}
|
|
/// <summary>
|
/// 获取燃气面值返回参数
|
/// </summary>
|
public class GasParValueResponse : ACOOLYRequestBaseResponse
|
{
|
/// <summary>
|
/// 天然气公司类型
|
/// </summary>
|
[JsonProperty("gasParValue")]
|
public List<GasParValueOutput> GasParValue { get; set; }
|
|
}
|
public class GasOrgTypeValueResponse : ACOOLYRequestBaseResponse
|
{
|
/// <summary>
|
/// 天然气公司类型
|
/// </summary>
|
[JsonProperty("gasSupportMerchantInfos")]
|
public List<GasSupportMerchantInfos> GasSupportMerchantInfos { get; set; }
|
|
}
|
|
public class GasSupportMerchantInfos
|
{
|
/// <summary>
|
/// 燃气支持商户编码
|
/// </summary>
|
public string gasOrgTypeCode { get; set; }
|
|
/// <summary>
|
/// 燃气支持商户名称
|
/// </summary>
|
public string gasOrgTypeName { get; set; }
|
}
|
/// <summary>
|
/// 燃气面值数据
|
/// </summary>
|
public class GasParValueOutput
|
{
|
/// <summary>
|
/// 天然气名称(示例:中国燃气天)
|
/// </summary>
|
[JsonProperty("gasOrgName")]
|
public string GasOrgName { get; set; }
|
|
/// <summary>
|
/// 天然气单位编码(示例:zhong_guo)
|
/// </summary>
|
[JsonProperty("gasOrgCode")]
|
public string GasOrgCode { get; set; }
|
|
/// <summary>
|
/// 面额数组(示例:100,200,300)
|
/// </summary>
|
[JsonProperty("parValue")]
|
public List<string> ParValue { get; set; }
|
|
/// <summary>
|
/// 折扣率(示例:0.94)
|
/// </summary>
|
[JsonProperty("rate")]
|
public decimal Rate { get; set; }
|
|
/// <summary>
|
/// 备注信息(示例:转网用户不能充值)
|
/// </summary>
|
[JsonProperty("comments")]
|
public string Comments { get; set; }
|
}
|
|
/// <summary>
|
/// 提交燃气订单返回参数
|
/// </summary>
|
public class ConfirmGasOrderResponse : ACOOLYRequestBaseResponse
|
{
|
[JsonProperty("gasChargeOrder")]
|
public GasChargeOrderOutput GasChargeOrder { get; set; }
|
|
}
|
|
public class GasChargeOrderOutput
|
{
|
/// <summary>
|
/// 商户订单号。
|
/// </summary>
|
[JsonProperty("outOrderNo")]
|
public string OutOrderNo { get; set; }
|
|
/// <summary>
|
/// 平台订单号。
|
/// </summary>
|
[JsonProperty("busiOrderNo")]
|
public string BusiOrderNo { get; set; }
|
|
/// <summary>
|
/// 天然气公司类型,例如:"xin_ao"代表新奥燃气。
|
/// </summary>
|
[JsonProperty("gasOrgType")]
|
public string GasOrgType { get; set; }
|
|
/// <summary>
|
/// 区域名称,如:北京,上海,广东,湖北等。
|
/// </summary>
|
[JsonProperty("areaName")]
|
public string AreaName { get; set; }
|
|
/// <summary>
|
/// 电费面值金额,单位为元。
|
/// </summary>
|
[JsonProperty("parValue")]
|
public decimal ParValue { get; set; }
|
|
/// <summary>
|
/// 实际扣款金额,单位为元。
|
/// </summary>
|
[JsonProperty("payAmount")]
|
public decimal PayAmount { get; set; }
|
|
/// <summary>
|
/// 天然气账号。
|
/// </summary>
|
[JsonProperty("gasAccount")]
|
public string GasAccount { get; set; }
|
|
/// <summary>
|
/// 充值状态,如:"SUCCESS"表示充值成功。
|
/// </summary>
|
[JsonProperty("status")]
|
public string Status { get; set; }
|
|
/// <summary>
|
/// 状态描述,如:"充值成功"。
|
/// </summary>
|
[JsonProperty("statusText")]
|
public string StatusText { get; set; }
|
}
|
|
/// <summary>
|
/// 电费面值返回参数
|
/// </summary>
|
public class ElectricParValueResponse : ACOOLYRequestBaseResponse
|
{
|
[JsonProperty("electricParValue")]
|
public List<ElectricParValueOutput> ElectricParValue { get; set; }
|
}
|
|
/// <summary>
|
/// 电费充值信息类,用于表示电费充值相关的详细信息。
|
/// </summary>
|
public class ElectricParValueOutput
|
{
|
/// <summary>
|
/// 电网类型,例如:"guowang"代表国家电网,"nanwang"代表南方电网。
|
/// </summary>
|
[JsonProperty("electricType")]
|
public string ElectricType { get; set; }
|
|
/// <summary>
|
/// 区域名称,如:北京,上海,广东,湖北等。
|
/// </summary>
|
[JsonProperty("areaName")]
|
public string AreaName { get; set; }
|
|
/// <summary>
|
/// 面额,单位为元。可能的值包括100,200,300等。
|
/// </summary>
|
[JsonProperty("parValue")]
|
public List<string> ParValue { get; set; } // 假设面额为整数
|
|
/// <summary>
|
/// 折扣率,可选项。折扣率为一个浮点数,例如0.94代表94%。
|
/// </summary>
|
[JsonProperty("rate")]
|
public decimal? Rate { get; set; } // 使用可空类型表示可选字段
|
|
/// <summary>
|
/// 备注,可选项。例如:"转网用户不能充值"。
|
/// </summary>
|
[JsonProperty("comments")]
|
public string Comments { get; set; } // 备注字段默认可以为空字符串或null,表示可选
|
}
|
|
|
public class ElectricSupportAreaResponse : ACOOLYRequestBaseResponse
|
{
|
[JsonProperty("electricSupportAreaList")]
|
public List<ElectricSupportAreaListOutput> ElectricAreaList { get; set; }
|
}
|
|
public class ElectricSupportAreaListOutput
|
{
|
/// <summary>
|
/// 城市自己列表。
|
/// </summary>
|
[JsonProperty("childCityList")]
|
public List<ElectricSupportAreaChildCityListOutput> ChildCityList { get; set; }
|
|
/// <summary>
|
/// 城市名称。
|
/// </summary>
|
[JsonProperty("cityName")]
|
public string CityName { get; set; }
|
|
/// <summary>
|
/// 城市父级Id。
|
/// </summary>
|
[JsonProperty("cityParentId")]
|
public string CityParentId { get; set; } // 假设面额为整数
|
|
/// <summary>
|
/// 城市Id。
|
/// </summary>
|
[JsonProperty("cityId")]
|
public string CityId { get; set; } // 使用可空类型表示可选字段
|
|
/// <summary>
|
/// 电网类型,例如:"guowang"代表国家电网,"nanwang"代表南方电网。
|
/// </summary>
|
[JsonProperty("electricType")]
|
public string ElectricType { get; set; }
|
|
/// <summary>
|
/// 面额,单位为元。可能的值包括100,200,300等。
|
/// </summary>
|
[JsonProperty("parValue")]
|
public List<string> ParValue { get; set; } // 假设面额为整数
|
|
/// <summary>
|
/// 折扣率,可选项。折扣率为一个浮点数,例如0.94代表94%。
|
/// </summary>
|
[JsonProperty("rate")]
|
public decimal? Rate { get; set; } // 使用可空类型表示可选字段
|
}
|
|
public class ElectricSupportAreaChildCityListOutput
|
{
|
/// <summary>
|
/// 城市名称。
|
/// </summary>
|
[JsonProperty("cityName")]
|
public string CityName { get; set; }
|
|
/// <summary>
|
/// 城市父级Id。
|
/// </summary>
|
[JsonProperty("cityParentId")]
|
public string CityParentId { get; set; } // 假设面额为整数
|
|
/// <summary>
|
/// 城市Id。
|
/// </summary>
|
[JsonProperty("cityId")]
|
public string CityId { get; set; } // 使用可空类型表示可选字段
|
}
|
|
/// <summary>
|
/// 话费面值返回参数
|
/// </summary>
|
public class PhoneParValueResponse : ACOOLYRequestBaseResponse
|
{
|
[JsonProperty("phoneParValue")]
|
public List<PhoneParValueOutput> PhoneParValue { get; set; }
|
}
|
|
public class PhoneParValueOutput
|
{
|
/// <summary>
|
/// 运营商编码,例如:"yidong", "dianxin", "liantong"。
|
/// </summary>
|
[JsonProperty("ispCode")]
|
public string IspCode { get; set; }
|
|
/// <summary>
|
/// 运营商名称,如:移动,联通,电信。
|
/// </summary>
|
[JsonProperty("ispName")]
|
public string IspName { get; set; }
|
|
/// <summary>
|
/// 面额,单位为元。可能的值包括100, 200, 300等。
|
/// </summary>
|
[JsonProperty("parValue")]
|
public List<string> ParValue { get; set; } // 假设面额为整数
|
|
/// <summary>
|
/// 折扣率,可选项。折扣率为一个浮点数,例如0.94代表94%。
|
/// </summary>
|
[JsonProperty("rate")]
|
public decimal? Rate { get; set; } // 使用可空类型表示可选字段
|
|
/// <summary>
|
/// 手机号段,例如:移动的134,136等,使用逗号分隔。
|
/// </summary>
|
[JsonProperty("phoneSection")]
|
public string PhoneSection { get; set; }
|
|
/// <summary>
|
/// 备注,可选项。例如:"转网用户不能充值"。
|
/// </summary>
|
[JsonProperty("comments")]
|
public string Comments { get; set; } // 备注字段默认可以为空字符串或null,表示可选
|
}
|
|
/// <summary>
|
/// 提交电费订单返回参数
|
/// </summary>
|
public class ConfirmElectricOrderResponse : ACOOLYRequestBaseResponse
|
{
|
[JsonProperty("electricChargeOrder")]
|
public ElectricChargeOrderOutput ElectricChargeOrder { get; set; }
|
}
|
public class ElectricChargeOrderOutput
|
{
|
/// <summary>
|
/// 商户订单号。
|
/// </summary>
|
[JsonProperty("outOrderNo")]
|
public string OutOrderNo { get; set; }
|
|
/// <summary>
|
/// 平台订单号。
|
/// </summary>
|
[JsonProperty("busiOrderNo")]
|
public string BusiOrderNo { get; set; }
|
|
/// <summary>
|
/// 电费户号。
|
/// </summary>
|
[JsonProperty("electricAccount")]
|
public string ElectricAccount { get; set; }
|
|
/// <summary>
|
/// 区域名称,如:北京,上海,广东,湖北等。
|
/// </summary>
|
[JsonProperty("areaName")]
|
public string AreaName { get; set; }
|
|
/// <summary>
|
/// 电网类型,例如:"guowang"代表国家电网,"nanwang"代表南方电网。
|
/// </summary>
|
[JsonProperty("electricType")]
|
public string ElectricType { get; set; }
|
|
/// <summary>
|
/// 电费面值金额,单位为元。
|
/// </summary>
|
[JsonProperty("parValue")]
|
public decimal ParValue { get; set; }
|
|
|
/// <summary>
|
/// 实际到账金额。
|
/// </summary>
|
[JsonProperty("actualParValue")]
|
public decimal ActualParValue { get; set; }
|
/// <summary>
|
/// 实际扣款金额,单位为元。
|
/// </summary>
|
[JsonProperty("payAmount")]
|
public decimal PayAmount { get; set; }
|
|
/// <summary>
|
/// 充值状态,如:"SUCCESS"表示充值成功。
|
/// </summary>
|
[JsonProperty("status")]
|
public string Status { get; set; }
|
|
/// <summary>
|
/// 状态描述,如:"充值成功"。
|
/// </summary>
|
[JsonProperty("statusText")]
|
public string StatusText { get; set; }
|
|
/// <summary>
|
/// 通知消息
|
/// </summary>
|
[JsonProperty("responseMessage")]
|
public string ResponseMessage { get; set; }
|
|
}
|
|
/// <summary>
|
/// 提交电话费订单返回参数
|
/// </summary>
|
public class ConfirmPhoneOrderResponse : ACOOLYRequestBaseResponse
|
{
|
[JsonProperty("phoneChargeOrder")]
|
public PhoneChargeOrderOutput PhoneChargeOrder { get; set; }
|
}
|
|
public class PhoneChargeOrderOutput
|
{
|
/// <summary>
|
/// 外部商户订单号。
|
/// </summary>
|
[JsonProperty("outOrderNo")]
|
public string OutOrderNo { get; set; }
|
|
/// <summary>
|
/// 平台订单号。
|
/// </summary>
|
[JsonProperty("busiOrderNo")]
|
public string BusiOrderNo { get; set; }
|
|
/// <summary>
|
/// 面值金额,单位为元。
|
/// </summary>
|
[JsonProperty("parValue")]
|
public decimal ParValue { get; set; }
|
|
/// <summary>
|
/// 实际扣款金额,单位为元。
|
/// </summary>
|
[JsonProperty("payAmount")]
|
public decimal PayAmount { get; set; }
|
|
/// <summary>
|
/// 充值状态,如:"SUCCESS"表示充值成功。
|
/// </summary>
|
[JsonProperty("status")]
|
public string Status { get; set; }
|
|
/// <summary>
|
/// 状态描述,如:"充值成功"。
|
/// </summary>
|
[JsonProperty("statusText")]
|
public string StatusText { get; set; }
|
}
|