using LifePayment.Domain.Shared;
|
using Newtonsoft.Json;
|
using System;
|
using System.ComponentModel.DataAnnotations;
|
using System.Collections.Generic;
|
using static LifePayment.Domain.Shared.LifePaymentConstant;
|
|
namespace LifePayment.Application.Contracts;
|
|
public class CreateLifePayOrderInput<T> : ChannelsBaseInput where T : class
|
{
|
public Guid UserId { get; set; }
|
|
/// <summary>
|
/// 渠道名称
|
/// </summary>
|
public string ChannelId { get; set; }
|
|
//public string CheckChannelId { get; set; }
|
|
///// <summary>
|
///// 生活缴费支付类型
|
///// </summary>
|
//[EnumValidation(typeof(LifePayTypeEnum), ErrorMessage = "支付类型异常")]
|
//public LifePayTypeEnum LifePayType { get; set; }
|
|
public T ProductData { get; set; }
|
}
|
|
public class LifePhoneData
|
{
|
/// <summary>
|
/// 运营商编码,例如:"yidong", "dianxin", "liantong"。
|
/// </summary>
|
[Required(ErrorMessage = "运营商编码是必填项。")]
|
public string IspCode { get; set; }
|
|
/// <summary>
|
/// 充值面额,单位为元。测试账户:parValue=100:缴费成功,parValue>100:缴费失败。
|
/// </summary>
|
[Required(ErrorMessage = "充值面额是必填项。")]
|
[Range(0.1, double.MaxValue, ErrorMessage = "充值面额异常")]
|
public decimal ParValue { get; set; }
|
|
/// <summary>
|
/// 手机号。
|
/// </summary>
|
[Required(ErrorMessage = "手机号是必填项。")]
|
[RegularExpression(RegularExpression.PhoneNumberRegEx, ErrorMessage = "手机号格式不正确")]
|
[JsonProperty("phone")]
|
public string Phone { get; set; }
|
|
/// <summary>
|
/// 机主名称(电信手机号必填)
|
/// </summary>
|
[JsonProperty("name")]
|
public string Name { get; set; }
|
}
|
|
public class LifeElectricData
|
{
|
/// <summary>
|
/// 充值面额,单位为元。
|
/// </summary>
|
[Required(ErrorMessage = "充值面额是必填项。")]
|
public decimal ParValue { get; set; }
|
|
/// <summary>
|
/// 电网类型,例如:"guowang"代表国家电网,"nanwang"代表南方电网。
|
/// </summary>
|
[Required(ErrorMessage = "电网类型是必填项。")]
|
public string ElectricType { get; set; }
|
|
/// <summary>
|
/// 电费类型,国网必传:住宅、企事业、店铺三个选项。
|
/// </summary>
|
[Required(ErrorMessage = "电费类型是必填项。")]
|
[StringLength(20, ErrorMessage = "电费类型长度不能超过20个字符。")]
|
public string ElectricAccountType { get; set; }
|
|
/// <summary>
|
/// 电费户号。
|
/// </summary>
|
[Required(ErrorMessage = "电费户号是必填项。")]
|
[RegularExpression(RegularExpression.ElectricAccountRegEx, ErrorMessage = "请输入13位电网户号")]
|
public string ElectricAccount { get; set; }
|
|
/// <summary>
|
/// 省份。
|
/// </summary>
|
[Required(ErrorMessage = "省份是必填项。")]
|
[StringLength(20, ErrorMessage = "省份长度不能超过20个字符。")]
|
public string Province { get; set; }
|
|
/// <summary>
|
/// 城市。
|
/// </summary>
|
//[Required(ErrorMessage = "城市是必填项。")]
|
[StringLength(20, ErrorMessage = "城市长度不能超过20个字符。")]
|
public string City { get; set; }
|
|
/// <summary>
|
/// 客户身份证后6位,南网必传。
|
/// </summary>
|
public string SixID { get; set; }
|
|
/// <summary>
|
/// 户主姓名
|
/// </summary>
|
public string Name { get; set; }
|
}
|
public class LifeGasData
|
{
|
/// <summary>
|
/// 充值面额,单位为元。
|
/// </summary>
|
[Required(ErrorMessage = "充值面额是必填项。")]
|
public decimal ParValue { get; set; }
|
|
/// <summary>
|
/// 天然气公司类型,"zhong_ran"代表中燃燃气,"bei_jing"代表北京燃气。
|
/// </summary>
|
[Required(ErrorMessage = "燃气类型是必填项。")]
|
public string GasOrgType { get; set; }
|
|
|
/// <summary>
|
/// 燃气户号
|
/// </summary>
|
[Required(ErrorMessage = "燃气户号是必填项。")]
|
public string GasAccount { get; set; }
|
|
/// <summary>
|
/// 省份
|
/// </summary>
|
[Required(ErrorMessage = "省份是必填项。")]
|
[StringLength(20, ErrorMessage = "省份长度不能超过20个字符。")]
|
public string Province { get; set; }
|
|
/// <summary>
|
/// 城市
|
/// </summary>
|
//[Required(ErrorMessage = "城市是必填项。")]
|
[StringLength(20, ErrorMessage = "城市长度不能超过20个字符。")]
|
public string City { get; set; }
|
|
}
|
|
public class CreateLifePayOrderInput
|
{
|
public Guid? UserId { get; set; }
|
|
/// <summary>
|
/// 用户手机号
|
/// </summary>
|
public string PhoneNumber { get; set; }
|
|
///// <summary>
|
///// 生活缴费支付类型
|
///// </summary>
|
//public LifePayTypeEnum LifePayType { get; set; }
|
|
/// <summary>
|
/// 订单类型
|
/// </summary>
|
public LifePayOrderTypeEnum LifePayOrderType { get; set; }
|
|
/// <summary>
|
/// 订单号
|
/// </summary>
|
public string OrderNo { get; set; }
|
|
/// <summary>
|
/// 充值金额
|
/// </summary>
|
public decimal RechargeAmount { get; set; }
|
|
/// <summary>
|
/// 优惠金额
|
/// </summary>
|
public decimal DiscountAmount { get; set; }
|
|
/// <summary>
|
/// 实付金额
|
/// </summary>
|
public decimal PayAmount { get; set; }
|
|
/// <summary>
|
/// 支付时间
|
/// </summary>
|
public DateTime? PayTime { get; set; }
|
|
/// <summary>
|
/// 支付状态
|
/// </summary>
|
public LifePayStatusEnum PayStatus { get; set; }
|
|
/// <summary>
|
/// 外部订单号
|
/// </summary>
|
public string OutOrderNo { get; set; }
|
|
/// <summary>
|
/// 订单状态
|
/// </summary>
|
public LifePayOrderStatusEnum LifePayOrderStatus { get; set; }
|
|
/// <summary>
|
/// 完成时间
|
/// </summary>
|
public DateTime? FinishTime { get; set; }
|
|
/// <summary>
|
/// 退款凭证
|
/// </summary>
|
public string RefundCredentialsImgUrl { get; set; }
|
|
/// <summary>
|
/// 订单参数详情
|
/// </summary>
|
public string OrderParamDetailJsonStr { get; set; }
|
|
/// <summary>
|
/// 下单渠道
|
/// </summary>
|
public string? ChannelId { get; set; }
|
|
|
|
/// <summary>
|
/// 平台折扣比例
|
/// </summary>
|
public decimal PlatformRate { get; set; }
|
|
public decimal PlatformDeductionAmount { get; set; }
|
|
/// <summary>
|
/// 渠道折扣
|
/// </summary>
|
public decimal? ChannleRate { get; set; }
|
|
/// <summary>
|
/// 渠道佣金比例
|
/// </summary>
|
public decimal? ChannlesRakeRate { get; set; }
|
|
/// <summary>
|
/// 手续费比例
|
/// </summary>
|
public decimal PremiumRate { get; set; }
|
|
|
}
|
|
public class UpdateLifePayOrderInput
|
{
|
public Guid Id { get; set; }
|
|
/// <summary>
|
/// 实际到账金额
|
/// </summary>
|
public decimal ActualReceivedAmount { get; set; }
|
}
|
|
//public class ChannelsBaseInput : PageInput
|
//{
|
// public string CheckChannelId { get; set; }
|
//}
|
|
public class GetPayStatusByOrderNoInput : ChannelsBaseInput
|
{
|
public string OrderNo { get; set; }
|
}
|
|
public class QueryLifePayOrderListInput : ChannelsBaseInput
|
{
|
/// <summary>
|
/// 订单类型
|
/// </summary>
|
public LifePayOrderTypeEnum? LifePayOrderType { get; set; }
|
|
/// <summary>
|
/// 生活缴费支付类型
|
/// </summary>
|
public LifePayTypeEnum? LifePayType { get; set; }
|
|
/// <summary>
|
/// 开始支付时间
|
/// </summary>
|
public DateTime? BeginPayTime { get; set; }
|
|
/// <summary>
|
/// 结束支付时间
|
/// </summary>
|
public DateTime? EndPayTime { get; set; }
|
|
/// <summary>
|
/// 支付状态
|
/// </summary>
|
public LifePayStatusEnum? PayStatus { get; set; }
|
|
/// <summary>
|
/// 供应商状态
|
/// </summary>
|
public ACOOLYStatusEnum? ACOOLYStatus { get; set; }
|
|
/// <summary>
|
/// 订单状态
|
/// </summary>
|
public LifePayOrderStatusEnum? LifePayOrderStatus { get; set; }
|
|
/// <summary>
|
/// 开始完成时间
|
/// </summary>
|
public DateTime? BeginFinishTime { get; set; }
|
|
/// <summary>
|
/// 结束完成时间
|
/// </summary>
|
public DateTime? EndFinishTime { get; set; }
|
|
|
|
/// <summary>
|
/// 用户Id
|
/// </summary>
|
public Guid? UserId { get; set; }
|
|
/// <summary>
|
/// 搜索关键词
|
/// </summary>
|
public string KeyWords { get; set; }
|
|
}
|
public class QueryLifePayRefundOrderListInput : ChannelsBaseInput
|
{
|
/// <summary>
|
/// 订单类型
|
/// </summary>
|
public LifePayOrderTypeEnum? LifePayOrderType { get; set; }
|
|
/// <summary>
|
/// 生活缴费支付类型
|
/// </summary>
|
public LifePayTypeEnum? LifePayType { get; set; }
|
|
/// <summary>
|
/// 开始申请退款时间
|
/// </summary>
|
public DateTime? BeginRefundApplyTime { get; set; }
|
|
/// <summary>
|
/// 结束申请退款时间
|
/// </summary>
|
public DateTime? EndRefundApplyTime { get; set; }
|
|
/// <summary>
|
/// 开始完成时间
|
/// </summary>
|
public DateTime? BeginFinishTime { get; set; }
|
|
/// <summary>
|
/// 结束完成时间
|
/// </summary>
|
public DateTime? EndFinishTime { get; set; }
|
|
/// <summary>
|
/// 开始退款时间
|
/// </summary>
|
public DateTime? BeginRefundTime { get; set; }
|
|
/// <summary>
|
/// 结束退款时间
|
/// </summary>
|
public DateTime? EndRefundTime { get; set; }
|
|
/// <summary>
|
/// 支付状态
|
/// </summary>
|
public LifePayStatusEnum? PayStatus { get; set; }
|
|
/// <summary>
|
/// 供应商状态
|
/// </summary>
|
public ACOOLYStatusEnum? ACOOLYStatus { get; set; }
|
|
/// <summary>
|
/// 订单状态
|
/// </summary>
|
public LifePayOrderStatusEnum? LifePayOrderStatus { get; set; }
|
/// <summary>
|
/// 订单状态
|
/// </summary>
|
public LifePayRefundStatusEnum? LifePayRefundStatus { get; set; }
|
|
/// <summary>
|
/// 用户Id
|
/// </summary>
|
public Guid? UserId { get; set; }
|
|
/// <summary>
|
/// 搜索关键词
|
/// </summary>
|
public string KeyWords { get; set; }
|
|
}
|
|
public class RefundLifePayOrderInput
|
{
|
public Guid Id { get; set; }
|
|
/// <summary>
|
/// 上传凭证
|
/// </summary>
|
public string RefundCredentialsImgUrl { get; set; }
|
|
/// <summary>
|
/// 退款驳回原因
|
/// </summary>
|
public string RefundCheckRemark { get; set; }
|
|
/// <summary>
|
/// 退款类型
|
/// </summary>
|
public LifePayRefundTypeEnum LifePayRefundType { get; set; }
|
|
/// <summary>
|
/// 退款金额
|
/// </summary>
|
public decimal RefundPrice { get; set; }
|
}
|
|
public class RefundUserLifePayOrderInput : ChannelsBaseInput
|
{
|
public Guid Id { get; set; }
|
|
/// <summary>
|
/// 用户Id
|
/// </summary>
|
public Guid? UserId { get; set; }
|
|
public string RefundApplyRemark { get; set; }
|
}
|
|
public class CreateEditPayChannelsInput
|
{
|
public Guid? Id { get; set; }
|
|
public string ChannlesName { get; set; }
|
|
public string ChannlesNum { get; set; }
|
|
public decimal ChannlesRate { get; set; }
|
|
public decimal ChannlesRakeRate { get; set; }
|
|
public LifePaySwitchTypeEnum SwitchType { get; set; }
|
|
public LifePayChannelsStatsEnum Status { get; set; }
|
|
public LifePayChannlesTypeEnum ChannlesType { get; set; }
|
|
}
|
|
public class QueryUserAccountListInput : ChannelsBaseInput
|
{
|
/// <summary>
|
/// 用户Id
|
/// </summary>
|
public Guid? UserId { get; set; }
|
|
|
public LifePayOrderTypeEnum? LifePayOrderType { get; set; }
|
}
|
|
public class QueryUserAccountAllListInput : ChannelsBaseInput
|
{
|
/// <summary>
|
/// 用户Id
|
/// </summary>
|
public Guid? UserId { get; set; }
|
|
public LifePayOrderTypeEnum? LifePayOrderType { get; set; }
|
}
|
|
public class AddUpdateUserAccountInput : ChannelsBaseInput
|
{
|
public Guid? Id { get; set; }
|
|
/// <summary>
|
/// 用户编号
|
/// </summary>
|
public Guid UserId { get; set; }
|
|
/// <summary>
|
/// 生活缴费类型
|
/// </summary>
|
public LifePayOrderTypeEnum LifePayType { get; set; }
|
|
/// <summary>
|
/// 运营商
|
/// </summary>
|
[Required(ErrorMessage = "运营商不能为空;")]
|
public string Operators { get; set; }
|
|
/// <summary>
|
/// 手机号/户号
|
/// </summary>
|
public string Content { get; set; }
|
|
/// <summary>
|
/// 省
|
/// </summary>
|
public string Province { get; set; }
|
|
/// <summary>
|
/// 市
|
/// </summary>
|
public string City { get; set; }
|
|
/// <summary>
|
/// 拓展字段(电费类型)
|
/// </summary>
|
public string ExtraProperties { get; set; }
|
|
/// <summary>
|
/// 备注
|
/// </summary>
|
[StringLength(30, ErrorMessage = "备注信息仅支持填写30个字符。")]
|
public string Remark { get; set; } = string.Empty;
|
}
|
|
public class QueryUserPageInput : ChannelsBaseInput
|
{
|
/// <summary>
|
/// 手机号/用户名
|
/// </summary>
|
public string? QueryCondition { get; set; }
|
|
/// <summary>
|
/// 注册开始时间
|
/// </summary>
|
public DateTime? CreationTimeBegin { get; set; }
|
|
/// <summary>
|
/// 注册结束时间
|
/// </summary>
|
public DateTime? CreationTimeEnd { get; set; }
|
|
/// <summary>
|
/// 登录开始时间
|
/// </summary>
|
public DateTime? LoginTimeBegin { get; set; }
|
|
/// <summary>
|
/// 登录结束时间
|
/// </summary>
|
public DateTime? LoginTimeEnd { get; set; }
|
}
|
|
public class Model_UserAccountExtraProperties
|
{
|
public string? Name { get; set; }
|
|
public string IspCode { get; set; }
|
|
public string Phone { get; set; }
|
|
public string Remark { get; set; }
|
}
|
|
public class OrderPriceReturn
|
{
|
/// <summary>
|
/// 平台扣款金额
|
/// </summary>
|
public decimal PlatformPrice { get; set; }
|
|
/// <summary>
|
/// 手续费
|
/// </summary>
|
public decimal PremiumPrice { get; set; }
|
|
/// <summary>
|
/// 渠道佣金
|
/// </summary>
|
public decimal ChannlesRakePrice { get; set; }
|
|
/// <summary>
|
/// 利润
|
/// </summary>
|
|
public decimal Profit { get; set; }
|
|
}
|
public class LifePayConsumptionPageInput : ChannelsBaseInput
|
{
|
/// <summary>
|
/// 查询条件
|
/// </summary>
|
public string? KeyWord { get; set; }
|
|
/// <summary>
|
/// 资金流向
|
/// </summary>
|
public ConsumptionFlowEnum? Flow { get; set; }
|
|
/// <summary>
|
/// 记账开始时间
|
/// </summary>
|
public DateTime? TimeBegin { get; set; }
|
|
/// <summary>
|
/// 记账结束时间
|
/// </summary>
|
public DateTime? TimeEnd { get; set; }
|
}
|
public class LifePayRechargeReceiptsPageInput : ChannelsBaseInput
|
{
|
/// <summary>
|
/// 查询条件
|
/// </summary>
|
public string? KeyWord { get; set; }
|
|
/// <summary>
|
/// 记账开始时间
|
/// </summary>
|
public DateTime? CreationTimeBegin { get; set; }
|
|
/// <summary>
|
/// 记账结束时间
|
/// </summary>
|
public DateTime? CreationTimeEnd { get; set; }
|
}
|
public class AddUpdatePayRechargeReceiptsInput
|
{
|
/// <summary>
|
/// 编号
|
/// </summary>
|
public Guid? Id { get; set; }
|
|
/// <summary>
|
/// 业务订单号
|
/// </summary>
|
public string OrderNo { get; set; }
|
|
/// <summary>
|
/// 充值金额
|
/// </summary>
|
public decimal RechargeAmount { get; set; }
|
|
/// <summary>
|
/// 备注
|
/// </summary>
|
public string? Remark { get; set; }
|
|
/// <summary>
|
/// 充值凭证
|
/// </summary>
|
public string Voucher { get; set; }
|
}
|
|
|
public class SetPayTypeReturn
|
{
|
public string Desc { get; set; }
|
|
public string OrderNo { get; set; }
|
|
public decimal PayAmount { get; set; }
|
|
public LifePayTypeEnum LifePayType { get; set; }
|
}
|
public class AddLifePayExpensesReceiptsInput
|
{
|
|
/// <summary>
|
/// 退款订单号
|
/// </summary>
|
public string OutRefundNo { get; set; }
|
|
/// <summary>
|
/// 平台订单号
|
/// </summary>
|
public string OrderNo { get; set; }
|
|
/// <summary>
|
/// 渠道流水号
|
/// </summary>
|
public string OutOrderNo { get; set; }
|
|
/// <summary>
|
/// 支付渠道
|
/// </summary>
|
public LifePayTypeEnum LifePayType { get; set; }
|
|
/// <summary>
|
/// 收支类型
|
/// </summary>
|
public ExpensesReceiptsTypeEnum? ExpensesReceiptsType { get; set; }
|
|
/// <summary>
|
/// 交易金额
|
/// </summary>
|
public decimal Amount { get; set; }
|
}
|
public class LifePayExpensesReceiptsPageInput : ChannelsBaseInput
|
{
|
/// <summary>
|
/// 查询条件
|
/// </summary>
|
public string? KeyWord { get; set; }
|
|
/// <summary>
|
/// 支付渠道
|
/// </summary>
|
public LifePayTypeEnum? LifePayType { get; set; }
|
|
/// <summary>
|
/// 收支类型
|
/// </summary>
|
public ExpensesReceiptsTypeEnum? ExpensesReceiptsType { get; set; }
|
|
/// <summary>
|
/// 交易开始时间
|
/// </summary>
|
public DateTime? TimeBegin { get; set; }
|
|
/// <summary>
|
/// 交易结束时间
|
/// </summary>
|
public DateTime? TimeEnd { get; set; }
|
}
|
public class LifePayExpensesReceiptsTemp
|
{
|
/// <summary>
|
/// 平台订单号
|
/// </summary>
|
public string OrderNo { get; set; }
|
|
/// <summary>
|
/// 退款订单编号
|
/// </summary>
|
public string RefundOrderNo { get; set; }
|
|
/// <summary>
|
/// 渠道流水号
|
/// </summary>
|
public string OutOrderNo { get; set; }
|
|
/// <summary>
|
/// 支付渠道
|
/// </summary>
|
public LifePayTypeEnum LifePayType { get; set; }
|
|
/// <summary>
|
/// 收支类型
|
/// </summary>
|
public ExpensesReceiptsTypeEnum? ExpensesReceiptsType { get; set; }
|
|
/// <summary>
|
/// 交易金额
|
/// </summary>
|
public decimal Amount { get; set; }
|
|
public string ExpensesReceiptsOrder { get; set; }
|
}
|
public class LifePayChannlesRakePageInput : ChannelsBaseInput
|
{
|
|
/// <summary>
|
/// 查询条件
|
/// </summary>
|
public string? KeyWord { get; set; }
|
|
/// <summary>
|
/// 渠道号
|
/// </summary>
|
public string? ChannelId { get; set; }
|
|
/// <summary>
|
/// 起始下单时间
|
/// </summary>
|
public DateTime? CreationTimeBegin { get; set; }
|
|
/// <summary>
|
/// 结束下单时间
|
/// </summary>
|
public DateTime? CreationTimeEnd { get; set; }
|
|
/// <summary>
|
/// 起始结算时间
|
/// </summary>
|
public DateTime? FinishTimeBegin { get; set; }
|
|
/// <summary>
|
/// 终止结算时间
|
/// </summary>
|
public DateTime? FinishTimeEnd { get; set; }
|
|
}
|
|
public class TopStatisticsInput
|
{
|
public List<string>? ChannleList { get; set; }
|
}
|