Ignore:
Timestamp:
08/24/26 20:57:09 (13 days ago)
Author:
kikisrbinoska <srbinoskakristina07@…>
Branches:
main
Parents:
a6e33d1
Message:

Added corrected entitef from the ER diagram and changes for the logic to be coresponding to the ddl

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ChapterX.Infrastructure/Migrations/ApplicationDbContextModelSnapshot.cs

    ra6e33d1 re882b92  
    2727                    b.Property<int>("Id")
    2828                        .ValueGeneratedOnAdd()
    29                         .HasColumnType("integer");
     29                        .HasColumnType("integer")
     30                        .HasColumnName("suggestion_id");
    3031
    3132                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    3233
    3334                    b.Property<bool?>("Accepted")
    34                         .HasColumnType("boolean");
     35                        .HasColumnType("boolean")
     36                        .HasColumnName("accepted");
    3537
    3638                    b.Property<DateTime?>("AppliedAt")
    37                         .HasColumnType("timestamp with time zone");
     39                        .HasColumnType("timestamp with time zone")
     40                        .HasColumnName("applied_at");
    3841
    3942                    b.Property<DateTime>("CreatedAt")
    40                         .HasColumnType("timestamp with time zone");
     43                        .HasColumnType("timestamp with time zone")
     44                        .HasColumnName("suggestion_created_at");
    4145
    4246                    b.Property<string>("OriginalText")
    4347                        .IsRequired()
    44                         .HasColumnType("text");
     48                        .HasColumnType("text")
     49                        .HasColumnName("original_text");
    4550
    4651                    b.Property<int>("StoryId")
    47                         .HasColumnType("integer");
     52                        .HasColumnType("integer")
     53                        .HasColumnName("story_id");
    4854
    4955                    b.Property<string>("SuggestedText")
    5056                        .IsRequired()
    51                         .HasColumnType("text");
    52 
    53                     b.PrimitiveCollection<int[]>("SuggestionTypes")
    54                         .IsRequired()
    55                         .HasColumnType("integer[]");
     57                        .HasColumnType("text")
     58                        .HasColumnName("suggested_text");
     59
     60                    b.Property<string>("SuggestionType")
     61                        .IsRequired()
     62                        .HasColumnType("text")
     63                        .HasColumnName("suggestion_type");
    5664
    5765                    b.HasKey("Id");
     
    5967                    b.HasIndex("StoryId");
    6068
    61                     b.ToTable("AISuggestions", (string)null);
     69                    b.ToTable("ai_suggestion", (string)null);
    6270                });
    6371
     
    6573                {
    6674                    b.Property<int>("Id")
     75                        .HasColumnType("integer")
     76                        .HasColumnName("user_id");
     77
     78                    b.Property<DateTime>("AssignedAt")
     79                        .HasColumnType("timestamp with time zone")
     80                        .HasColumnName("assigned_at");
     81
     82                    b.HasKey("Id");
     83
     84                    b.ToTable("admins", (string)null);
     85                });
     86
     87            modelBuilder.Entity("ChapterX.Domain.Entities.Chapter", b =>
     88                {
     89                    b.Property<int>("Id")
    6790                        .ValueGeneratedOnAdd()
    68                         .HasColumnType("integer");
     91                        .HasColumnType("integer")
     92                        .HasColumnName("chapter_id");
    6993
    7094                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    7195
     96                    b.Property<string>("Content")
     97                        .IsRequired()
     98                        .HasColumnType("text")
     99                        .HasColumnName("chapter_content");
     100
     101                    b.Property<DateTime>("CreatedAt")
     102                        .HasColumnType("timestamp with time zone")
     103                        .HasColumnName("chapter_created_at");
     104
     105                    b.Property<string>("Name")
     106                        .IsRequired()
     107                        .HasColumnType("text")
     108                        .HasColumnName("chapter_name");
     109
     110                    b.Property<int>("Number")
     111                        .HasColumnType("integer")
     112                        .HasColumnName("chapter_number");
     113
     114                    b.Property<DateTime>("PublishedAt")
     115                        .HasColumnType("timestamp with time zone")
     116                        .HasColumnName("published_at");
     117
     118                    b.Property<decimal?>("Rating")
     119                        .HasColumnType("numeric")
     120                        .HasColumnName("rating");
     121
     122                    b.Property<int>("StoryId")
     123                        .HasColumnType("integer")
     124                        .HasColumnName("story_id");
     125
     126                    b.Property<string>("Title")
     127                        .IsRequired()
     128                        .HasColumnType("text")
     129                        .HasColumnName("title");
     130
     131                    b.Property<DateTime>("UpdatedAt")
     132                        .HasColumnType("timestamp with time zone")
     133                        .HasColumnName("chapter_updated_at");
     134
     135                    b.Property<int>("ViewCount")
     136                        .HasColumnType("integer")
     137                        .HasColumnName("view_count");
     138
     139                    b.Property<int?>("WordCount")
     140                        .HasColumnType("integer")
     141                        .HasColumnName("word_count");
     142
     143                    b.HasKey("Id");
     144
     145                    b.HasIndex("StoryId");
     146
     147                    b.ToTable("chapter", (string)null);
     148                });
     149
     150            modelBuilder.Entity("ChapterX.Domain.Entities.Collaboration", b =>
     151                {
    72152                    b.Property<int>("UserId")
    73                         .HasColumnType("integer");
    74 
    75                     b.HasKey("Id");
    76 
    77                     b.HasIndex("UserId")
    78                         .IsUnique();
    79 
    80                     b.ToTable("Admins", (string)null);
    81                 });
    82 
    83             modelBuilder.Entity("ChapterX.Domain.Entities.Chapter", b =>
     153                        .HasColumnType("integer")
     154                        .HasColumnName("user_id");
     155
     156                    b.Property<int>("StoryId")
     157                        .HasColumnType("integer")
     158                        .HasColumnName("story_id");
     159
     160                    b.Property<DateTime>("CreatedAt")
     161                        .HasColumnType("timestamp with time zone")
     162                        .HasColumnName("collab_created_at");
     163
     164                    b.Property<int?>("PermissionLevel")
     165                        .HasColumnType("integer")
     166                        .HasColumnName("permission_level");
     167
     168                    b.Property<string>("Role")
     169                        .IsRequired()
     170                        .HasColumnType("text")
     171                        .HasColumnName("role");
     172
     173                    b.HasKey("UserId", "StoryId");
     174
     175                    b.HasIndex("StoryId");
     176
     177                    b.ToTable("collaboration", (string)null);
     178                });
     179
     180            modelBuilder.Entity("ChapterX.Domain.Entities.Comment", b =>
    84181                {
    85182                    b.Property<int>("Id")
    86183                        .ValueGeneratedOnAdd()
    87                         .HasColumnType("integer");
     184                        .HasColumnType("integer")
     185                        .HasColumnName("comment_id");
    88186
    89187                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
     
    91189                    b.Property<string>("Content")
    92190                        .IsRequired()
    93                         .HasColumnType("text");
     191                        .HasColumnType("text")
     192                        .HasColumnName("comment_content");
    94193
    95194                    b.Property<DateTime>("CreatedAt")
    96                         .HasColumnType("timestamp with time zone");
     195                        .HasColumnType("timestamp with time zone")
     196                        .HasColumnName("comment_created_at");
     197
     198                    b.Property<int>("StoryId")
     199                        .HasColumnType("integer")
     200                        .HasColumnName("story_id");
     201
     202                    b.Property<DateTime>("UpdatedAt")
     203                        .HasColumnType("timestamp with time zone")
     204                        .HasColumnName("comment_updated_at");
     205
     206                    b.Property<int>("UserId")
     207                        .HasColumnType("integer")
     208                        .HasColumnName("user_id");
     209
     210                    b.HasKey("Id");
     211
     212                    b.HasIndex("StoryId");
     213
     214                    b.HasIndex("UserId");
     215
     216                    b.ToTable("comment", (string)null);
     217                });
     218
     219            modelBuilder.Entity("ChapterX.Domain.Entities.Genre", b =>
     220                {
     221                    b.Property<int>("Id")
     222                        .ValueGeneratedOnAdd()
     223                        .HasColumnType("integer")
     224                        .HasColumnName("genre_id");
     225
     226                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    97227
    98228                    b.Property<string>("Name")
    99229                        .IsRequired()
    100                         .HasColumnType("text");
    101 
    102                     b.Property<int>("Number")
    103                         .HasColumnType("integer");
    104 
    105                     b.Property<DateTime>("PublishedAt")
    106                         .HasColumnType("timestamp with time zone");
    107 
    108                     b.Property<decimal?>("Rating")
    109                         .HasColumnType("numeric");
    110 
     230                        .HasColumnType("text")
     231                        .HasColumnName("genre_name");
     232
     233                    b.HasKey("Id");
     234
     235                    b.ToTable("genre", (string)null);
     236                });
     237
     238            modelBuilder.Entity("ChapterX.Domain.Entities.HasGenre", b =>
     239                {
    111240                    b.Property<int>("StoryId")
    112                         .HasColumnType("integer");
     241                        .HasColumnType("integer")
     242                        .HasColumnName("story_id");
     243
     244                    b.Property<int>("GenreId")
     245                        .HasColumnType("integer")
     246                        .HasColumnName("genre_id");
     247
     248                    b.HasKey("StoryId", "GenreId");
     249
     250                    b.HasIndex("GenreId");
     251
     252                    b.ToTable("has_genre", (string)null);
     253                });
     254
     255            modelBuilder.Entity("ChapterX.Domain.Entities.Likes", b =>
     256                {
     257                    b.Property<int>("UserId")
     258                        .HasColumnType("integer")
     259                        .HasColumnName("user_id");
     260
     261                    b.Property<int>("StoryId")
     262                        .HasColumnType("integer")
     263                        .HasColumnName("story_id");
     264
     265                    b.Property<DateTime>("LikedAt")
     266                        .HasColumnType("timestamp with time zone")
     267                        .HasColumnName("liked_at");
     268
     269                    b.HasKey("UserId", "StoryId");
     270
     271                    b.HasIndex("StoryId");
     272
     273                    b.ToTable("likes", (string)null);
     274                });
     275
     276            modelBuilder.Entity("ChapterX.Domain.Entities.NeedApproval", b =>
     277                {
     278                    b.Property<int>("SuggestionId")
     279                        .HasColumnType("integer")
     280                        .HasColumnName("suggestion_id");
     281
     282                    b.Property<int>("StoryId")
     283                        .HasColumnType("integer")
     284                        .HasColumnName("story_id");
     285
     286                    b.Property<int>("ChapterId")
     287                        .HasColumnType("integer")
     288                        .HasColumnName("chapter_id");
     289
     290                    b.HasKey("SuggestionId", "StoryId", "ChapterId");
     291
     292                    b.HasIndex("ChapterId");
     293
     294                    b.HasIndex("StoryId");
     295
     296                    b.ToTable("need_approval", (string)null);
     297                });
     298
     299            modelBuilder.Entity("ChapterX.Domain.Entities.Notification", b =>
     300                {
     301                    b.Property<int>("Id")
     302                        .ValueGeneratedOnAdd()
     303                        .HasColumnType("integer")
     304                        .HasColumnName("notification_id");
     305
     306                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
     307
     308                    b.Property<string>("Content")
     309                        .IsRequired()
     310                        .HasColumnType("text")
     311                        .HasColumnName("notification_content");
     312
     313                    b.Property<string>("ContentType")
     314                        .IsRequired()
     315                        .HasColumnType("text")
     316                        .HasColumnName("content_type");
     317
     318                    b.Property<DateTime>("CreatedAt")
     319                        .HasColumnType("timestamp with time zone")
     320                        .HasColumnName("notification_created_at");
     321
     322                    b.Property<bool>("IsRead")
     323                        .HasColumnType("boolean")
     324                        .HasColumnName("is_read");
     325
     326                    b.Property<string>("Link")
     327                        .HasColumnType("text")
     328                        .HasColumnName("link");
     329
     330                    b.Property<int?>("StoryId")
     331                        .HasColumnType("integer")
     332                        .HasColumnName("story_id");
     333
     334                    b.Property<int>("UserId")
     335                        .HasColumnType("integer")
     336                        .HasColumnName("user_id");
     337
     338                    b.HasKey("Id");
     339
     340                    b.HasIndex("StoryId");
     341
     342                    b.HasIndex("UserId");
     343
     344                    b.ToTable("notification", (string)null);
     345                });
     346
     347            modelBuilder.Entity("ChapterX.Domain.Entities.ReadingList", b =>
     348                {
     349                    b.Property<int>("Id")
     350                        .ValueGeneratedOnAdd()
     351                        .HasColumnType("integer")
     352                        .HasColumnName("list_id");
     353
     354                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
     355
     356                    b.Property<string>("Content")
     357                        .HasColumnType("text")
     358                        .HasColumnName("list_content");
     359
     360                    b.Property<DateTime>("CreatedAt")
     361                        .HasColumnType("timestamp with time zone")
     362                        .HasColumnName("list_created_at");
     363
     364                    b.Property<bool>("IsPublic")
     365                        .HasColumnType("boolean")
     366                        .HasColumnName("is_public");
     367
     368                    b.Property<string>("Name")
     369                        .IsRequired()
     370                        .HasColumnType("text")
     371                        .HasColumnName("list_name");
     372
     373                    b.Property<DateTime>("UpdatedAt")
     374                        .HasColumnType("timestamp with time zone")
     375                        .HasColumnName("list_updated_at");
     376
     377                    b.Property<int>("UserId")
     378                        .HasColumnType("integer")
     379                        .HasColumnName("user_id");
     380
     381                    b.HasKey("Id");
     382
     383                    b.HasIndex("UserId");
     384
     385                    b.ToTable("reading_list", (string)null);
     386                });
     387
     388            modelBuilder.Entity("ChapterX.Domain.Entities.ReadingListItems", b =>
     389                {
     390                    b.Property<int>("ListId")
     391                        .HasColumnType("integer")
     392                        .HasColumnName("list_id");
     393
     394                    b.Property<int>("StoryId")
     395                        .HasColumnType("integer")
     396                        .HasColumnName("story_id");
     397
     398                    b.Property<DateTime>("AddedAt")
     399                        .HasColumnType("timestamp with time zone")
     400                        .HasColumnName("added_at");
     401
     402                    b.HasKey("ListId", "StoryId");
     403
     404                    b.HasIndex("StoryId");
     405
     406                    b.ToTable("reading_list_items", (string)null);
     407                });
     408
     409            modelBuilder.Entity("ChapterX.Domain.Entities.RegularUser", b =>
     410                {
     411                    b.Property<int>("Id")
     412                        .HasColumnType("integer")
     413                        .HasColumnName("user_id");
     414
     415                    b.Property<DateTime>("JoinedAt")
     416                        .HasColumnType("timestamp with time zone")
     417                        .HasColumnName("joined_at");
     418
     419                    b.HasKey("Id");
     420
     421                    b.ToTable("regular_user", (string)null);
     422                });
     423
     424            modelBuilder.Entity("ChapterX.Domain.Entities.Story", b =>
     425                {
     426                    b.Property<int>("Id")
     427                        .ValueGeneratedOnAdd()
     428                        .HasColumnType("integer")
     429                        .HasColumnName("story_id");
     430
     431                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
     432
     433                    b.Property<string>("Content")
     434                        .IsRequired()
     435                        .HasColumnType("text")
     436                        .HasColumnName("story_content");
     437
     438                    b.Property<DateTime>("CreatedAt")
     439                        .HasColumnType("timestamp with time zone")
     440                        .HasColumnName("story_created_at");
     441
     442                    b.Property<string>("Image")
     443                        .HasColumnType("text")
     444                        .HasColumnName("image");
     445
     446                    b.Property<bool>("MatureContent")
     447                        .HasColumnType("boolean")
     448                        .HasColumnName("mature_content");
     449
     450                    b.Property<string>("ShortDescription")
     451                        .IsRequired()
     452                        .HasColumnType("text")
     453                        .HasColumnName("short_description");
     454
     455                    b.Property<string>("Status")
     456                        .IsRequired()
     457                        .HasColumnType("text")
     458                        .HasColumnName("status");
    113459
    114460                    b.Property<string>("Title")
    115461                        .IsRequired()
    116                         .HasColumnType("text");
     462                        .HasColumnType("text")
     463                        .HasColumnName("title");
    117464
    118465                    b.Property<DateTime>("UpdatedAt")
    119                         .HasColumnType("timestamp with time zone");
    120 
    121                     b.Property<int>("ViewCount")
    122                         .HasColumnType("integer");
    123 
    124                     b.Property<int?>("WordCount")
    125                         .HasColumnType("integer");
    126 
    127                     b.HasKey("Id");
    128 
    129                     b.HasIndex("StoryId");
    130 
    131                     b.ToTable("Chapters", (string)null);
    132                 });
    133 
    134             modelBuilder.Entity("ChapterX.Domain.Entities.Collaboration", b =>
     466                        .HasColumnType("timestamp with time zone")
     467                        .HasColumnName("story_updated_at");
     468
     469                    b.Property<int>("UserId")
     470                        .HasColumnType("integer")
     471                        .HasColumnName("user_id");
     472
     473                    b.HasKey("Id");
     474
     475                    b.HasIndex("UserId");
     476
     477                    b.ToTable("story", (string)null);
     478                });
     479
     480            modelBuilder.Entity("ChapterX.Domain.Entities.User", b =>
    135481                {
    136482                    b.Property<int>("Id")
    137483                        .ValueGeneratedOnAdd()
    138                         .HasColumnType("integer");
     484                        .HasColumnType("integer")
     485                        .HasColumnName("user_id");
    139486
    140487                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    141488
    142                     b.Property<DateTime>("JoinedAt")
    143                         .HasColumnType("timestamp with time zone");
    144 
    145                     b.Property<string>("Role")
    146                         .IsRequired()
    147                         .HasColumnType("text");
    148 
    149                     b.Property<int>("StoryId")
    150                         .HasColumnType("integer");
    151 
    152                     b.Property<int>("UserId")
    153                         .HasColumnType("integer");
    154 
    155                     b.HasKey("Id");
    156 
    157                     b.HasIndex("StoryId");
    158 
    159                     b.HasIndex("UserId");
    160 
    161                     b.ToTable("Collaborations", (string)null);
    162                 });
    163 
    164             modelBuilder.Entity("ChapterX.Domain.Entities.Comment", b =>
    165                 {
    166                     b.Property<int>("Id")
    167                         .ValueGeneratedOnAdd()
    168                         .HasColumnType("integer");
    169 
    170                     NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    171 
    172                     b.Property<string>("Content")
    173                         .IsRequired()
    174                         .HasColumnType("text");
    175 
    176489                    b.Property<DateTime>("CreatedAt")
    177                         .HasColumnType("timestamp with time zone");
    178 
    179                     b.Property<int>("StoryId")
    180                         .HasColumnType("integer");
     490                        .HasColumnType("timestamp with time zone")
     491                        .HasColumnName("user_created_at");
     492
     493                    b.Property<string>("Email")
     494                        .IsRequired()
     495                        .HasColumnType("text")
     496                        .HasColumnName("email");
     497
     498                    b.Property<string>("Name")
     499                        .IsRequired()
     500                        .HasColumnType("text")
     501                        .HasColumnName("user_name");
     502
     503                    b.Property<string>("Password")
     504                        .IsRequired()
     505                        .HasColumnType("text")
     506                        .HasColumnName("password");
     507
     508                    b.Property<string>("Surname")
     509                        .IsRequired()
     510                        .HasColumnType("text")
     511                        .HasColumnName("surname");
    181512
    182513                    b.Property<DateTime>("UpdatedAt")
    183                         .HasColumnType("timestamp with time zone");
    184 
    185                     b.Property<int>("UserId")
    186                         .HasColumnType("integer");
    187 
    188                     b.HasKey("Id");
    189 
    190                     b.HasIndex("StoryId");
    191 
    192                     b.HasIndex("UserId");
    193 
    194                     b.ToTable("Comments", (string)null);
    195                 });
    196 
    197             modelBuilder.Entity("ChapterX.Domain.Entities.Genre", b =>
    198                 {
    199                     b.Property<int>("Id")
    200                         .ValueGeneratedOnAdd()
    201                         .HasColumnType("integer");
    202 
    203                     NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    204 
    205                     b.Property<string>("Name")
    206                         .IsRequired()
    207                         .HasColumnType("text");
    208 
    209                     b.HasKey("Id");
    210 
    211                     b.ToTable("Genres", (string)null);
    212                 });
    213 
    214             modelBuilder.Entity("ChapterX.Domain.Entities.HasGenre", b =>
    215                 {
    216                     b.Property<int>("Id")
    217                         .ValueGeneratedOnAdd()
    218                         .HasColumnType("integer");
    219 
    220                     NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    221 
    222                     b.Property<int>("GenreId")
    223                         .HasColumnType("integer");
    224 
    225                     b.Property<int>("StoryId")
    226                         .HasColumnType("integer");
    227 
    228                     b.HasKey("Id");
    229 
    230                     b.HasIndex("GenreId");
    231 
    232                     b.HasIndex("StoryId");
    233 
    234                     b.ToTable("HasGenres", (string)null);
    235                 });
    236 
    237             modelBuilder.Entity("ChapterX.Domain.Entities.Likes", b =>
    238                 {
    239                     b.Property<int>("Id")
    240                         .ValueGeneratedOnAdd()
    241                         .HasColumnType("integer");
    242 
    243                     NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    244 
    245                     b.Property<int>("ChapterId")
    246                         .HasColumnType("integer");
    247 
    248                     b.Property<DateTime>("CreatedAt")
    249                         .HasColumnType("timestamp with time zone");
    250 
    251                     b.Property<int?>("StoryId")
    252                         .HasColumnType("integer");
    253 
    254                     b.Property<int>("UserId")
    255                         .HasColumnType("integer");
    256 
    257                     b.HasKey("Id");
    258 
    259                     b.HasIndex("ChapterId");
    260 
    261                     b.HasIndex("StoryId");
    262 
    263                     b.HasIndex("UserId");
    264 
    265                     b.ToTable("Likes", (string)null);
    266                 });
    267 
    268             modelBuilder.Entity("ChapterX.Domain.Entities.NeedApproval", b =>
    269                 {
    270                     b.Property<int>("Id")
    271                         .ValueGeneratedOnAdd()
    272                         .HasColumnType("integer");
    273 
    274                     NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    275 
    276                     b.Property<int?>("AISuggestionId")
    277                         .HasColumnType("integer");
    278 
    279                     b.Property<int>("AdminId")
    280                         .HasColumnType("integer");
    281 
    282                     b.Property<bool>("Approved")
    283                         .HasColumnType("boolean");
    284 
    285                     b.Property<int?>("ChapterId")
    286                         .HasColumnType("integer");
    287 
    288                     b.Property<DateTime>("RequestedAt")
    289                         .HasColumnType("timestamp with time zone");
    290 
    291                     b.Property<int>("StoryId")
    292                         .HasColumnType("integer");
    293 
    294                     b.HasKey("Id");
    295 
    296                     b.HasIndex("AISuggestionId");
    297 
    298                     b.HasIndex("AdminId");
    299 
    300                     b.HasIndex("ChapterId");
    301 
    302                     b.HasIndex("StoryId");
    303 
    304                     b.ToTable("NeedApprovals", (string)null);
    305                 });
    306 
    307             modelBuilder.Entity("ChapterX.Domain.Entities.Notification", b =>
    308                 {
    309                     b.Property<int>("Id")
    310                         .ValueGeneratedOnAdd()
    311                         .HasColumnType("integer");
    312 
    313                     NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    314 
    315                     b.Property<string>("Content")
    316                         .IsRequired()
    317                         .HasColumnType("text");
    318 
    319                     b.PrimitiveCollection<int[]>("ContentTypes")
    320                         .IsRequired()
    321                         .HasColumnType("integer[]");
    322 
    323                     b.Property<DateTime>("CreatedAt")
    324                         .HasColumnType("timestamp with time zone");
    325 
    326                     b.Property<bool>("IsRead")
    327                         .HasColumnType("boolean");
    328 
    329                     b.HasKey("Id");
    330 
    331                     b.ToTable("Notifications", (string)null);
    332                 });
    333 
    334             modelBuilder.Entity("ChapterX.Domain.Entities.Notify", b =>
    335                 {
    336                     b.Property<int>("Id")
    337                         .ValueGeneratedOnAdd()
    338                         .HasColumnType("integer");
    339 
    340                     NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    341 
    342                     b.Property<bool>("IsRead")
    343                         .HasColumnType("boolean");
    344 
    345                     b.Property<int>("NotificationId")
    346                         .HasColumnType("integer");
    347 
    348                     b.Property<int?>("StoryId")
    349                         .HasColumnType("integer");
    350 
    351                     b.Property<int>("UserId")
    352                         .HasColumnType("integer");
    353 
    354                     b.HasKey("Id");
    355 
    356                     b.HasIndex("NotificationId");
    357 
    358                     b.HasIndex("StoryId");
    359 
    360                     b.HasIndex("UserId");
    361 
    362                     b.ToTable("Notifies", (string)null);
    363                 });
    364 
    365             modelBuilder.Entity("ChapterX.Domain.Entities.ReadingList", b =>
    366                 {
    367                     b.Property<int>("Id")
    368                         .ValueGeneratedOnAdd()
    369                         .HasColumnType("integer");
    370 
    371                     NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    372 
    373                     b.Property<string>("Content")
    374                         .HasColumnType("text");
    375 
    376                     b.Property<DateTime>("CreatedAt")
    377                         .HasColumnType("timestamp with time zone");
    378 
    379                     b.Property<bool>("IsPublic")
    380                         .HasColumnType("boolean");
    381 
    382                     b.Property<string>("Name")
    383                         .IsRequired()
    384                         .HasColumnType("text");
    385 
    386                     b.Property<DateTime>("UpdatedAt")
    387                         .HasColumnType("timestamp with time zone");
    388 
    389                     b.Property<int>("UserId")
    390                         .HasColumnType("integer");
    391 
    392                     b.HasKey("Id");
    393 
    394                     b.HasIndex("UserId");
    395 
    396                     b.ToTable("ReadingLists", (string)null);
    397                 });
    398 
    399             modelBuilder.Entity("ChapterX.Domain.Entities.ReadingListItems", b =>
    400                 {
    401                     b.Property<int>("Id")
    402                         .ValueGeneratedOnAdd()
    403                         .HasColumnType("integer");
    404 
    405                     NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    406 
    407                     b.Property<DateTime>("AddedAt")
    408                         .HasColumnType("timestamp with time zone");
    409 
    410                     b.Property<int>("ReadingListId")
    411                         .HasColumnType("integer");
    412 
    413                     b.Property<int>("StoryId")
    414                         .HasColumnType("integer");
    415 
    416                     b.HasKey("Id");
    417 
    418                     b.HasIndex("ReadingListId");
    419 
    420                     b.HasIndex("StoryId");
    421 
    422                     b.ToTable("ReadingListItems", (string)null);
    423                 });
    424 
    425             modelBuilder.Entity("ChapterX.Domain.Entities.RegularUser", b =>
    426                 {
    427                     b.Property<int>("Id")
    428                         .ValueGeneratedOnAdd()
    429                         .HasColumnType("integer");
    430 
    431                     NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    432 
    433                     b.Property<int>("UserId")
    434                         .HasColumnType("integer");
    435 
    436                     b.HasKey("Id");
    437 
    438                     b.HasIndex("UserId")
    439                         .IsUnique();
    440 
    441                     b.ToTable("RegularUsers", (string)null);
    442                 });
    443 
    444             modelBuilder.Entity("ChapterX.Domain.Entities.Story", b =>
    445                 {
    446                     b.Property<int>("Id")
    447                         .ValueGeneratedOnAdd()
    448                         .HasColumnType("integer");
    449 
    450                     NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    451 
    452                     b.Property<string>("Content")
    453                         .IsRequired()
    454                         .HasColumnType("text");
    455 
    456                     b.Property<DateTime>("CreatedAt")
    457                         .HasColumnType("timestamp with time zone");
    458 
    459                     b.Property<string>("Image")
    460                         .HasColumnType("text");
    461 
    462                     b.Property<bool>("MatureContent")
    463                         .HasColumnType("boolean");
    464 
    465                     b.Property<string>("ShortDescription")
    466                         .IsRequired()
    467                         .HasColumnType("text");
    468 
    469                     b.PrimitiveCollection<int[]>("Statuses")
    470                         .IsRequired()
    471                         .HasColumnType("integer[]");
    472 
    473                     b.Property<DateTime>("UpdatedAt")
    474                         .HasColumnType("timestamp with time zone");
    475 
    476                     b.Property<int>("UserId")
    477                         .HasColumnType("integer");
    478 
    479                     b.Property<int>("WriterId")
    480                         .HasColumnType("integer");
    481 
    482                     b.HasKey("Id");
    483 
    484                     b.HasIndex("WriterId");
    485 
    486                     b.ToTable("Stories", (string)null);
    487                 });
    488 
    489             modelBuilder.Entity("ChapterX.Domain.Entities.User", b =>
    490                 {
    491                     b.Property<int>("Id")
    492                         .ValueGeneratedOnAdd()
    493                         .HasColumnType("integer");
    494 
    495                     NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
    496 
    497                     b.Property<DateTime>("CreatedAt")
    498                         .HasColumnType("timestamp with time zone");
    499 
    500                     b.Property<string>("Email")
    501                         .IsRequired()
    502                         .HasColumnType("text");
    503 
    504                     b.Property<string>("Name")
    505                         .IsRequired()
    506                         .HasColumnType("text");
    507 
    508                     b.Property<string>("Password")
    509                         .IsRequired()
    510                         .HasColumnType("text");
    511 
    512                     b.Property<string>("Surname")
    513                         .IsRequired()
    514                         .HasColumnType("text");
    515 
    516                     b.Property<DateTime>("UpdatedAt")
    517                         .HasColumnType("timestamp with time zone");
     514                        .HasColumnType("timestamp with time zone")
     515                        .HasColumnName("user_updated_at");
    518516
    519517                    b.Property<string>("Username")
    520518                        .IsRequired()
    521                         .HasColumnType("text");
    522 
    523                     b.HasKey("Id");
    524 
    525                     b.ToTable("Users", (string)null);
     519                        .HasColumnType("text")
     520                        .HasColumnName("username");
     521
     522                    b.HasKey("Id");
     523
     524                    b.ToTable("users", (string)null);
    526525                });
    527526
     
    529528                {
    530529                    b.Property<int>("Id")
    531                         .ValueGeneratedOnAdd()
    532                         .HasColumnType("integer");
    533 
    534                     NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
     530                        .HasColumnType("integer")
     531                        .HasColumnName("user_id");
    535532
    536533                    b.Property<string>("Bio")
    537                         .IsRequired()
    538                         .HasColumnType("text");
    539 
    540                     b.Property<int>("UserId")
    541                         .HasColumnType("integer");
    542 
    543                     b.HasKey("Id");
    544 
    545                     b.HasIndex("UserId")
    546                         .IsUnique();
    547 
    548                     b.ToTable("Writers", (string)null);
     534                        .HasColumnType("text")
     535                        .HasColumnName("bio");
     536
     537                    b.HasKey("Id");
     538
     539                    b.ToTable("writer", (string)null);
    549540                });
    550541
     
    564555                    b.HasOne("ChapterX.Domain.Entities.User", "User")
    565556                        .WithOne("Admin")
    566                         .HasForeignKey("ChapterX.Domain.Entities.Admin", "UserId")
     557                        .HasForeignKey("ChapterX.Domain.Entities.Admin", "Id")
    567558                        .OnDelete(DeleteBehavior.Cascade)
    568559                        .IsRequired();
     
    641632            modelBuilder.Entity("ChapterX.Domain.Entities.Likes", b =>
    642633                {
    643                     b.HasOne("ChapterX.Domain.Entities.Chapter", "Chapter")
    644                         .WithMany()
    645                         .HasForeignKey("ChapterId")
    646                         .OnDelete(DeleteBehavior.Cascade)
    647                         .IsRequired();
    648 
    649                     b.HasOne("ChapterX.Domain.Entities.Story", null)
     634                    b.HasOne("ChapterX.Domain.Entities.Story", "Story")
    650635                        .WithMany("Likes")
    651                         .HasForeignKey("StoryId");
     636                        .HasForeignKey("StoryId")
     637                        .OnDelete(DeleteBehavior.Cascade)
     638                        .IsRequired();
    652639
    653640                    b.HasOne("ChapterX.Domain.Entities.User", "User")
     
    657644                        .IsRequired();
    658645
    659                     b.Navigation("Chapter");
     646                    b.Navigation("Story");
    660647
    661648                    b.Navigation("User");
     
    664651            modelBuilder.Entity("ChapterX.Domain.Entities.NeedApproval", b =>
    665652                {
    666                     b.HasOne("ChapterX.Domain.Entities.AISuggestion", null)
     653                    b.HasOne("ChapterX.Domain.Entities.Chapter", "Chapter")
    667654                        .WithMany("NeedApprovals")
    668                         .HasForeignKey("AISuggestionId");
    669 
    670                     b.HasOne("ChapterX.Domain.Entities.Admin", "Admin")
    671                         .WithMany()
    672                         .HasForeignKey("AdminId")
    673                         .OnDelete(DeleteBehavior.Cascade)
    674                         .IsRequired();
    675 
    676                     b.HasOne("ChapterX.Domain.Entities.Chapter", null)
    677                         .WithMany("NeedApprovals")
    678                         .HasForeignKey("ChapterId");
     655                        .HasForeignKey("ChapterId")
     656                        .OnDelete(DeleteBehavior.Cascade)
     657                        .IsRequired();
    679658
    680659                    b.HasOne("ChapterX.Domain.Entities.Story", "Story")
     
    684663                        .IsRequired();
    685664
    686                     b.Navigation("Admin");
     665                    b.HasOne("ChapterX.Domain.Entities.AISuggestion", "AISuggestion")
     666                        .WithMany("NeedApprovals")
     667                        .HasForeignKey("SuggestionId")
     668                        .OnDelete(DeleteBehavior.Cascade)
     669                        .IsRequired();
     670
     671                    b.Navigation("AISuggestion");
     672
     673                    b.Navigation("Chapter");
    687674
    688675                    b.Navigation("Story");
    689676                });
    690677
    691             modelBuilder.Entity("ChapterX.Domain.Entities.Notify", b =>
    692                 {
    693                     b.HasOne("ChapterX.Domain.Entities.Notification", "Notification")
    694                         .WithMany("Notifies")
    695                         .HasForeignKey("NotificationId")
    696                         .OnDelete(DeleteBehavior.Cascade)
    697                         .IsRequired();
    698 
    699                     b.HasOne("ChapterX.Domain.Entities.Story", null)
    700                         .WithMany("Notifies")
    701                         .HasForeignKey("StoryId");
     678            modelBuilder.Entity("ChapterX.Domain.Entities.Notification", b =>
     679                {
     680                    b.HasOne("ChapterX.Domain.Entities.Story", "Story")
     681                        .WithMany("Notifications")
     682                        .HasForeignKey("StoryId")
     683                        .OnDelete(DeleteBehavior.SetNull);
    702684
    703685                    b.HasOne("ChapterX.Domain.Entities.User", "User")
    704                         .WithMany("Notifies")
     686                        .WithMany("Notifications")
    705687                        .HasForeignKey("UserId")
    706688                        .OnDelete(DeleteBehavior.Cascade)
    707689                        .IsRequired();
    708690
    709                     b.Navigation("Notification");
     691                    b.Navigation("Story");
    710692
    711693                    b.Navigation("User");
     
    727709                    b.HasOne("ChapterX.Domain.Entities.ReadingList", "ReadingList")
    728710                        .WithMany("ReadingListItems")
    729                         .HasForeignKey("ReadingListId")
     711                        .HasForeignKey("ListId")
    730712                        .OnDelete(DeleteBehavior.Cascade)
    731713                        .IsRequired();
     
    746728                    b.HasOne("ChapterX.Domain.Entities.User", "User")
    747729                        .WithOne("RegularUser")
    748                         .HasForeignKey("ChapterX.Domain.Entities.RegularUser", "UserId")
     730                        .HasForeignKey("ChapterX.Domain.Entities.RegularUser", "Id")
    749731                        .OnDelete(DeleteBehavior.Cascade)
    750732                        .IsRequired();
     
    757739                    b.HasOne("ChapterX.Domain.Entities.Writer", "Writer")
    758740                        .WithMany("Stories")
    759                         .HasForeignKey("WriterId")
     741                        .HasForeignKey("UserId")
    760742                        .OnDelete(DeleteBehavior.Cascade)
    761743                        .IsRequired();
     
    768750                    b.HasOne("ChapterX.Domain.Entities.User", "User")
    769751                        .WithOne("Writer")
    770                         .HasForeignKey("ChapterX.Domain.Entities.Writer", "UserId")
     752                        .HasForeignKey("ChapterX.Domain.Entities.Writer", "Id")
    771753                        .OnDelete(DeleteBehavior.Cascade)
    772754                        .IsRequired();
     
    790772                });
    791773
    792             modelBuilder.Entity("ChapterX.Domain.Entities.Notification", b =>
    793                 {
    794                     b.Navigation("Notifies");
    795                 });
    796 
    797774            modelBuilder.Entity("ChapterX.Domain.Entities.ReadingList", b =>
    798775                {
     
    816793                    b.Navigation("NeedApprovals");
    817794
    818                     b.Navigation("Notifies");
     795                    b.Navigation("Notifications");
    819796
    820797                    b.Navigation("ReadingListItems");
     
    831808                    b.Navigation("Likes");
    832809
    833                     b.Navigation("Notifies");
     810                    b.Navigation("Notifications");
    834811
    835812                    b.Navigation("ReadingLists");
Note: See TracChangeset for help on using the changeset viewer.