Port UserRepository and remove OW stuff

This commit is contained in:
runebaas 2018-05-10 02:00:26 +02:00
parent d2f31d0730
commit 15034d63a3
No known key found for this signature in database
GPG key ID: 2677AF508D0300D6
20 changed files with 176 additions and 328 deletions

View file

@ -6,12 +6,13 @@ namespace Geekbot.net.Database
public class DatabaseContext : DbContext
{
public DbSet<QuoteModel> Quotes { get; set; }
// public DbSet<UserModel> Users { get; set; }
// public DbSet<GuildsModel> Guilds { get; set; }
// public DbSet<GuildSettingsModel> GuildSettings { get; set; }
// public DbSet<KarmaModel> Karma { get; set; }
// public DbSet<ShipsModel> Ships { get; set; }
public DbSet<UserModel> Users { get; set; }
public DbSet<GuildsModel> Guilds { get; set; }
public DbSet<GuildSettingsModel> GuildSettings { get; set; }
public DbSet<KarmaModel> Karma { get; set; }
public DbSet<ShipsModel> Ships { get; set; }
public DbSet<SlapsModel> SlapsModels { get; set; }
// public DbSet<UserSettingsModel> UserSettings { get; set; }
// public DbSet<RoleSelfServiceModel> RoleSelfService { get; set; }
// public DbSet<SlapsModel> SlapsModels { get; set; }
}
}

View file

@ -2,6 +2,7 @@
using Geekbot.net.Database.LoggingAdapter;
using Geekbot.net.Lib;
using Geekbot.net.Lib.Logger;
using Microsoft.EntityFrameworkCore;
using Npgsql.Logging;
namespace Geekbot.net.Database
@ -39,6 +40,7 @@ namespace Geekbot.net.Database
});
}
database.Database.EnsureCreated();
database.Database.Migrate();
}
catch (Exception e)
{

View file

@ -1,7 +1,29 @@
namespace Geekbot.net.Database.Models
using System.ComponentModel.DataAnnotations;
namespace Geekbot.net.Database.Models
{
public class GuildSettingsModel
{
[Key]
public int Id { get; set; }
[Required]
public long GuildId { get; set; }
public bool Ping { get; set; }
public bool Hui { get; set; }
public long ModChannel { get; set; }
public string WelcomeMessage { get; set; }
public bool ShowDelete { get; set; }
public bool ShowLeave { get; set; }
public string WikiLang { get; set; }
public string Language { get; set; }
}
}

View file

@ -1,7 +1,22 @@
namespace Geekbot.net.Database.Models
using System.ComponentModel.DataAnnotations;
namespace Geekbot.net.Database.Models
{
public class GuildsModel
{
[Key]
public int Id { get; set; }
[Required]
public long GuildId { get; set; }
[Required]
public string Name { get; set; }
[Required]
public string Owner { get; set; }
[Required]
public string IconUrl { get; set; }
}
}

View file

@ -1,7 +1,21 @@
namespace Geekbot.net.Database.Models
using System;
using System.ComponentModel.DataAnnotations;
namespace Geekbot.net.Database.Models
{
public class KarmaModel
{
[Key]
public int Id { get; set; }
[Required]
public long GuildId { get; set; }
[Required]
public long UserId { get; set; }
public int Karma { get; set; }
public DateTimeOffset TimeOut { get; set; }
}
}

View file

@ -1,7 +1,16 @@
namespace Geekbot.net.Database.Models
using System.ComponentModel.DataAnnotations;
namespace Geekbot.net.Database.Models
{
public class ShipsModel
{
[Key]
public int Id { get; set; }
public long FirstUserId { get; set; }
public long SecondUserId { get; set; }
public int Strength { get; set; }
}
}

View file

@ -1,7 +1,20 @@
namespace Geekbot.net.Database.Models
using System.ComponentModel.DataAnnotations;
namespace Geekbot.net.Database.Models
{
public class SlapsModel
{
[Key]
public int Id { get; set; }
[Required]
public long GuildId { get; set; }
[Required]
public long UserId { get; set; }
public int Given { get; set; }
public int Recieved { get; set; }
}
}

View file

@ -1,7 +1,30 @@
namespace Geekbot.net.Database.Models
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
namespace Geekbot.net.Database.Models
{
public class UserModel
{
[Key]
public int Id { get; set; }
[Required]
public long UserId { get; set; }
[Required]
public string Username { get; set; }
[Required]
public string Discriminator { get; set; }
public string AvatarUrl { get; set; }
[Required]
public bool IsBot { get; set; }
public DateTimeOffset Joined { get; set; }
public string[] UsedNames { get; set; }
}
}

View file

@ -0,0 +1,15 @@
using System.ComponentModel.DataAnnotations;
namespace Geekbot.net.Database.Models
{
public class UserSettingsModel
{
[Key]
public int Id { get; set; }
[Required]
public long UserId { get; set; }
// stuff to be added in the future
}
}