< Summary

Line coverage
0%
Covered lines: 0
Uncovered lines: 1011
Coverable lines: 1011
Total lines: 1090
Line coverage: 0%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
File 1: Up(...)100%210%
File 1: Down(...)100%210%
File 2: BuildTargetModel(...)100%210%

File(s)

/builds/yukaitung/lgdxrobot2-cloud/LGDXRobotCloud.Data/Migrations/20250505172651_SkipOnFailure.cs

#LineLine coverage
 1using Microsoft.EntityFrameworkCore.Migrations;
 2
 3#nullable disable
 4
 5namespace LGDXRobotCloud.Data.Migrations
 6{
 7    /// <inheritdoc />
 8    public partial class SkipOnFailure : Migration
 9    {
 10        /// <inheritdoc />
 11        protected override void Up(MigrationBuilder migrationBuilder)
 012        {
 013            migrationBuilder.DropColumn(
 014                name: "SkipOnFailure",
 015                table: "Automation.Triggers");
 016        }
 17
 18        /// <inheritdoc />
 19        protected override void Down(MigrationBuilder migrationBuilder)
 020        {
 021            migrationBuilder.AddColumn<bool>(
 022                name: "SkipOnFailure",
 023                table: "Automation.Triggers",
 024                type: "boolean",
 025                nullable: false,
 026                defaultValue: false);
 027        }
 28    }
 29}

/builds/yukaitung/lgdxrobot2-cloud/LGDXRobotCloud.Data/Migrations/20250505172651_SkipOnFailure.Designer.cs

#LineLine coverage
 1// <auto-generated />
 2using System;
 3using LGDXRobotCloud.Data.DbContexts;
 4using Microsoft.EntityFrameworkCore;
 5using Microsoft.EntityFrameworkCore.Infrastructure;
 6using Microsoft.EntityFrameworkCore.Migrations;
 7using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
 8using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
 9
 10#nullable disable
 11
 12namespace LGDXRobotCloud.Data.Migrations
 13{
 14    [DbContext(typeof(LgdxContext))]
 15    [Migration("20250505172651_SkipOnFailure")]
 16    partial class SkipOnFailure
 17    {
 18        /// <inheritdoc />
 19        protected override void BuildTargetModel(ModelBuilder modelBuilder)
 020        {
 21#pragma warning disable 612, 618
 022            modelBuilder
 023                .HasAnnotation("ProductVersion", "9.0.4")
 024                .HasAnnotation("Relational:MaxIdentifierLength", 63);
 25
 026            NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
 27
 028            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.ApiKey", b =>
 029                {
 030                    b.Property<int>("Id")
 031                        .ValueGeneratedOnAdd()
 032                        .HasColumnType("integer");
 033
 034                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 035
 036                    b.Property<bool>("IsThirdParty")
 037                        .HasColumnType("boolean");
 038
 039                    b.Property<string>("Name")
 040                        .IsRequired()
 041                        .HasMaxLength(50)
 042                        .HasColumnType("character varying(50)");
 043
 044                    b.Property<string>("Secret")
 045                        .IsRequired()
 046                        .HasMaxLength(200)
 047                        .HasColumnType("character varying(200)");
 048
 049                    b.HasKey("Id");
 050
 051                    b.ToTable("Administration.ApiKeys");
 052                });
 53
 054            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.AutoTask", b =>
 055                {
 056                    b.Property<int>("Id")
 057                        .ValueGeneratedOnAdd()
 058                        .HasColumnType("integer");
 059
 060                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 061
 062                    b.Property<Guid?>("AssignedRobotId")
 063                        .HasColumnType("uuid");
 064
 065                    b.Property<int>("CurrentProgressId")
 066                        .HasColumnType("integer");
 067
 068                    b.Property<int?>("CurrentProgressOrder")
 069                        .HasColumnType("integer");
 070
 071                    b.Property<int?>("FlowId")
 072                        .HasColumnType("integer");
 073
 074                    b.Property<string>("Name")
 075                        .HasMaxLength(50)
 076                        .HasColumnType("character varying(50)");
 077
 078                    b.Property<string>("NextToken")
 079                        .HasMaxLength(32)
 080                        .HasColumnType("character varying(32)");
 081
 082                    b.Property<int>("Priority")
 083                        .HasColumnType("integer");
 084
 085                    b.Property<int>("RealmId")
 086                        .HasColumnType("integer");
 087
 088                    b.HasKey("Id");
 089
 090                    b.HasIndex("AssignedRobotId");
 091
 092                    b.HasIndex("CurrentProgressId");
 093
 094                    b.HasIndex("FlowId");
 095
 096                    b.HasIndex("RealmId", "AssignedRobotId");
 097
 098                    b.ToTable("Automation.AutoTasks");
 099                });
 100
 0101            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.AutoTaskDetail", b =>
 0102                {
 0103                    b.Property<int>("Id")
 0104                        .ValueGeneratedOnAdd()
 0105                        .HasColumnType("integer");
 0106
 0107                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 0108
 0109                    b.Property<int>("AutoTaskId")
 0110                        .HasColumnType("integer");
 0111
 0112                    b.Property<double?>("CustomRotation")
 0113                        .HasColumnType("double precision");
 0114
 0115                    b.Property<double?>("CustomX")
 0116                        .HasColumnType("double precision");
 0117
 0118                    b.Property<double?>("CustomY")
 0119                        .HasColumnType("double precision");
 0120
 0121                    b.Property<int>("Order")
 0122                        .HasColumnType("integer");
 0123
 0124                    b.Property<int?>("WaypointId")
 0125                        .HasColumnType("integer");
 0126
 0127                    b.HasKey("Id");
 0128
 0129                    b.HasIndex("AutoTaskId");
 0130
 0131                    b.HasIndex("Order");
 0132
 0133                    b.HasIndex("WaypointId");
 0134
 0135                    b.ToTable("Automation.AutoTaskDetails");
 0136                });
 137
 0138            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.Flow", b =>
 0139                {
 0140                    b.Property<int>("Id")
 0141                        .ValueGeneratedOnAdd()
 0142                        .HasColumnType("integer");
 0143
 0144                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 0145
 0146                    b.Property<string>("Name")
 0147                        .IsRequired()
 0148                        .HasMaxLength(50)
 0149                        .HasColumnType("character varying(50)");
 0150
 0151                    b.HasKey("Id");
 0152
 0153                    b.ToTable("Automation.Flows");
 0154                });
 155
 0156            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.FlowDetail", b =>
 0157                {
 0158                    b.Property<int>("Id")
 0159                        .ValueGeneratedOnAdd()
 0160                        .HasColumnType("integer");
 0161
 0162                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 0163
 0164                    b.Property<int>("AutoTaskNextControllerId")
 0165                        .HasColumnType("integer");
 0166
 0167                    b.Property<int>("FlowId")
 0168                        .HasColumnType("integer");
 0169
 0170                    b.Property<int>("Order")
 0171                        .HasColumnType("integer");
 0172
 0173                    b.Property<int>("ProgressId")
 0174                        .HasColumnType("integer");
 0175
 0176                    b.Property<int?>("TriggerId")
 0177                        .HasColumnType("integer");
 0178
 0179                    b.HasKey("Id");
 0180
 0181                    b.HasIndex("FlowId");
 0182
 0183                    b.HasIndex("Order");
 0184
 0185                    b.HasIndex("ProgressId");
 0186
 0187                    b.HasIndex("TriggerId");
 0188
 0189                    b.ToTable("Automation.FlowDetails");
 0190                });
 191
 0192            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.LgdxRole", b =>
 0193                {
 0194                    b.Property<string>("Id")
 0195                        .HasColumnType("text");
 0196
 0197                    b.Property<string>("ConcurrencyStamp")
 0198                        .IsConcurrencyToken()
 0199                        .HasColumnType("text");
 0200
 0201                    b.Property<string>("Description")
 0202                        .HasColumnType("text");
 0203
 0204                    b.Property<string>("Name")
 0205                        .HasMaxLength(256)
 0206                        .HasColumnType("character varying(256)");
 0207
 0208                    b.Property<string>("NormalizedName")
 0209                        .HasMaxLength(256)
 0210                        .HasColumnType("character varying(256)");
 0211
 0212                    b.HasKey("Id");
 0213
 0214                    b.HasIndex("NormalizedName")
 0215                        .IsUnique()
 0216                        .HasDatabaseName("RoleNameIndex");
 0217
 0218                    b.ToTable("AspNetRoles", (string)null);
 0219                });
 220
 0221            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.LgdxUser", b =>
 0222                {
 0223                    b.Property<string>("Id")
 0224                        .HasColumnType("text");
 0225
 0226                    b.Property<int>("AccessFailedCount")
 0227                        .HasColumnType("integer");
 0228
 0229                    b.Property<string>("ConcurrencyStamp")
 0230                        .IsConcurrencyToken()
 0231                        .HasColumnType("text");
 0232
 0233                    b.Property<string>("Email")
 0234                        .HasMaxLength(256)
 0235                        .HasColumnType("character varying(256)");
 0236
 0237                    b.Property<bool>("EmailConfirmed")
 0238                        .HasColumnType("boolean");
 0239
 0240                    b.Property<bool>("LockoutEnabled")
 0241                        .HasColumnType("boolean");
 0242
 0243                    b.Property<DateTimeOffset?>("LockoutEnd")
 0244                        .HasColumnType("timestamp with time zone");
 0245
 0246                    b.Property<string>("Name")
 0247                        .HasColumnType("text");
 0248
 0249                    b.Property<string>("NormalizedEmail")
 0250                        .HasMaxLength(256)
 0251                        .HasColumnType("character varying(256)");
 0252
 0253                    b.Property<string>("NormalizedUserName")
 0254                        .HasMaxLength(256)
 0255                        .HasColumnType("character varying(256)");
 0256
 0257                    b.Property<string>("PasswordHash")
 0258                        .HasColumnType("text");
 0259
 0260                    b.Property<string>("PhoneNumber")
 0261                        .HasColumnType("text");
 0262
 0263                    b.Property<bool>("PhoneNumberConfirmed")
 0264                        .HasColumnType("boolean");
 0265
 0266                    b.Property<string>("RefreshTokenHash")
 0267                        .HasMaxLength(64)
 0268                        .HasColumnType("character varying(64)");
 0269
 0270                    b.Property<string>("SecurityStamp")
 0271                        .HasColumnType("text");
 0272
 0273                    b.Property<bool>("TwoFactorEnabled")
 0274                        .HasColumnType("boolean");
 0275
 0276                    b.Property<string>("UserName")
 0277                        .HasMaxLength(256)
 0278                        .HasColumnType("character varying(256)");
 0279
 0280                    b.HasKey("Id");
 0281
 0282                    b.HasIndex("NormalizedEmail")
 0283                        .HasDatabaseName("EmailIndex");
 0284
 0285                    b.HasIndex("NormalizedUserName")
 0286                        .IsUnique()
 0287                        .HasDatabaseName("UserNameIndex");
 0288
 0289                    b.ToTable("AspNetUsers", (string)null);
 0290                });
 291
 0292            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.Progress", b =>
 0293                {
 0294                    b.Property<int>("Id")
 0295                        .ValueGeneratedOnAdd()
 0296                        .HasColumnType("integer");
 0297
 0298                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 0299
 0300                    b.Property<string>("Name")
 0301                        .IsRequired()
 0302                        .HasMaxLength(50)
 0303                        .HasColumnType("character varying(50)");
 0304
 0305                    b.Property<bool>("Reserved")
 0306                        .HasColumnType("boolean");
 0307
 0308                    b.Property<bool>("System")
 0309                        .HasColumnType("boolean");
 0310
 0311                    b.HasKey("Id");
 0312
 0313                    b.ToTable("Automation.Progresses");
 0314
 0315                    b.HasData(
 0316                        new
 0317                        {
 0318                            Id = 1,
 0319                            Name = "Template",
 0320                            Reserved = true,
 0321                            System = true
 0322                        },
 0323                        new
 0324                        {
 0325                            Id = 2,
 0326                            Name = "Waiting",
 0327                            Reserved = true,
 0328                            System = true
 0329                        },
 0330                        new
 0331                        {
 0332                            Id = 3,
 0333                            Name = "Completed",
 0334                            Reserved = true,
 0335                            System = true
 0336                        },
 0337                        new
 0338                        {
 0339                            Id = 4,
 0340                            Name = "Aborted",
 0341                            Reserved = true,
 0342                            System = true
 0343                        },
 0344                        new
 0345                        {
 0346                            Id = 5,
 0347                            Name = "Starting",
 0348                            Reserved = false,
 0349                            System = true
 0350                        },
 0351                        new
 0352                        {
 0353                            Id = 6,
 0354                            Name = "Loading",
 0355                            Reserved = false,
 0356                            System = true
 0357                        },
 0358                        new
 0359                        {
 0360                            Id = 7,
 0361                            Name = "PreMoving",
 0362                            Reserved = false,
 0363                            System = true
 0364                        },
 0365                        new
 0366                        {
 0367                            Id = 8,
 0368                            Name = "Moving",
 0369                            Reserved = false,
 0370                            System = true
 0371                        },
 0372                        new
 0373                        {
 0374                            Id = 9,
 0375                            Name = "Unloading",
 0376                            Reserved = false,
 0377                            System = true
 0378                        },
 0379                        new
 0380                        {
 0381                            Id = 10,
 0382                            Name = "Completing",
 0383                            Reserved = false,
 0384                            System = true
 0385                        },
 0386                        new
 0387                        {
 0388                            Id = 99,
 0389                            Name = "Reserved",
 0390                            Reserved = true,
 0391                            System = true
 0392                        });
 0393                });
 394
 0395            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.Realm", b =>
 0396                {
 0397                    b.Property<int>("Id")
 0398                        .ValueGeneratedOnAdd()
 0399                        .HasColumnType("integer");
 0400
 0401                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 0402
 0403                    b.Property<string>("Description")
 0404                        .HasMaxLength(200)
 0405                        .HasColumnType("character varying(200)");
 0406
 0407                    b.Property<byte[]>("Image")
 0408                        .IsRequired()
 0409                        .HasColumnType("bytea");
 0410
 0411                    b.Property<string>("Name")
 0412                        .IsRequired()
 0413                        .HasMaxLength(50)
 0414                        .HasColumnType("character varying(50)");
 0415
 0416                    b.Property<double>("OriginRotation")
 0417                        .HasColumnType("double precision");
 0418
 0419                    b.Property<double>("OriginX")
 0420                        .HasColumnType("double precision");
 0421
 0422                    b.Property<double>("OriginY")
 0423                        .HasColumnType("double precision");
 0424
 0425                    b.Property<double>("Resolution")
 0426                        .HasColumnType("double precision");
 0427
 0428                    b.HasKey("Id");
 0429
 0430                    b.ToTable("Navigation.Realms");
 0431
 0432                    b.HasData(
 0433                        new
 0434                        {
 0435                            Id = 1,
 0436                            Description = "Please update this realm",
 0437                            Image = new byte[0],
 0438                            Name = "First Realm",
 0439                            OriginRotation = 0.0,
 0440                            OriginX = 0.0,
 0441                            OriginY = 0.0,
 0442                            Resolution = 0.0
 0443                        });
 0444                });
 445
 0446            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.Robot", b =>
 0447                {
 0448                    b.Property<Guid>("Id")
 0449                        .ValueGeneratedOnAdd()
 0450                        .HasColumnType("uuid");
 0451
 0452                    b.Property<bool>("IsProtectingHardwareSerialNumber")
 0453                        .HasColumnType("boolean");
 0454
 0455                    b.Property<bool>("IsRealtimeExchange")
 0456                        .HasColumnType("boolean");
 0457
 0458                    b.Property<string>("Name")
 0459                        .IsRequired()
 0460                        .HasMaxLength(50)
 0461                        .HasColumnType("character varying(50)");
 0462
 0463                    b.Property<int>("RealmId")
 0464                        .HasColumnType("integer");
 0465
 0466                    b.HasKey("Id");
 0467
 0468                    b.HasIndex("RealmId");
 0469
 0470                    b.ToTable("Navigation.Robots");
 0471                });
 472
 0473            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.RobotCertificate", b =>
 0474                {
 0475                    b.Property<Guid>("Id")
 0476                        .ValueGeneratedOnAdd()
 0477                        .HasColumnType("uuid");
 0478
 0479                    b.Property<DateTime>("NotAfter")
 0480                        .HasPrecision(0)
 0481                        .HasColumnType("timestamp(0) with time zone");
 0482
 0483                    b.Property<DateTime>("NotBefore")
 0484                        .HasPrecision(0)
 0485                        .HasColumnType("timestamp(0) with time zone");
 0486
 0487                    b.Property<Guid>("RobotId")
 0488                        .HasColumnType("uuid");
 0489
 0490                    b.Property<string>("Thumbprint")
 0491                        .IsRequired()
 0492                        .HasMaxLength(40)
 0493                        .HasColumnType("character varying(40)");
 0494
 0495                    b.Property<string>("ThumbprintBackup")
 0496                        .HasMaxLength(40)
 0497                        .HasColumnType("character varying(40)");
 0498
 0499                    b.HasKey("Id");
 0500
 0501                    b.HasIndex("RobotId")
 0502                        .IsUnique();
 0503
 0504                    b.ToTable("Navigation.RobotCertificates");
 0505                });
 506
 0507            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.RobotChassisInfo", b =>
 0508                {
 0509                    b.Property<int>("Id")
 0510                        .ValueGeneratedOnAdd()
 0511                        .HasColumnType("integer");
 0512
 0513                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 0514
 0515                    b.Property<int>("BatteryCount")
 0516                        .HasColumnType("integer");
 0517
 0518                    b.Property<double>("BatteryMaxVoltage")
 0519                        .HasColumnType("double precision");
 0520
 0521                    b.Property<double>("BatteryMinVoltage")
 0522                        .HasColumnType("double precision");
 0523
 0524                    b.Property<double>("ChassisLengthX")
 0525                        .HasColumnType("double precision");
 0526
 0527                    b.Property<double>("ChassisLengthY")
 0528                        .HasColumnType("double precision");
 0529
 0530                    b.Property<int>("ChassisWheelCount")
 0531                        .HasColumnType("integer");
 0532
 0533                    b.Property<double>("ChassisWheelRadius")
 0534                        .HasColumnType("double precision");
 0535
 0536                    b.Property<Guid>("RobotId")
 0537                        .HasColumnType("uuid");
 0538
 0539                    b.Property<int>("RobotTypeId")
 0540                        .HasColumnType("integer");
 0541
 0542                    b.HasKey("Id");
 0543
 0544                    b.HasIndex("RobotId")
 0545                        .IsUnique();
 0546
 0547                    b.ToTable("Navigation.RobotChassisInfos");
 0548                });
 549
 0550            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.RobotSystemInfo", b =>
 0551                {
 0552                    b.Property<int>("Id")
 0553                        .ValueGeneratedOnAdd()
 0554                        .HasColumnType("integer");
 0555
 0556                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 0557
 0558                    b.Property<string>("Cpu")
 0559                        .IsRequired()
 0560                        .HasMaxLength(100)
 0561                        .HasColumnType("character varying(100)");
 0562
 0563                    b.Property<string>("Gpu")
 0564                        .HasMaxLength(100)
 0565                        .HasColumnType("character varying(100)");
 0566
 0567                    b.Property<bool>("Is32Bit")
 0568                        .HasColumnType("boolean");
 0569
 0570                    b.Property<bool>("IsLittleEndian")
 0571                        .HasColumnType("boolean");
 0572
 0573                    b.Property<string>("McuSerialNumber")
 0574                        .HasMaxLength(100)
 0575                        .HasColumnType("character varying(100)");
 0576
 0577                    b.Property<string>("Motherboard")
 0578                        .IsRequired()
 0579                        .HasMaxLength(100)
 0580                        .HasColumnType("character varying(100)");
 0581
 0582                    b.Property<string>("MotherboardSerialNumber")
 0583                        .IsRequired()
 0584                        .HasMaxLength(100)
 0585                        .HasColumnType("character varying(100)");
 0586
 0587                    b.Property<string>("Os")
 0588                        .IsRequired()
 0589                        .HasMaxLength(100)
 0590                        .HasColumnType("character varying(100)");
 0591
 0592                    b.Property<int>("RamMiB")
 0593                        .HasColumnType("integer");
 0594
 0595                    b.Property<Guid>("RobotId")
 0596                        .HasColumnType("uuid");
 0597
 0598                    b.HasKey("Id");
 0599
 0600                    b.HasIndex("RobotId")
 0601                        .IsUnique();
 0602
 0603                    b.ToTable("Navigation.RobotSystemInfos");
 0604                });
 605
 0606            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.Trigger", b =>
 0607                {
 0608                    b.Property<int>("Id")
 0609                        .ValueGeneratedOnAdd()
 0610                        .HasColumnType("integer");
 0611
 0612                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 0613
 0614                    b.Property<string>("ApiKeyFieldName")
 0615                        .HasMaxLength(50)
 0616                        .HasColumnType("character varying(50)");
 0617
 0618                    b.Property<int?>("ApiKeyId")
 0619                        .HasColumnType("integer");
 0620
 0621                    b.Property<int?>("ApiKeyInsertLocationId")
 0622                        .HasColumnType("integer");
 0623
 0624                    b.Property<string>("Body")
 0625                        .HasColumnType("text");
 0626
 0627                    b.Property<int>("HttpMethodId")
 0628                        .HasColumnType("integer");
 0629
 0630                    b.Property<string>("Name")
 0631                        .IsRequired()
 0632                        .HasMaxLength(50)
 0633                        .HasColumnType("character varying(50)");
 0634
 0635                    b.Property<string>("Url")
 0636                        .IsRequired()
 0637                        .HasMaxLength(200)
 0638                        .HasColumnType("character varying(200)");
 0639
 0640                    b.HasKey("Id");
 0641
 0642                    b.HasIndex("ApiKeyId");
 0643
 0644                    b.HasIndex("ApiKeyInsertLocationId");
 0645
 0646                    b.ToTable("Automation.Triggers");
 0647                });
 648
 0649            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.TriggerRetry", b =>
 0650                {
 0651                    b.Property<int>("Id")
 0652                        .ValueGeneratedOnAdd()
 0653                        .HasColumnType("integer");
 0654
 0655                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 0656
 0657                    b.Property<int>("AutoTaskId")
 0658                        .HasColumnType("integer");
 0659
 0660                    b.Property<string>("Body")
 0661                        .IsRequired()
 0662                        .HasColumnType("TEXT");
 0663
 0664                    b.Property<DateTime>("CreatedAt")
 0665                        .HasPrecision(3)
 0666                        .HasColumnType("timestamp(3) with time zone");
 0667
 0668                    b.Property<int>("TriggerId")
 0669                        .HasColumnType("integer");
 0670
 0671                    b.HasKey("Id");
 0672
 0673                    b.HasIndex("AutoTaskId");
 0674
 0675                    b.HasIndex("TriggerId");
 0676
 0677                    b.ToTable("Automation.TriggerRetries");
 0678                });
 679
 0680            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.Waypoint", b =>
 0681                {
 0682                    b.Property<int>("Id")
 0683                        .ValueGeneratedOnAdd()
 0684                        .HasColumnType("integer");
 0685
 0686                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 0687
 0688                    b.Property<bool>("HasCharger")
 0689                        .HasColumnType("boolean");
 0690
 0691                    b.Property<bool>("IsParking")
 0692                        .HasColumnType("boolean");
 0693
 0694                    b.Property<bool>("IsReserved")
 0695                        .HasColumnType("boolean");
 0696
 0697                    b.Property<string>("Name")
 0698                        .IsRequired()
 0699                        .HasMaxLength(100)
 0700                        .HasColumnType("character varying(100)");
 0701
 0702                    b.Property<int>("RealmId")
 0703                        .HasColumnType("integer");
 0704
 0705                    b.Property<double>("Rotation")
 0706                        .HasColumnType("double precision");
 0707
 0708                    b.Property<double>("X")
 0709                        .HasColumnType("double precision");
 0710
 0711                    b.Property<double>("Y")
 0712                        .HasColumnType("double precision");
 0713
 0714                    b.HasKey("Id");
 0715
 0716                    b.HasIndex("RealmId");
 0717
 0718                    b.ToTable("Navigation.Waypoints");
 0719                });
 720
 0721            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
 0722                {
 0723                    b.Property<int>("Id")
 0724                        .ValueGeneratedOnAdd()
 0725                        .HasColumnType("integer");
 0726
 0727                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 0728
 0729                    b.Property<string>("ClaimType")
 0730                        .HasColumnType("text");
 0731
 0732                    b.Property<string>("ClaimValue")
 0733                        .HasColumnType("text");
 0734
 0735                    b.Property<string>("RoleId")
 0736                        .IsRequired()
 0737                        .HasColumnType("text");
 0738
 0739                    b.HasKey("Id");
 0740
 0741                    b.HasIndex("RoleId");
 0742
 0743                    b.ToTable("AspNetRoleClaims", (string)null);
 0744                });
 745
 0746            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
 0747                {
 0748                    b.Property<int>("Id")
 0749                        .ValueGeneratedOnAdd()
 0750                        .HasColumnType("integer");
 0751
 0752                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 0753
 0754                    b.Property<string>("ClaimType")
 0755                        .HasColumnType("text");
 0756
 0757                    b.Property<string>("ClaimValue")
 0758                        .HasColumnType("text");
 0759
 0760                    b.Property<string>("UserId")
 0761                        .IsRequired()
 0762                        .HasColumnType("text");
 0763
 0764                    b.HasKey("Id");
 0765
 0766                    b.HasIndex("UserId");
 0767
 0768                    b.ToTable("AspNetUserClaims", (string)null);
 0769                });
 770
 0771            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
 0772                {
 0773                    b.Property<string>("LoginProvider")
 0774                        .HasColumnType("text");
 0775
 0776                    b.Property<string>("ProviderKey")
 0777                        .HasColumnType("text");
 0778
 0779                    b.Property<string>("ProviderDisplayName")
 0780                        .HasColumnType("text");
 0781
 0782                    b.Property<string>("UserId")
 0783                        .IsRequired()
 0784                        .HasColumnType("text");
 0785
 0786                    b.HasKey("LoginProvider", "ProviderKey");
 0787
 0788                    b.HasIndex("UserId");
 0789
 0790                    b.ToTable("AspNetUserLogins", (string)null);
 0791                });
 792
 0793            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
 0794                {
 0795                    b.Property<string>("UserId")
 0796                        .HasColumnType("text");
 0797
 0798                    b.Property<string>("RoleId")
 0799                        .HasColumnType("text");
 0800
 0801                    b.HasKey("UserId", "RoleId");
 0802
 0803                    b.HasIndex("RoleId");
 0804
 0805                    b.ToTable("AspNetUserRoles", (string)null);
 0806                });
 807
 0808            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
 0809                {
 0810                    b.Property<string>("UserId")
 0811                        .HasColumnType("text");
 0812
 0813                    b.Property<string>("LoginProvider")
 0814                        .HasColumnType("text");
 0815
 0816                    b.Property<string>("Name")
 0817                        .HasColumnType("text");
 0818
 0819                    b.Property<string>("Value")
 0820                        .HasColumnType("text");
 0821
 0822                    b.HasKey("UserId", "LoginProvider", "Name");
 0823
 0824                    b.ToTable("AspNetUserTokens", (string)null);
 0825                });
 826
 0827            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.AutoTask", b =>
 0828                {
 0829                    b.HasOne("LGDXRobotCloud.Data.Entities.Robot", "AssignedRobot")
 0830                        .WithMany("AssignedTasks")
 0831                        .HasForeignKey("AssignedRobotId")
 0832                        .OnDelete(DeleteBehavior.SetNull);
 0833
 0834                    b.HasOne("LGDXRobotCloud.Data.Entities.Progress", "CurrentProgress")
 0835                        .WithMany()
 0836                        .HasForeignKey("CurrentProgressId")
 0837                        .OnDelete(DeleteBehavior.Restrict)
 0838                        .IsRequired();
 0839
 0840                    b.HasOne("LGDXRobotCloud.Data.Entities.Flow", "Flow")
 0841                        .WithMany()
 0842                        .HasForeignKey("FlowId")
 0843                        .OnDelete(DeleteBehavior.SetNull);
 0844
 0845                    b.HasOne("LGDXRobotCloud.Data.Entities.Realm", "Realm")
 0846                        .WithMany()
 0847                        .HasForeignKey("RealmId")
 0848                        .OnDelete(DeleteBehavior.Cascade)
 0849                        .IsRequired();
 0850
 0851                    b.Navigation("AssignedRobot");
 0852
 0853                    b.Navigation("CurrentProgress");
 0854
 0855                    b.Navigation("Flow");
 0856
 0857                    b.Navigation("Realm");
 0858                });
 859
 0860            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.AutoTaskDetail", b =>
 0861                {
 0862                    b.HasOne("LGDXRobotCloud.Data.Entities.AutoTask", "AutoTask")
 0863                        .WithMany("AutoTaskDetails")
 0864                        .HasForeignKey("AutoTaskId")
 0865                        .OnDelete(DeleteBehavior.Cascade)
 0866                        .IsRequired();
 0867
 0868                    b.HasOne("LGDXRobotCloud.Data.Entities.Waypoint", "Waypoint")
 0869                        .WithMany()
 0870                        .HasForeignKey("WaypointId")
 0871                        .OnDelete(DeleteBehavior.SetNull);
 0872
 0873                    b.Navigation("AutoTask");
 0874
 0875                    b.Navigation("Waypoint");
 0876                });
 877
 0878            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.FlowDetail", b =>
 0879                {
 0880                    b.HasOne("LGDXRobotCloud.Data.Entities.Flow", "Flow")
 0881                        .WithMany("FlowDetails")
 0882                        .HasForeignKey("FlowId")
 0883                        .OnDelete(DeleteBehavior.Cascade)
 0884                        .IsRequired();
 0885
 0886                    b.HasOne("LGDXRobotCloud.Data.Entities.Progress", "Progress")
 0887                        .WithMany()
 0888                        .HasForeignKey("ProgressId")
 0889                        .OnDelete(DeleteBehavior.Restrict)
 0890                        .IsRequired();
 0891
 0892                    b.HasOne("LGDXRobotCloud.Data.Entities.Trigger", "Trigger")
 0893                        .WithMany()
 0894                        .HasForeignKey("TriggerId")
 0895                        .OnDelete(DeleteBehavior.Restrict);
 0896
 0897                    b.Navigation("Flow");
 0898
 0899                    b.Navigation("Progress");
 0900
 0901                    b.Navigation("Trigger");
 0902                });
 903
 0904            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.Robot", b =>
 0905                {
 0906                    b.HasOne("LGDXRobotCloud.Data.Entities.Realm", "Realm")
 0907                        .WithMany()
 0908                        .HasForeignKey("RealmId")
 0909                        .OnDelete(DeleteBehavior.Restrict)
 0910                        .IsRequired();
 0911
 0912                    b.Navigation("Realm");
 0913                });
 914
 0915            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.RobotCertificate", b =>
 0916                {
 0917                    b.HasOne("LGDXRobotCloud.Data.Entities.Robot", "Robot")
 0918                        .WithOne("RobotCertificate")
 0919                        .HasForeignKey("LGDXRobotCloud.Data.Entities.RobotCertificate", "RobotId")
 0920                        .OnDelete(DeleteBehavior.Cascade)
 0921                        .IsRequired();
 0922
 0923                    b.Navigation("Robot");
 0924                });
 925
 0926            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.RobotChassisInfo", b =>
 0927                {
 0928                    b.HasOne("LGDXRobotCloud.Data.Entities.Robot", "Robot")
 0929                        .WithOne("RobotChassisInfo")
 0930                        .HasForeignKey("LGDXRobotCloud.Data.Entities.RobotChassisInfo", "RobotId")
 0931                        .OnDelete(DeleteBehavior.Cascade);
 0932
 0933                    b.Navigation("Robot");
 0934                });
 935
 0936            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.RobotSystemInfo", b =>
 0937                {
 0938                    b.HasOne("LGDXRobotCloud.Data.Entities.Robot", "Robot")
 0939                        .WithOne("RobotSystemInfo")
 0940                        .HasForeignKey("LGDXRobotCloud.Data.Entities.RobotSystemInfo", "RobotId")
 0941                        .OnDelete(DeleteBehavior.Cascade);
 0942
 0943                    b.Navigation("Robot");
 0944                });
 945
 0946            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.Trigger", b =>
 0947                {
 0948                    b.HasOne("LGDXRobotCloud.Data.Entities.ApiKey", "ApiKey")
 0949                        .WithMany()
 0950                        .HasForeignKey("ApiKeyId")
 0951                        .OnDelete(DeleteBehavior.SetNull);
 0952
 0953                    b.Navigation("ApiKey");
 0954                });
 955
 0956            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.TriggerRetry", b =>
 0957                {
 0958                    b.HasOne("LGDXRobotCloud.Data.Entities.AutoTask", "AutoTask")
 0959                        .WithMany()
 0960                        .HasForeignKey("AutoTaskId")
 0961                        .OnDelete(DeleteBehavior.Cascade)
 0962                        .IsRequired();
 0963
 0964                    b.HasOne("LGDXRobotCloud.Data.Entities.Trigger", "Trigger")
 0965                        .WithMany()
 0966                        .HasForeignKey("TriggerId")
 0967                        .OnDelete(DeleteBehavior.Cascade)
 0968                        .IsRequired();
 0969
 0970                    b.Navigation("AutoTask");
 0971
 0972                    b.Navigation("Trigger");
 0973                });
 974
 0975            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.Waypoint", b =>
 0976                {
 0977                    b.HasOne("LGDXRobotCloud.Data.Entities.Realm", "Realm")
 0978                        .WithMany()
 0979                        .HasForeignKey("RealmId")
 0980                        .OnDelete(DeleteBehavior.Restrict)
 0981                        .IsRequired();
 0982
 0983                    b.Navigation("Realm");
 0984                });
 985
 0986            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
 0987                {
 0988                    b.HasOne("LGDXRobotCloud.Data.Entities.LgdxRole", null)
 0989                        .WithMany()
 0990                        .HasForeignKey("RoleId")
 0991                        .OnDelete(DeleteBehavior.Cascade)
 0992                        .IsRequired();
 0993                });
 994
 0995            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
 0996                {
 0997                    b.HasOne("LGDXRobotCloud.Data.Entities.LgdxUser", null)
 0998                        .WithMany()
 0999                        .HasForeignKey("UserId")
 01000                        .OnDelete(DeleteBehavior.Cascade)
 01001                        .IsRequired();
 01002                });
 1003
 01004            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
 01005                {
 01006                    b.HasOne("LGDXRobotCloud.Data.Entities.LgdxUser", null)
 01007                        .WithMany()
 01008                        .HasForeignKey("UserId")
 01009                        .OnDelete(DeleteBehavior.Cascade)
 01010                        .IsRequired();
 01011                });
 1012
 01013            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
 01014                {
 01015                    b.HasOne("LGDXRobotCloud.Data.Entities.LgdxRole", null)
 01016                        .WithMany()
 01017                        .HasForeignKey("RoleId")
 01018                        .OnDelete(DeleteBehavior.Cascade)
 01019                        .IsRequired();
 01020
 01021                    b.HasOne("LGDXRobotCloud.Data.Entities.LgdxUser", null)
 01022                        .WithMany()
 01023                        .HasForeignKey("UserId")
 01024                        .OnDelete(DeleteBehavior.Cascade)
 01025                        .IsRequired();
 01026                });
 1027
 01028            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
 01029                {
 01030                    b.HasOne("LGDXRobotCloud.Data.Entities.LgdxUser", null)
 01031                        .WithMany()
 01032                        .HasForeignKey("UserId")
 01033                        .OnDelete(DeleteBehavior.Cascade)
 01034                        .IsRequired();
 01035                });
 1036
 01037            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.AutoTask", b =>
 01038                {
 01039                    b.Navigation("AutoTaskDetails");
 01040                });
 1041
 01042            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.Flow", b =>
 01043                {
 01044                    b.Navigation("FlowDetails");
 01045                });
 1046
 01047            modelBuilder.Entity("LGDXRobotCloud.Data.Entities.Robot", b =>
 01048                {
 01049                    b.Navigation("AssignedTasks");
 01050
 01051                    b.Navigation("RobotCertificate")
 01052                        .IsRequired();
 01053
 01054                    b.Navigation("RobotChassisInfo");
 01055
 01056                    b.Navigation("RobotSystemInfo");
 01057                });
 1058#pragma warning restore 612, 618
 01059        }
 1060    }
 1061}