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

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

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

        public virtual DbSet<KxsBrand> KxsBrand { get; set; }
        public virtual DbSet<KxsBrandSort> KxsBrandSort { get; set; }
        public virtual DbSet<KxsGdOrder> KxsGdOrder { get; set; }
        public virtual DbSet<KxsGdReport> KxsGdReport { get; set; }
        public virtual DbSet<KxsMachine> KxsMachine { get; set; }
        public virtual DbSet<KxsMachineAward> KxsMachineAward { get; set; }
        public virtual DbSet<KxsMachineCashOrder> KxsMachineCashOrder { get; set; }
        public virtual DbSet<KxsMachineCirculationLog> KxsMachineCirculationLog { get; set; }
        public virtual DbSet<KxsMachineCutBind> KxsMachineCutBind { get; set; }
        public virtual DbSet<KxsMachineDeduct> KxsMachineDeduct { get; set; }
        public virtual DbSet<KxsMachineExpInfo> KxsMachineExpInfo { get; set; }
        public virtual DbSet<KxsMachinePledge> KxsMachinePledge { get; set; }
        public virtual DbSet<KxsMachineRatio> KxsMachineRatio { get; set; }
        public virtual DbSet<KxsMachineTrack> KxsMachineTrack { get; set; }
        public virtual DbSet<KxsMachineTransfer> KxsMachineTransfer { get; set; }
        public virtual DbSet<KxsMachineUnbind> KxsMachineUnbind { get; set; }
        public virtual DbSet<KxsMerchant> KxsMerchant { get; set; }
        public virtual DbSet<KxsMerchantReturn> KxsMerchantReturn { get; set; }
        public virtual DbSet<KxsMerchantTrade> KxsMerchantTrade { get; set; }
        public virtual DbSet<KxsMerchantUser> KxsMerchantUser { get; set; }
        public virtual DbSet<KxsShopCate> KxsShopCate { get; set; }
        public virtual DbSet<KxsShopGoods> KxsShopGoods { get; set; }
        public virtual DbSet<KxsShopGoodsPic> KxsShopGoodsPic { get; set; }
        public virtual DbSet<KxsShopGoodsSku> KxsShopGoodsSku { get; set; }
        public virtual DbSet<KxsShopGoodsSpec> KxsShopGoodsSpec { get; set; }
        public virtual DbSet<KxsShopOrder> KxsShopOrder { get; set; }
        public virtual DbSet<KxsShopOrderInfo> KxsShopOrderInfo { get; set; }
        public virtual DbSet<KxsTicket> KxsTicket { get; set; }
        public virtual DbSet<KxsTicketTransfer> KxsTicketTransfer { get; set; }
        public virtual DbSet<KxsTicketTransferInfo> KxsTicketTransferInfo { get; set; }
        public virtual DbSet<KxsTicketUpgrade> KxsTicketUpgrade { get; set; }
        public virtual DbSet<UndoLog> UndoLog { get; set; }

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

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

                entity.HasComment("客小爽品牌表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.ActAmount)
                    .HasColumnName("act_amount")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("激活金额");

                entity.Property(e => e.ActPrice)
                    .HasColumnName("act_price")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("激活1户计多少元");

                entity.Property(e => e.AdvanceFlag)
                    .HasColumnName("advance_flag")
                    .HasDefaultValueSql("'1'")
                    .HasComment("是否支持预发(0:不支持,1:支持)");

                entity.Property(e => e.BindRange)
                    .HasColumnName("bind_range")
                    .HasColumnType("varchar(10)")
                    .HasComment("功能显示范围（0:未绑定机具，1:已绑定机具）")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.BrandDetail)
                    .HasColumnName("brand_detail")
                    .HasColumnType("longtext")
                    .HasComment("产品详情")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.BrandType)
                    .HasColumnName("brand_type")
                    .HasComment("类型 0电签 1大pos");

                entity.Property(e => e.CountOfBox)
                    .HasColumnName("count_of_box")
                    .HasComment("每箱机具数");

                entity.Property(e => e.Cover)
                    .HasColumnName("cover")
                    .HasColumnType("varchar(255)")
                    .HasComment("封面图片")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DefaultPledge)
                    .HasColumnName("default_pledge")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("默认押金");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.DisplayFlag)
                    .HasColumnName("display_flag")
                    .HasDefaultValueSql("'1'")
                    .HasComment("是否显示产品(0:不显示,1:显示)");

                entity.Property(e => e.ExchangeFlag)
                    .HasColumnName("exchange_flag")
                    .HasComment("是否支持兑换");

                entity.Property(e => e.ExchangeType)
                    .HasColumnName("exchange_type")
                    .HasColumnType("varchar(20)")
                    .HasComment("兑换类型(10:大POS,11:大pos卷循环资格,20:电签,21电签循环资格)")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.FluxAmount)
                    .HasColumnName("flux_amount")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("流量费");

                entity.Property(e => e.FluxProfit)
                    .HasColumnName("flux_profit")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("流量费分佣");

                entity.Property(e => e.LabelText)
                    .HasColumnName("label_text")
                    .HasColumnType("varchar(200)")
                    .HasComment("标签json数据(style:样式,wordColor:文字颜色,backColor:背景颜色)")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.LinkUrl)
                    .HasColumnName("link_url")
                    .HasColumnType("varchar(255)")
                    .HasComment("跳转链接")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ManyPledge)
                    .HasColumnName("many_pledge")
                    .HasColumnType("varchar(50)")
                    .HasComment("多押金设置（多个押金用\",\"隔开）")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.MerchantDisplay)
                    .HasColumnName("merchant_display")
                    .HasColumnType("varchar(10)")
                    .HasComment("商户显示信息（1:商户信息,2:月度交易额,3:月度交易额记录）")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.MerchantFlag)
                    .HasColumnName("merchant_flag")
                    .HasDefaultValueSql("'1'")
                    .HasComment("是否可转商户型创客(0:不支持,1:支持)");

                entity.Property(e => e.Name)
                    .HasColumnName("name")
                    .HasColumnType("varchar(32)")
                    .HasComment("品牌名称")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.NonActAmount)
                    .HasColumnName("non_act_amount")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("无押激活金额");

                entity.Property(e => e.PledgeDisplay)
                    .HasColumnName("pledge_display")
                    .HasDefaultValueSql("'1'")
                    .HasComment("押金是否显示（0:不显示,1:显示）");

                entity.Property(e => e.PledgeStatus)
                    .HasColumnName("pledge_status")
                    .HasDefaultValueSql("'1'")
                    .HasComment("押金状态(0:关闭,1:开启)");

                entity.Property(e => e.PledgeType)
                    .HasColumnName("pledge_type")
                    .HasComment("押金类型(0:固定数值,1:多个数值)");

                entity.Property(e => e.PosPrice)
                    .HasColumnName("pos_price")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("品牌价格");

                entity.Property(e => e.ProfitStatus)
                    .HasColumnName("profit_status")
                    .HasComment("分佣状态（0:未开启,1:开启）");

                entity.Property(e => e.RatioFlag)
                    .HasColumnName("ratio_flag")
                    .HasDefaultValueSql("'1'")
                    .HasComment("是否支持费率修改(0:不支持,1:支持)");

                entity.Property(e => e.ReplenishFlag)
                    .HasColumnName("replenish_flag")
                    .HasDefaultValueSql("'1'")
                    .HasComment("是否支持补货（0:不支持,1:支持）");

                entity.Property(e => e.ReplenishNum)
                    .HasColumnName("replenish_num")
                    .HasDefaultValueSql("'10'")
                    .HasComment("申请补货数量");

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

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasDefaultValueSql("'1'")
                    .HasComment("状态 0禁用 1正常");

                entity.Property(e => e.TotalMethod)
                    .HasColumnName("total_method")
                    .HasComment("统计方式(0:实际交易额,1:激活商户数)");

                entity.Property(e => e.UpdateBy)
                    .HasColumnName("update_by")
                    .HasColumnType("varchar(10)")
                    .HasComment("操作人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

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

            modelBuilder.Entity<KxsBrandSort>(entity =>
            {
                entity.ToTable("kxs_brand_sort");

                entity.HasComment("品牌排序表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.BrandId)
                    .HasColumnName("brand_id")
                    .HasComment("品牌ID");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasColumnType("varchar(1)")
                    .HasDefaultValueSql("'0'")
                    .HasComment("删除标记，0未删除，1已删除")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Sort)
                    .HasColumnName("sort")
                    .HasDefaultValueSql("'100'")
                    .HasComment("排序");

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

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("用户ID");

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

            modelBuilder.Entity<KxsGdOrder>(entity =>
            {
                entity.ToTable("kxs_gd_order");

                entity.HasComment("广电推送订单信息表");

                entity.HasIndex(e => e.GdMobile)
                    .HasName("mobile");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.Address)
                    .HasColumnName("address")
                    .HasColumnType("varchar(128)")
                    .HasComment("收货详细地址")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.AddressDetail)
                    .HasColumnName("address_detail")
                    .HasColumnType("varchar(128)")
                    .HasComment("详细地址")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.City)
                    .HasColumnName("city")
                    .HasColumnType("varchar(64)")
                    .HasComment("城市")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.EmployNum)
                    .HasColumnName("employ_num")
                    .HasColumnType("varchar(64)")
                    .HasComment("工号自定义参数")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ErpName)
                    .HasColumnName("erp_name")
                    .HasColumnType("varchar(128)")
                    .HasComment("快递公司")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ErpNo)
                    .HasColumnName("erp_no")
                    .HasColumnType("varchar(64)")
                    .HasComment("快递单号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.FirstRechargeAmount)
                    .HasColumnName("first_recharge_amount")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("首充金额");

                entity.Property(e => e.GdMobile)
                    .HasColumnName("gd_mobile")
                    .HasColumnType("varchar(16)")
                    .HasComment("广电手机号码")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Iccid)
                    .HasColumnName("iccid")
                    .HasColumnType("varchar(64)")
                    .HasComment("广电sn")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.IdcardNo)
                    .HasColumnName("idcard_no")
                    .HasColumnType("varchar(32)")
                    .HasComment("身份证号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.OrderNo)
                    .HasColumnName("order_no")
                    .HasColumnType("varchar(64)")
                    .HasComment("广电订单号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ProductName)
                    .HasColumnName("product_name")
                    .HasColumnType("varchar(128)")
                    .HasComment("产品名称")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Province)
                    .HasColumnName("province")
                    .HasColumnType("varchar(64)")
                    .HasComment("省份")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ReceiveMobile)
                    .HasColumnName("receive_mobile")
                    .HasColumnType("varchar(16)")
                    .HasComment("收货手机号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ReceiveName)
                    .HasColumnName("receive_name")
                    .HasColumnType("varchar(32)")
                    .HasComment("收货人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(1000)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

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

                entity.Property(e => e.UserName)
                    .HasColumnName("user_name")
                    .HasColumnType("varchar(64)")
                    .HasComment("入网姓名")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

            modelBuilder.Entity<KxsGdReport>(entity =>
            {
                entity.ToTable("kxs_gd_report");

                entity.HasComment("广电报备入网表");

                entity.HasIndex(e => e.GdMobile)
                    .HasName("gd_mobile");

                entity.HasIndex(e => new { e.PutMobile, e.PutName })
                    .HasName("query");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.City)
                    .HasColumnName("city")
                    .HasColumnType("varchar(64)")
                    .HasComment("报备城市")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.GdMobile)
                    .HasColumnName("gd_mobile")
                    .HasColumnType("varchar(16)")
                    .HasComment("广电手机号码")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.GdOrderId)
                    .HasColumnName("gd_order_id")
                    .HasComment("广电订单ID");

                entity.Property(e => e.GdSn)
                    .HasColumnName("gd_sn")
                    .HasColumnType("varchar(64)")
                    .HasComment("sn码")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.IsCheck)
                    .HasColumnName("is_check")
                    .HasComment("匹配状态 未匹配=0 匹配成功=1");

                entity.Property(e => e.Province)
                    .HasColumnName("province")
                    .HasColumnType("varchar(64)")
                    .HasComment("报备省份")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.PutMobile)
                    .HasColumnName("put_mobile")
                    .HasColumnType("varchar(16)")
                    .HasComment("入网手机号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.PutName)
                    .HasColumnName("put_name")
                    .HasColumnType("varchar(64)")
                    .HasComment("入网姓名")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.PutType)
                    .HasColumnName("put_type")
                    .HasComment("入网类型  0工号报备 1电渠报备");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(1000)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasComment("状态 未处理=0 已作废=-1 报备成功=1");

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

                entity.Property(e => e.UserCode)
                    .HasColumnName("user_code")
                    .HasColumnType("varchar(32)")
                    .HasComment("创客编号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("创客ID");

                entity.Property(e => e.Username)
                    .HasColumnName("username")
                    .HasColumnType("varchar(32)")
                    .HasComment("创客姓名")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

            modelBuilder.Entity<KxsMachine>(entity =>
            {
                entity.ToTable("kxs_machine");

                entity.HasComment("客小爽机具表");

                entity.HasIndex(e => e.PosSn)
                    .HasName("pos_sn")
                    .IsUnique();

                entity.HasIndex(e => e.WarehouseId)
                    .HasName("whs_id");

                entity.HasIndex(e => new { e.UserId, e.BindStatus })
                    .HasName("recycleend");

                entity.HasIndex(e => new { e.Status, e.PreUserId, e.WarehouseId, e.BrandId, e.PosSn })
                    .HasName("pre_query");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.ActTime)
                    .HasColumnName("act_time")
                    .HasColumnType("datetime")
                    .HasComment("激活时间");

                entity.Property(e => e.AllotPath)
                    .HasColumnName("allot_path")
                    .HasColumnType("varchar(128)")
                    .HasComment("机具轨迹路径")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.BatchNo)
                    .HasColumnName("batch_no")
                    .HasColumnType("varchar(32)")
                    .HasComment("业务批次号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.BindStatus)
                    .HasColumnName("bind_status")
                    .HasComment("绑定状态 0未绑定 1已绑定 2已解绑");

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

                entity.Property(e => e.BoxSn)
                    .HasColumnName("box_sn")
                    .HasColumnType("varchar(32)")
                    .HasComment("箱码")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.BrandId)
                    .HasColumnName("brand_id")
                    .HasComment("品牌ID");

                entity.Property(e => e.CashPledge)
                    .HasColumnName("cash_pledge")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("机具押金");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.CreditTrade)
                    .HasColumnName("credit_trade")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("贷记卡交易额");

                entity.Property(e => e.DebitCardTrade)
                    .HasColumnName("debit_card_trade")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("借记卡交易额");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.DeliveryTime)
                    .HasColumnName("delivery_time")
                    .HasColumnType("datetime")
                    .HasComment("出库时间");

                entity.Property(e => e.DevLocation)
                    .HasColumnName("dev_location")
                    .HasColumnType("varchar(255)")
                    .HasComment("机具地址")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.DeviceCode)
                    .HasColumnName("device_code")
                    .HasColumnType("varchar(32)")
                    .HasComment("设备型号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.DeviceType)
                    .HasColumnName("device_type")
                    .HasColumnType("varchar(64)")
                    .HasComment("设备类型")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.DownFeeFlag)
                    .HasColumnName("down_fee_flag")
                    .HasComment("费率调降标记 0未调 1已调");

                entity.Property(e => e.IsAct)
                    .HasColumnName("is_act")
                    .HasComment("是否激活 0未激活 1已激活");

                entity.Property(e => e.IsFirst)
                    .HasColumnName("is_first")
                    .HasComment("是否首台 0否 1是");

                entity.Property(e => e.IsOpAct)
                    .HasColumnName("is_op_act")
                    .HasComment("补激活奖标记 0未补录 1已补录");

                entity.Property(e => e.IsSupply)
                    .HasColumnName("is_supply")
                    .HasComment("补录标识 0未补录 1已补录");

                entity.Property(e => e.LeaderId)
                    .HasColumnName("leader_id")
                    .HasComment("盟主用户ID");

                entity.Property(e => e.MachineRatio)
                    .HasColumnName("machine_ratio")
                    .HasColumnType("decimal(18,2)")
                    .HasDefaultValueSql("'0.60'")
                    .HasComment("机具费率");

                entity.Property(e => e.MachineType)
                    .HasColumnName("machine_type")
                    .HasComment("机具类型 0兑换机 1循环机");

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

                entity.Property(e => e.PartnerId)
                    .HasColumnName("partner_id")
                    .HasComment("合伙人用户ID");

                entity.Property(e => e.PosSn)
                    .HasColumnName("pos_sn")
                    .HasColumnType("varchar(32)")
                    .HasComment("机具码")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.PosType)
                    .HasColumnName("pos_type")
                    .HasDefaultValueSql("'2'")
                    .HasComment("机具活动类型 0空白机 1活动机 2正常兑换 101营训");

                entity.Property(e => e.PreUserId)
                    .HasColumnName("pre_user_id")
                    .HasComment("预发到用户的ID");

                entity.Property(e => e.RecycleEndTime)
                    .HasColumnName("recycle_end_time")
                    .HasColumnType("datetime")
                    .HasComment("循环结束时间");

                entity.Property(e => e.RecycleStatus)
                    .HasColumnName("recycle_status")
                    .HasComment("循环状态 0不可循环 1可循环");

                entity.Property(e => e.ReturnStatus)
                    .HasColumnName("return_status")
                    .HasComment("回收状态 待回收=1 待确认=2 已确认=3 已驳回=4 已撤回=-1");

                entity.Property(e => e.ScanQrTrade)
                    .HasColumnName("scan_qr_trade")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("扫码交易额");

                entity.Property(e => e.SecondFee)
                    .HasColumnName("second_fee")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("秒到费");

                entity.Property(e => e.SourcePledge)
                    .HasColumnName("source_pledge")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("厂家押金");

                entity.Property(e => e.SourcePosSn)
                    .HasColumnName("source_pos_sn")
                    .HasColumnType("varchar(128)")
                    .HasComment("溯源机具和兑换券")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasComment("状态 -1坏机 0在库 1出库 ");

                entity.Property(e => e.UpFeeFlag)
                    .HasColumnName("up_fee_flag")
                    .HasComment("费率调降标记 0未调 1已调整");

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

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("所属创客ID");

                entity.Property(e => e.Version)
                    .HasColumnName("version")
                    .HasComment("版本");

                entity.Property(e => e.WarehouseId)
                    .HasColumnName("warehouse_id")
                    .HasComment("仓库ID");

                entity.Property(e => e.WarehouseName)
                    .HasColumnName("warehouse_name")
                    .HasColumnType("varchar(64)")
                    .HasComment("仓库名称")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");
            });

            modelBuilder.Entity<KxsMachineAward>(entity =>
            {
                entity.ToTable("kxs_machine_award");

                entity.HasComment("机具奖励信息表");

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

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

                entity.Property(e => e.AwardType)
                    .HasColumnName("award_type")
                    .HasComment("奖励类型 0机具 1商城");

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

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记");

                entity.Property(e => e.MachineId)
                    .HasColumnName("machine_id")
                    .HasComment("机具id");

                entity.Property(e => e.PosSn)
                    .HasColumnName("pos_sn")
                    .HasColumnType("varchar(32)")
                    .HasComment("机具编号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.UserCode)
                    .HasColumnName("user_code")
                    .HasColumnType("varchar(32)")
                    .HasComment("创客编号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("创客id");

                entity.Property(e => e.Username)
                    .HasColumnName("username")
                    .HasColumnType("varchar(32)")
                    .HasComment("创客用户名")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.VariationType)
                    .HasColumnName("variation_type")
                    .HasComment("奖励类型");

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

            modelBuilder.Entity<KxsMachineCashOrder>(entity =>
            {
                entity.ToTable("kxs_machine_cash_order");

                entity.HasComment("客小爽wifi押金订单关联商品订单表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.CreateBy)
                    .HasColumnName("create_by")
                    .HasColumnType("varchar(50)")
                    .HasComment("添加人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasColumnType("varchar(1)")
                    .HasDefaultValueSql("'0'")
                    .HasComment("删除标记，0未删除，1已删除")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.MachineApplyId)
                    .HasColumnName("machine_apply_id")
                    .HasComment("机具申请订单ID");

                entity.Property(e => e.MachineId)
                    .HasColumnName("machine_id")
                    .HasComment("机具ID");

                entity.Property(e => e.ShopOrderId)
                    .HasColumnName("shop_order_id")
                    .HasComment("商品订单ID");

                entity.Property(e => e.UpdateBy)
                    .HasColumnName("update_by")
                    .HasColumnType("varchar(50)")
                    .HasComment("更新人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.UserCode)
                    .HasColumnName("user_code")
                    .HasColumnType("varchar(16)")
                    .HasComment("创客编号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("用户ID");

                entity.Property(e => e.Username)
                    .HasColumnName("username")
                    .HasColumnType("varchar(64)")
                    .HasComment("创客姓名")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

            modelBuilder.Entity<KxsMachineCirculationLog>(entity =>
            {
                entity.ToTable("kxs_machine_circulation_log");

                entity.HasComment("客小爽循环机记录表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.MachineId)
                    .HasColumnName("machine_id")
                    .HasComment("机具ID");

                entity.Property(e => e.OrderId)
                    .HasColumnName("order_id")
                    .HasComment("订单ID");

                entity.Property(e => e.Pid)
                    .HasColumnName("pid")
                    .HasComment("上级ID");

                entity.Property(e => e.PidPath)
                    .HasColumnName("pid_path")
                    .HasColumnType("varchar(2000)")
                    .HasDefaultValueSql("'0'")
                    .HasComment("上级路径")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.SourceSn)
                    .HasColumnName("source_sn")
                    .HasColumnType("varchar(32)")
                    .HasComment("源sn")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("用户ID");

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

            modelBuilder.Entity<KxsMachineCutBind>(entity =>
            {
                entity.ToTable("kxs_machine_cut_bind");

                entity.HasComment("机具换绑记录表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.BrandId)
                    .HasColumnName("brand_id")
                    .HasComment("品牌");

                entity.Property(e => e.CreateBy)
                    .HasColumnName("create_by")
                    .HasColumnType("varchar(64)")
                    .HasComment("操作人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.CutBrandId)
                    .HasColumnName("cut_brand_id")
                    .HasComment("换机后的新品牌");

                entity.Property(e => e.CutPosSn)
                    .HasColumnName("cut_pos_sn")
                    .HasColumnType("varchar(64)")
                    .HasComment("换机后的新sn")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CutType)
                    .HasColumnName("cut_type")
                    .HasComment("类型 0-换绑 1-坏机换新 2-跨品牌换机");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasColumnType("varchar(1)")
                    .HasDefaultValueSql("'0'")
                    .HasComment("删除标记，0未删除，1已删除")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.IsNotify)
                    .HasColumnName("is_notify")
                    .HasComment("是否通知创客 1通知");

                entity.Property(e => e.OrderSn)
                    .HasColumnName("order_sn")
                    .HasColumnType("varchar(64)")
                    .HasComment("订单号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.OutWhsAddress)
                    .HasColumnName("out_whs_address")
                    .HasColumnType("varchar(255)")
                    .HasComment("出库仓库地址")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.OutWhsId)
                    .HasColumnName("out_whs_id")
                    .HasComment("出库仓库ID");

                entity.Property(e => e.OutWhsMobile)
                    .HasColumnName("out_whs_mobile")
                    .HasColumnType("varchar(16)")
                    .HasComment("出库仓库手机号码")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.OutWhsName)
                    .HasColumnName("out_whs_name")
                    .HasColumnType("varchar(128)")
                    .HasComment("出库仓库名称")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.PosSn)
                    .HasColumnName("pos_sn")
                    .HasColumnType("varchar(64)")
                    .HasComment("机具号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(128)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ToWhsAddress)
                    .HasColumnName("to_whs_address")
                    .HasColumnType("varchar(255)")
                    .HasComment("退回仓库地址")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ToWhsId)
                    .HasColumnName("to_whs_id")
                    .HasComment("退回仓库ID");

                entity.Property(e => e.ToWhsMobile)
                    .HasColumnName("to_whs_mobile")
                    .HasColumnType("varchar(16)")
                    .HasComment("退回仓库联系号码")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ToWhsName)
                    .HasColumnName("to_whs_name")
                    .HasColumnType("varchar(128)")
                    .HasComment("退回仓库名称")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.UpdateBy)
                    .HasColumnName("update_by")
                    .HasColumnType("varchar(32)")
                    .HasComment("操作人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.UserCode)
                    .HasColumnName("user_code")
                    .HasColumnType("varchar(16)")
                    .HasComment("用户编号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("用户ID");

                entity.Property(e => e.Username)
                    .HasColumnName("username")
                    .HasColumnType("varchar(32)")
                    .HasComment("用户姓名")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

            modelBuilder.Entity<KxsMachineDeduct>(entity =>
            {
                entity.ToTable("kxs_machine_deduct");

                entity.HasComment("机具循环过期已扣款记录表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.BrandId)
                    .HasColumnName("brand_id")
                    .HasComment("品牌名称");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.PosSn)
                    .HasColumnName("pos_sn")
                    .HasColumnType("varchar(64)")
                    .HasComment("机具号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(255)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

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

            modelBuilder.Entity<KxsMachineExpInfo>(entity =>
            {
                entity.ToTable("kxs_machine_exp_info");

                entity.HasComment("机具未绑定超时预扣款记录表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.AdvanceId)
                    .HasColumnName("advance_id")
                    .HasComment("预扣款ID");

                entity.Property(e => e.CreateBy)
                    .HasColumnName("create_by")
                    .HasColumnType("varchar(50)")
                    .HasComment("添加人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasColumnType("varchar(1)")
                    .HasDefaultValueSql("'0'")
                    .HasComment("删除标记，0未删除，1已删除")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.MachineId)
                    .HasColumnName("machine_id")
                    .HasComment("机具ID");

                entity.Property(e => e.UpdateBy)
                    .HasColumnName("update_by")
                    .HasColumnType("varchar(50)")
                    .HasComment("更新人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("用户ID");

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

            modelBuilder.Entity<KxsMachinePledge>(entity =>
            {
                entity.ToTable("kxs_machine_pledge");

                entity.HasComment("客小爽押金调整记录表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.AfterPledge)
                    .HasColumnName("after_pledge")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("调整后押金");

                entity.Property(e => e.BeforePledge)
                    .HasColumnName("before_pledge")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("调整前押金");

                entity.Property(e => e.BrandId)
                    .HasColumnName("brand_id")
                    .HasComment("品牌");

                entity.Property(e => e.CreateBy)
                    .HasColumnName("create_by")
                    .HasColumnType("varchar(32)")
                    .HasComment("操作人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.PosSn)
                    .IsRequired()
                    .HasColumnName("pos_sn")
                    .HasColumnType("varchar(64)")
                    .HasDefaultValueSql("'0'")
                    .HasComment("机具")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(255)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Result)
                    .HasColumnName("result")
                    .HasColumnType("varchar(1000)")
                    .HasComment("三方返回数据")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("用户ID");

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

            modelBuilder.Entity<KxsMachineRatio>(entity =>
            {
                entity.ToTable("kxs_machine_ratio");

                entity.HasComment("客小爽费率调整记录表");

                entity.HasIndex(e => new { e.MachineId, e.MerchantId })
                    .HasName("query");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.BeforeRatio)
                    .HasColumnName("before_ratio")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("调前费率");

                entity.Property(e => e.BrandId)
                    .HasColumnName("brand_id")
                    .HasComment("品牌");

                entity.Property(e => e.CreateBy)
                    .HasColumnName("create_by")
                    .HasColumnType("varchar(32)")
                    .HasComment("操作人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.MachineId)
                    .HasColumnName("machine_id")
                    .HasComment("机具ID");

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

                entity.Property(e => e.PosSn)
                    .HasColumnName("pos_sn")
                    .HasColumnType("varchar(64)")
                    .HasComment("机具ID")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.PosUserId)
                    .HasColumnName("pos_user_id")
                    .HasComment("机具所属人用户ID");

                entity.Property(e => e.Ratio)
                    .HasColumnName("ratio")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("调整费率");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(255)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Result)
                    .HasColumnName("result")
                    .HasColumnType("varchar(2000)")
                    .HasComment("三方返回数据")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasDefaultValueSql("'1'")
                    .HasComment("状态 -1 调整失败 0审核中 1设置成功");

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

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("用户ID");

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

            modelBuilder.Entity<KxsMachineTrack>(entity =>
            {
                entity.ToTable("kxs_machine_track");

                entity.HasComment("客小爽机具轨迹记录表");

                entity.HasIndex(e => e.PosSn)
                    .HasName("pos_sn");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.AfterUserId)
                    .HasColumnName("after_user_id")
                    .HasComment("变动后用户ID");

                entity.Property(e => e.AfterWhsId)
                    .HasColumnName("after_whs_id")
                    .HasComment("操作后仓库");

                entity.Property(e => e.BeforeUserId)
                    .HasColumnName("before_user_id")
                    .HasComment("变动前所属用户ID");

                entity.Property(e => e.BeforeWhsId)
                    .HasColumnName("before_whs_id")
                    .HasComment("操作前仓库");

                entity.Property(e => e.BrandId)
                    .HasColumnName("brand_id")
                    .HasComment("品牌ID");

                entity.Property(e => e.ChangeType)
                    .HasColumnName("change_type")
                    .HasComment("变动方向 0出库 1入库");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.MachineId)
                    .HasColumnName("machine_id")
                    .HasComment("机具ID");

                entity.Property(e => e.PartnerId)
                    .HasColumnName("partner_id")
                    .HasComment("合伙人ID");

                entity.Property(e => e.PosSn)
                    .HasColumnName("pos_sn")
                    .HasColumnType("varchar(64)")
                    .HasComment("机具号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(255)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.TrackType)
                    .HasColumnName("track_type")
                    .HasComment("轨迹类型 0 采购 1 调拨 2 出货 3 退货 4 驳回 5 回仓退款 6 换机出库 7 换机入库");

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

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

            modelBuilder.Entity<KxsMachineTransfer>(entity =>
            {
                entity.ToTable("kxs_machine_transfer");

                entity.HasComment("客小爽机具划拨记录表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.BrandId)
                    .HasColumnName("brand_id")
                    .HasComment("品牌ID");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.MachineId)
                    .HasColumnName("machine_id")
                    .HasComment("机具ID");

                entity.Property(e => e.MachineSn)
                    .HasColumnName("machine_sn")
                    .HasColumnType("varchar(32)")
                    .HasComment("机具号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.MachineType)
                    .HasColumnName("machine_type")
                    .HasComment("机具类型 0兑换机 1循环机");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(255)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.SendUserId)
                    .HasColumnName("send_user_id")
                    .HasComment("拨出用户ID");

                entity.Property(e => e.ToUserCode)
                    .HasColumnName("to_user_code")
                    .HasColumnType("varchar(12)")
                    .HasComment("拨入用户code")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ToUserId)
                    .HasColumnName("to_user_id")
                    .HasComment("拨入用户ID");

                entity.Property(e => e.ToUserName)
                    .HasColumnName("to_user_name")
                    .HasColumnType("varchar(32)")
                    .HasComment("拨入用户姓名")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.TransferType)
                    .HasColumnName("transfer_type")
                    .HasComment("划拨类型 0未绑定划拨");

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

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

            modelBuilder.Entity<KxsMachineUnbind>(entity =>
            {
                entity.ToTable("kxs_machine_unbind");

                entity.HasComment("机具解绑记录表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.ApplyNo)
                    .HasColumnName("apply_no")
                    .HasColumnType("varchar(64)")
                    .HasComment("订单号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.BrandId)
                    .HasColumnName("brand_id")
                    .HasComment("品牌");

                entity.Property(e => e.CreateBy)
                    .HasColumnName("create_by")
                    .HasColumnType("varchar(64)")
                    .HasComment("操作人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasColumnType("varchar(1)")
                    .HasDefaultValueSql("'0'")
                    .HasComment("删除标记，0未删除，1已删除")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.MchId)
                    .HasColumnName("mch_id")
                    .HasComment("商户ID");

                entity.Property(e => e.PosSn)
                    .HasColumnName("pos_sn")
                    .HasColumnType("varchar(64)")
                    .HasComment("机具号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(255)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("用户ID");

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

            modelBuilder.Entity<KxsMerchant>(entity =>
            {
                entity.ToTable("kxs_merchant");

                entity.HasComment("客小爽商户表");

                entity.HasIndex(e => e.BrandId)
                    .HasName("query");

                entity.HasIndex(e => e.MachineId)
                    .HasName("machineId");

                entity.HasIndex(e => e.MerchantName)
                    .HasName("mch_name");

                entity.HasIndex(e => e.MerchantNo)
                    .HasName("mch_no");

                entity.HasIndex(e => e.UserId)
                    .HasName("userId");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.Address)
                    .HasColumnName("address")
                    .HasColumnType("varchar(128)")
                    .HasComment("商户地址")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.BrandId)
                    .HasColumnName("brand_id")
                    .HasComment("品牌ID");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.IsMaker)
                    .HasColumnName("is_maker")
                    .HasComment("是否商户型创客 0否 1是");

                entity.Property(e => e.MachineId)
                    .HasColumnName("machine_id")
                    .HasComment("机具ID");

                entity.Property(e => e.MakerUserId)
                    .HasColumnName("maker_user_id")
                    .HasComment("商户型创客的用户ID");

                entity.Property(e => e.MerchantCard)
                    .HasColumnName("merchant_card")
                    .HasColumnType("varchar(50)")
                    .HasComment("身份证号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.MerchantName)
                    .HasColumnName("merchant_name")
                    .HasColumnType("varchar(64)")
                    .HasComment("商户名称")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.MerchantNo)
                    .HasColumnName("merchant_no")
                    .HasColumnType("varchar(32)")
                    .HasComment("商户编号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.MerchantPhone)
                    .HasColumnName("merchant_phone")
                    .HasColumnType("varchar(18)")
                    .HasComment("商户电话")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(255)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.StandardMonths)
                    .HasColumnName("standard_months")
                    .HasComment("退押达标月数");

                entity.Property(e => e.StandardStatus)
                    .HasColumnName("standard_status")
                    .HasComment("退押达标状态 待处理=0 退还成功=1 退还失败=2 处理中=3 已达标=100 可退还=101");

                entity.Property(e => e.StandardTime)
                    .HasColumnName("standard_time")
                    .HasColumnType("datetime")
                    .HasComment("达标时间");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasDefaultValueSql("'1'")
                    .HasComment("商户状态 0关闭 1正常 2冻结");

                entity.Property(e => e.TotalAmt)
                    .HasColumnName("total_amt")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("总交易额");

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

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("所属创客ID");

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

            modelBuilder.Entity<KxsMerchantReturn>(entity =>
            {
                entity.ToTable("kxs_merchant_return");

                entity.HasComment("商户退押账户信息表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.AliAccount)
                    .HasColumnName("ali_account")
                    .HasColumnType("varchar(32)")
                    .HasComment("支付宝账户")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.BankName)
                    .HasColumnName("bank_name")
                    .HasColumnType("varchar(128)")
                    .HasComment("银行卡名称")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.BankNo)
                    .HasColumnName("bank_no")
                    .HasColumnType("varchar(64)")
                    .HasComment("银行卡号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateBy)
                    .HasColumnName("create_by")
                    .HasColumnType("varchar(64)")
                    .HasComment("操作人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasColumnType("varchar(1)")
                    .HasDefaultValueSql("'0'")
                    .HasComment("删除标记，0未删除，1已删除")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.MchId)
                    .HasColumnName("mch_id")
                    .HasComment("商户ID");

                entity.Property(e => e.OrderSn)
                    .HasColumnName("order_sn")
                    .HasColumnType("varchar(64)")
                    .HasComment("订单号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.PayKind)
                    .HasColumnName("pay_kind")
                    .HasComment("支付类型 0支付宝 1银行卡");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(2000)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ReturnAmt)
                    .HasColumnName("return_amt")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("退款金额");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasComment("退款状态 0未退 1成功 2失败");

                entity.Property(e => e.UpdateBy)
                    .HasColumnName("update_by")
                    .HasColumnType("varchar(64)")
                    .HasComment("操作人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("机具所属创客ID");

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

            modelBuilder.Entity<KxsMerchantTrade>(entity =>
            {
                entity.ToTable("kxs_merchant_trade");

                entity.HasComment("商户交易明细");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.BrandId)
                    .HasColumnName("brand_id")
                    .HasComment("品牌ID");

                entity.Property(e => e.CardType)
                    .HasColumnName("card_type")
                    .HasComment("卡类型 0-贷记卡 1-借记卡");

                entity.Property(e => e.CloudPayFlag)
                    .HasColumnName("cloud_pay_flag")
                    .HasComment("是否云闪付 0否 1是");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DebitTopFlag)
                    .HasColumnName("debit_top_flag")
                    .HasComment("借记卡封顶交易标志 0未封顶 1封顶");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasColumnType("varchar(1)")
                    .HasDefaultValueSql("'0'")
                    .HasComment("删除标记，0未删除，1已删除")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.LvKey)
                    .HasColumnName("lv_key")
                    .HasColumnType("varchar(16)")
                    .HasComment("商户活动类型 字典见对应的值")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.MchId)
                    .HasColumnName("mch_id")
                    .HasComment("商户ID");

                entity.Property(e => e.PosSn)
                    .HasColumnName("pos_sn")
                    .HasColumnType("varchar(64)")
                    .HasComment("机具号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.TradeNo)
                    .HasColumnName("trade_no")
                    .HasColumnType("varchar(64)")
                    .HasComment("交易流水号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.UserCode)
                    .HasColumnName("user_code")
                    .HasColumnType("varchar(16)")
                    .HasComment("用户编号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Username)
                    .HasColumnName("username")
                    .HasColumnType("varchar(32)")
                    .HasComment("用户姓名")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

            modelBuilder.Entity<KxsMerchantUser>(entity =>
            {
                entity.ToTable("kxs_merchant_user");

                entity.HasComment("商户退押用户实名表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.CreateBy)
                    .HasColumnName("create_by")
                    .HasColumnType("varchar(50)")
                    .HasComment("添加人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasColumnType("varchar(1)")
                    .HasDefaultValueSql("'0'")
                    .HasComment("删除标记，0未删除，1已删除")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.IdCard)
                    .HasColumnName("id_card")
                    .HasColumnType("varchar(32)")
                    .HasComment("身份证")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Phone)
                    .HasColumnName("phone")
                    .HasColumnType("varchar(16)")
                    .HasComment("手机号码")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasComment("0未实名 1已实名");

                entity.Property(e => e.UpdateBy)
                    .HasColumnName("update_by")
                    .HasColumnType("varchar(50)")
                    .HasComment("更新人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.Username)
                    .HasColumnName("username")
                    .HasColumnType("varchar(32)")
                    .HasComment("姓名")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

            modelBuilder.Entity<KxsShopCate>(entity =>
            {
                entity.ToTable("kxs_shop_cate");

                entity.HasComment("商城分类表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.ColId)
                    .HasColumnName("col_id")
                    .HasColumnType("varchar(30)")
                    .HasComment("分类编号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.IconUrl)
                    .HasColumnName("icon_url")
                    .HasColumnType("varchar(255)")
                    .HasComment("图标")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.IsShow)
                    .HasColumnName("is_show")
                    .HasComment("是否展示在商城 0否 1是");

                entity.Property(e => e.Level)
                    .HasColumnName("level")
                    .HasComment("分类层级");

                entity.Property(e => e.Name)
                    .HasColumnName("name")
                    .HasColumnType("varchar(64)")
                    .HasComment("分类名称")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Pid)
                    .HasColumnName("pid")
                    .HasComment("上级ID");

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

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasComment("状态 0禁用 1启用");

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

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

            modelBuilder.Entity<KxsShopGoods>(entity =>
            {
                entity.ToTable("kxs_shop_goods");

                entity.HasComment("商城商品表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.ColId)
                    .HasColumnName("col_id")
                    .HasColumnType("varchar(255)")
                    .HasComment("分类ID")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.Details)
                    .HasColumnName("details")
                    .HasColumnType("longtext")
                    .HasComment("详情")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.DownTime)
                    .HasColumnName("down_time")
                    .HasColumnType("datetime")
                    .HasComment("下架时间");

                entity.Property(e => e.GoodsName)
                    .HasColumnName("goods_name")
                    .HasColumnType("varchar(128)")
                    .HasComment("商品名称")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.GoodsType)
                    .HasColumnName("goods_type")
                    .HasComment("商品类型 0实物商品 1虚拟物品");

                entity.Property(e => e.LimitCount)
                    .HasColumnName("limit_count")
                    .HasComment("限购数量");

                entity.Property(e => e.PicUrl)
                    .HasColumnName("pic_url")
                    .HasColumnType("varchar(255)")
                    .HasComment("封面图")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Price)
                    .HasColumnName("price")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("价格");

                entity.Property(e => e.Sort)
                    .HasColumnName("sort")
                    .HasDefaultValueSql("'100'")
                    .HasComment("排序");

                entity.Property(e => e.SpecList)
                    .HasColumnName("spec_list")
                    .HasColumnType("varchar(2000)")
                    .HasComment("sku属性字段")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.StartByCount)
                    .HasColumnName("start_by_count")
                    .HasComment("起购数量");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasComment("状态 0下架 1上架");

                entity.Property(e => e.Subtitle)
                    .HasColumnName("subtitle")
                    .HasColumnType("varchar(255)")
                    .HasComment("子标题")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.UpTime)
                    .HasColumnName("up_time")
                    .HasColumnType("datetime")
                    .HasComment("上架时间");

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

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

            modelBuilder.Entity<KxsShopGoodsPic>(entity =>
            {
                entity.ToTable("kxs_shop_goods_pic");

                entity.HasComment("商城商品图片表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.GoodsId)
                    .HasColumnName("goods_id")
                    .HasComment("商品ID");

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

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

                entity.Property(e => e.Url)
                    .HasColumnName("url")
                    .HasColumnType("varchar(255)")
                    .HasComment("图片地址")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

            modelBuilder.Entity<KxsShopGoodsSku>(entity =>
            {
                entity.ToTable("kxs_shop_goods_sku");

                entity.HasComment("商城商品SKU表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.GoodId)
                    .HasColumnName("good_id")
                    .HasComment("商品ID");

                entity.Property(e => e.Image)
                    .HasColumnName("image")
                    .HasColumnType("varchar(255)")
                    .HasComment("sku图片")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.LimitCount)
                    .HasColumnName("limit_count")
                    .HasComment("限购数量");

                entity.Property(e => e.Price)
                    .HasColumnName("price")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("售价");

                entity.Property(e => e.Sales)
                    .HasColumnName("sales")
                    .HasComment("销量");

                entity.Property(e => e.Specifications)
                    .HasColumnName("specifications")
                    .HasColumnType("varchar(1023)")
                    .HasComment("商品规格值列表，采用JSON数组格式")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.StartByCount)
                    .HasColumnName("start_by_count")
                    .HasComment("起购数量");

                entity.Property(e => e.StockNum)
                    .HasColumnName("stock_num")
                    .HasComment("库存数量");

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

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

            modelBuilder.Entity<KxsShopGoodsSpec>(entity =>
            {
                entity.ToTable("kxs_shop_goods_spec");

                entity.HasComment("商城商品SKU记录表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.GoodsId)
                    .HasColumnName("goods_id")
                    .HasComment("商品ID");

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

                entity.Property(e => e.Specifications)
                    .HasColumnName("specifications")
                    .HasColumnType("varchar(255)")
                    .HasComment("商品规格名称")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.Value)
                    .HasColumnName("value")
                    .HasColumnType("varchar(255)")
                    .HasComment("商品规格值")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

            modelBuilder.Entity<KxsShopOrder>(entity =>
            {
                entity.ToTable("kxs_shop_order");

                entity.HasComment("商城订单表");

                entity.HasIndex(e => new { e.Status, e.UserId })
                    .HasName("query");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.Address)
                    .HasColumnName("address")
                    .HasColumnType("varchar(128)")
                    .HasComment("收货地址")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Consignee)
                    .HasColumnName("consignee")
                    .HasColumnType("varchar(32)")
                    .HasComment("收货人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.ErpName)
                    .HasColumnName("erp_name")
                    .HasColumnType("varchar(64)")
                    .HasComment("快递公司")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ErpSn)
                    .HasColumnName("erp_sn")
                    .HasColumnType("varchar(32)")
                    .HasComment("快递单号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.GetMode)
                    .HasColumnName("get_mode")
                    .HasComment("提货方式 0自提 1邮寄");

                entity.Property(e => e.OrderSn)
                    .HasColumnName("order_sn")
                    .HasColumnType("varchar(32)")
                    .HasComment("订单号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.OrderType)
                    .HasColumnName("order_type")
                    .HasComment("订单类型 0商城订单 1分仓额度 2小分仓额度 3小盟主订单 4大盟主订单");

                entity.Property(e => e.PayPrice)
                    .HasColumnName("pay_price")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("支付金额");

                entity.Property(e => e.PayTime)
                    .HasColumnName("pay_time")
                    .HasColumnType("datetime")
                    .HasComment("支付时间");

                entity.Property(e => e.PayType)
                    .HasColumnName("pay_type")
                    .HasComment("支付渠道 0余额 1支付宝 2微信 3盟主储蓄金");

                entity.Property(e => e.Phone)
                    .HasColumnName("phone")
                    .HasColumnType("varchar(18)")
                    .HasComment("收货电话")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(255)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb4")
                    .HasCollation("utf8mb4_0900_ai_ci");

                entity.Property(e => e.ReturnPrice)
                    .HasColumnName("return_price")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("退款金额");

                entity.Property(e => e.ReturnReason)
                    .HasColumnName("return_reason")
                    .HasColumnType("varchar(255)")
                    .HasComment("退货原因")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ReturnStatus)
                    .HasColumnName("return_status")
                    .HasComment("退款状态 0未申请 1已申请 2申请通过 3申请驳回");

                entity.Property(e => e.ReturnTime)
                    .HasColumnName("return_time")
                    .HasColumnType("datetime")
                    .HasComment("申请退款时间");

                entity.Property(e => e.SendTime)
                    .HasColumnName("send_time")
                    .HasColumnType("datetime")
                    .HasComment("发货时间");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasComment("状态 0未支付 1已支付 2已发货 3已完成 4已取消");

                entity.Property(e => e.TopUserId)
                    .HasColumnName("top_user_id")
                    .HasComment("顶级创客ID");

                entity.Property(e => e.TotalPrice)
                    .HasColumnName("total_price")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("订单金额");

                entity.Property(e => e.TradeNo)
                    .HasColumnName("trade_no")
                    .HasColumnType("varchar(64)")
                    .HasComment("交易流水号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.UpdateBy)
                    .HasColumnName("update_by")
                    .HasColumnType("varchar(64)")
                    .HasComment("操作人")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("用户ID");

                entity.Property(e => e.Version)
                    .HasColumnName("version")
                    .HasComment("版本");

                entity.Property(e => e.WarehouseId)
                    .HasColumnName("warehouse_id")
                    .HasComment("自提仓库ID");
            });

            modelBuilder.Entity<KxsShopOrderInfo>(entity =>
            {
                entity.ToTable("kxs_shop_order_info");

                entity.HasComment("商城订单详情表");

                entity.HasIndex(e => e.OrderId)
                    .HasName("query");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.GoodsId)
                    .HasColumnName("goods_id")
                    .HasComment("商品ID");

                entity.Property(e => e.GoodsName)
                    .HasColumnName("goods_name")
                    .HasColumnType("varchar(128)")
                    .HasComment("商品名称")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.GoodsPrice)
                    .HasColumnName("goods_price")
                    .HasColumnType("decimal(18,2)")
                    .HasComment("商品单价");

                entity.Property(e => e.Number)
                    .HasColumnName("number")
                    .HasComment("商品数量");

                entity.Property(e => e.OrderId)
                    .HasColumnName("order_id")
                    .HasComment("订单ID");

                entity.Property(e => e.PicUrl)
                    .HasColumnName("pic_url")
                    .HasColumnType("varchar(255)")
                    .HasComment("封面图")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.SkuId)
                    .HasColumnName("sku_id")
                    .HasComment("商品skuId");

                entity.Property(e => e.Specifications)
                    .HasColumnName("specifications")
                    .HasColumnType("varchar(1023)")
                    .HasComment("商品货品的规格列表")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

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

            modelBuilder.Entity<KxsTicket>(entity =>
            {
                entity.ToTable("kxs_ticket");

                entity.HasComment("客小爽券码表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.LeaderId)
                    .HasColumnName("leader_id")
                    .HasComment("盟主用户ID");

                entity.Property(e => e.OrderId)
                    .HasColumnName("order_id")
                    .HasComment("购买订单ID");

                entity.Property(e => e.PartnerId)
                    .HasColumnName("partner_id")
                    .HasComment("合伙人用户ID");

                entity.Property(e => e.Status)
                    .HasColumnName("status")
                    .HasComment("状态 0未使用 1已使用 2已申请冻结");

                entity.Property(e => e.TicketAllotPath)
                    .HasColumnName("ticket_allot_path")
                    .HasColumnType("varchar(255)")
                    .HasComment("机具卷轨迹记录")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.TicketCode)
                    .HasColumnName("ticket_code")
                    .HasColumnType("varchar(32)")
                    .HasComment("券码")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.TicketType)
                    .HasColumnName("ticket_type")
                    .HasComment("券码类型 0电签 1大pos");

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

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("用户ID");

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

            modelBuilder.Entity<KxsTicketTransfer>(entity =>
            {
                entity.ToTable("kxs_ticket_transfer");

                entity.HasComment("客小爽券码划拨记录表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.OrderSn)
                    .HasColumnName("order_sn")
                    .HasColumnType("varchar(64)")
                    .HasComment("订单号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(255)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.SendUserCode)
                    .HasColumnName("send_user_code")
                    .HasColumnType("varchar(32)")
                    .HasComment("拨出用户编码")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.SendUserId)
                    .HasColumnName("send_user_id")
                    .HasComment("拨出用户ID");

                entity.Property(e => e.SendUserName)
                    .HasColumnName("send_user_name")
                    .HasColumnType("varchar(32)")
                    .HasComment("拨出用户姓名")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.TicketType)
                    .HasColumnName("ticket_type")
                    .HasComment("券码类型 0电签 1大pos");

                entity.Property(e => e.ToUserCode)
                    .HasColumnName("to_user_code")
                    .HasColumnType("varchar(32)")
                    .HasComment("拨入用户编码")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.ToUserId)
                    .HasColumnName("to_user_id")
                    .HasComment("拨入用户ID");

                entity.Property(e => e.ToUserName)
                    .HasColumnName("to_user_name")
                    .HasColumnType("varchar(32)")
                    .HasComment("拨入用户姓名")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.TransferNum)
                    .HasColumnName("transfer_num")
                    .HasComment("数量");

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

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

            modelBuilder.Entity<KxsTicketTransferInfo>(entity =>
            {
                entity.ToTable("kxs_ticket_transfer_info");

                entity.HasComment("客小爽券码划拨记录明细表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasComment("删除标记，0未删除，1已删除");

                entity.Property(e => e.OrderSn)
                    .HasColumnName("order_sn")
                    .HasColumnType("varchar(50)")
                    .HasComment("划拨订单号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.TicketCode)
                    .HasColumnName("ticket_code")
                    .HasColumnType("varchar(50)")
                    .HasComment("券码")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.TicketId)
                    .HasColumnName("ticket_id")
                    .HasComment("券码ID");

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

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

            modelBuilder.Entity<KxsTicketUpgrade>(entity =>
            {
                entity.ToTable("kxs_ticket_upgrade");

                entity.HasComment("券码升级记录表");

                entity.Property(e => e.Id)
                    .HasColumnName("id")
                    .HasComment("主键ID");

                entity.Property(e => e.CreateTime)
                    .HasColumnName("create_time")
                    .HasColumnType("datetime")
                    .HasComment("新增时间");

                entity.Property(e => e.DelFlag)
                    .HasColumnName("del_flag")
                    .HasColumnType("varchar(1)")
                    .HasDefaultValueSql("'0'")
                    .HasComment("删除标记，0未删除，1已删除")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.Remark)
                    .HasColumnName("remark")
                    .HasColumnType("varchar(255)")
                    .HasComment("备注")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.SourceCount)
                    .HasColumnName("source_count")
                    .HasComment("升级前电签券数量");

                entity.Property(e => e.SourceTickets)
                    .HasColumnName("source_tickets")
                    .HasColumnType("varchar(2056)")
                    .HasComment("升级前的电签券")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.UpCount)
                    .HasColumnName("up_count")
                    .HasComment("升级数量");

                entity.Property(e => e.UpTickets)
                    .HasColumnName("up_tickets")
                    .HasColumnType("varchar(1000)")
                    .HasComment("升级后的券 逗号隔开")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

                entity.Property(e => e.UserCode)
                    .HasColumnName("user_code")
                    .HasColumnType("varchar(32)")
                    .HasComment("创客编号")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

                entity.Property(e => e.UserId)
                    .HasColumnName("user_id")
                    .HasComment("用户ID");

                entity.Property(e => e.Username)
                    .HasColumnName("username")
                    .HasColumnType("varchar(64)")
                    .HasComment("创客姓名")
                    .HasCharSet("utf8mb3")
                    .HasCollation("utf8mb3_general_ci");

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

            modelBuilder.Entity<UndoLog>(entity =>
            {
                entity.HasNoKey();

                entity.ToTable("undo_log");

                entity.HasComment("AT transaction mode undo table");

                entity.HasIndex(e => e.LogCreated)
                    .HasName("ix_log_created");

                entity.HasIndex(e => new { e.Xid, e.BranchId })
                    .HasName("ux_undo_log")
                    .IsUnique();

                entity.Property(e => e.BranchId)
                    .HasColumnName("branch_id")
                    .HasComment("branch transaction id");

                entity.Property(e => e.Context)
                    .IsRequired()
                    .HasColumnName("context")
                    .HasColumnType("varchar(128)")
                    .HasComment("undo_log context,such as serialization")
                    .HasCharSet("utf8mb4")
                    .HasCollation("utf8mb4_0900_ai_ci");

                entity.Property(e => e.LogCreated)
                    .HasColumnName("log_created")
                    .HasComment("create datetime");

                entity.Property(e => e.LogModified)
                    .HasColumnName("log_modified")
                    .HasComment("modify datetime");

                entity.Property(e => e.LogStatus)
                    .HasColumnName("log_status")
                    .HasComment("0:normal status,1:defense status");

                entity.Property(e => e.RollbackInfo)
                    .IsRequired()
                    .HasColumnName("rollback_info")
                    .HasComment("rollback info");

                entity.Property(e => e.Xid)
                    .IsRequired()
                    .HasColumnName("xid")
                    .HasColumnType("varchar(128)")
                    .HasComment("global transaction id")
                    .HasCharSet("utf8mb4")
                    .HasCollation("utf8mb4_0900_ai_ci");
            });

            OnModelCreatingPartial(modelBuilder);
        }

        partial void OnModelCreatingPartial(ModelBuilder modelBuilder);
    }
}
