From 7b47c91bcf89d667a5c99cfafe0d899280f7fbe3 Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期三, 19 十一月 2025 11:22:27 +0800
Subject: [PATCH] feat:平安转账开发

---
 ApiTools.Database.Migrations/Migrations/20251119014221_UpdateChannelWallet1119.cs |  185 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 185 insertions(+), 0 deletions(-)

diff --git a/ApiTools.Database.Migrations/Migrations/20251119014221_UpdateChannelWallet1119.cs b/ApiTools.Database.Migrations/Migrations/20251119014221_UpdateChannelWallet1119.cs
new file mode 100644
index 0000000..baef442
--- /dev/null
+++ b/ApiTools.Database.Migrations/Migrations/20251119014221_UpdateChannelWallet1119.cs
@@ -0,0 +1,185 @@
+锘縰sing System;
+using Microsoft.EntityFrameworkCore.Migrations;
+
+#nullable disable
+
+namespace ApiTools.Database.Migrations.Migrations
+{
+    /// <inheritdoc />
+    public partial class UpdateChannelWallet1119 : Migration
+    {
+        /// <inheritdoc />
+        protected override void Up(MigrationBuilder migrationBuilder)
+        {
+            migrationBuilder.CreateTable(
+                name: "ChannelWallet",
+                columns: table => new
+                {
+                    Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
+                    ChannelId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
+                    OutWalletId = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Access = table.Column<int>(type: "int", nullable: false),
+                    Code = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Bank = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    BankBranch = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Name = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Identity = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Balance = table.Column<decimal>(type: "decimal(18,2)", nullable: false),
+                    SignStatus = table.Column<int>(type: "int", nullable: false),
+                    ErrorCode = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    FailReason = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Sort = table.Column<int>(type: "int", nullable: false),
+                    TraceId = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    CreatedTime = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: false),
+                    CreatedUserId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
+                    CreatedChannelId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
+                    UpdatedTime = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: true),
+                    UpdatedUserId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
+                    IsDeleted = table.Column<bool>(type: "bit", nullable: false)
+                },
+                constraints: table =>
+                {
+                    table.PrimaryKey("PK_ChannelWallet", x => x.Id);
+                    table.ForeignKey(
+                        name: "FK_ChannelWallet_Channel_ChannelId",
+                        column: x => x.ChannelId,
+                        principalTable: "Channel",
+                        principalColumn: "Id");
+                });
+
+            migrationBuilder.CreateTable(
+                name: "ChannelWalletTransaction",
+                columns: table => new
+                {
+                    Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
+                    WalletId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
+                    Type = table.Column<int>(type: "int", nullable: false),
+                    Code = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    OutCode = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    ConcurrencyLock = table.Column<string>(type: "nvarchar(450)", nullable: true),
+                    Amount = table.Column<decimal>(type: "decimal(18,2)", nullable: false),
+                    Balance = table.Column<decimal>(type: "decimal(18,2)", nullable: false),
+                    AfterBalance = table.Column<decimal>(type: "decimal(18,2)", nullable: false),
+                    OutOperatorId = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    OperatorTime = table.Column<DateTime>(type: "datetime2", nullable: true),
+                    PayerAccount = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    PayerName = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    PayerBank = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    PayerBankBranch = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    OutReceiveId = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    ReceiveName = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    ReceiveIdentity = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    ReceiveAccount = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    ReceiveBank = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    ReceiveBankBranch = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Currency = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Purpose = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Remark = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    ErrorCode = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    FailReason = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    TransDate = table.Column<DateTime>(type: "datetime2", nullable: true),
+                    OrderFee = table.Column<decimal>(type: "decimal(18,2)", nullable: true),
+                    EreceiptFileId = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    EreceiptDownloadUrl = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    EreceiptDownloadOssUrl = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    EreceiptStatus = table.Column<int>(type: "int", nullable: true),
+                    EreceiptErrorMessage = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    TransactionStatus = table.Column<int>(type: "int", nullable: false),
+                    Sort = table.Column<int>(type: "int", nullable: false),
+                    TraceId = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    CreatedTime = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: false),
+                    CreatedUserId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
+                    CreatedChannelId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
+                    UpdatedTime = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: true),
+                    UpdatedUserId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
+                    IsDeleted = table.Column<bool>(type: "bit", nullable: false)
+                },
+                constraints: table =>
+                {
+                    table.PrimaryKey("PK_ChannelWalletTransaction", x => x.Id);
+                    table.ForeignKey(
+                        name: "FK_ChannelWalletTransaction_ChannelWallet_WalletId",
+                        column: x => x.WalletId,
+                        principalTable: "ChannelWallet",
+                        principalColumn: "Id",
+                        onDelete: ReferentialAction.Cascade);
+                });
+
+            migrationBuilder.CreateTable(
+                name: "ChannelWalletTransactionPingAnPay",
+                columns: table => new
+                {
+                    Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
+                    FreezeNo = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    StopStt = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    StopFailReason = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    RemoveStopStt = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    RemoveStopFailReason = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    ThirdVoucher = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    FrontLogNo = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    CstInnerFlowNo = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    IsBack = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    BackRem = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Yhcljg = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    SysFlag = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Fee = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    TransBsn = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    SubmitTime = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    AccountDate = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    HostFlowNo = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    HostErrorCode = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    ProxyPayName = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    ProxyPayAcc = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    ProxyPayBankName = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    Sort = table.Column<int>(type: "int", nullable: false),
+                    TraceId = table.Column<string>(type: "nvarchar(max)", nullable: true),
+                    CreatedTime = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: false),
+                    CreatedUserId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
+                    CreatedChannelId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
+                    UpdatedTime = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: true),
+                    UpdatedUserId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
+                    IsDeleted = table.Column<bool>(type: "bit", nullable: false)
+                },
+                constraints: table =>
+                {
+                    table.PrimaryKey("PK_ChannelWalletTransactionPingAnPay", x => x.Id);
+                    table.ForeignKey(
+                        name: "FK_ChannelWalletTransactionPingAnPay_ChannelWalletTransaction_Id",
+                        column: x => x.Id,
+                        principalTable: "ChannelWalletTransaction",
+                        principalColumn: "Id",
+                        onDelete: ReferentialAction.Cascade);
+                });
+
+            migrationBuilder.CreateIndex(
+                name: "IX_ChannelWallet_ChannelId",
+                table: "ChannelWallet",
+                column: "ChannelId");
+
+            migrationBuilder.CreateIndex(
+                name: "IX_ChannelWalletTransaction_ConcurrencyLock",
+                table: "ChannelWalletTransaction",
+                column: "ConcurrencyLock",
+                unique: true,
+                filter: "[ConcurrencyLock] IS NOT NULL");
+
+            migrationBuilder.CreateIndex(
+                name: "IX_ChannelWalletTransaction_WalletId",
+                table: "ChannelWalletTransaction",
+                column: "WalletId");
+        }
+
+        /// <inheritdoc />
+        protected override void Down(MigrationBuilder migrationBuilder)
+        {
+            migrationBuilder.DropTable(
+                name: "ChannelWalletTransactionPingAnPay");
+
+            migrationBuilder.DropTable(
+                name: "ChannelWalletTransaction");
+
+            migrationBuilder.DropTable(
+                name: "ChannelWallet");
+        }
+    }
+}

--
Gitblit v1.9.1