using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata;

namespace MySystem.Models.Push
{
    public partial class WebCMSEntities : DbContext
    {
        public WebCMSEntities()
        {
        }

        public WebCMSEntities(DbContextOptions<WebCMSEntities> options)
            : base(options)
        {
        }

        public virtual DbSet<Merchant> Merchant { get; set; }
        public virtual DbSet<PushObj> PushObj { get; set; }
        public virtual DbSet<PushObjCondition> PushObjCondition { get; set; }
        public virtual DbSet<PushPosRecord> PushPosRecord { get; set; }
        public virtual DbSet<PushRecord> PushRecord { get; set; }
        public virtual DbSet<RePushQueue> RePushQueue { get; set; }
        public virtual DbSet<SourceCondition> SourceCondition { get; set; }
        public virtual DbSet<SourceData> SourceData { get; set; }
        public virtual DbSet<SourceDataSubTable> SourceDataSubTable { get; set; }
        public virtual DbSet<UMerchantDepositRecord> UMerchantDepositRecord { get; set; }
        public virtual DbSet<UPosMerchantInfo> UPosMerchantInfo { get; set; }
        public virtual DbSet<UTradeRecord> UTradeRecord { get; set; }

        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            if (!optionsBuilder.IsConfigured)
            {
                optionsBuilder.UseMySql(Library.ConfigurationManager.AppSettings["SqlConnStr"].ToString(), x => x.ServerVersion("5.7.17-mysql"));
            }
        }

        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            modelBuilder.Entity<Merchant>(entity =>
            {
                entity.ToTable("merchant");

                entity.HasComment("商户表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasColumnType("int(11)");

                entity.Property(e => e.AesSecret)
                    .HasColumnName("aes_secret")
                    .HasColumnType("varchar(50)")
                    .HasComment("AES密钥")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.CreateDate)
                    .HasColumnName("create_date")
                    .HasColumnType("datetime")
                    .HasComment("创建时间");

                entity.Property(e => e.MerchantName)
                    .HasColumnName("merchant_name")
                    .HasColumnType("varchar(50)")
                    .HasComment("商户名称")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.MerchantNo)
                    .HasColumnName("merchant_no")
                    .HasColumnType("varchar(50)")
                    .HasComment("商户号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.RsaPriKey)
                    .HasColumnName("rsa_pri_key")
                    .HasColumnType("mediumtext")
                    .HasComment("RSA私钥")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.RsaPubKey)
                    .HasColumnName("rsa_pub_key")
                    .HasColumnType("mediumtext")
                    .HasComment("RSA公钥")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Sort)
                    .HasColumnName("sort")
                    .HasColumnType("int(11)")
                    .HasComment("排序序号");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasColumnType("int(11)")
                    .HasComment("状态");

                entity.Property(e => e.UpdateDate)
                    .HasColumnName("update_date")
                    .HasColumnType("datetime")
                    .HasComment("修改时间");

                entity.Property(e => e.Version)
                    .HasColumnName("version")
                    .HasColumnType("int(11)")
                    .HasComment("版本号");
            });

            modelBuilder.Entity<PushObj>(entity =>
            {
                entity.ToTable("push_obj");

                entity.HasComment("推送项目");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasColumnType("int(11)");

                entity.Property(e => e.CreateDate)
                    .HasColumnName("create_date")
                    .HasColumnType("datetime")
                    .HasComment("创建时间");

                entity.Property(e => e.EncryptMode)
                    .HasColumnName("encrypt_mode")
                    .HasColumnType("int(11)")
                    .HasComment("加密方式");

                entity.Property(e => e.FieldList)
                    .HasColumnName("field_list")
                    .HasColumnType("mediumtext")
                    .HasComment("数据字段")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.MerchantId)
                    .HasColumnName("merchant_id")
                    .HasColumnType("int(11)")
                    .HasComment("商户");

                entity.Property(e => e.NoticeUrl)
                    .HasColumnName("notice_url")
                    .HasColumnType("varchar(500)")
                    .HasComment("推送地址")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.QueryId)
                    .HasColumnType("int(11)")
                    .HasComment("查询表Id");

                entity.Property(e => e.Sort)
                    .HasColumnName("sort")
                    .HasColumnType("int(11)")
                    .HasComment("排序序号");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasColumnType("int(11)")
                    .HasComment("状态");

                entity.Property(e => e.TableName)
                    .HasColumnName("table_name")
                    .HasColumnType("varchar(50)")
                    .HasComment("数据表名")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Title)
                    .HasColumnName("title")
                    .HasColumnType("varchar(50)")
                    .HasComment("标题说明")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.UpdateDate)
                    .HasColumnName("update_date")
                    .HasColumnType("datetime")
                    .HasComment("修改时间");

                entity.Property(e => e.Version)
                    .HasColumnName("version")
                    .HasColumnType("int(11)")
                    .HasComment("版本号");
            });

            modelBuilder.Entity<PushObjCondition>(entity =>
            {
                entity.ToTable("push_obj_condition");

                entity.HasComment("推送数据抓取条件");

                entity.Property(e => e.Id).HasColumnType("int(11)");

                entity.Property(e => e.CreateDate)
                    .HasColumnType("datetime")
                    .HasComment("创建时间");

                entity.Property(e => e.CreateMan)
                    .HasColumnType("varchar(50)")
                    .HasComment("创建人")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.PushObjId)
                    .HasColumnName("push_obj_id")
                    .HasColumnType("int(11)")
                    .HasComment("推送项目");

                entity.Property(e => e.QueryCondition)
                    .HasColumnName("query_condition")
                    .HasColumnType("int(11)")
                    .HasComment("查询条件");

                entity.Property(e => e.QueryCount)
                    .HasColumnType("int(11)")
                    .HasComment("点击量");

                entity.Property(e => e.QueryField)
                    .HasColumnName("query_field")
                    .HasColumnType("varchar(50)")
                    .HasComment("查询字段")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.QueryVal)
                    .HasColumnName("query_val")
                    .HasColumnType("varchar(50)")
                    .HasComment("查询值")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.SeoDescription)
                    .HasColumnType("varchar(500)")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.SeoKeyword)
                    .HasColumnType("varchar(200)")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.SeoTitle)
                    .HasColumnType("varchar(100)")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Sort)
                    .HasColumnType("int(11)")
                    .HasComment("排序序号");

                entity.Property(e => e.Status)
                    .HasColumnType("int(11)")
                    .HasComment("状态");

                entity.Property(e => e.UpdateDate)
                    .HasColumnType("datetime")
                    .HasComment("更新时间");

                entity.Property(e => e.UpdateMan)
                    .HasColumnType("varchar(50)")
                    .HasComment("更新人")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Version)
                    .HasColumnType("int(11)")
                    .HasComment("版本号");
            });

            modelBuilder.Entity<PushPosRecord>(entity =>
            {
                entity.ToTable("push_pos_record");

                entity.HasComment("推送项目");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasColumnType("int(11)");

                entity.Property(e => e.BackContent)
                    .HasColumnName("back_content")
                    .HasColumnType("mediumtext")
                    .HasComment("数据内容")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Content)
                    .HasColumnName("content")
                    .HasColumnType("mediumtext")
                    .HasComment("数据内容")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.CreateDate)
                    .HasColumnName("create_date")
                    .HasColumnType("datetime")
                    .HasComment("创建时间");

                entity.Property(e => e.DataType)
                    .HasColumnName("data_type")
                    .HasColumnType("varchar(20)")
                    .HasComment("数据类型")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.EncryptContent)
                    .HasColumnName("encrypt_content")
                    .HasColumnType("mediumtext")
                    .HasComment("数据内容")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasColumnType("int(11)")
                    .HasComment("状态");
            });

            modelBuilder.Entity<PushRecord>(entity =>
            {
                entity.ToTable("push_record");

                entity.HasComment("推送记录");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasColumnType("int(11)");

                entity.Property(e => e.CreateDate)
                    .HasColumnName("create_date")
                    .HasColumnType("datetime")
                    .HasComment("创建时间");

                entity.Property(e => e.MerchantId)
                    .HasColumnName("merchant_id")
                    .HasColumnType("int(11)")
                    .HasComment("商户");

                entity.Property(e => e.PushData)
                    .HasColumnName("push_data")
                    .HasColumnType("mediumtext")
                    .HasComment("推送数据")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.PushDataEncrypt)
                    .HasColumnName("push_data_encrypt")
                    .HasColumnType("mediumtext")
                    .HasComment("推送数据加密")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.PushObjId)
                    .HasColumnName("push_obj_id")
                    .HasColumnType("int(11)")
                    .HasComment("推送项目");

                entity.Property(e => e.Sort)
                    .HasColumnName("sort")
                    .HasColumnType("int(11)")
                    .HasComment("排序序号");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasColumnType("int(11)")
                    .HasComment("状态");

                entity.Property(e => e.UpdateDate)
                    .HasColumnName("update_date")
                    .HasColumnType("datetime")
                    .HasComment("修改时间");

                entity.Property(e => e.Version)
                    .HasColumnName("version")
                    .HasColumnType("int(11)")
                    .HasComment("版本号");
            });

            modelBuilder.Entity<RePushQueue>(entity =>
            {
                entity.ToTable("re_push_queue");

                entity.HasComment("重推队列");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasColumnType("int(11)");

                entity.Property(e => e.CreateDate)
                    .HasColumnName("create_date")
                    .HasColumnType("datetime")
                    .HasComment("创建时间");

                entity.Property(e => e.MerchantId)
                    .HasColumnName("merchant_id")
                    .HasColumnType("int(11)")
                    .HasComment("商户");

                entity.Property(e => e.PushData)
                    .HasColumnName("push_data")
                    .HasColumnType("mediumtext")
                    .HasComment("推送数据")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.PushDataEncrypt)
                    .HasColumnName("push_data_encrypt")
                    .HasColumnType("mediumtext")
                    .HasComment("推送数据加密")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.PushObjId)
                    .HasColumnName("push_obj_id")
                    .HasColumnType("int(11)")
                    .HasComment("推送项目");

                entity.Property(e => e.PushRecordId)
                    .HasColumnType("int(11)")
                    .HasComment("推送记录");

                entity.Property(e => e.RePushDate)
                    .HasColumnName("re_push_date")
                    .HasColumnType("datetime")
                    .HasComment("再次重推时间");

                entity.Property(e => e.RePushUrl)
                    .HasColumnName("re_push_url")
                    .HasColumnType("varchar(500)")
                    .HasComment("重推地址")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Sort)
                    .HasColumnName("sort")
                    .HasColumnType("int(11)")
                    .HasComment("排序序号");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasColumnType("int(11)")
                    .HasComment("状态");

                entity.Property(e => e.Times)
                    .HasColumnName("times")
                    .HasColumnType("int(11)")
                    .HasComment("次数");

                entity.Property(e => e.UpdateDate)
                    .HasColumnName("update_date")
                    .HasColumnType("datetime")
                    .HasComment("修改时间");

                entity.Property(e => e.Version)
                    .HasColumnName("version")
                    .HasColumnType("int(11)")
                    .HasComment("版本号");
            });

            modelBuilder.Entity<SourceCondition>(entity =>
            {
                entity.ToTable("source_condition");

                entity.HasComment("原始数据抓取条件");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasColumnType("int(11)");

                entity.Property(e => e.CreateDate)
                    .HasColumnName("create_date")
                    .HasColumnType("datetime")
                    .HasComment("创建时间");

                entity.Property(e => e.QueryCondition)
                    .HasColumnName("query_condition")
                    .HasColumnType("int(11)")
                    .HasComment("查询条件");

                entity.Property(e => e.QueryField)
                    .HasColumnName("query_field")
                    .HasColumnType("varchar(50)")
                    .HasComment("查询字段")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.QueryVal)
                    .HasColumnName("query_val")
                    .HasColumnType("varchar(50)")
                    .HasComment("查询值")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Sort)
                    .HasColumnName("sort")
                    .HasColumnType("int(11)")
                    .HasComment("排序序号");

                entity.Property(e => e.SourceId)
                    .HasColumnName("source_id")
                    .HasColumnType("int(11)")
                    .HasComment("原始数据");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasColumnType("int(11)")
                    .HasComment("状态");

                entity.Property(e => e.UpdateDate)
                    .HasColumnName("update_date")
                    .HasColumnType("datetime")
                    .HasComment("修改时间");

                entity.Property(e => e.Version)
                    .HasColumnName("version")
                    .HasColumnType("int(11)")
                    .HasComment("版本号");
            });

            modelBuilder.Entity<SourceData>(entity =>
            {
                entity.ToTable("source_data");

                entity.HasComment("原始数据配置");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasColumnType("int(11)");

                entity.Property(e => e.CreateDate)
                    .HasColumnName("create_date")
                    .HasColumnType("datetime")
                    .HasComment("创建时间");

                entity.Property(e => e.FieldList)
                    .HasColumnName("field_list")
                    .HasColumnType("mediumtext")
                    .HasComment("查询数据字段")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Month)
                    .HasColumnName("month")
                    .HasColumnType("varchar(6)")
                    .HasComment("标题说明")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.QueryId)
                    .HasColumnType("int(11)")
                    .HasComment("查询数据表Id");

                entity.Property(e => e.Sort)
                    .HasColumnName("sort")
                    .HasColumnType("int(11)")
                    .HasComment("排序序号");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasColumnType("int(11)")
                    .HasComment("状态");

                entity.Property(e => e.TableName)
                    .HasColumnName("table_name")
                    .HasColumnType("varchar(50)")
                    .HasComment("数据表名")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.TargetFieldList)
                    .HasColumnName("target_field_list")
                    .HasColumnType("mediumtext")
                    .HasComment("目标表字段")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Title)
                    .HasColumnName("title")
                    .HasColumnType("varchar(50)")
                    .HasComment("标题说明")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.UpdateDate)
                    .HasColumnName("update_date")
                    .HasColumnType("datetime")
                    .HasComment("修改时间");

                entity.Property(e => e.Version)
                    .HasColumnName("version")
                    .HasColumnType("int(11)")
                    .HasComment("版本号");
            });

            modelBuilder.Entity<SourceDataSubTable>(entity =>
            {
                entity.ToTable("source_data_sub_table");

                entity.HasComment("原始数据关联表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasColumnType("int(11)");

                entity.Property(e => e.CreateDate)
                    .HasColumnName("create_date")
                    .HasColumnType("datetime")
                    .HasComment("创建时间");

                entity.Property(e => e.QueryField)
                    .HasColumnName("query_field")
                    .HasColumnType("varchar(50)")
                    .HasComment("查询字段")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.ReturnField)
                    .HasColumnName("return_field")
                    .HasColumnType("varchar(500)")
                    .HasComment("返回字段")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Sort)
                    .HasColumnName("sort")
                    .HasColumnType("int(11)")
                    .HasComment("排序序号");

                entity.Property(e => e.SourceId)
                    .HasColumnName("source_id")
                    .HasColumnType("int(11)")
                    .HasComment("原始数据");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasColumnType("int(11)")
                    .HasComment("状态");

                entity.Property(e => e.TableName)
                    .HasColumnName("table_name")
                    .HasColumnType("varchar(50)")
                    .HasComment("表名")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.UpdateDate)
                    .HasColumnName("update_date")
                    .HasColumnType("datetime")
                    .HasComment("修改时间");

                entity.Property(e => e.Version)
                    .HasColumnName("version")
                    .HasColumnType("int(11)")
                    .HasComment("版本号");
            });

            modelBuilder.Entity<UMerchantDepositRecord>(entity =>
            {
                entity.ToTable("u_MerchantDepositRecord");

                entity.HasComment("商户服务费信息");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasColumnType("int(11)")
                    .HasComment("ID");

                entity.Property(e => e.AgentId)
                    .HasColumnName("agent_id")
                    .HasColumnType("varchar(30)")
                    .HasComment("代理商编号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Amount)
                    .HasColumnName("amount")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("金额");

                entity.Property(e => e.MerchNo)
                    .HasColumnName("merch_no")
                    .HasColumnType("varchar(50)")
                    .HasComment("商户号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.OrderId)
                    .HasColumnName("order_id")
                    .HasColumnType("varchar(30)")
                    .HasComment("订单流水")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.PosSn)
                    .HasColumnName("pos_sn")
                    .HasColumnType("varchar(50)")
                    .HasComment("机具号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasColumnType("int(11)")
                    .HasComment("状态");

                entity.Property(e => e.TransTime)
                    .HasColumnName("trans_time")
                    .HasColumnType("datetime")
                    .HasComment("时间");

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasColumnType("int(11)")
                    .HasComment("创客所属人");
            });

            modelBuilder.Entity<UPosMerchantInfo>(entity =>
            {
                entity.ToTable("u_PosMerchantInfo");

                entity.HasComment("商户绑定信息");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasColumnType("int(11)")
                    .HasComment("ID");

                entity.Property(e => e.AgentId)
                    .HasColumnName("agent_id")
                    .HasColumnType("varchar(30)")
                    .HasComment("代理商编号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.BindTime)
                    .HasColumnName("bind_time")
                    .HasColumnType("datetime")
                    .HasComment("绑定时间");

                entity.Property(e => e.DeviceModel)
                    .HasColumnName("device_model")
                    .HasColumnType("varchar(30)")
                    .HasComment("设备类型")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.MerchNo)
                    .HasColumnName("merch_no")
                    .HasColumnType("varchar(50)")
                    .HasComment("商户号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Name)
                    .HasColumnName("name")
                    .HasColumnType("varchar(50)")
                    .HasComment("商户名称")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Phone)
                    .HasColumnName("phone")
                    .HasColumnType("varchar(30)")
                    .HasComment("手机号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.PosSn)
                    .HasColumnName("pos_sn")
                    .HasColumnType("varchar(50)")
                    .HasComment("机具号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasColumnType("int(11)")
                    .HasComment("状态");

                entity.Property(e => e.SupplementInfo)
                    .HasColumnName("supplement_info")
                    .HasColumnType("varchar(30)")
                    .HasComment("身份证号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.TermTo)
                    .HasColumnName("term_to")
                    .HasColumnType("varchar(50)")
                    .HasComment("终端号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasColumnType("int(11)")
                    .HasComment("创客所属人");
            });

            modelBuilder.Entity<UTradeRecord>(entity =>
            {
                entity.ToTable("u_TradeRecord");

                entity.HasComment("商户交易信息");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasColumnType("int(11)")
                    .HasComment("ID");

                entity.Property(e => e.AgentId)
                    .IsRequired()
                    .HasColumnName("agent_id")
                    .HasColumnType("varchar(30)")
                    .HasDefaultValueSql("'0'")
                    .HasComment("代理商编号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Amount)
                    .HasColumnName("amount")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("交易金额");

                entity.Property(e => e.CardType)
                    .HasColumnName("card_type")
                    .HasColumnType("varchar(10)")
                    .HasComment("卡类型")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.FeeAmount)
                    .HasColumnName("fee_amount")
                    .HasColumnType("int(11)")
                    .HasComment("手续费");

                entity.Property(e => e.MerchNo)
                    .HasColumnName("merch_no")
                    .HasColumnType("varchar(30)")
                    .HasComment("商户号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.OrderId)
                    .HasColumnName("order_id")
                    .HasColumnType("varchar(50)")
                    .HasComment("订单流水")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.PayType)
                    .HasColumnName("pay_type")
                    .HasColumnType("varchar(10)")
                    .HasComment("支付方式")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.PosSn)
                    .HasColumnName("pos_sn")
                    .HasColumnType("varchar(30)")
                    .HasComment("机具号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.RetCode)
                    .HasColumnName("ret_code")
                    .HasColumnType("varchar(10)")
                    .HasComment("交易状态")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.RetMsg)
                    .HasColumnName("ret_msg")
                    .HasColumnType("varchar(10)")
                    .HasComment("交易描述")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasColumnType("int(11)")
                    .HasComment("状态");

                entity.Property(e => e.TermNo)
                    .HasColumnName("term_no")
                    .HasColumnType("varchar(30)")
                    .HasComment("终端号")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.TransId)
                    .HasColumnName("trans_id")
                    .HasColumnType("varchar(50)")
                    .HasComment("交易流水")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.TransTime)
                    .HasColumnName("trans_time")
                    .HasColumnType("datetime")
                    .HasComment("交易时间");

                entity.Property(e => e.TransType)
                    .HasColumnName("trans_type")
                    .HasColumnType("varchar(10)")
                    .HasComment("交易类型")
                    .HasCharSet("utf8")
                    .HasCollation("utf8_general_ci");

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasColumnType("int(11)")
                    .HasComment("创客所属人");
            });

            OnModelCreatingPartial(modelBuilder);
        }

        partial void OnModelCreatingPartial(ModelBuilder modelBuilder);
    }
}
