microting/eform-sdk-dotnet

View on GitHub
eFormCore/Migrations/20201130204234_FixingSplitScreen.Designer.cs

Summary

Maintainability
F
3 mos
Test Coverage
// <auto-generated />

using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Migrations;
using Microting.eForm.Infrastructure;

namespace Microting.eForm.Migrations
{
    [DbContext(typeof(MicrotingDbContext))]
    [Migration("20201130204234_FixingSplitScreen")]
    partial class FixingSplitScreen
    {
        protected override void BuildTargetModel(ModelBuilder modelBuilder)
        {
#pragma warning disable 612, 618
            modelBuilder
                .HasAnnotation("ProductVersion", "3.1.8")
                .HasAnnotation("Relational:MaxIdentifierLength", 64);

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.answer_value_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

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

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

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

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

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Value")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("AnswerValueId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.answer_values", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

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

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

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

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Value")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("AnswerId");

                    b.HasIndex("OptionId");

                    b.HasIndex("QuestionId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.answer_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

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

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

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<DateTime>("FinishedAt")
                        .HasColumnType("datetime(6)");

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

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

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

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

                    b.Property<int?>("SurveyConfigurationId")
                        .HasColumnType("int");

                    b.Property<string>("TimeZone")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("UnitId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<bool>("UtcAdjusted")
                        .HasColumnType("tinyint(1)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.answers", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

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

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<DateTime>("FinishedAt")
                        .HasColumnType("datetime(6)");

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

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

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

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

                    b.Property<int?>("SurveyConfigurationId")
                        .HasColumnType("int");

                    b.Property<string>("TimeZone")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("UnitId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<bool>("UtcAdjusted")
                        .HasColumnType("tinyint(1)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("LanguageId");

                    b.HasIndex("QuestionSetId");

                    b.HasIndex("SiteId");

                    b.HasIndex("SurveyConfigurationId");

                    b.HasIndex("UnitId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.case_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<int?>("CaseId")
                        .HasColumnType("int");

                    b.Property<string>("CaseUid")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("CheckListId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Custom")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("DoneAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("FieldValue1")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue10")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue2")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue3")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue4")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue5")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue6")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue7")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue8")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue9")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("FolderId")
                        .HasColumnType("int");

                    b.Property<int?>("MicrotingCheckUid")
                        .HasColumnType("int");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<int?>("SiteId")
                        .HasColumnType("int");

                    b.Property<int?>("Status")
                        .HasColumnType("int");

                    b.Property<string>("Type")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("UnitId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<int?>("WorkerId")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.cases", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<string>("CaseUid")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("CheckListId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Custom")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("DoneAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("FieldValue1")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue10")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue2")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue3")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue4")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue5")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue6")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue7")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue8")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("FieldValue9")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("FolderId")
                        .HasColumnType("int");

                    b.Property<int?>("MicrotingCheckUid")
                        .HasColumnType("int");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<int?>("SiteId")
                        .HasColumnType("int");

                    b.Property<int?>("Status")
                        .HasColumnType("int");

                    b.Property<string>("Type")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("UnitId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<int?>("WorkerId")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("CheckListId");

                    b.HasIndex("FolderId");

                    b.HasIndex("SiteId");

                    b.HasIndex("UnitId");

                    b.HasIndex("WorkerId");

                    b.HasIndex("MicrotingUid", "MicrotingCheckUid");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.check_list_site_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<int?>("CheckListId")
                        .HasColumnType("int");

                    b.Property<int?>("CheckListSiteId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("FolderId")
                        .HasColumnType("int");

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

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

                    b.Property<int?>("SiteId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.check_list_sites", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<int?>("CheckListId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("FolderId")
                        .HasColumnType("int");

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

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

                    b.Property<int?>("SiteId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("CheckListId");

                    b.HasIndex("FolderId");

                    b.HasIndex("SiteId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.check_list_value_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<int?>("CaseId")
                        .HasColumnType("int");

                    b.Property<int?>("CheckListDuplicateId")
                        .HasColumnType("int");

                    b.Property<int?>("CheckListId")
                        .HasColumnType("int");

                    b.Property<int?>("CheckListValueId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Status")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("UserId")
                        .HasColumnType("int");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.check_list_values", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<int?>("CaseId")
                        .HasColumnType("int");

                    b.Property<int?>("CheckListDuplicateId")
                        .HasColumnType("int");

                    b.Property<int?>("CheckListId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Status")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("UserId")
                        .HasColumnType("int");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.check_list_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<short?>("ApprovalEnabled")
                        .HasColumnType("smallint");

                    b.Property<string>("CaseType")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("CheckListId")
                        .HasColumnType("int");

                    b.Property<string>("Color")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Custom")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Description")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("DisplayIndex")
                        .HasColumnType("int");

                    b.Property<bool>("DocxExportEnabled")
                        .HasColumnType("tinyint(1)");

                    b.Property<short?>("DoneButtonEnabled")
                        .HasColumnType("smallint");

                    b.Property<short?>("DownloadEntities")
                        .HasColumnType("smallint");

                    b.Property<bool>("ExcelExportEnabled")
                        .HasColumnType("tinyint(1)");

                    b.Property<short?>("ExtraFieldsEnabled")
                        .HasColumnType("smallint");

                    b.Property<short?>("FastNavigation")
                        .HasColumnType("smallint");

                    b.Property<int?>("Field1")
                        .HasColumnType("int");

                    b.Property<int?>("Field10")
                        .HasColumnType("int");

                    b.Property<int?>("Field2")
                        .HasColumnType("int");

                    b.Property<int?>("Field3")
                        .HasColumnType("int");

                    b.Property<int?>("Field4")
                        .HasColumnType("int");

                    b.Property<int?>("Field5")
                        .HasColumnType("int");

                    b.Property<int?>("Field6")
                        .HasColumnType("int");

                    b.Property<int?>("Field7")
                        .HasColumnType("int");

                    b.Property<int?>("Field8")
                        .HasColumnType("int");

                    b.Property<int?>("Field9")
                        .HasColumnType("int");

                    b.Property<string>("FolderName")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<bool>("JasperExportEnabled")
                        .HasColumnType("tinyint(1)");

                    b.Property<string>("Label")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<short?>("ManualSync")
                        .HasColumnType("smallint");

                    b.Property<short?>("MultiApproval")
                        .HasColumnType("smallint");

                    b.Property<string>("OriginalId")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("ParentId")
                        .HasColumnType("int");

                    b.Property<short?>("QuickSyncEnabled")
                        .HasColumnType("smallint");

                    b.Property<int?>("Repeated")
                        .HasColumnType("int");

                    b.Property<short?>("ReviewEnabled")
                        .HasColumnType("smallint");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.check_lists", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<short?>("ApprovalEnabled")
                        .HasColumnType("smallint");

                    b.Property<string>("CaseType")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("Color")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Custom")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Description")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("DisplayIndex")
                        .HasColumnType("int");

                    b.Property<bool>("DocxExportEnabled")
                        .HasColumnType("tinyint(1)");

                    b.Property<short?>("DoneButtonEnabled")
                        .HasColumnType("smallint");

                    b.Property<short?>("DownloadEntities")
                        .HasColumnType("smallint");

                    b.Property<bool>("ExcelExportEnabled")
                        .HasColumnType("tinyint(1)");

                    b.Property<short?>("ExtraFieldsEnabled")
                        .HasColumnType("smallint");

                    b.Property<short?>("FastNavigation")
                        .HasColumnType("smallint");

                    b.Property<int?>("Field1")
                        .HasColumnType("int");

                    b.Property<int?>("Field10")
                        .HasColumnType("int");

                    b.Property<int?>("Field2")
                        .HasColumnType("int");

                    b.Property<int?>("Field3")
                        .HasColumnType("int");

                    b.Property<int?>("Field4")
                        .HasColumnType("int");

                    b.Property<int?>("Field5")
                        .HasColumnType("int");

                    b.Property<int?>("Field6")
                        .HasColumnType("int");

                    b.Property<int?>("Field7")
                        .HasColumnType("int");

                    b.Property<int?>("Field8")
                        .HasColumnType("int");

                    b.Property<int?>("Field9")
                        .HasColumnType("int");

                    b.Property<string>("FolderName")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<bool>("JasperExportEnabled")
                        .HasColumnType("tinyint(1)");

                    b.Property<string>("Label")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<short?>("ManualSync")
                        .HasColumnType("smallint");

                    b.Property<short?>("MultiApproval")
                        .HasColumnType("smallint");

                    b.Property<string>("OriginalId")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("ParentId")
                        .HasColumnType("int");

                    b.Property<short?>("QuickSyncEnabled")
                        .HasColumnType("smallint");

                    b.Property<int?>("Repeated")
                        .HasColumnType("int");

                    b.Property<short?>("ReviewEnabled")
                        .HasColumnType("smallint");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("ParentId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.entity_group_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Description")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

                    b.Property<string>("MicrotingUid")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Type")
                        .HasColumnType("varchar(50) CHARACTER SET utf8mb4")
                        .HasMaxLength(50);

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.entity_groups", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Description")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("MicrotingUid")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Type")
                        .HasColumnType("varchar(50) CHARACTER SET utf8mb4")
                        .HasMaxLength(50);

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.entity_item_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Description")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

                    b.Property<int?>("EntityGroupId")
                        .HasColumnType("int");

                    b.Property<string>("EntityItemUid")
                        .HasColumnType("varchar(50) CHARACTER SET utf8mb4")
                        .HasMaxLength(50);

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

                    b.Property<string>("MicrotingUid")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<short?>("Synced")
                        .HasColumnType("smallint");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.entity_items", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Description")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

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

                    b.Property<string>("EntityItemUid")
                        .HasColumnType("varchar(50) CHARACTER SET utf8mb4")
                        .HasMaxLength(50);

                    b.Property<string>("MicrotingUid")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<short?>("Synced")
                        .HasColumnType("smallint");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.field_types", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<string>("Description")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("FieldType")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.field_value_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<string>("Accuracy")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("Altitude")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("CaseId")
                        .HasColumnType("int");

                    b.Property<int?>("CheckListDuplicateId")
                        .HasColumnType("int");

                    b.Property<int?>("CheckListId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<DateTime?>("Date")
                        .HasColumnType("datetime(6)");

                    b.Property<DateTime?>("DoneAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("FieldId")
                        .HasColumnType("int");

                    b.Property<int?>("FieldValueId")
                        .HasColumnType("int");

                    b.Property<string>("Heading")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("Latitude")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("Longitude")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("UploadedDataId")
                        .HasColumnType("int");

                    b.Property<string>("Value")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<int?>("WorkerId")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.field_values", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<string>("Accuracy")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("Altitude")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("CaseId")
                        .HasColumnType("int");

                    b.Property<int?>("CheckListDuplicateId")
                        .HasColumnType("int");

                    b.Property<int?>("CheckListId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<DateTime?>("Date")
                        .HasColumnType("datetime(6)");

                    b.Property<DateTime?>("DoneAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("FieldId")
                        .HasColumnType("int");

                    b.Property<string>("Heading")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("Latitude")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("Longitude")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("UploadedDataId")
                        .HasColumnType("int");

                    b.Property<string>("Value")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<int?>("WorkerId")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("CheckListId");

                    b.HasIndex("FieldId");

                    b.HasIndex("UploadedDataId");

                    b.HasIndex("WorkerId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.field_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<short?>("BarcodeEnabled")
                        .HasColumnType("smallint");

                    b.Property<string>("BarcodeType")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("CheckListId")
                        .HasColumnType("int");

                    b.Property<string>("Color")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Custom")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("DecimalCount")
                        .HasColumnType("int");

                    b.Property<string>("DefaultValue")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Description")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("DisplayIndex")
                        .HasColumnType("int");

                    b.Property<short?>("Dummy")
                        .HasColumnType("smallint");

                    b.Property<int?>("EntityGroupId")
                        .HasColumnType("int");

                    b.Property<int?>("FieldId")
                        .HasColumnType("int");

                    b.Property<int?>("FieldTypeId")
                        .HasColumnType("int");

                    b.Property<short?>("GeolocationEnabled")
                        .HasColumnType("smallint");

                    b.Property<short?>("GeolocationForced")
                        .HasColumnType("smallint");

                    b.Property<short?>("GeolocationHidden")
                        .HasColumnType("smallint");

                    b.Property<short?>("IsNum")
                        .HasColumnType("smallint");

                    b.Property<string>("KeyValuePairList")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Label")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<short?>("Mandatory")
                        .HasColumnType("smallint");

                    b.Property<int?>("MaxLength")
                        .HasColumnType("int");

                    b.Property<string>("MaxValue")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("MinValue")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("Multi")
                        .HasColumnType("int");

                    b.Property<short?>("Optional")
                        .HasColumnType("smallint");

                    b.Property<string>("OriginalId")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("ParentFieldId")
                        .HasColumnType("int");

                    b.Property<string>("QueryType")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<short?>("ReadOnly")
                        .HasColumnType("smallint");

                    b.Property<short?>("Selected")
                        .HasColumnType("smallint");

                    b.Property<short?>("Split")
                        .HasColumnType("smallint");

                    b.Property<short?>("StopOnSave")
                        .HasColumnType("smallint");

                    b.Property<string>("UnitName")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.fields", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<short?>("BarcodeEnabled")
                        .HasColumnType("smallint");

                    b.Property<string>("BarcodeType")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("CheckListId")
                        .HasColumnType("int");

                    b.Property<string>("Color")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Custom")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("DecimalCount")
                        .HasColumnType("int");

                    b.Property<string>("DefaultValue")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Description")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("DisplayIndex")
                        .HasColumnType("int");

                    b.Property<short?>("Dummy")
                        .HasColumnType("smallint");

                    b.Property<int?>("EntityGroupId")
                        .HasColumnType("int");

                    b.Property<int?>("FieldTypeId")
                        .HasColumnType("int");

                    b.Property<short?>("GeolocationEnabled")
                        .HasColumnType("smallint");

                    b.Property<short?>("GeolocationForced")
                        .HasColumnType("smallint");

                    b.Property<short?>("GeolocationHidden")
                        .HasColumnType("smallint");

                    b.Property<short?>("IsNum")
                        .HasColumnType("smallint");

                    b.Property<string>("KeyValuePairList")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Label")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<short?>("Mandatory")
                        .HasColumnType("smallint");

                    b.Property<int?>("MaxLength")
                        .HasColumnType("int");

                    b.Property<string>("MaxValue")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("MinValue")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("Multi")
                        .HasColumnType("int");

                    b.Property<short?>("Optional")
                        .HasColumnType("smallint");

                    b.Property<string>("OriginalId")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("ParentFieldId")
                        .HasColumnType("int");

                    b.Property<string>("QueryType")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<short?>("ReadOnly")
                        .HasColumnType("smallint");

                    b.Property<short?>("Selected")
                        .HasColumnType("smallint");

                    b.Property<short?>("Split")
                        .HasColumnType("smallint");

                    b.Property<short?>("StopOnSave")
                        .HasColumnType("smallint");

                    b.Property<string>("UnitName")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("CheckListId");

                    b.HasIndex("FieldTypeId");

                    b.HasIndex("ParentFieldId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.folder_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Description")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("FolderId")
                        .HasColumnType("int");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("ParentId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.folders", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Description")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("ParentId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("ParentId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.language_question_set_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

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

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

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("LanguageQuestionSetId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.language_question_sets", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

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

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("LanguageId");

                    b.HasIndex("QuestionSetId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.language_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Description")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("LanguageId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.languages", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Description")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.log_exceptions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)");

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

                    b.Property<string>("Message")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Type")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.logs", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime>("CreatedAt")
                        .HasColumnType("datetime(6)");

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

                    b.Property<string>("Message")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Type")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.notification_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<string>("Activity")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Exception")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

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

                    b.Property<string>("NotificationUid")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("Stacktrace")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Transmission")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

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

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.notifications", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<string>("Activity")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Exception")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("NotificationUid")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("Stacktrace")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Transmission")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

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

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.option_translation_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

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

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.option_translations", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

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

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("LanguageId");

                    b.HasIndex("OptionId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.option_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

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

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

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

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<int?>("NextQuestionId")
                        .HasColumnType("int");

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

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

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

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

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

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("OptionId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.options", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

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

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

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

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<int?>("NextQuestionId")
                        .HasColumnType("int");

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

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

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

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

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("QuestionId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.question_set_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<bool>("HasChild")
                        .HasColumnType("tinyint(1)");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

                    b.Property<bool>("PossiblyDeployed")
                        .HasColumnType("tinyint(1)");

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

                    b.Property<bool>("Share")
                        .HasColumnType("tinyint(1)");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("QuestionSetId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.question_sets", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<bool>("HasChild")
                        .HasColumnType("tinyint(1)");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

                    b.Property<bool>("PosiblyDeployed")
                        .HasColumnType("tinyint(1)");

                    b.Property<bool>("Share")
                        .HasColumnType("tinyint(1)");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.question_translation_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

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

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("QuestionTranslationId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.question_translations", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

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

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("LanguageId");

                    b.HasIndex("QuestionId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.question_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<bool>("BackButtonEnabled")
                        .HasColumnType("tinyint(1)");

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

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("FontSize")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<bool>("Image")
                        .HasColumnType("tinyint(1)");

                    b.Property<string>("ImagePosition")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

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

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

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

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

                    b.Property<bool>("Prioritised")
                        .HasColumnType("tinyint(1)");

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

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

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

                    b.Property<string>("QuestionType")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

                    b.Property<string>("Type")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<bool>("ValidDisplay")
                        .HasColumnType("tinyint(1)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("QuestionId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.questions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<bool>("BackButtonEnabled")
                        .HasColumnType("tinyint(1)");

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

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("FontSize")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<bool>("Image")
                        .HasColumnType("tinyint(1)");

                    b.Property<string>("ImagePosition")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

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

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

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

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

                    b.Property<bool>("Prioritised")
                        .HasColumnType("tinyint(1)");

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

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

                    b.Property<string>("QuestionType")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

                    b.Property<string>("Type")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<bool>("ValidDisplay")
                        .HasColumnType("tinyint(1)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("QuestionSetId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.setting_versions", b =>
                {
                    b.Property<int>("Id")
                        .HasColumnType("int");

                    b.Property<string>("ChangedByName")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Name")
                        .IsRequired()
                        .HasColumnType("varchar(50) CHARACTER SET utf8mb4")
                        .HasMaxLength(50);

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Value")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.settings", b =>
                {
                    b.Property<int>("Id")
                        .HasColumnType("int");

                    b.Property<string>("ChangedByName")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Name")
                        .IsRequired()
                        .HasColumnType("varchar(50) CHARACTER SET utf8mb4")
                        .HasMaxLength(50);

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Value")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_group_site_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

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

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

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_group_sites", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

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

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("SiteGroupId");

                    b.HasIndex("SiteId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_group_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_groups", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("ParentId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("ParentId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_survey_configuration_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

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

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

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("SiteSurveyConfigurationId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_survey_configurations", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

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

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("SiteId");

                    b.HasIndex("SurveyConfigurationId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_tag_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("SiteId")
                        .HasColumnType("int");

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

                    b.Property<int?>("TagId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_tags", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("SiteId")
                        .HasColumnType("int");

                    b.Property<int?>("TagId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("SiteId");

                    b.HasIndex("TagId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Name")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("SiteId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_worker_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<int?>("SiteId")
                        .HasColumnType("int");

                    b.Property<int?>("SiteWorkerId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<int?>("WorkerId")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_workers", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<int?>("SiteId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<int?>("WorkerId")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("SiteId");

                    b.HasIndex("WorkerId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.sites", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Name")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.survey_configuration_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

                    b.Property<DateTime>("Start")
                        .HasColumnType("datetime(6)");

                    b.Property<DateTime>("Stop")
                        .HasColumnType("datetime(6)");

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

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

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("SurveyConfigurationId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.survey_configurations", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Name")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

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

                    b.Property<DateTime>("Start")
                        .HasColumnType("datetime(6)");

                    b.Property<DateTime>("Stop")
                        .HasColumnType("datetime(6)");

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

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("QuestionSetId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.tag_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Name")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("TagId")
                        .HasColumnType("int");

                    b.Property<int?>("TaggingsCount")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.tagging_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<int?>("CheckListId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("TagId")
                        .HasColumnType("int");

                    b.Property<int?>("TaggerId")
                        .HasColumnType("int");

                    b.Property<int?>("TaggingId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.taggings", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<int?>("CheckListId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("TagId")
                        .HasColumnType("int");

                    b.Property<int?>("TaggerId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

                    b.HasIndex("CheckListId");

                    b.HasIndex("TagId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.tags", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Name")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("TaggingsCount")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.unit_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("CustomerNo")
                        .HasColumnType("int");

                    b.Property<string>("InSightVersion")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("LastIp")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<bool>("LeftMenuEnabled")
                        .HasColumnType("tinyint(1)");

                    b.Property<string>("Manufacturer")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Model")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Note")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Os")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("OsVersion")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("OtpCode")
                        .HasColumnType("int");

                    b.Property<bool>("PushEnabled")
                        .HasColumnType("tinyint(1)");

                    b.Property<bool>("SeparateFetchSend")
                        .HasColumnType("tinyint(1)");

                    b.Property<string>("SerialNumber")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("SiteId")
                        .HasColumnType("int");

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

                    b.Property<bool>("SyncDelayEnabled")
                        .HasColumnType("tinyint(1)");

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

                    b.Property<bool>("SyncDialog")
                        .HasColumnType("tinyint(1)");

                    b.Property<int?>("UnitId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("eFormVersion")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.units", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("CustomerNo")
                        .HasColumnType("int");

                    b.Property<string>("InSightVersion")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("LastIp")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<bool>("LeftMenuEnabled")
                        .HasColumnType("tinyint(1)");

                    b.Property<string>("Manufacturer")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("MicrotingUid")
                        .HasColumnType("int");

                    b.Property<string>("Model")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Note")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("Os")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<string>("OsVersion")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("OtpCode")
                        .HasColumnType("int");

                    b.Property<bool>("PushEnabled")
                        .HasColumnType("tinyint(1)");

                    b.Property<bool>("SeparateFetchSend")
                        .HasColumnType("tinyint(1)");

                    b.Property<string>("SerialNumber")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.Property<int?>("SiteId")
                        .HasColumnType("int");

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

                    b.Property<bool>("SyncDelayEnabled")
                        .HasColumnType("tinyint(1)");

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

                    b.Property<bool>("SyncDialog")
                        .HasColumnType("tinyint(1)");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("eFormVersion")
                        .HasColumnType("longtext CHARACTER SET utf8mb4");

                    b.HasKey("Id");

                    b.HasIndex("SiteId");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.uploaded_data", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<string>("Checksum")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("CurrentFile")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<DateTime?>("ExpirationDate")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Extension")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("FileLocation")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("FileName")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<short?>("Local")
                        .HasColumnType("smallint");

                    b.Property<int?>("TranscriptionId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("UploaderId")
                        .HasColumnType("int");

                    b.Property<string>("UploaderType")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.uploaded_data_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<string>("Checksum")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("CurrentFile")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("DataUploadedId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("ExpirationDate")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Extension")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("FileLocation")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("FileName")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<short?>("Local")
                        .HasColumnType("smallint");

                    b.Property<int?>("TranscriptionId")
                        .HasColumnType("int");

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("UploaderId")
                        .HasColumnType("int");

                    b.Property<string>("UploaderType")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.worker_versions", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Email")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("FirstName")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("LastName")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<int?>("WorkerId")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.workers", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("int");

                    b.Property<DateTime?>("CreatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<string>("Email")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("FirstName")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.Property<string>("LastName")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

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

                    b.Property<DateTime?>("UpdatedAt")
                        .HasColumnType("datetime(6)");

                    b.Property<int?>("Version")
                        .HasColumnType("int");

                    b.Property<string>("WorkflowState")
                        .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
                        .HasMaxLength(255);

                    b.HasKey("Id");

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

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.answer_value_versions", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.answer_values", "AnswerValue")
                        .WithMany()
                        .HasForeignKey("AnswerValueId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.answer_values", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.answers", "Answer")
                        .WithMany()
                        .HasForeignKey("AnswerId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.options", "Option")
                        .WithMany()
                        .HasForeignKey("OptionId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.questions", "Question")
                        .WithMany()
                        .HasForeignKey("QuestionId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.answers", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.languages", "Language")
                        .WithMany()
                        .HasForeignKey("LanguageId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.question_sets", "QuestionSet")
                        .WithMany()
                        .HasForeignKey("QuestionSetId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.sites", "Site")
                        .WithMany()
                        .HasForeignKey("SiteId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.survey_configurations", "SurveyConfiguration")
                        .WithMany()
                        .HasForeignKey("SurveyConfigurationId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.units", "Unit")
                        .WithMany()
                        .HasForeignKey("UnitId");
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.cases", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.check_lists", "CheckList")
                        .WithMany("Cases")
                        .HasForeignKey("CheckListId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.folders", "Folder")
                        .WithMany()
                        .HasForeignKey("FolderId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.sites", "Site")
                        .WithMany("Cases")
                        .HasForeignKey("SiteId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.units", "Unit")
                        .WithMany()
                        .HasForeignKey("UnitId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.workers", "Worker")
                        .WithMany()
                        .HasForeignKey("WorkerId");
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.check_list_sites", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.check_lists", "CheckList")
                        .WithMany("CheckListSites")
                        .HasForeignKey("CheckListId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.folders", "Folder")
                        .WithMany()
                        .HasForeignKey("FolderId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.sites", "Site")
                        .WithMany("CheckListSites")
                        .HasForeignKey("SiteId");
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.check_lists", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.check_lists", "Parent")
                        .WithMany("Children")
                        .HasForeignKey("ParentId");
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.field_values", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.check_lists", "CheckList")
                        .WithMany()
                        .HasForeignKey("CheckListId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.fields", "Field")
                        .WithMany("FieldValues")
                        .HasForeignKey("FieldId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.uploaded_data", "UploadedData")
                        .WithMany()
                        .HasForeignKey("UploadedDataId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.workers", "Worker")
                        .WithMany()
                        .HasForeignKey("WorkerId");
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.fields", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.check_lists", "CheckList")
                        .WithMany("Fields")
                        .HasForeignKey("CheckListId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.field_types", "FieldType")
                        .WithMany()
                        .HasForeignKey("FieldTypeId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.fields", "Parent")
                        .WithMany("Children")
                        .HasForeignKey("ParentFieldId");
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.folders", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.folders", "Parent")
                        .WithMany("Children")
                        .HasForeignKey("ParentId");
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.language_question_set_versions", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.language_question_sets", "LanguageQuestionSet")
                        .WithMany()
                        .HasForeignKey("LanguageQuestionSetId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.language_question_sets", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.languages", "Language")
                        .WithMany()
                        .HasForeignKey("LanguageId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.question_sets", "QuestionSet")
                        .WithMany("LanguageQuestionSetses")
                        .HasForeignKey("QuestionSetId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.language_versions", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.languages", "Language")
                        .WithMany()
                        .HasForeignKey("LanguageId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.option_translations", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.languages", "Language")
                        .WithMany()
                        .HasForeignKey("LanguageId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.options", "option")
                        .WithMany("OptionTranslationses")
                        .HasForeignKey("OptionId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.option_versions", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.options", "Option")
                        .WithMany()
                        .HasForeignKey("OptionId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.options", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.questions", "Question")
                        .WithMany("Options")
                        .HasForeignKey("QuestionId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.question_set_versions", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.question_sets", "QuestionSet")
                        .WithMany()
                        .HasForeignKey("QuestionSetId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.question_translation_versions", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.question_translations", "QuestionTranslation")
                        .WithMany()
                        .HasForeignKey("QuestionTranslationId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.question_translations", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.languages", "Language")
                        .WithMany()
                        .HasForeignKey("LanguageId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.questions", "Question")
                        .WithMany("QuestionTranslationses")
                        .HasForeignKey("QuestionId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.question_versions", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.questions", "Question")
                        .WithMany()
                        .HasForeignKey("QuestionId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.questions", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.question_sets", "QuestionSet")
                        .WithMany("Questions")
                        .HasForeignKey("QuestionSetId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_group_sites", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.site_groups", "SiteGroup")
                        .WithMany("SiteGroupSites")
                        .HasForeignKey("SiteGroupId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.sites", "Site")
                        .WithMany()
                        .HasForeignKey("SiteId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_groups", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.site_groups", "Parent")
                        .WithMany("Children")
                        .HasForeignKey("ParentId");
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_survey_configuration_versions", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.site_survey_configurations", "SiteSurveyConfiguration")
                        .WithMany()
                        .HasForeignKey("SiteSurveyConfigurationId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_survey_configurations", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.sites", "Site")
                        .WithMany()
                        .HasForeignKey("SiteId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.survey_configurations", "SurveyConfiguration")
                        .WithMany("SiteSurveyConfigurations")
                        .HasForeignKey("SurveyConfigurationId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_tags", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.sites", "Site")
                        .WithMany("SiteTags")
                        .HasForeignKey("SiteId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.tags", "Tag")
                        .WithMany()
                        .HasForeignKey("TagId");
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.site_workers", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.sites", "Site")
                        .WithMany("SiteWorkers")
                        .HasForeignKey("SiteId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.workers", "Worker")
                        .WithMany("SiteWorkers")
                        .HasForeignKey("WorkerId");
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.survey_configuration_versions", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.survey_configurations", "SurveyConfiguration")
                        .WithMany()
                        .HasForeignKey("SurveyConfigurationId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.survey_configurations", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.question_sets", "QuestionSet")
                        .WithMany()
                        .HasForeignKey("QuestionSetId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.taggings", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.check_lists", "CheckList")
                        .WithMany("Taggings")
                        .HasForeignKey("CheckListId");

                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.tags", "Tag")
                        .WithMany("Taggings")
                        .HasForeignKey("TagId");
                });

            modelBuilder.Entity("Microting.eForm.Infrastructure.Data.Entities.units", b =>
                {
                    b.HasOne("Microting.eForm.Infrastructure.Data.Entities.sites", "Site")
                        .WithMany("Units")
                        .HasForeignKey("SiteId");
                });
#pragma warning restore 612, 618
        }
    }
}