// <auto-generated />
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using RB_MES_API.Context;

#nullable disable

namespace RB_MES_APICore.Migrations
{
    [DbContext(typeof(RBContext))]
    [Migration("20220906123111_appinfo")]
    partial class appinfo
    {
        protected override void BuildTargetModel(ModelBuilder modelBuilder)
        {
#pragma warning disable 612, 618
            modelBuilder
                .HasAnnotation("ProductVersion", "6.0.8")
                .HasAnnotation("Relational:MaxIdentifierLength", 128);

            SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);

            modelBuilder.Entity("RB_MES_API.Models.APIGrou", b =>
                {
                    b.Property<int>("FID")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("FID"), 1L, 1);

                    b.Property<string>("FName")
                        .IsRequired()
                        .HasMaxLength(250)
                        .HasColumnType("nvarchar(250)");

                    b.Property<string>("FTokenUrl")
                        .IsRequired()
                        .HasMaxLength(2000)
                        .HasColumnType("nvarchar(2000)");

                    b.Property<string>("FVersion")
                        .IsRequired()
                        .HasMaxLength(250)
                        .HasColumnType("nvarchar(250)");

                    b.HasKey("FID");

                    b.ToTable("APIGrou");
                });

            modelBuilder.Entity("RB_MES_API.Models.BillConvert", b =>
                {
                    b.Property<int>("FID")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("FID"), 1L, 1);

                    b.Property<string>("FK3FiledName")
                        .IsRequired()
                        .HasMaxLength(100)
                        .HasColumnType("nvarchar(100)");

                    b.Property<bool>("FNeedInput")
                        .HasColumnType("bit");

                    b.Property<int>("FPageID")
                        .HasColumnType("int");

                    b.Property<int>("FReceiveID")
                        .HasColumnType("int");

                    b.Property<string>("FSourceName")
                        .IsRequired()
                        .HasMaxLength(100)
                        .HasColumnType("nvarchar(100)");

                    b.HasKey("FID");

                    b.HasIndex("FReceiveID", "FPageID", "FK3FiledName")
                        .IsUnique();

                    b.ToTable("r_BillConvertes", (string)null);
                });

            modelBuilder.Entity("RB_MES_API.Models.Cloud.CloudBillQuery", b =>
                {
                    b.Property<int>("FID")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("FID"), 1L, 1);

                    b.Property<string>("FFieldKeys")
                        .IsRequired()
                        .HasColumnType("nvarchar(max)");

                    b.Property<string>("FFiledString")
                        .IsRequired()
                        .HasColumnType("nvarchar(max)");

                    b.Property<int>("FFormIDTypeID")
                        .HasMaxLength(80)
                        .HasColumnType("int");

                    b.Property<string>("FKDBillName")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.Property<int>("FLimit")
                        .HasColumnType("int");

                    b.Property<string>("FOrderString")
                        .IsRequired()
                        .HasColumnType("nvarchar(max)");

                    b.Property<string>("FRBBillName")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.Property<int>("FStartRow")
                        .HasColumnType("int");

                    b.Property<string>("FSubSystemID")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.Property<int>("FTopRowCount")
                        .HasColumnType("int");

                    b.HasKey("FID");

                    b.HasIndex("FFormIDTypeID")
                        .IsUnique();

                    b.ToTable("r_CloudBillQuery", (string)null);
                });

            modelBuilder.Entity("RB_MES_API.Models.FormIDType", b =>
                {
                    b.Property<int>("FID")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("FID"), 1L, 1);

                    b.Property<string>("FActionName")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.Property<string>("FDBName")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.Property<string>("FDescription")
                        .IsRequired()
                        .HasMaxLength(255)
                        .HasColumnType("nvarchar(255)");

                    b.Property<string>("FDocType")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.Property<int>("FFunctionID")
                        .HasColumnType("int");

                    b.Property<bool>("FIsHostService")
                        .HasColumnType("bit");

                    b.Property<bool>("FUsing")
                        .HasColumnType("bit");

                    b.HasKey("FID");

                    b.HasIndex("FFunctionID", "FDocType");

                    b.ToTable("r_FormIDType", (string)null);
                });

            modelBuilder.Entity("RB_MES_API.Models.FunctionList", b =>
                {
                    b.Property<int>("FID")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("FID"), 1L, 1);

                    b.Property<string>("FDescription")
                        .IsRequired()
                        .HasMaxLength(255)
                        .HasColumnType("nvarchar(255)");

                    b.Property<string>("FFunctionName")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.Property<int>("FGoupID")
                        .HasColumnType("int");

                    b.Property<int>("FInterfaceType")
                        .HasColumnType("int");

                    b.Property<bool>("FIsDetail")
                        .HasColumnType("bit");

                    b.Property<string>("FUrl")
                        .IsRequired()
                        .HasMaxLength(255)
                        .HasColumnType("nvarchar(255)");

                    b.Property<bool>("FUsing")
                        .HasColumnType("bit");

                    b.HasKey("FID");

                    b.HasIndex("FGoupID");

                    b.ToTable("r_FunctionList", (string)null);
                });

            modelBuilder.Entity("RB_MES_API.Models.JoinTb", b =>
                {
                    b.Property<int>("FID")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("FID"), 1L, 1);

                    b.Property<string>("FAsName")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("nvarchar(50)");

                    b.Property<string>("FCondition")
                        .IsRequired()
                        .HasMaxLength(2000)
                        .HasColumnType("nvarchar(2000)");

                    b.Property<int>("FCtlID")
                        .HasColumnType("int");

                    b.Property<string>("FJoinSymbol")
                        .IsRequired()
                        .HasMaxLength(20)
                        .HasColumnType("nvarchar(20)");

                    b.Property<string>("FJoinType")
                        .IsRequired()
                        .HasMaxLength(20)
                        .HasColumnType("nvarchar(20)");

                    b.Property<int>("FSID")
                        .HasColumnType("int");

                    b.Property<string>("FTbName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("nvarchar(200)");

                    b.HasKey("FID");

                    b.HasIndex("FSID", "FCtlID")
                        .IsUnique();

                    b.ToTable("r_JoinTb", (string)null);
                });

            modelBuilder.Entity("RB_MES_API.Models.K3DefaultColVal", b =>
                {
                    b.Property<int>("FID")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("FID"), 1L, 1);

                    b.Property<string>("FDescribe")
                        .HasColumnType("nvarchar(max)");

                    b.Property<int>("FPageID")
                        .HasColumnType("int");

                    b.Property<int>("FReceiveID")
                        .HasColumnType("int");

                    b.Property<string>("FSqlType")
                        .IsRequired()
                        .HasMaxLength(100)
                        .HasColumnType("nvarchar(100)");

                    b.Property<string>("FVal")
                        .IsRequired()
                        .HasMaxLength(100)
                        .HasColumnType("nvarchar(100)");

                    b.Property<string>("K3FiledName")
                        .IsRequired()
                        .HasMaxLength(100)
                        .HasColumnType("nvarchar(100)");

                    b.HasKey("FID");

                    b.HasIndex("FReceiveID", "FPageID", "K3FiledName")
                        .IsUnique();

                    b.ToTable("r_K3DefaultColVals", (string)null);
                });

            modelBuilder.Entity("RB_MES_API.Models.MesRequestStatu", b =>
                {
                    b.Property<string>("FID")
                        .HasMaxLength(50)
                        .HasColumnType("nvarchar(50)");

                    b.Property<int>("FERPBillType")
                        .HasColumnType("int");

                    b.Property<int>("FERPBillID")
                        .HasColumnType("int");

                    b.Property<int>("FERPBillEntryID")
                        .HasColumnType("int");

                    b.Property<string>("FIMSDocType")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.Property<string>("FRequestKey")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.Property<int>("FStatus")
                        .HasColumnType("int");

                    b.HasKey("FID", "FERPBillType", "FERPBillID", "FERPBillEntryID");

                    b.ToTable("r_MesRequestStatus", (string)null);
                });

            modelBuilder.Entity("RB_MES_API.Models.RBLog", b =>
                {
                    b.Property<int>("FID")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("FID"), 1L, 1);

                    b.Property<DateTime>("FDateTime")
                        .HasColumnType("datetime2");

                    b.Property<string>("FDocType")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.Property<int>("FFunctionID")
                        .HasColumnType("int");

                    b.Property<string>("FMess")
                        .IsRequired()
                        .HasMaxLength(255)
                        .HasColumnType("nvarchar(255)");

                    b.Property<string>("FSource")
                        .IsRequired()
                        .HasColumnType("xml");

                    b.Property<bool>("FStatus")
                        .HasColumnType("bit");

                    b.HasKey("FID");

                    b.HasIndex("FDateTime", "FDocType");

                    b.ToTable("RBLog", (string)null);
                });

            modelBuilder.Entity("RB_MES_API.Models.ReceiveStockBillType", b =>
                {
                    b.Property<int>("FID")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("FID"), 1L, 1);

                    b.Property<string>("ErpBillName")
                        .IsRequired()
                        .HasMaxLength(100)
                        .HasColumnType("nvarchar(100)");

                    b.Property<string>("ErpBillTypeID")
                        .IsRequired()
                        .HasColumnType("nvarchar(450)");

                    b.Property<int>("FDefaultDepid")
                        .HasColumnType("int");

                    b.Property<int>("FDefaultUserid")
                        .HasColumnType("int");

                    b.Property<string>("FEntryTbName")
                        .IsRequired()
                        .HasMaxLength(100)
                        .HasColumnType("nvarchar(100)");

                    b.Property<int>("FFunctionID")
                        .HasColumnType("int");

                    b.Property<string>("FHeadTbName")
                        .IsRequired()
                        .HasMaxLength(100)
                        .HasColumnType("nvarchar(100)");

                    b.Property<bool>("FROB")
                        .HasColumnType("bit");

                    b.Property<int>("FStatus")
                        .HasColumnType("int");

                    b.HasKey("FID");

                    b.HasIndex("FFunctionID", "ErpBillTypeID")
                        .IsUnique();

                    b.ToTable("r_ReceiveStockBillTypes", (string)null);
                });

            modelBuilder.Entity("RB_MES_API.Models.SCol", b =>
                {
                    b.Property<int>("FID")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("FID"), 1L, 1);

                    b.Property<string>("FAsName")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("nvarchar(50)");

                    b.Property<string>("FAsTable")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("nvarchar(50)");

                    b.Property<string>("FColName")
                        .IsRequired()
                        .HasMaxLength(50)
                        .HasColumnType("nvarchar(50)");

                    b.Property<int>("FCtlID")
                        .HasColumnType("int");

                    b.Property<string>("FDeaful")
                        .IsRequired()
                        .HasMaxLength(2000)
                        .HasColumnType("nvarchar(2000)");

                    b.Property<int>("FSID")
                        .HasColumnType("int");

                    b.HasKey("FID");

                    b.HasIndex("FSID", "FAsName")
                        .IsUnique();

                    b.HasIndex("FSID", "FCtlID")
                        .IsUnique();

                    b.ToTable("r_SCol", (string)null);
                });

            modelBuilder.Entity("RB_MES_API.Models.SelectClumnConvert", b =>
                {
                    b.Property<int>("FID")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("FID"), 1L, 1);

                    b.Property<string>("FDesName")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.Property<string>("FDesTableName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("nvarchar(200)");

                    b.Property<int>("FFunctionID")
                        .HasColumnType("int");

                    b.Property<string>("FKDCaption")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.Property<string>("FSourceName")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.HasKey("FID");

                    b.HasIndex("FFunctionID");

                    b.ToTable("r_ClumnConvert", (string)null);
                });

            modelBuilder.Entity("RB_MES_API.Models.SelectJoinID", b =>
                {
                    b.Property<int>("FID")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("FID"), 1L, 1);

                    b.Property<string>("FDocType")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.Property<int>("FFunctionID")
                        .HasColumnType("int");

                    b.Property<string>("FOptcode")
                        .IsRequired()
                        .HasMaxLength(80)
                        .HasColumnType("nvarchar(80)");

                    b.HasKey("FID");

                    b.HasIndex("FDocType");

                    b.HasIndex("FFunctionID");

                    b.ToTable("r_SelectJoinID", (string)null);
                });

            modelBuilder.Entity("RB_MES_API.Models.SystemProfile", b =>
                {
                    b.Property<int>("FCategoryID")
                        .HasColumnType("int");

                    b.Property<string>("FKey")
                        .HasColumnType("nvarchar(450)");

                    b.Property<string>("FDescription")
                        .IsRequired()
                        .HasColumnType("nvarchar(max)");

                    b.Property<bool>("FDetail")
                        .HasColumnType("bit");

                    b.Property<int>("FFormatID")
                        .HasColumnType("int");

                    b.Property<int>("FID")
                        .HasColumnType("int");

                    b.Property<int>("FLevel")
                        .HasColumnType("int");

                    b.Property<string>("FName")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("nvarchar(200)");

                    b.Property<int>("FParentID")
                        .HasColumnType("int");

                    b.Property<bool>("FReadonly")
                        .HasColumnType("bit");

                    b.Property<string>("FValue")
                        .IsRequired()
                        .HasMaxLength(200)
                        .HasColumnType("nvarchar(200)");

                    b.HasKey("FCategoryID", "FKey");

                    b.ToTable("r_SystemProfiles", (string)null);
                });

            modelBuilder.Entity("RB_MES_API.Models.BillConvert", b =>
                {
                    b.HasOne("RB_MES_API.Models.ReceiveStockBillType", "StockBillType")
                        .WithMany()
                        .HasForeignKey("FReceiveID")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("StockBillType");
                });

            modelBuilder.Entity("RB_MES_API.Models.Cloud.CloudBillQuery", b =>
                {
                    b.HasOne("RB_MES_API.Models.FormIDType", "GetFormID")
                        .WithMany()
                        .HasForeignKey("FFormIDTypeID")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("GetFormID");
                });

            modelBuilder.Entity("RB_MES_API.Models.FormIDType", b =>
                {
                    b.HasOne("RB_MES_API.Models.FunctionList", "functions")
                        .WithMany()
                        .HasForeignKey("FFunctionID")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("functions");
                });

            modelBuilder.Entity("RB_MES_API.Models.FunctionList", b =>
                {
                    b.HasOne("RB_MES_API.Models.APIGrou", "apigroup")
                        .WithMany()
                        .HasForeignKey("FGoupID")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("apigroup");
                });

            modelBuilder.Entity("RB_MES_API.Models.JoinTb", b =>
                {
                    b.HasOne("RB_MES_API.Models.SelectJoinID", "selectjoins")
                        .WithMany()
                        .HasForeignKey("FSID")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("selectjoins");
                });

            modelBuilder.Entity("RB_MES_API.Models.K3DefaultColVal", b =>
                {
                    b.HasOne("RB_MES_API.Models.ReceiveStockBillType", "ReceiveType")
                        .WithMany()
                        .HasForeignKey("FReceiveID")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("ReceiveType");
                });

            modelBuilder.Entity("RB_MES_API.Models.ReceiveStockBillType", b =>
                {
                    b.HasOne("RB_MES_API.Models.FunctionList", "functions")
                        .WithMany()
                        .HasForeignKey("FFunctionID")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("functions");
                });

            modelBuilder.Entity("RB_MES_API.Models.SCol", b =>
                {
                    b.HasOne("RB_MES_API.Models.SelectJoinID", "selectjoins")
                        .WithMany()
                        .HasForeignKey("FSID")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("selectjoins");
                });

            modelBuilder.Entity("RB_MES_API.Models.SelectJoinID", b =>
                {
                    b.HasOne("RB_MES_API.Models.FunctionList", "functions")
                        .WithMany()
                        .HasForeignKey("FFunctionID")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("functions");
                });
#pragma warning restore 612, 618
        }
    }
}
