using Furion.DatabaseAccessor;
|
using Microsoft.EntityFrameworkCore;
|
using Microsoft.EntityFrameworkCore.Metadata.Builders;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
|
namespace ApiTools.Core
|
{
|
/// <summary>
|
/// 渠道钱包交易
|
/// </summary>
|
public class ChannelWalletTransaction : CommonEntity<MasterDbContextLocator>, IEntityTypeBuilder<ChannelWalletTransaction>
|
{
|
/// <summary>
|
/// 钱包Id
|
/// </summary>
|
public Guid WalletId { get; set; }
|
|
/// <summary>
|
/// 钱包
|
/// </summary>
|
public ChannelWallet Wallet { get; set; }
|
|
/// <summary>
|
/// 平安信息
|
/// </summary>
|
public ChannelWalletTransactionPingAnPay PingAnPay { get; set; }
|
|
/// <summary>
|
/// 类型
|
/// </summary>
|
public EnumWalletTransactionType Type { get; set; }
|
|
/// <summary>
|
/// 订单号
|
/// </summary>
|
public string Code { get; set; }
|
|
/// <summary>
|
/// 外部订单号
|
/// </summary>
|
public string OutCode { get; set; }
|
|
/// <summary>
|
/// 并发锁
|
/// </summary>
|
public string ConcurrencyLock { get; set; }
|
|
/// <summary>
|
/// 金额
|
/// </summary>
|
public decimal Amount { get; set; }
|
|
/// <summary>
|
/// 余额
|
/// </summary>
|
public decimal Balance { get; set; }
|
|
/// <summary>
|
/// 收支后余额
|
/// </summary>
|
public decimal AfterBalance { get; set; }
|
|
/// <summary>
|
/// 外部操作人Id
|
/// </summary>
|
public string OutOperatorId { get; set; }
|
|
/// <summary>
|
/// 操作时间
|
/// </summary>
|
public DateTime? OperatorTime { get; set; }
|
|
/// <summary>
|
/// 付款人账户
|
/// </summary>
|
public string PayerAccount { get; set; }
|
|
/// <summary>
|
/// 付款人名称
|
/// </summary>
|
public string PayerName { get; set; }
|
|
/// <summary>
|
/// 付款人开户行
|
/// </summary>
|
public string PayerBank { get; set; }
|
|
/// <summary>
|
/// 付款人支行
|
/// </summary>
|
public string PayerBankBranch { get; set; }
|
|
/// <summary>
|
/// 外部收款人Id
|
/// </summary>
|
public string OutReceiveId { get; set; }
|
|
/// <summary>
|
/// 收款人姓名
|
/// </summary>
|
public string ReceiveName { get; set; }
|
|
/// <summary>
|
/// 收款人身份证号
|
/// </summary>
|
public string ReceiveIdentity { get; set; }
|
|
/// <summary>
|
/// 收款账户
|
/// </summary>
|
public string ReceiveAccount { get; set; }
|
|
/// <summary>
|
/// 收款人开户行
|
/// </summary>
|
public string ReceiveBank { get; set; }
|
|
/// <summary>
|
/// 收款人支行
|
/// </summary>
|
public string ReceiveBankBranch { get; set; }
|
|
/// <summary>
|
/// 币种
|
/// </summary>
|
public string Currency { get; set; }
|
|
/// <summary>
|
/// 用途
|
/// </summary>
|
public string Purpose { get; set; }
|
|
/// <summary>
|
/// 备注
|
/// </summary>
|
public string Remark { get; set; }
|
|
/// <summary>
|
/// 查询到的订单状态为FAIL失败或REFUND退票时,返回错误代码
|
/// </summary>
|
public string ErrorCode { get; set; }
|
|
/// <summary>
|
/// 查询到的订单状态为FAIL失败或REFUND退票时,返回具体的原因。
|
/// </summary>
|
public string FailReason { get; set; }
|
|
/// <summary>
|
/// 订单支付时间
|
/// </summary>
|
public DateTime? TransDate { get; set; }
|
|
/// <summary>
|
/// 预计收费金额(元),转账到银行卡专用
|
/// </summary>
|
public decimal? OrderFee { get; set; }
|
|
/// <summary>
|
/// 电子收据Id
|
/// </summary>
|
public string EreceiptFileId { get; set; }
|
|
/// <summary>
|
/// 电子收据下载链接
|
/// </summary>
|
public string EreceiptDownloadUrl { get; set; }
|
|
/// <summary>
|
/// 电子收据下载链接
|
/// </summary>
|
public string EreceiptDownloadOssUrl { get; set; }
|
|
/// <summary>
|
/// 电子收据状态
|
/// </summary>
|
public EnumWalletTransactionEreceiptStatus? EreceiptStatus { get; set; }
|
|
/// <summary>
|
/// 电子收据错误信息
|
/// </summary>
|
public string EreceiptErrorMessage { get; set; }
|
|
/// <summary>
|
/// 状态
|
/// </summary>
|
public EnumWalletTransactionStatus TransactionStatus { get; set; }
|
|
public void Configure(EntityTypeBuilder<ChannelWalletTransaction> entityBuilder, DbContext dbContext, Type dbContextLocator)
|
{
|
entityBuilder
|
.HasOne(it => it.PingAnPay)
|
.WithOne(it => it.Transaction)
|
.HasForeignKey<ChannelWalletTransactionPingAnPay>(it => it.Id);
|
|
entityBuilder
|
.HasIndex(it => it.ConcurrencyLock)
|
.IsUnique();
|
}
|
}
|
}
|